Welcome to mirror list, hosted at ThFree Co, Russian Federation.

systemtags.js.map « dist « js « core - github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 3b4b1470558359dab13b4fc201f18274c434abfe (plain)
1
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./core/js/systemtags/merged-systemtags.js","webpack:///./core/js/systemtags/systemtags.js","webpack:///./core/js/systemtags/templates.js","webpack:///./core/js/systemtags/systemtagmodel.js","webpack:///./core/js/systemtags/systemtagsmappingcollection.js","webpack:///./core/js/systemtags/systemtagscollection.js","webpack:///./core/js/systemtags/systemtagsinputfield.js","webpack:///./core/css/systemtags.scss?456a","webpack:///./core/css/systemtags.scss","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","OC","SystemTags","getDescriptiveTag","tag","_","isUndefined","toJSON","$","addClass","text","scope","$span","append","escapeHTML","userAssignable","userVisible","$tag","template","templates","Handlebars","Templates","container","depth0","helpers","partials","data","stack1","helper","lookupProperty","parent","propertyName","hooks","helperMissing","nullContext","escapeExpression","options","alias1","alias2","buffer","program","noop","blockHelperMissing","alias4","extend","Files","Client","PROPERTY_FILEID","NS_OWNCLOUD","PROPERTY_CAN_ASSIGN","PROPERTY_DISPLAYNAME","PROPERTY_USERVISIBLE","PROPERTY_USERASSIGNABLE","SystemTagModel","Backbone","Model","sync","davSync","defaults","canAssign","davProperties","parse","id","SystemTagsMappingCollection","Collection","usePUT","_objectId","_objectType","model","url","linkToRemote","this","setObjectId","objectId","setObjectType","objectType","initialize","models","getTagIds","map","SystemTagsCollection","filterByName","filter","term","substr","length","toLowerCase","filterFunction","reset","fetched","apply","arguments","fetch","self","force","success","trigger","Promise","resolve","collection","SystemTagsInputField","View","_rendered","_newTag","_lastUsedTags","className","_multiple","multiple","_allowActions","allowActions","_allowCreate","allowCreate","_isAdmin","isAdmin","isFunction","initSelection","_initSelection","on","defer","_refreshSelection","_getLastUsedTags","bindAll","ajax","type","generateUrl","response","$tagsField","select2","val","_onClickRenameTag","ev","$item","target","closest","tagId","attr","oldName","$renameForm","cid","deleteTooltip","renameLabel","find","after","tooltip","placement","focus","selectRange","_onSubmitRenameTag","preventDefault","$form","tagModel","newName","trim","save","removeClass","remove","_onClickDeleteTag","destroy","_addToSelect2Selection","selection","push","_onSelectTag","e","isNew","unshift","error","xhr","status","where","_onDeselectTag","choice","_queryTagsAutocomplete","query","tagModels","callback","results","invoke","_preventDefault","stopPropagation","_formatDropDownResult","renameTooltip","tagMarkup","innerHTML","_formatSelection","_createSearchChoice","entry","element","ids","split","modelToSelection","locked","selectedModels","indexOf","findSelectedObjects","render","$el","html","placeholder","containerCssClass","dropdownCssClass","closeOnSelect","allowClear","toggleSelect","formatResult","formatSelection","createSearchChoice","undefined","sortResults","selectedItems","pluck","sort","a","b","aSelected","bSelected","aLastUsed","bLastUsed","Util","naturalSortCompare","formatNoMatches","$dropDown","delegateEvents","getValues","setValues","values","setData","content","locals","add","default","___CSS_LOADER_API_IMPORT___","useSourceMap","list","toString","item","cssMapping","btoa","sourceMapping","sourceMap","base64","unescape","encodeURIComponent","JSON","stringify","concat","sourceURLs","sources","source","sourceRoot","join","cssWithMappingToString","mediaQuery","listToStyles","parentId","styles","newStyles","part","css","media","parts","hasDocument","document","DEBUG","Error","stylesInDom","head","getElementsByTagName","singletonElement","singletonCounter","isProduction","ssrIdKey","isOldIE","navigator","test","userAgent","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","j","addStyle","createStyleElement","styleElement","createElement","appendChild","obj","update","querySelector","parentNode","removeChild","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","index","replacement","Boolean","styleSheet","cssText","cssNode","createTextNode","childNodes","insertBefore","setAttribute","ssrId","firstChild"],"mappings":"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","file":"systemtags.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","import './systemtags.js'\nimport './templates.js'\nimport './systemtagmodel.js'\nimport './systemtagsmappingcollection.js'\nimport './systemtagscollection.js'\nimport './systemtagsinputfield.js'\n\nimport '../../css/systemtags.scss'\n","/* eslint-disable */\n/*\n * Copyright (c) 2016\n *\n * This file is licensed under the Affero General Public License version 3\n * or later.\n *\n * See the COPYING-README file.\n *\n */\n\n(function(OC) {\n\t/**\n\t * @namespace\n\t */\n\tOC.SystemTags = {\n\t\t/**\n\t\t *\n\t\t * @param {OC.SystemTags.SystemTagModel|Object|String} tag\n\t\t * @returns {jQuery}\n\t\t */\n\t\tgetDescriptiveTag: function(tag) {\n\t\t\tif (_.isUndefined(tag.name) && !_.isUndefined(tag.toJSON)) {\n\t\t\t\ttag = tag.toJSON()\n\t\t\t}\n\n\t\t\tif (_.isUndefined(tag.name)) {\n\t\t\t\treturn $('<span>').addClass('non-existing-tag').text(\n\t\t\t\t\tt('core', 'Non-existing tag #{tag}', {\n\t\t\t\t\t\ttag: tag\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tvar $span = $('<span>')\n\t\t\t$span.append(escapeHTML(tag.name))\n\n\t\t\tvar scope\n\t\t\tif (!tag.userAssignable) {\n\t\t\t\tscope = t('core', 'restricted')\n\t\t\t}\n\t\t\tif (!tag.userVisible) {\n\t\t\t\t// invisible also implicitly means not assignable\n\t\t\t\tscope = t('core', 'invisible')\n\t\t\t}\n\t\t\tif (scope) {\n\t\t\t\tvar $tag = $('<em>').text(' '\n\t\t\t\t\t+ t('core', '({scope})', {\n\t\t\t\t\t\tscope: scope\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t\t$span.append($tag)\n\t\t\t}\n\t\t\treturn $span\n\t\t}\n\t}\n})(OC)\n","(function() {\n  var template = Handlebars.template, templates = OC.SystemTags.Templates = OC.SystemTags.Templates || {};\ntemplates['result'] = template({\"1\":function(container,depth0,helpers,partials,data) {\n    return \" new-item\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n    var stack1, helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t\t<span class=\\\"label\\\">\"\n    + ((stack1 = ((helper = (helper = lookupProperty(helpers,\"tagMarkup\") || (depth0 != null ? lookupProperty(depth0,\"tagMarkup\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"tagMarkup\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":4,\"column\":22},\"end\":{\"line\":4,\"column\":37}}}) : helper))) != null ? stack1 : \"\")\n    + \"</span>\\n\";\n},\"5\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t\t<span class=\\\"label\\\">\"\n    + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":6,\"column\":22},\"end\":{\"line\":6,\"column\":30}}}) : helper)))\n    + \"</span>\\n\";\n},\"7\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t\t<span class=\\\"systemtags-actions\\\">\\n\t\t\t<a href=\\\"#\\\" class=\\\"rename icon icon-rename\\\" title=\\\"\"\n    + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"renameTooltip\") || (depth0 != null ? lookupProperty(depth0,\"renameTooltip\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"renameTooltip\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":10,\"column\":54},\"end\":{\"line\":10,\"column\":71}}}) : helper)))\n    + \"\\\"></a>\\n\t\t</span>\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n    var stack1, helper, options, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    }, buffer = \n  \"<span class=\\\"systemtags-item\"\n    + ((stack1 = lookupProperty(helpers,\"if\").call(alias1,(depth0 != null ? lookupProperty(depth0,\"isNew\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":28},\"end\":{\"line\":1,\"column\":57}}})) != null ? stack1 : \"\")\n    + \"\\\" data-id=\\\"\"\n    + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":68},\"end\":{\"line\":1,\"column\":74}}}) : helper)))\n    + \"\\\">\\n<span class=\\\"checkmark icon icon-checkmark\\\"></span>\\n\"\n    + ((stack1 = lookupProperty(helpers,\"if\").call(alias1,(depth0 != null ? lookupProperty(depth0,\"isAdmin\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.program(5, data, 0),\"data\":data,\"loc\":{\"start\":{\"line\":3,\"column\":1},\"end\":{\"line\":7,\"column\":8}}})) != null ? stack1 : \"\");\n  stack1 = ((helper = (helper = lookupProperty(helpers,\"allowActions\") || (depth0 != null ? lookupProperty(depth0,\"allowActions\") : depth0)) != null ? helper : alias2),(options={\"name\":\"allowActions\",\"hash\":{},\"fn\":container.program(7, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":1},\"end\":{\"line\":12,\"column\":18}}}),(typeof helper === alias3 ? helper.call(alias1,options) : helper));\n  if (!lookupProperty(helpers,\"allowActions\")) { stack1 = container.hooks.blockHelperMissing.call(depth0,stack1,options)}\n  if (stack1 != null) { buffer += stack1; }\n  return buffer + \"</span>\\n\";\n},\"useData\":true});\ntemplates['result_form'] = template({\"1\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t\t<a href=\\\"#\\\" class=\\\"delete icon icon-delete\\\" title=\\\"\"\n    + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"deleteTooltip\") || (depth0 != null ? lookupProperty(depth0,\"deleteTooltip\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"deleteTooltip\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":5,\"column\":53},\"end\":{\"line\":5,\"column\":70}}}) : helper)))\n    + \"\\\"></a>\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n    var stack1, helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"<form class=\\\"systemtags-rename-form\\\">\\n\t <label class=\\\"hidden-visually\\\" for=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"cid\") || (depth0 != null ? lookupProperty(depth0,\"cid\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"cid\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":38},\"end\":{\"line\":2,\"column\":45}}}) : helper)))\n    + \"-rename-input\\\">\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"renameLabel\") || (depth0 != null ? lookupProperty(depth0,\"renameLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"renameLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":60},\"end\":{\"line\":2,\"column\":75}}}) : helper)))\n    + \"</label>\\n\t<input id=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"cid\") || (depth0 != null ? lookupProperty(depth0,\"cid\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"cid\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":3,\"column\":12},\"end\":{\"line\":3,\"column\":19}}}) : helper)))\n    + \"-rename-input\\\" type=\\\"text\\\" value=\\\"\"\n    + alias4(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":3,\"column\":53},\"end\":{\"line\":3,\"column\":61}}}) : helper)))\n    + \"\\\">\\n\"\n    + ((stack1 = lookupProperty(helpers,\"if\").call(alias1,(depth0 != null ? lookupProperty(depth0,\"isAdmin\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":4,\"column\":1},\"end\":{\"line\":6,\"column\":8}}})) != null ? stack1 : \"\")\n    + \"</form>\\n\";\n},\"useData\":true});\ntemplates['selection'] = template({\"1\":function(container,depth0,helpers,partials,data) {\n    var stack1, helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t<span class=\\\"label\\\">\"\n    + ((stack1 = ((helper = (helper = lookupProperty(helpers,\"tagMarkup\") || (depth0 != null ? lookupProperty(depth0,\"tagMarkup\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"tagMarkup\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":2,\"column\":21},\"end\":{\"line\":2,\"column\":36}}}) : helper))) != null ? stack1 : \"\")\n    + \"</span>\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n    var helper, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return \"\t<span class=\\\"label\\\">\"\n    + container.escapeExpression(((helper = (helper = lookupProperty(helpers,\"name\") || (depth0 != null ? lookupProperty(depth0,\"name\") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":4,\"column\":21},\"end\":{\"line\":4,\"column\":29}}}) : helper)))\n    + \"</span>\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n    var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    };\n\n  return ((stack1 = lookupProperty(helpers,\"if\").call(depth0 != null ? depth0 : (container.nullContext || {}),(depth0 != null ? lookupProperty(depth0,\"isAdmin\") : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":0},\"end\":{\"line\":5,\"column\":7}}})) != null ? stack1 : \"\");\n},\"useData\":true});\n})();","/*\n * Copyright (c) 2015\n *\n * This file is licensed under the Affero General Public License version 3\n * or later.\n *\n * See the COPYING-README file.\n *\n */\n\n(function(OC) {\n\n\t_.extend(OC.Files.Client, {\n\t\tPROPERTY_FILEID:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}id',\n\t\tPROPERTY_CAN_ASSIGN: '{' + OC.Files.Client.NS_OWNCLOUD + '}can-assign',\n\t\tPROPERTY_DISPLAYNAME:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}display-name',\n\t\tPROPERTY_USERVISIBLE:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}user-visible',\n\t\tPROPERTY_USERASSIGNABLE: '{' + OC.Files.Client.NS_OWNCLOUD + '}user-assignable',\n\t})\n\n\t/**\n\t * @class OCA.SystemTags.SystemTagsCollection\n\t * @classdesc\n\t *\n\t * System tag\n\t *\n\t */\n\tconst SystemTagModel = OC.Backbone.Model.extend(\n\t\t/** @lends OCA.SystemTags.SystemTagModel.prototype */ {\n\t\t\tsync: OC.Backbone.davSync,\n\n\t\t\tdefaults: {\n\t\t\t\tuserVisible: true,\n\t\t\t\tuserAssignable: true,\n\t\t\t\tcanAssign: true,\n\t\t\t},\n\n\t\t\tdavProperties: {\n\t\t\t\t'id':\tOC.Files.Client.PROPERTY_FILEID,\n\t\t\t\t'name': OC.Files.Client.PROPERTY_DISPLAYNAME,\n\t\t\t\t'userVisible': OC.Files.Client.PROPERTY_USERVISIBLE,\n\t\t\t\t'userAssignable': OC.Files.Client.PROPERTY_USERASSIGNABLE,\n\t\t\t\t// read-only, effective permissions computed by the server,\n\t\t\t\t'canAssign': OC.Files.Client.PROPERTY_CAN_ASSIGN,\n\t\t\t},\n\n\t\t\tparse: function(data) {\n\t\t\t\treturn {\n\t\t\t\t\tid: data.id,\n\t\t\t\t\tname: data.name,\n\t\t\t\t\tuserVisible: data.userVisible === true || data.userVisible === 'true',\n\t\t\t\t\tuserAssignable: data.userAssignable === true || data.userAssignable === 'true',\n\t\t\t\t\tcanAssign: data.canAssign === true || data.canAssign === 'true',\n\t\t\t\t}\n\t\t\t},\n\t\t})\n\n\tOC.SystemTags = OC.SystemTags || {}\n\tOC.SystemTags.SystemTagModel = SystemTagModel\n})(OC)\n","/*\n * Copyright (c) 2015\n *\n * This file is licensed under the Affero General Public License version 3\n * or later.\n *\n * See the COPYING-README file.\n *\n */\n\n(function(OC) {\n\t/**\n\t * @class OC.SystemTags.SystemTagsMappingCollection\n\t * @classdesc\n\t *\n\t * Collection of tags assigned to a an object\n\t *\n\t */\n\tconst SystemTagsMappingCollection = OC.Backbone.Collection.extend(\n\t\t/** @lends OC.SystemTags.SystemTagsMappingCollection.prototype */ {\n\n\t\t\tsync: OC.Backbone.davSync,\n\n\t\t\t/**\n\t\t * Use PUT instead of PROPPATCH\n\t\t */\n\t\t\tusePUT: true,\n\n\t\t\t/**\n\t\t * Id of the file for which to filter activities by\n\t\t *\n\t\t * @var int\n\t\t */\n\t\t\t_objectId: null,\n\n\t\t\t/**\n\t\t * Type of the object to filter by\n\t\t *\n\t\t * @var string\n\t\t */\n\t\t\t_objectType: 'files',\n\n\t\t\tmodel: OC.SystemTags.SystemTagModel,\n\n\t\t\turl: function() {\n\t\t\t\treturn OC.linkToRemote('dav') + '/systemtags-relations/' + this._objectType + '/' + this._objectId\n\t\t\t},\n\n\t\t\t/**\n\t\t * Sets the object id to filter by or null for all.\n\t\t *\n\t\t * @param {int} objectId file id or null\n\t\t */\n\t\t\tsetObjectId: function(objectId) {\n\t\t\t\tthis._objectId = objectId\n\t\t\t},\n\n\t\t\t/**\n\t\t * Sets the object type to filter by or null for all.\n\t\t *\n\t\t * @param {int} objectType file id or null\n\t\t */\n\t\t\tsetObjectType: function(objectType) {\n\t\t\t\tthis._objectType = objectType\n\t\t\t},\n\n\t\t\tinitialize: function(models, options) {\n\t\t\t\toptions = options || {}\n\t\t\t\tif (!_.isUndefined(options.objectId)) {\n\t\t\t\t\tthis._objectId = options.objectId\n\t\t\t\t}\n\t\t\t\tif (!_.isUndefined(options.objectType)) {\n\t\t\t\t\tthis._objectType = options.objectType\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tgetTagIds: function() {\n\t\t\t\treturn this.map(function(model) {\n\t\t\t\t\treturn model.id\n\t\t\t\t})\n\t\t\t},\n\t\t})\n\n\tOC.SystemTags = OC.SystemTags || {}\n\tOC.SystemTags.SystemTagsMappingCollection = SystemTagsMappingCollection\n})(OC)\n","/* eslint-disable */\n/*\n * Copyright (c) 2015\n *\n * This file is licensed under the Affero General Public License version 3\n * or later.\n *\n * See the COPYING-README file.\n *\n */\n\n(function(OC) {\n\n\tfunction filterFunction(model, term) {\n\t\treturn model.get('name').substr(0, term.length).toLowerCase() === term.toLowerCase()\n\t}\n\n\t/**\n\t * @class OCA.SystemTags.SystemTagsCollection\n\t * @classdesc\n\t *\n\t * Collection of tags assigned to a file\n\t *\n\t */\n\tvar SystemTagsCollection = OC.Backbone.Collection.extend(\n\t\t/** @lends OC.SystemTags.SystemTagsCollection.prototype */ {\n\n\t\t\tsync: OC.Backbone.davSync,\n\n\t\t\tmodel: OC.SystemTags.SystemTagModel,\n\n\t\t\turl: function() {\n\t\t\t\treturn OC.linkToRemote('dav') + '/systemtags/'\n\t\t\t},\n\n\t\t\tfilterByName: function(name) {\n\t\t\t\treturn this.filter(function(model) {\n\t\t\t\t\treturn filterFunction(model, name)\n\t\t\t\t})\n\t\t\t},\n\n\t\t\treset: function() {\n\t\t\t\tthis.fetched = false\n\t\t\t\treturn OC.Backbone.Collection.prototype.reset.apply(this, arguments)\n\t\t\t},\n\n\t\t\t/**\n\t\t * Lazy fetch.\n\t\t * Only fetches once, subsequent calls will directly call the success handler.\n\t\t *\n\t\t * @param options\n\t\t * @param [options.force] true to force fetch even if cached entries exist\n\t\t *\n\t\t * @see Backbone.Collection#fetch\n\t\t */\n\t\t\tfetch: function(options) {\n\t\t\t\tvar self = this\n\t\t\t\toptions = options || {}\n\t\t\t\tif (this.fetched || options.force) {\n\t\t\t\t// directly call handler\n\t\t\t\t\tif (options.success) {\n\t\t\t\t\t\toptions.success(this, null, options)\n\t\t\t\t\t}\n\t\t\t\t\t// trigger sync event\n\t\t\t\t\tthis.trigger('sync', this, null, options)\n\t\t\t\t\treturn Promise.resolve()\n\t\t\t\t}\n\n\t\t\t\tvar success = options.success\n\t\t\t\toptions = _.extend({}, options)\n\t\t\t\toptions.success = function() {\n\t\t\t\t\tself.fetched = true\n\t\t\t\t\tif (success) {\n\t\t\t\t\t\treturn success.apply(this, arguments)\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn OC.Backbone.Collection.prototype.fetch.call(this, options)\n\t\t\t}\n\t\t})\n\n\tOC.SystemTags = OC.SystemTags || {}\n\tOC.SystemTags.SystemTagsCollection = SystemTagsCollection\n\n\t/**\n\t * @type OC.SystemTags.SystemTagsCollection\n\t */\n\tOC.SystemTags.collection = new OC.SystemTags.SystemTagsCollection()\n})(OC)\n","/* eslint-disable */\n/*\n * Copyright (c) 2015\n *\n * This file is licensed under the Affero General Public License version 3\n * or later.\n *\n * See the COPYING-README file.\n *\n */\n\n/* global Handlebars */\n\n(function(OC) {\n\n\t/**\n\t * @class OC.SystemTags.SystemTagsInputField\n\t * @classdesc\n\t *\n\t * Displays a file's system tags\n\t *\n\t */\n\tvar SystemTagsInputField = OC.Backbone.View.extend(\n\t\t/** @lends OC.SystemTags.SystemTagsInputField.prototype */ {\n\n\t\t\t_rendered: false,\n\n\t\t\t_newTag: null,\n\n\t\t\t_lastUsedTags: [],\n\n\t\t\tclassName: 'systemTagsInputFieldContainer',\n\n\t\t\ttemplate: function(data) {\n\t\t\t\treturn '<input class=\"systemTagsInputField\" type=\"hidden\" name=\"tags\" value=\"\"/>'\n\t\t\t},\n\n\t\t\t/**\n\t\t * Creates a new SystemTagsInputField\n\t\t *\n\t\t * @param {Object} [options]\n\t\t * @param {string} [options.objectType=files] object type for which tags are assigned to\n\t\t * @param {bool} [options.multiple=false] whether to allow selecting multiple tags\n\t\t * @param {bool} [options.allowActions=true] whether tags can be renamed/delete within the dropdown\n\t\t * @param {bool} [options.allowCreate=true] whether new tags can be created\n\t\t * @param {bool} [options.isAdmin=true] whether the user is an administrator\n\t\t * @param {Function} options.initSelection function to convert selection to data\n\t\t */\n\t\t\tinitialize: function(options) {\n\t\t\t\toptions = options || {}\n\n\t\t\t\tthis._multiple = !!options.multiple\n\t\t\t\tthis._allowActions = _.isUndefined(options.allowActions) || !!options.allowActions\n\t\t\t\tthis._allowCreate = _.isUndefined(options.allowCreate) || !!options.allowCreate\n\t\t\t\tthis._isAdmin = !!options.isAdmin\n\n\t\t\t\tif (_.isFunction(options.initSelection)) {\n\t\t\t\t\tthis._initSelection = options.initSelection\n\t\t\t\t}\n\n\t\t\t\tthis.collection = options.collection || OC.SystemTags.collection\n\n\t\t\t\tvar self = this\n\t\t\t\tthis.collection.on('change:name remove', function() {\n\t\t\t\t// refresh selection\n\t\t\t\t\t_.defer(self._refreshSelection)\n\t\t\t\t})\n\n\t\t\t\t_.defer(_.bind(this._getLastUsedTags, this))\n\n\t\t\t\t_.bindAll(\n\t\t\t\t\tthis,\n\t\t\t\t\t'_refreshSelection',\n\t\t\t\t\t'_onClickRenameTag',\n\t\t\t\t\t'_onClickDeleteTag',\n\t\t\t\t\t'_onSelectTag',\n\t\t\t\t\t'_onDeselectTag',\n\t\t\t\t\t'_onSubmitRenameTag'\n\t\t\t\t)\n\t\t\t},\n\n\t\t\t_getLastUsedTags: function() {\n\t\t\t\tvar self = this\n\t\t\t\t$.ajax({\n\t\t\t\t\ttype: 'GET',\n\t\t\t\t\turl: OC.generateUrl('/apps/systemtags/lastused'),\n\t\t\t\t\tsuccess: function(response) {\n\t\t\t\t\t\tself._lastUsedTags = response\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\n\t\t\t/**\n\t\t * Refreshes the selection, triggering a call to\n\t\t * select2's initSelection\n\t\t */\n\t\t\t_refreshSelection: function() {\n\t\t\t\tthis.$tagsField.select2('val', this.$tagsField.val())\n\t\t\t},\n\n\t\t\t/**\n\t\t * Event handler whenever the user clicked the \"rename\" action.\n\t\t * This will display the rename field.\n\t\t */\n\t\t\t_onClickRenameTag: function(ev) {\n\t\t\t\tvar $item = $(ev.target).closest('.systemtags-item')\n\t\t\t\tvar tagId = $item.attr('data-id')\n\t\t\t\tvar tagModel = this.collection.get(tagId)\n\n\t\t\t\tvar oldName = tagModel.get('name')\n\t\t\t\tvar $renameForm = $(OC.SystemTags.Templates['result_form']({\n\t\t\t\t\tcid: this.cid,\n\t\t\t\t\tname: oldName,\n\t\t\t\t\tdeleteTooltip: t('core', 'Delete'),\n\t\t\t\t\trenameLabel: t('core', 'Rename'),\n\t\t\t\t\tisAdmin: this._isAdmin\n\t\t\t\t}))\n\t\t\t\t$item.find('.label').after($renameForm)\n\t\t\t\t$item.find('.label, .systemtags-actions').addClass('hidden')\n\t\t\t\t$item.closest('.select2-result').addClass('has-form')\n\n\t\t\t\t$renameForm.find('[title]').tooltip({\n\t\t\t\t\tplacement: 'bottom',\n\t\t\t\t\tcontainer: 'body'\n\t\t\t\t})\n\t\t\t\t$renameForm.find('input').focus().selectRange(0, oldName.length)\n\t\t\t\treturn false\n\t\t\t},\n\n\t\t\t/**\n\t\t * Event handler whenever the rename form has been submitted after\n\t\t * the user entered a new tag name.\n\t\t * This will submit the change to the server.\n\t\t *\n\t\t * @param {Object} ev event\n\t\t */\n\t\t\t_onSubmitRenameTag: function(ev) {\n\t\t\t\tev.preventDefault()\n\t\t\t\tvar $form = $(ev.target)\n\t\t\t\tvar $item = $form.closest('.systemtags-item')\n\t\t\t\tvar tagId = $item.attr('data-id')\n\t\t\t\tvar tagModel = this.collection.get(tagId)\n\t\t\t\tvar newName = $(ev.target).find('input').val().trim()\n\t\t\t\tif (newName && newName !== tagModel.get('name')) {\n\t\t\t\t\ttagModel.save({ 'name': newName })\n\t\t\t\t\t// TODO: spinner, and only change text after finished saving\n\t\t\t\t\t$item.find('.label').text(newName)\n\t\t\t\t}\n\t\t\t\t$item.find('.label, .systemtags-actions').removeClass('hidden')\n\t\t\t\t$form.remove()\n\t\t\t\t$item.closest('.select2-result').removeClass('has-form')\n\t\t\t},\n\n\t\t\t/**\n\t\t * Event handler whenever a tag must be deleted\n\t\t *\n\t\t * @param {Object} ev event\n\t\t */\n\t\t\t_onClickDeleteTag: function(ev) {\n\t\t\t\tvar $item = $(ev.target).closest('.systemtags-item')\n\t\t\t\tvar tagId = $item.attr('data-id')\n\t\t\t\tthis.collection.get(tagId).destroy()\n\t\t\t\t$(ev.target).tooltip('hide')\n\t\t\t\t$item.closest('.select2-result').remove()\n\t\t\t\t// TODO: spinner\n\t\t\t\treturn false\n\t\t\t},\n\n\t\t\t_addToSelect2Selection: function(selection) {\n\t\t\t\tvar data = this.$tagsField.select2('data')\n\t\t\t\tdata.push(selection)\n\t\t\t\tthis.$tagsField.select2('data', data)\n\t\t\t},\n\n\t\t\t/**\n\t\t * Event handler whenever a tag is selected.\n\t\t * Also called whenever tag creation is requested through the dummy tag object.\n\t\t *\n\t\t * @param {Object} e event\n\t\t */\n\t\t\t_onSelectTag: function(e) {\n\t\t\t\tvar self = this\n\t\t\t\tvar tag\n\t\t\t\tif (e.object && e.object.isNew) {\n\t\t\t\t// newly created tag, check if existing\n\t\t\t\t// create a new tag\n\t\t\t\t\ttag = this.collection.create({\n\t\t\t\t\t\tname: e.object.name.trim(),\n\t\t\t\t\t\tuserVisible: true,\n\t\t\t\t\t\tuserAssignable: true,\n\t\t\t\t\t\tcanAssign: true\n\t\t\t\t\t}, {\n\t\t\t\t\t\tsuccess: function(model) {\n\t\t\t\t\t\t\tself._addToSelect2Selection(model.toJSON())\n\t\t\t\t\t\t\tself._lastUsedTags.unshift(model.id)\n\t\t\t\t\t\t\tself.trigger('select', model)\n\t\t\t\t\t\t},\n\t\t\t\t\t\terror: function(model, xhr) {\n\t\t\t\t\t\t\tif (xhr.status === 409) {\n\t\t\t\t\t\t\t// re-fetch collection to get the missing tag\n\t\t\t\t\t\t\t\tself.collection.reset()\n\t\t\t\t\t\t\t\tself.collection.fetch({\n\t\t\t\t\t\t\t\t\tsuccess: function(collection) {\n\t\t\t\t\t\t\t\t\t// find the tag in the collection\n\t\t\t\t\t\t\t\t\t\tvar model = collection.where({\n\t\t\t\t\t\t\t\t\t\t\tname: e.object.name.trim(),\n\t\t\t\t\t\t\t\t\t\t\tuserVisible: true,\n\t\t\t\t\t\t\t\t\t\t\tuserAssignable: true\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\tif (model.length) {\n\t\t\t\t\t\t\t\t\t\t\tmodel = model[0]\n\t\t\t\t\t\t\t\t\t\t\t// the tag already exists or was already assigned,\n\t\t\t\t\t\t\t\t\t\t\t// add it to the list anyway\n\t\t\t\t\t\t\t\t\t\t\tself._addToSelect2Selection(model.toJSON())\n\t\t\t\t\t\t\t\t\t\t\tself.trigger('select', model)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\tthis.$tagsField.select2('close')\n\t\t\t\t\te.preventDefault()\n\t\t\t\t\treturn false\n\t\t\t\t} else {\n\t\t\t\t\ttag = this.collection.get(e.object.id)\n\t\t\t\t\tthis._lastUsedTags.unshift(tag.id)\n\t\t\t\t}\n\t\t\t\tthis._newTag = null\n\t\t\t\tthis.trigger('select', tag)\n\t\t\t},\n\n\t\t\t/**\n\t\t * Event handler whenever a tag gets deselected.\n\t\t *\n\t\t * @param {Object} e event\n\t\t */\n\t\t\t_onDeselectTag: function(e) {\n\t\t\t\tthis.trigger('deselect', e.choice.id)\n\t\t\t},\n\n\t\t\t/**\n\t\t * Autocomplete function for dropdown results\n\t\t *\n\t\t * @param {Object} query select2 query object\n\t\t */\n\t\t\t_queryTagsAutocomplete: function(query) {\n\t\t\t\tvar self = this\n\t\t\t\tthis.collection.fetch({\n\t\t\t\t\tsuccess: function(collection) {\n\t\t\t\t\t\tvar tagModels = collection.filterByName(query.term.trim())\n\t\t\t\t\t\tif (!self._isAdmin) {\n\t\t\t\t\t\t\ttagModels = _.filter(tagModels, function(tagModel) {\n\t\t\t\t\t\t\t\treturn tagModel.get('canAssign')\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\tquery.callback({\n\t\t\t\t\t\t\tresults: _.invoke(tagModels, 'toJSON')\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\n\t\t\t_preventDefault: function(e) {\n\t\t\t\te.stopPropagation()\n\t\t\t},\n\n\t\t\t/**\n\t\t * Formats a single dropdown result\n\t\t *\n\t\t * @param {Object} data data to format\n\t\t * @returns {string} HTML markup\n\t\t */\n\t\t\t_formatDropDownResult: function(data) {\n\t\t\t\treturn OC.SystemTags.Templates['result'](_.extend({\n\t\t\t\t\trenameTooltip: t('core', 'Rename'),\n\t\t\t\t\tallowActions: this._allowActions,\n\t\t\t\t\ttagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data)[0].innerHTML : null,\n\t\t\t\t\tisAdmin: this._isAdmin\n\t\t\t\t}, data))\n\t\t\t},\n\n\t\t\t/**\n\t\t * Formats a single selection item\n\t\t *\n\t\t * @param {Object} data data to format\n\t\t * @returns {string} HTML markup\n\t\t */\n\t\t\t_formatSelection: function(data) {\n\t\t\t\treturn OC.SystemTags.Templates['selection'](_.extend({\n\t\t\t\t\ttagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data)[0].innerHTML : null,\n\t\t\t\t\tisAdmin: this._isAdmin\n\t\t\t\t}, data))\n\t\t\t},\n\n\t\t\t/**\n\t\t * Create new dummy choice for select2 when the user\n\t\t * types an arbitrary string\n\t\t *\n\t\t * @param {string} term entered term\n\t\t * @returns {Object} dummy tag\n\t\t */\n\t\t\t_createSearchChoice: function(term) {\n\t\t\t\tterm = term.trim()\n\t\t\t\tif (this.collection.filter(function(entry) {\n\t\t\t\t\treturn entry.get('name') === term\n\t\t\t\t}).length) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tif (!this._newTag) {\n\t\t\t\t\tthis._newTag = {\n\t\t\t\t\t\tid: -1,\n\t\t\t\t\t\tname: term,\n\t\t\t\t\t\tuserAssignable: true,\n\t\t\t\t\t\tuserVisible: true,\n\t\t\t\t\t\tcanAssign: true,\n\t\t\t\t\t\tisNew: true\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis._newTag.name = term\n\t\t\t\t}\n\n\t\t\t\treturn this._newTag\n\t\t\t},\n\n\t\t\t_initSelection: function(element, callback) {\n\t\t\t\tvar self = this\n\t\t\t\tvar ids = $(element).val().split(',')\n\n\t\t\t\tfunction modelToSelection(model) {\n\t\t\t\t\tvar data = model.toJSON()\n\t\t\t\t\tif (!self._isAdmin && !data.canAssign) {\n\t\t\t\t\t// lock static tags for non-admins\n\t\t\t\t\t\tdata.locked = true\n\t\t\t\t\t}\n\t\t\t\t\treturn data\n\t\t\t\t}\n\n\t\t\t\tfunction findSelectedObjects(ids) {\n\t\t\t\t\tvar selectedModels = self.collection.filter(function(model) {\n\t\t\t\t\t\treturn ids.indexOf(model.id) >= 0 && (self._isAdmin || model.get('userVisible'))\n\t\t\t\t\t})\n\t\t\t\t\treturn _.map(selectedModels, modelToSelection)\n\t\t\t\t}\n\n\t\t\t\tthis.collection.fetch({\n\t\t\t\t\tsuccess: function() {\n\t\t\t\t\t\tcallback(findSelectedObjects(ids))\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\n\t\t\t/**\n\t\t * Renders this details view\n\t\t */\n\t\t\trender: function() {\n\t\t\t\tvar self = this\n\t\t\t\tthis.$el.html(this.template())\n\n\t\t\t\tthis.$el.find('[title]').tooltip({ placement: 'bottom' })\n\t\t\t\tthis.$tagsField = this.$el.find('[name=tags]')\n\t\t\t\tthis.$tagsField.select2({\n\t\t\t\t\tplaceholder: t('core', 'Collaborative tags'),\n\t\t\t\t\tcontainerCssClass: 'systemtags-select2-container',\n\t\t\t\t\tdropdownCssClass: 'systemtags-select2-dropdown',\n\t\t\t\t\tcloseOnSelect: false,\n\t\t\t\t\tallowClear: false,\n\t\t\t\t\tmultiple: this._multiple,\n\t\t\t\t\ttoggleSelect: this._multiple,\n\t\t\t\t\tquery: _.bind(this._queryTagsAutocomplete, this),\n\t\t\t\t\tid: function(tag) {\n\t\t\t\t\t\treturn tag.id\n\t\t\t\t\t},\n\t\t\t\t\tinitSelection: _.bind(this._initSelection, this),\n\t\t\t\t\tformatResult: _.bind(this._formatDropDownResult, this),\n\t\t\t\t\tformatSelection: _.bind(this._formatSelection, this),\n\t\t\t\t\tcreateSearchChoice: this._allowCreate ? _.bind(this._createSearchChoice, this) : undefined,\n\t\t\t\t\tsortResults: function(results) {\n\t\t\t\t\t\tvar selectedItems = _.pluck(self.$tagsField.select2('data'), 'id')\n\t\t\t\t\t\tresults.sort(function(a, b) {\n\t\t\t\t\t\t\tvar aSelected = selectedItems.indexOf(a.id) >= 0\n\t\t\t\t\t\t\tvar bSelected = selectedItems.indexOf(b.id) >= 0\n\t\t\t\t\t\t\tif (aSelected === bSelected) {\n\t\t\t\t\t\t\t\tvar aLastUsed = self._lastUsedTags.indexOf(a.id)\n\t\t\t\t\t\t\t\tvar bLastUsed = self._lastUsedTags.indexOf(b.id)\n\n\t\t\t\t\t\t\t\tif (aLastUsed !== bLastUsed) {\n\t\t\t\t\t\t\t\t\tif (bLastUsed === -1) {\n\t\t\t\t\t\t\t\t\t\treturn -1\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (aLastUsed === -1) {\n\t\t\t\t\t\t\t\t\t\treturn 1\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn aLastUsed < bLastUsed ? -1 : 1\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t// Both not found\n\t\t\t\t\t\t\t\treturn OC.Util.naturalSortCompare(a.name, b.name)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (aSelected && !bSelected) {\n\t\t\t\t\t\t\t\treturn -1\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn 1\n\t\t\t\t\t\t})\n\t\t\t\t\t\treturn results\n\t\t\t\t\t},\n\t\t\t\t\tformatNoMatches: function() {\n\t\t\t\t\t\treturn t('core', 'No tags found')\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t\t.on('select2-selecting', this._onSelectTag)\n\t\t\t\t\t.on('select2-removing', this._onDeselectTag)\n\n\t\t\t\tvar $dropDown = this.$tagsField.select2('dropdown')\n\t\t\t\t// register events for inside the dropdown\n\t\t\t\t$dropDown.on('mouseup', '.rename', this._onClickRenameTag)\n\t\t\t\t$dropDown.on('mouseup', '.delete', this._onClickDeleteTag)\n\t\t\t\t$dropDown.on('mouseup', '.select2-result-selectable.has-form', this._preventDefault)\n\t\t\t\t$dropDown.on('submit', '.systemtags-rename-form', this._onSubmitRenameTag)\n\n\t\t\t\tthis.delegateEvents()\n\t\t\t},\n\n\t\t\tremove: function() {\n\t\t\t\tif (this.$tagsField) {\n\t\t\t\t\tthis.$tagsField.select2('destroy')\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tgetValues: function() {\n\t\t\t\tthis.$tagsField.select2('val')\n\t\t\t},\n\n\t\t\tsetValues: function(values) {\n\t\t\t\tthis.$tagsField.select2('val', values)\n\t\t\t},\n\n\t\t\tsetData: function(data) {\n\t\t\t\tthis.$tagsField.select2('data', data)\n\t\t\t}\n\t\t})\n\n\tOC.SystemTags = OC.SystemTags || {}\n\tOC.SystemTags.SystemTagsInputField = SystemTagsInputField\n\n})(OC)\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./systemtags.scss\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"bdf318e0\", content, true, {});","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".systemtags-select2-dropdown .select2-result-label .checkmark{visibility:hidden;margin-left:-5px;margin-right:5px;padding:4px}.systemtags-select2-dropdown .select2-result-label .new-item .systemtags-actions{display:none}.systemtags-select2-dropdown .select2-selected .select2-result-label .checkmark{visibility:visible}.systemtags-select2-dropdown .select2-result-label .icon{display:inline-block;opacity:.5}.systemtags-select2-dropdown .select2-result-label .icon.rename{padding:4px}.systemtags-select2-dropdown .systemtags-actions{position:absolute;right:5px}.systemtags-select2-dropdown .systemtags-rename-form{display:inline-block;width:calc(100% - 20px);top:-6px;position:relative}.systemtags-select2-dropdown .systemtags-rename-form input{display:inline-block;height:30px;width:calc(100% - 40px)}.systemtags-select2-dropdown .label{width:85%;display:inline-block;overflow:hidden;text-overflow:ellipsis}.systemtags-select2-dropdown .label.hidden{display:none}.systemtags-select2-dropdown span{line-height:25px}.systemtags-select2-dropdown .systemtags-item{display:inline-block;height:25px;width:100%}.systemtags-select2-dropdown .select2-result-label{height:25px}.systemTagsInfoView,.systemtags-select2-container{width:100%}.systemTagsInfoView .select2-choices,.systemtags-select2-container .select2-choices{flex-wrap:nowrap !important;max-height:44px}.systemTagsInfoView .select2-choices .select2-search-choice.select2-locked .label,.systemtags-select2-container .select2-choices .select2-search-choice.select2-locked .label{opacity:0.5}#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result{padding:5px}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","\"use strict\";\n\n/*\n  MIT License http://www.opensource.org/licenses/mit-license.php\n  Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (useSourceMap) {\n  var list = []; // return the list of modules as css string\n\n  list.toString = function toString() {\n    return this.map(function (item) {\n      var content = cssWithMappingToString(item, useSourceMap);\n\n      if (item[2]) {\n        return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n      }\n\n      return content;\n    }).join('');\n  }; // import a list of modules into the list\n  // eslint-disable-next-line func-names\n\n\n  list.i = function (modules, mediaQuery) {\n    if (typeof modules === 'string') {\n      // eslint-disable-next-line no-param-reassign\n      modules = [[null, modules, '']];\n    }\n\n    for (var i = 0; i < modules.length; i++) {\n      var item = [].concat(modules[i]);\n\n      if (mediaQuery) {\n        if (!item[2]) {\n          item[2] = mediaQuery;\n        } else {\n          item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n        }\n      }\n\n      list.push(item);\n    }\n  };\n\n  return list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n  var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring\n\n  var cssMapping = item[3];\n\n  if (!cssMapping) {\n    return content;\n  }\n\n  if (useSourceMap && typeof btoa === 'function') {\n    var sourceMapping = toComment(cssMapping);\n    var sourceURLs = cssMapping.sources.map(function (source) {\n      return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || '').concat(source, \" */\");\n    });\n    return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n  }\n\n  return [content].join('\\n');\n} // Adapted from convert-source-map (MIT)\n\n\nfunction toComment(sourceMap) {\n  // eslint-disable-next-line no-undef\n  var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n  var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n  return \"/*# \".concat(data, \" */\");\n}","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n  var styles = []\n  var newStyles = {}\n  for (var i = 0; i < list.length; i++) {\n    var item = list[i]\n    var id = item[0]\n    var css = item[1]\n    var media = item[2]\n    var sourceMap = item[3]\n    var part = {\n      id: parentId + ':' + i,\n      css: css,\n      media: media,\n      sourceMap: sourceMap\n    }\n    if (!newStyles[id]) {\n      styles.push(newStyles[id] = { id: id, parts: [part] })\n    } else {\n      newStyles[id].parts.push(part)\n    }\n  }\n  return styles\n}\n","/*\n  MIT License http://www.opensource.org/licenses/mit-license.php\n  Author Tobias Koppers @sokra\n  Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n  if (!hasDocument) {\n    throw new Error(\n    'vue-style-loader cannot be used in a non-browser environment. ' +\n    \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n  ) }\n}\n\n/*\ntype StyleObject = {\n  id: number;\n  parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n  css: string;\n  media: string;\n  sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n  [id: number]: {\n    id: number,\n    refs: number,\n    parts: Array<(obj?: StyleObjectPart) => void>\n  }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nexport default function addStylesClient (parentId, list, _isProduction, _options) {\n  isProduction = _isProduction\n\n  options = _options || {}\n\n  var styles = listToStyles(parentId, list)\n  addStylesToDom(styles)\n\n  return function update (newList) {\n    var mayRemove = []\n    for (var i = 0; i < styles.length; i++) {\n      var item = styles[i]\n      var domStyle = stylesInDom[item.id]\n      domStyle.refs--\n      mayRemove.push(domStyle)\n    }\n    if (newList) {\n      styles = listToStyles(parentId, newList)\n      addStylesToDom(styles)\n    } else {\n      styles = []\n    }\n    for (var i = 0; i < mayRemove.length; i++) {\n      var domStyle = mayRemove[i]\n      if (domStyle.refs === 0) {\n        for (var j = 0; j < domStyle.parts.length; j++) {\n          domStyle.parts[j]()\n        }\n        delete stylesInDom[domStyle.id]\n      }\n    }\n  }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n  for (var i = 0; i < styles.length; i++) {\n    var item = styles[i]\n    var domStyle = stylesInDom[item.id]\n    if (domStyle) {\n      domStyle.refs++\n      for (var j = 0; j < domStyle.parts.length; j++) {\n        domStyle.parts[j](item.parts[j])\n      }\n      for (; j < item.parts.length; j++) {\n        domStyle.parts.push(addStyle(item.parts[j]))\n      }\n      if (domStyle.parts.length > item.parts.length) {\n        domStyle.parts.length = item.parts.length\n      }\n    } else {\n      var parts = []\n      for (var j = 0; j < item.parts.length; j++) {\n        parts.push(addStyle(item.parts[j]))\n      }\n      stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n    }\n  }\n}\n\nfunction createStyleElement () {\n  var styleElement = document.createElement('style')\n  styleElement.type = 'text/css'\n  head.appendChild(styleElement)\n  return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n  var update, remove\n  var styleElement = document.querySelector('style[' + ssrIdKey + '~=\"' + obj.id + '\"]')\n\n  if (styleElement) {\n    if (isProduction) {\n      // has SSR styles and in production mode.\n      // simply do nothing.\n      return noop\n    } else {\n      // has SSR styles but in dev mode.\n      // for some reason Chrome can't handle source map in server-rendered\n      // style tags - source maps in <style> only works if the style tag is\n      // created and inserted dynamically. So we remove the server rendered\n      // styles and inject new ones.\n      styleElement.parentNode.removeChild(styleElement)\n    }\n  }\n\n  if (isOldIE) {\n    // use singleton mode for IE9.\n    var styleIndex = singletonCounter++\n    styleElement = singletonElement || (singletonElement = createStyleElement())\n    update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n    remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n  } else {\n    // use multi-style-tag mode in all other cases\n    styleElement = createStyleElement()\n    update = applyToTag.bind(null, styleElement)\n    remove = function () {\n      styleElement.parentNode.removeChild(styleElement)\n    }\n  }\n\n  update(obj)\n\n  return function updateStyle (newObj /* StyleObjectPart */) {\n    if (newObj) {\n      if (newObj.css === obj.css &&\n          newObj.media === obj.media &&\n          newObj.sourceMap === obj.sourceMap) {\n        return\n      }\n      update(obj = newObj)\n    } else {\n      remove()\n    }\n  }\n}\n\nvar replaceText = (function () {\n  var textStore = []\n\n  return function (index, replacement) {\n    textStore[index] = replacement\n    return textStore.filter(Boolean).join('\\n')\n  }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n  var css = remove ? '' : obj.css\n\n  if (styleElement.styleSheet) {\n    styleElement.styleSheet.cssText = replaceText(index, css)\n  } else {\n    var cssNode = document.createTextNode(css)\n    var childNodes = styleElement.childNodes\n    if (childNodes[index]) styleElement.removeChild(childNodes[index])\n    if (childNodes.length) {\n      styleElement.insertBefore(cssNode, childNodes[index])\n    } else {\n      styleElement.appendChild(cssNode)\n    }\n  }\n}\n\nfunction applyToTag (styleElement, obj) {\n  var css = obj.css\n  var media = obj.media\n  var sourceMap = obj.sourceMap\n\n  if (media) {\n    styleElement.setAttribute('media', media)\n  }\n  if (options.ssrId) {\n    styleElement.setAttribute(ssrIdKey, obj.id)\n  }\n\n  if (sourceMap) {\n    // https://developer.chrome.com/devtools/docs/javascript-debugging\n    // this makes source maps inside style tags work properly in Chrome\n    css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n    // http://stackoverflow.com/a/26603875\n    css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n  }\n\n  if (styleElement.styleSheet) {\n    styleElement.styleSheet.cssText = css\n  } else {\n    while (styleElement.firstChild) {\n      styleElement.removeChild(styleElement.firstChild)\n    }\n    styleElement.appendChild(document.createTextNode(css))\n  }\n}\n"],"sourceRoot":""}