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

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Petry <vincent@nextcloud.com>2022-09-16 15:53:12 +0300
committerGitHub <noreply@github.com>2022-09-16 15:53:12 +0300
commit8880fe3fd1f4a02a65f1f3080feb7c08bb69cb47 (patch)
tree27343a6feef07b25f4c40c368c12eb0d42f943d1
parent1025d049c770e0512cc4074d60ed1486668a888e (diff)
parent3a591802fe7fd0ae117d95668a964f12a98ae5eb (diff)
Merge pull request #34096 from nextcloud/bug/noid/tag-loading
Tag loading
-rw-r--r--apps/systemtags/src/systemtagsfilelist.js4
-rw-r--r--core/js/tests/specs/systemtags/systemtagsSpec.js16
-rw-r--r--core/src/systemtags/systemtags.js19
-rw-r--r--core/src/systemtags/systemtagscollection.js5
-rw-r--r--core/src/systemtags/systemtagsinputfield.js5
-rw-r--r--dist/core-systemtags.js4
-rw-r--r--dist/core-systemtags.js.map2
-rw-r--r--dist/systemtags-systemtags.js4
-rw-r--r--dist/systemtags-systemtags.js.map2
9 files changed, 34 insertions, 27 deletions
diff --git a/apps/systemtags/src/systemtagsfilelist.js b/apps/systemtags/src/systemtagsfilelist.js
index 69e63706264..5f2eae521b2 100644
--- a/apps/systemtags/src/systemtagsfilelist.js
+++ b/apps/systemtags/src/systemtagsfilelist.js
@@ -110,6 +110,7 @@
toggleSelect: true,
separator: ',',
query: _.bind(this._queryTagsAutocomplete, this),
+ minimumInputLength: 3,
id(tag) {
return tag.id
@@ -148,8 +149,7 @@
},
formatSelection(tag) {
- return OC.SystemTags.getDescriptiveTag(tag)[0]
- .outerHTML
+ return OC.SystemTags.getDescriptiveTag(tag).outerHTML
},
sortResults(results) {
diff --git a/core/js/tests/specs/systemtags/systemtagsSpec.js b/core/js/tests/specs/systemtags/systemtagsSpec.js
index f6d99e62a3c..7d7987e9cb3 100644
--- a/core/js/tests/specs/systemtags/systemtagsSpec.js
+++ b/core/js/tests/specs/systemtags/systemtagsSpec.js
@@ -22,8 +22,8 @@
describe('OC.SystemTags tests', function() {
it('describes non existing tag', function() {
var $return = OC.SystemTags.getDescriptiveTag('23');
- expect($return.text()).toEqual('Non-existing tag #23');
- expect($return.hasClass('non-existing-tag')).toEqual(true);
+ expect($return.textContent).toEqual('Non-existing tag #23');
+ expect($return.classList.contains('non-existing-tag')).toEqual(true);
});
it('describes SystemTagModel', function() {
@@ -34,8 +34,8 @@ describe('OC.SystemTags tests', function() {
userVisible: true
});
var $return = OC.SystemTags.getDescriptiveTag(tag);
- expect($return.text()).toEqual('Twenty Three');
- expect($return.hasClass('non-existing-tag')).toEqual(false);
+ expect($return.textContent).toEqual('Twenty Three');
+ expect($return.classList.contains('non-existing-tag')).toEqual(false);
});
it('describes JSON tag object', function() {
@@ -45,8 +45,8 @@ describe('OC.SystemTags tests', function() {
userAssignable: true,
userVisible: true
});
- expect($return.text()).toEqual('Fourty Two');
- expect($return.hasClass('non-existing-tag')).toEqual(false);
+ expect($return.textContent).toEqual('Fourty Two');
+ expect($return.classList.contains('non-existing-tag')).toEqual(false);
});
it('scope', function() {
@@ -57,8 +57,8 @@ describe('OC.SystemTags tests', function() {
userAssignable: userAssignable,
userVisible: userVisible
});
- expect($return.text()).toEqual(expectedText);
- expect($return.hasClass('non-existing-tag')).toEqual(false);
+ expect($return.textContent).toEqual(expectedText);
+ expect($return.classList.contains('non-existing-tag')).toEqual(false);
}
testScope(true, true, 'Fourty Two');
diff --git a/core/src/systemtags/systemtags.js b/core/src/systemtags/systemtags.js
index 91ace6b3425..bbb2ecac1d8 100644
--- a/core/src/systemtags/systemtags.js
+++ b/core/src/systemtags/systemtags.js
@@ -35,23 +35,24 @@ import escapeHTML from 'escape-html'
/**
*
* @param {OC.SystemTags.SystemTagModel|Object|String} tag
- * @returns {jQuery}
+ * @returns {HTMLElement}
*/
getDescriptiveTag: function(tag) {
if (_.isUndefined(tag.name) && !_.isUndefined(tag.toJSON)) {
tag = tag.toJSON()
}
+ var $span = document.createElement('span')
+
if (_.isUndefined(tag.name)) {
- return $('<span>').addClass('non-existing-tag').text(
- t('core', 'Non-existing tag #{tag}', {
+ $span.classList.add('non-existing-tag')
+ $span.textContent = t('core', 'Non-existing tag #{tag}', {
tag: tag
- })
- )
+ })
+ return $span
}
- var $span = $('<span>')
- $span.append(escapeHTML(tag.name))
+ $span.textContent = escapeHTML(tag.name)
var scope
if (!tag.userAssignable) {
@@ -62,7 +63,9 @@ import escapeHTML from 'escape-html'
scope = t('core', 'invisible')
}
if (scope) {
- $span.append($('<em>').text(' (' + scope + ')'))
+ var $scope = document.createElement('em')
+ $scope.textContent = ' (' + scope + ')'
+ $span.appendChild($scope)
}
return $span
}
diff --git a/core/src/systemtags/systemtagscollection.js b/core/src/systemtags/systemtagscollection.js
index 685eb65182a..b123ef30fe4 100644
--- a/core/src/systemtags/systemtagscollection.js
+++ b/core/src/systemtags/systemtagscollection.js
@@ -69,7 +69,7 @@
fetch: function(options) {
var self = this
options = options || {}
- if (this.fetched || options.force) {
+ if (this.fetched || this.working || options.force) {
// directly call handler
if (options.success) {
options.success(this, null, options)
@@ -79,10 +79,13 @@
return Promise.resolve()
}
+ this.working = true
+
var success = options.success
options = _.extend({}, options)
options.success = function() {
self.fetched = true
+ self.working = false
if (success) {
return success.apply(this, arguments)
}
diff --git a/core/src/systemtags/systemtagsinputfield.js b/core/src/systemtags/systemtagsinputfield.js
index e1bbf5a34c6..1b6fb71f42d 100644
--- a/core/src/systemtags/systemtagsinputfield.js
+++ b/core/src/systemtags/systemtagsinputfield.js
@@ -292,7 +292,7 @@ import templateSelection from './templates/selection.handlebars'
return templateResult(_.extend({
renameTooltip: t('core', 'Rename'),
allowActions: this._allowActions,
- tagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data)[0].innerHTML : null,
+ tagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data).innerHTML : null,
isAdmin: this._isAdmin
}, data))
},
@@ -305,7 +305,7 @@ import templateSelection from './templates/selection.handlebars'
*/
_formatSelection: function(data) {
return templateSelection(_.extend({
- tagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data)[0].innerHTML : null,
+ tagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data).innerHTML : null,
isAdmin: this._isAdmin
}, data))
},
@@ -385,6 +385,7 @@ import templateSelection from './templates/selection.handlebars'
multiple: this._multiple,
toggleSelect: this._multiple,
query: _.bind(this._queryTagsAutocomplete, this),
+ minimumInputLength: 3,
id: function(tag) {
return tag.id
},
diff --git a/dist/core-systemtags.js b/dist/core-systemtags.js
index 38d054ca91a..aaf11a435a1 100644
--- a/dist/core-systemtags.js
+++ b/dist/core-systemtags.js
@@ -1,3 +1,3 @@
/*! For license information please see core-systemtags.js.LICENSE.txt */
-!function(){var e,n={16558:function(e,n,s){"use strict";var i=s(95573),l=s.n(i);!function(e){e.SystemTags={getDescriptiveTag:function(e){if(_.isUndefined(e.name)&&!_.isUndefined(e.toJSON)&&(e=e.toJSON()),_.isUndefined(e.name))return $("<span>").addClass("non-existing-tag").text(t("core","Non-existing tag #{tag}",{tag:e}));var n,s=$("<span>");return s.append(l()(e.name)),e.userAssignable||(n=t("core","restricted")),e.userVisible||(n=t("core","invisible")),n&&s.append($("<em>").text(" ("+n+")")),s}}}(OC),s(53076);var o=s(79753);!function(e){var t=e.Backbone.Collection.extend({sync:e.Backbone.davSync,usePUT:!0,_objectId:null,_objectType:"files",model:e.SystemTags.SystemTagModel,url:function(){return(0,o.generateRemoteUrl)("dav")+"/systemtags-relations/"+this._objectType+"/"+this._objectId},setObjectId:function(e){this._objectId=e},setObjectType:function(e){this._objectType=e},initialize:function(e,t){t=t||{},_.isUndefined(t.objectId)||(this._objectId=t.objectId),_.isUndefined(t.objectType)||(this._objectType=t.objectType)},getTagIds:function(){return this.map((function(e){return e.id}))}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagsMappingCollection=t}(OC),s(75026);var a=s(69318),c=s.n(a),r=s(25759),u=s.n(r),d=s(82188),p=s.n(d);!function(e){var n=e.Backbone.View.extend({_rendered:!1,_newTag:null,_lastUsedTags:[],className:"systemTagsInputFieldContainer",template:function(e){return'<input class="systemTagsInputField" type="hidden" name="tags" value=""/>'},initialize:function(t){t=t||{},this._multiple=!!t.multiple,this._allowActions=_.isUndefined(t.allowActions)||!!t.allowActions,this._allowCreate=_.isUndefined(t.allowCreate)||!!t.allowCreate,this._isAdmin=!!t.isAdmin,_.isFunction(t.initSelection)&&(this._initSelection=t.initSelection),this.collection=t.collection||e.SystemTags.collection;var n=this;this.collection.on("change:name remove",(function(){_.defer(n._refreshSelection)})),_.defer(_.bind(this._getLastUsedTags,this)),_.bindAll(this,"_refreshSelection","_onClickRenameTag","_onClickDeleteTag","_onSelectTag","_onDeselectTag","_onSubmitRenameTag")},_getLastUsedTags:function(){var t=this;$.ajax({type:"GET",url:e.generateUrl("/apps/systemtags/lastused"),success:function(e){t._lastUsedTags=e}})},_refreshSelection:function(){this.$tagsField.select2("val",this.$tagsField.val())},_onClickRenameTag:function(e){var n=$(e.target).closest(".systemtags-item"),s=n.attr("data-id"),i=this.collection.get(s).get("name"),l=$(u()({cid:this.cid,name:i,deleteTooltip:t("core","Delete"),renameLabel:t("core","Rename"),isAdmin:this._isAdmin}));return n.find(".label").after(l),n.find(".label, .systemtags-actions").addClass("hidden"),n.closest(".select2-result").addClass("has-form"),l.find("[title]").tooltip({placement:"bottom",container:"body"}),l.find("input").focus().selectRange(0,i.length),!1},_onSubmitRenameTag:function(e){e.preventDefault();var t=$(e.target),n=t.closest(".systemtags-item"),s=n.attr("data-id"),i=this.collection.get(s),l=$(e.target).find("input").val().trim();l&&l!==i.get("name")&&(i.save({name:l}),n.find(".label").text(l)),n.find(".label, .systemtags-actions").removeClass("hidden"),t.remove(),n.closest(".select2-result").removeClass("has-form")},_onClickDeleteTag:function(e){var t=$(e.target).closest(".systemtags-item"),n=t.attr("data-id");return this.collection.get(n).destroy(),$(e.target).tooltip("hide"),t.closest(".select2-result").remove(),!1},_addToSelect2Selection:function(e){var t=this.$tagsField.select2("data");t.push(e),this.$tagsField.select2("data",t)},_onSelectTag:function(e){var t,n=this;if(e.object&&e.object.isNew)return t=this.collection.create({name:e.object.name.trim(),userVisible:!0,userAssignable:!0,canAssign:!0},{success:function(e){n._addToSelect2Selection(e.toJSON()),n._lastUsedTags.unshift(e.id),n.trigger("select",e)},error:function(t,s){409===s.status&&(n.collection.reset(),n.collection.fetch({success:function(t){var s=t.where({name:e.object.name.trim(),userVisible:!0,userAssignable:!0});s.length&&(s=s[0],n._addToSelect2Selection(s.toJSON()),n.trigger("select",s))}}))}}),this.$tagsField.select2("close"),e.preventDefault(),!1;t=this.collection.get(e.object.id),this._lastUsedTags.unshift(t.id),this._newTag=null,this.trigger("select",t)},_onDeselectTag:function(e){this.trigger("deselect",e.choice.id)},_queryTagsAutocomplete:function(e){var t=this;this.collection.fetch({success:function(n){var s=n.filterByName(e.term.trim());t._isAdmin||(s=_.filter(s,(function(e){return e.get("canAssign")}))),e.callback({results:_.invoke(s,"toJSON")})}})},_preventDefault:function(e){e.stopPropagation()},_formatDropDownResult:function(n){return c()(_.extend({renameTooltip:t("core","Rename"),allowActions:this._allowActions,tagMarkup:this._isAdmin?e.SystemTags.getDescriptiveTag(n)[0].innerHTML:null,isAdmin:this._isAdmin},n))},_formatSelection:function(t){return p()(_.extend({tagMarkup:this._isAdmin?e.SystemTags.getDescriptiveTag(t)[0].innerHTML:null,isAdmin:this._isAdmin},t))},_createSearchChoice:function(e){if(e=e.trim(),!this.collection.filter((function(t){return t.get("name")===e})).length)return this._newTag?this._newTag.name=e:this._newTag={id:-1,name:e,userAssignable:!0,userVisible:!0,canAssign:!0,isNew:!0},this._newTag},_initSelection:function(e,t){var n=this,s=$(e).val().split(",");function i(e){var t=e.toJSON();return n._isAdmin||t.canAssign||(t.locked=!0),t}this.collection.fetch({success:function(){t(function(e){var t=n.collection.filter((function(t){return e.indexOf(t.id)>=0&&(n._isAdmin||t.get("userVisible"))}));return _.map(t,i)}(s))}})},render:function(){var n=this;this.$el.html(this.template()),this.$el.find("[title]").tooltip({placement:"bottom"}),this.$tagsField=this.$el.find("[name=tags]"),this.$tagsField.select2({placeholder:t("core","Collaborative tags"),containerCssClass:"systemtags-select2-container",dropdownCssClass:"systemtags-select2-dropdown",closeOnSelect:!1,allowClear:!1,multiple:this._multiple,toggleSelect:this._multiple,query:_.bind(this._queryTagsAutocomplete,this),id:function(e){return e.id},initSelection:_.bind(this._initSelection,this),formatResult:_.bind(this._formatDropDownResult,this),formatSelection:_.bind(this._formatSelection,this),createSearchChoice:this._allowCreate?_.bind(this._createSearchChoice,this):void 0,sortResults:function(t){var s=_.pluck(n.$tagsField.select2("data"),"id");return t.sort((function(t,i){var l=s.indexOf(t.id)>=0,o=s.indexOf(i.id)>=0;if(l===o){var a=n._lastUsedTags.indexOf(t.id),c=n._lastUsedTags.indexOf(i.id);return a!==c?-1===c?-1:-1===a?1:a<c?-1:1:e.Util.naturalSortCompare(t.name,i.name)}return l&&!o?-1:1})),t},formatNoMatches:function(){return t("core","No tags found")}}).on("select2-selecting",this._onSelectTag).on("select2-removing",this._onDeselectTag);var s=this.$tagsField.select2("dropdown");s.on("mouseup",".rename",this._onClickRenameTag),s.on("mouseup",".delete",this._onClickDeleteTag),s.on("mouseup",".select2-result-selectable.has-form",this._preventDefault),s.on("submit",".systemtags-rename-form",this._onSubmitRenameTag),this.delegateEvents()},remove:function(){this.$tagsField&&this.$tagsField.select2("destroy")},getValues:function(){this.$tagsField.select2("val")},setValues:function(e){this.$tagsField.select2("val",e)},setData:function(e){this.$tagsField.select2("data",e)}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagsInputField=n}(OC);var m=s(93379),h=s.n(m),g=s(7795),f=s.n(g),A=s(90569),y=s.n(A),C=s(3565),b=s.n(C),v=s(19216),T=s.n(v),w=s(44589),S=s.n(w),k=s(9529),x={};x.styleTagTransform=S(),x.setAttributes=b(),x.insert=y().bind(null,"head"),x.domAPI=f(),x.insertStyleElement=T(),h()(k.Z,x),k.Z&&k.Z.locals&&k.Z.locals},53076:function(){!function(e){_.extend(e.Files.Client,{PROPERTY_FILEID:"{"+e.Files.Client.NS_OWNCLOUD+"}id",PROPERTY_CAN_ASSIGN:"{"+e.Files.Client.NS_OWNCLOUD+"}can-assign",PROPERTY_DISPLAYNAME:"{"+e.Files.Client.NS_OWNCLOUD+"}display-name",PROPERTY_USERVISIBLE:"{"+e.Files.Client.NS_OWNCLOUD+"}user-visible",PROPERTY_USERASSIGNABLE:"{"+e.Files.Client.NS_OWNCLOUD+"}user-assignable"});var t=e.Backbone.Model.extend({sync:e.Backbone.davSync,defaults:{userVisible:!0,userAssignable:!0,canAssign:!0},davProperties:{id:e.Files.Client.PROPERTY_FILEID,name:e.Files.Client.PROPERTY_DISPLAYNAME,userVisible:e.Files.Client.PROPERTY_USERVISIBLE,userAssignable:e.Files.Client.PROPERTY_USERASSIGNABLE,canAssign:e.Files.Client.PROPERTY_CAN_ASSIGN},parse:function(e){return{id:e.id,name:e.name,userVisible:!0===e.userVisible||"true"===e.userVisible,userAssignable:!0===e.userAssignable||"true"===e.userAssignable,canAssign:!0===e.canAssign||"true"===e.canAssign}}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagModel=t}(OC)},75026:function(){!function(e){var t=e.Backbone.Collection.extend({sync:e.Backbone.davSync,model:e.SystemTags.SystemTagModel,url:function(){return e.linkToRemote("dav")+"/systemtags/"},filterByName:function(e){return this.filter((function(t){return function(e,t){return e.get("name").substr(0,t.length).toLowerCase()===t.toLowerCase()}(t,e)}))},reset:function(){return this.fetched=!1,e.Backbone.Collection.prototype.reset.apply(this,arguments)},fetch:function(t){var n=this;if(t=t||{},this.fetched||t.force)return t.success&&t.success(this,null,t),this.trigger("sync",this,null,t),Promise.resolve();var s=t.success;return(t=_.extend({},t)).success=function(){if(n.fetched=!0,s)return s.apply(this,arguments)},e.Backbone.Collection.prototype.fetch.call(this,t)}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagsCollection=t,e.SystemTags.collection=new e.SystemTags.SystemTagsCollection}(OC)},9529:function(e,t,n){"use strict";var s=n(87537),i=n.n(s),l=n(23645),o=n.n(l)()(i());o.push([e.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:.5}#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result{padding:5px}","",{version:3,sources:["webpack://./core/css/systemtags.scss"],names:[],mappings:"AAcE,8DACC,iBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CAED,iFACC,YAAA,CAGF,gFACC,kBAAA,CAED,yDACC,oBAAA,CACA,UAAA,CACA,gEACC,WAAA,CAGF,iDACC,iBAAA,CACA,SAAA,CAED,qDACC,oBAAA,CACA,uBAAA,CACA,QAAA,CACA,iBAAA,CACA,2DACC,oBAAA,CACA,WAAA,CACA,uBAAA,CAGF,oCACC,SAAA,CACA,oBAAA,CACA,eAAA,CACA,sBAAA,CACA,2CACC,YAAA,CAGF,kCACC,gBAAA,CAED,8CACC,oBAAA,CACA,WAAA,CACA,UAAA,CAED,mDACC,WAAA,CAIF,kDAEC,UAAA,CAEA,oFACC,2BAAA,CACA,eAAA,CAGD,8KACC,UAAA,CAIF,6EACC,WAAA",sourcesContent:["/**\n * @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\n * @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\n * @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\n * @copyright Copyright (c) 2016, Vincent Petry <pvince81@owncloud.com>\n * @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\n * @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n */\n\n.systemtags-select2-dropdown {\n\t.select2-result-label {\n\t\t.checkmark {\n\t\t\tvisibility: hidden;\n\t\t\tmargin-left: -5px;\n\t\t\tmargin-right: 5px;\n\t\t\tpadding: 4px;\n\t\t}\n\t\t.new-item .systemtags-actions {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\t.select2-selected .select2-result-label .checkmark {\n\t\tvisibility: visible;\n\t}\n\t.select2-result-label .icon {\n\t\tdisplay: inline-block;\n\t\topacity: .5;\n\t\t&.rename {\n\t\t\tpadding: 4px;\n\t\t}\n\t}\n\t.systemtags-actions {\n\t\tposition: absolute;\n\t\tright: 5px;\n\t}\n\t.systemtags-rename-form {\n\t\tdisplay: inline-block;\n\t\twidth: calc(100% - 20px);\n\t\ttop: -6px;\n\t\tposition: relative;\n\t\tinput {\n\t\t\tdisplay: inline-block;\n\t\t\theight: 30px;\n\t\t\twidth: calc(100% - 40px);\n\t\t}\n\t}\n\t.label {\n\t\twidth: 85%;\n\t\tdisplay: inline-block;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\t&.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\tspan {\n\t\tline-height: 25px;\n\t}\n\t.systemtags-item {\n\t\tdisplay: inline-block;\n\t\theight: 25px;\n\t\twidth: 100%;\n\t}\n\t.select2-result-label {\n\t\theight: 25px;\n\t}\n}\n\n.systemTagsInfoView,\n.systemtags-select2-container {\n\twidth: 100%;\n\n\t.select2-choices {\n\t\tflex-wrap: nowrap !important;\n\t\tmax-height: 44px;\n\t}\n\n\t.select2-choices .select2-search-choice.select2-locked .label {\n\t\topacity: 0.5;\n\t}\n}\n\n#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result {\n\tpadding: 5px;\n}\n"],sourceRoot:""}]),t.Z=o},69318:function(e,t,n){var s=n(40202);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return" new-item"},3:function(e,t,n,s,i){var l,o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<span class="label">'+(null!=(l="function"==typeof(o=null!=(o=a(n,"tagMarkup")||(null!=t?a(t,"tagMarkup"):t))?o:e.hooks.helperMissing)?o.call(null!=t?t:e.nullContext||{},{name:"tagMarkup",hash:{},data:i,loc:{start:{line:4,column:22},end:{line:4,column:37}}}):o)?l:"")+"</span>\n"},5:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<span class="label">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"name")||(null!=t?o(t,"name"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:i,loc:{start:{line:6,column:22},end:{line:6,column:30}}}):l)+"</span>\n"},7:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<span class="systemtags-actions">\n\t\t\t<a href="#" class="rename icon icon-rename" title="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"renameTooltip")||(null!=t?o(t,"renameTooltip"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"renameTooltip",hash:{},data:i,loc:{start:{line:10,column:54},end:{line:10,column:71}}}):l)+'"></a>\n\t\t</span>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a,c=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,u="function",d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]},p='<span class="systemtags-item'+(null!=(l=d(n,"if").call(c,null!=t?d(t,"isNew"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:28},end:{line:1,column:57}}}))?l:"")+'" data-id="'+e.escapeExpression(typeof(o=null!=(o=d(n,"id")||(null!=t?d(t,"id"):t))?o:r)===u?o.call(c,{name:"id",hash:{},data:i,loc:{start:{line:1,column:68},end:{line:1,column:74}}}):o)+'">\n<span class="checkmark icon icon-checkmark"></span>\n'+(null!=(l=d(n,"if").call(c,null!=t?d(t,"isAdmin"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.program(5,i,0),data:i,loc:{start:{line:3,column:1},end:{line:7,column:8}}}))?l:"");return o=null!=(o=d(n,"allowActions")||(null!=t?d(t,"allowActions"):t))?o:r,a={name:"allowActions",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:8,column:1},end:{line:12,column:18}}},l=typeof o===u?o.call(c,a):o,d(n,"allowActions")||(l=e.hooks.blockHelperMissing.call(t,l,a)),null!=l&&(p+=l),p+"</span>\n"},useData:!0})},25759:function(e,t,n){var s=n(40202);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<a href="#" class="delete icon icon-delete" title="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"deleteTooltip")||(null!=t?o(t,"deleteTooltip"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"deleteTooltip",hash:{},data:i,loc:{start:{line:5,column:53},end:{line:5,column:70}}}):l)+'"></a>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},c=e.hooks.helperMissing,r="function",u=e.escapeExpression,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<form class="systemtags-rename-form">\n\t <label class="hidden-visually" for="'+u(typeof(o=null!=(o=d(n,"cid")||(null!=t?d(t,"cid"):t))?o:c)===r?o.call(a,{name:"cid",hash:{},data:i,loc:{start:{line:2,column:38},end:{line:2,column:45}}}):o)+'-rename-input">'+u(typeof(o=null!=(o=d(n,"renameLabel")||(null!=t?d(t,"renameLabel"):t))?o:c)===r?o.call(a,{name:"renameLabel",hash:{},data:i,loc:{start:{line:2,column:60},end:{line:2,column:75}}}):o)+'</label>\n\t<input id="'+u(typeof(o=null!=(o=d(n,"cid")||(null!=t?d(t,"cid"):t))?o:c)===r?o.call(a,{name:"cid",hash:{},data:i,loc:{start:{line:3,column:12},end:{line:3,column:19}}}):o)+'-rename-input" type="text" value="'+u(typeof(o=null!=(o=d(n,"name")||(null!=t?d(t,"name"):t))?o:c)===r?o.call(a,{name:"name",hash:{},data:i,loc:{start:{line:3,column:53},end:{line:3,column:61}}}):o)+'">\n'+(null!=(l=d(n,"if").call(a,null!=t?d(t,"isAdmin"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:1},end:{line:6,column:8}}}))?l:"")+"</form>\n"},useData:!0})},82188:function(e,t,n){var s=n(40202);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t<span class="label">'+(null!=(l="function"==typeof(o=null!=(o=a(n,"tagMarkup")||(null!=t?a(t,"tagMarkup"):t))?o:e.hooks.helperMissing)?o.call(null!=t?t:e.nullContext||{},{name:"tagMarkup",hash:{},data:i,loc:{start:{line:2,column:21},end:{line:2,column:36}}}):o)?l:"")+"</span>\n"},3:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t<span class="label">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"name")||(null!=t?o(t,"name"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:i,loc:{start:{line:4,column:21},end:{line:4,column:29}}}):l)+"</span>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"isAdmin"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.program(3,i,0),data:i,loc:{start:{line:1,column:0},end:{line:5,column:7}}}))?l:""},useData:!0})}},s={};function i(e){var t=s[e];if(void 0!==t)return t.exports;var l=s[e]={id:e,loaded:!1,exports:{}};return n[e].call(l.exports,l,l.exports,i),l.loaded=!0,l.exports}i.m=n,i.amdD=function(){throw new Error("define cannot be used indirect")},i.amdO={},e=[],i.O=function(t,n,s,l){if(!n){var o=1/0;for(u=0;u<e.length;u++){n=e[u][0],s=e[u][1],l=e[u][2];for(var a=!0,c=0;c<n.length;c++)(!1&l||o>=l)&&Object.keys(i.O).every((function(e){return i.O[e](n[c])}))?n.splice(c--,1):(a=!1,l<o&&(o=l));if(a){e.splice(u--,1);var r=s();void 0!==r&&(t=r)}}return t}l=l||0;for(var u=e.length;u>0&&e[u-1][2]>l;u--)e[u]=e[u-1];e[u]=[n,s,l]},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,{a:t}),t},i.d=function(e,t){for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},i.j=1686,function(){i.b=document.baseURI||self.location.href;var e={1686:0};i.O.j=function(t){return 0===e[t]};var t=function(t,n){var s,l,o=n[0],a=n[1],c=n[2],r=0;if(o.some((function(t){return 0!==e[t]}))){for(s in a)i.o(a,s)&&(i.m[s]=a[s]);if(c)var u=c(i)}for(t&&t(n);r<o.length;r++)l=o[r],i.o(e,l)&&e[l]&&e[l][0](),e[l]=0;return i.O(u)},n=self.webpackChunknextcloud=self.webpackChunknextcloud||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))}(),i.nc=void 0;var l=i.O(void 0,[7874],(function(){return i(16558)}));l=i.O(l)}();
-//# sourceMappingURL=core-systemtags.js.map?v=47675efc1feed2a45be1 \ No newline at end of file
+!function(){var e,n={16558:function(e,n,s){"use strict";var i=s(95573),l=s.n(i);!function(e){e.SystemTags={getDescriptiveTag:function(e){_.isUndefined(e.name)&&!_.isUndefined(e.toJSON)&&(e=e.toJSON());var n,s=document.createElement("span");if(_.isUndefined(e.name))return s.classList.add("non-existing-tag"),s.textContent=t("core","Non-existing tag #{tag}",{tag:e}),s;if(s.textContent=l()(e.name),e.userAssignable||(n=t("core","restricted")),e.userVisible||(n=t("core","invisible")),n){var i=document.createElement("em");i.textContent=" ("+n+")",s.appendChild(i)}return s}}}(OC),s(53076);var o=s(79753);!function(e){var t=e.Backbone.Collection.extend({sync:e.Backbone.davSync,usePUT:!0,_objectId:null,_objectType:"files",model:e.SystemTags.SystemTagModel,url:function(){return(0,o.generateRemoteUrl)("dav")+"/systemtags-relations/"+this._objectType+"/"+this._objectId},setObjectId:function(e){this._objectId=e},setObjectType:function(e){this._objectType=e},initialize:function(e,t){t=t||{},_.isUndefined(t.objectId)||(this._objectId=t.objectId),_.isUndefined(t.objectType)||(this._objectType=t.objectType)},getTagIds:function(){return this.map((function(e){return e.id}))}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagsMappingCollection=t}(OC),s(75026);var a=s(69318),c=s.n(a),r=s(25759),u=s.n(r),d=s(82188),p=s.n(d);!function(e){var n=e.Backbone.View.extend({_rendered:!1,_newTag:null,_lastUsedTags:[],className:"systemTagsInputFieldContainer",template:function(e){return'<input class="systemTagsInputField" type="hidden" name="tags" value=""/>'},initialize:function(t){t=t||{},this._multiple=!!t.multiple,this._allowActions=_.isUndefined(t.allowActions)||!!t.allowActions,this._allowCreate=_.isUndefined(t.allowCreate)||!!t.allowCreate,this._isAdmin=!!t.isAdmin,_.isFunction(t.initSelection)&&(this._initSelection=t.initSelection),this.collection=t.collection||e.SystemTags.collection;var n=this;this.collection.on("change:name remove",(function(){_.defer(n._refreshSelection)})),_.defer(_.bind(this._getLastUsedTags,this)),_.bindAll(this,"_refreshSelection","_onClickRenameTag","_onClickDeleteTag","_onSelectTag","_onDeselectTag","_onSubmitRenameTag")},_getLastUsedTags:function(){var t=this;$.ajax({type:"GET",url:e.generateUrl("/apps/systemtags/lastused"),success:function(e){t._lastUsedTags=e}})},_refreshSelection:function(){this.$tagsField.select2("val",this.$tagsField.val())},_onClickRenameTag:function(e){var n=$(e.target).closest(".systemtags-item"),s=n.attr("data-id"),i=this.collection.get(s).get("name"),l=$(u()({cid:this.cid,name:i,deleteTooltip:t("core","Delete"),renameLabel:t("core","Rename"),isAdmin:this._isAdmin}));return n.find(".label").after(l),n.find(".label, .systemtags-actions").addClass("hidden"),n.closest(".select2-result").addClass("has-form"),l.find("[title]").tooltip({placement:"bottom",container:"body"}),l.find("input").focus().selectRange(0,i.length),!1},_onSubmitRenameTag:function(e){e.preventDefault();var t=$(e.target),n=t.closest(".systemtags-item"),s=n.attr("data-id"),i=this.collection.get(s),l=$(e.target).find("input").val().trim();l&&l!==i.get("name")&&(i.save({name:l}),n.find(".label").text(l)),n.find(".label, .systemtags-actions").removeClass("hidden"),t.remove(),n.closest(".select2-result").removeClass("has-form")},_onClickDeleteTag:function(e){var t=$(e.target).closest(".systemtags-item"),n=t.attr("data-id");return this.collection.get(n).destroy(),$(e.target).tooltip("hide"),t.closest(".select2-result").remove(),!1},_addToSelect2Selection:function(e){var t=this.$tagsField.select2("data");t.push(e),this.$tagsField.select2("data",t)},_onSelectTag:function(e){var t,n=this;if(e.object&&e.object.isNew)return t=this.collection.create({name:e.object.name.trim(),userVisible:!0,userAssignable:!0,canAssign:!0},{success:function(e){n._addToSelect2Selection(e.toJSON()),n._lastUsedTags.unshift(e.id),n.trigger("select",e)},error:function(t,s){409===s.status&&(n.collection.reset(),n.collection.fetch({success:function(t){var s=t.where({name:e.object.name.trim(),userVisible:!0,userAssignable:!0});s.length&&(s=s[0],n._addToSelect2Selection(s.toJSON()),n.trigger("select",s))}}))}}),this.$tagsField.select2("close"),e.preventDefault(),!1;t=this.collection.get(e.object.id),this._lastUsedTags.unshift(t.id),this._newTag=null,this.trigger("select",t)},_onDeselectTag:function(e){this.trigger("deselect",e.choice.id)},_queryTagsAutocomplete:function(e){var t=this;this.collection.fetch({success:function(n){var s=n.filterByName(e.term.trim());t._isAdmin||(s=_.filter(s,(function(e){return e.get("canAssign")}))),e.callback({results:_.invoke(s,"toJSON")})}})},_preventDefault:function(e){e.stopPropagation()},_formatDropDownResult:function(n){return c()(_.extend({renameTooltip:t("core","Rename"),allowActions:this._allowActions,tagMarkup:this._isAdmin?e.SystemTags.getDescriptiveTag(n).innerHTML:null,isAdmin:this._isAdmin},n))},_formatSelection:function(t){return p()(_.extend({tagMarkup:this._isAdmin?e.SystemTags.getDescriptiveTag(t).innerHTML:null,isAdmin:this._isAdmin},t))},_createSearchChoice:function(e){if(e=e.trim(),!this.collection.filter((function(t){return t.get("name")===e})).length)return this._newTag?this._newTag.name=e:this._newTag={id:-1,name:e,userAssignable:!0,userVisible:!0,canAssign:!0,isNew:!0},this._newTag},_initSelection:function(e,t){var n=this,s=$(e).val().split(",");function i(e){var t=e.toJSON();return n._isAdmin||t.canAssign||(t.locked=!0),t}this.collection.fetch({success:function(){t(function(e){var t=n.collection.filter((function(t){return e.indexOf(t.id)>=0&&(n._isAdmin||t.get("userVisible"))}));return _.map(t,i)}(s))}})},render:function(){var n=this;this.$el.html(this.template()),this.$el.find("[title]").tooltip({placement:"bottom"}),this.$tagsField=this.$el.find("[name=tags]"),this.$tagsField.select2({placeholder:t("core","Collaborative tags"),containerCssClass:"systemtags-select2-container",dropdownCssClass:"systemtags-select2-dropdown",closeOnSelect:!1,allowClear:!1,multiple:this._multiple,toggleSelect:this._multiple,query:_.bind(this._queryTagsAutocomplete,this),minimumInputLength:3,id:function(e){return e.id},initSelection:_.bind(this._initSelection,this),formatResult:_.bind(this._formatDropDownResult,this),formatSelection:_.bind(this._formatSelection,this),createSearchChoice:this._allowCreate?_.bind(this._createSearchChoice,this):void 0,sortResults:function(t){var s=_.pluck(n.$tagsField.select2("data"),"id");return t.sort((function(t,i){var l=s.indexOf(t.id)>=0,o=s.indexOf(i.id)>=0;if(l===o){var a=n._lastUsedTags.indexOf(t.id),c=n._lastUsedTags.indexOf(i.id);return a!==c?-1===c?-1:-1===a?1:a<c?-1:1:e.Util.naturalSortCompare(t.name,i.name)}return l&&!o?-1:1})),t},formatNoMatches:function(){return t("core","No tags found")}}).on("select2-selecting",this._onSelectTag).on("select2-removing",this._onDeselectTag);var s=this.$tagsField.select2("dropdown");s.on("mouseup",".rename",this._onClickRenameTag),s.on("mouseup",".delete",this._onClickDeleteTag),s.on("mouseup",".select2-result-selectable.has-form",this._preventDefault),s.on("submit",".systemtags-rename-form",this._onSubmitRenameTag),this.delegateEvents()},remove:function(){this.$tagsField&&this.$tagsField.select2("destroy")},getValues:function(){this.$tagsField.select2("val")},setValues:function(e){this.$tagsField.select2("val",e)},setData:function(e){this.$tagsField.select2("data",e)}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagsInputField=n}(OC);var m=s(93379),h=s.n(m),g=s(7795),f=s.n(g),A=s(90569),y=s.n(A),C=s(3565),b=s.n(C),v=s(19216),T=s.n(v),w=s(44589),S=s.n(w),k=s(9529),x={};x.styleTagTransform=S(),x.setAttributes=b(),x.insert=y().bind(null,"head"),x.domAPI=f(),x.insertStyleElement=T(),h()(k.Z,x),k.Z&&k.Z.locals&&k.Z.locals},53076:function(){!function(e){_.extend(e.Files.Client,{PROPERTY_FILEID:"{"+e.Files.Client.NS_OWNCLOUD+"}id",PROPERTY_CAN_ASSIGN:"{"+e.Files.Client.NS_OWNCLOUD+"}can-assign",PROPERTY_DISPLAYNAME:"{"+e.Files.Client.NS_OWNCLOUD+"}display-name",PROPERTY_USERVISIBLE:"{"+e.Files.Client.NS_OWNCLOUD+"}user-visible",PROPERTY_USERASSIGNABLE:"{"+e.Files.Client.NS_OWNCLOUD+"}user-assignable"});var t=e.Backbone.Model.extend({sync:e.Backbone.davSync,defaults:{userVisible:!0,userAssignable:!0,canAssign:!0},davProperties:{id:e.Files.Client.PROPERTY_FILEID,name:e.Files.Client.PROPERTY_DISPLAYNAME,userVisible:e.Files.Client.PROPERTY_USERVISIBLE,userAssignable:e.Files.Client.PROPERTY_USERASSIGNABLE,canAssign:e.Files.Client.PROPERTY_CAN_ASSIGN},parse:function(e){return{id:e.id,name:e.name,userVisible:!0===e.userVisible||"true"===e.userVisible,userAssignable:!0===e.userAssignable||"true"===e.userAssignable,canAssign:!0===e.canAssign||"true"===e.canAssign}}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagModel=t}(OC)},75026:function(){!function(e){var t=e.Backbone.Collection.extend({sync:e.Backbone.davSync,model:e.SystemTags.SystemTagModel,url:function(){return e.linkToRemote("dav")+"/systemtags/"},filterByName:function(e){return this.filter((function(t){return function(e,t){return e.get("name").substr(0,t.length).toLowerCase()===t.toLowerCase()}(t,e)}))},reset:function(){return this.fetched=!1,e.Backbone.Collection.prototype.reset.apply(this,arguments)},fetch:function(t){var n=this;if(t=t||{},this.fetched||this.working||t.force)return t.success&&t.success(this,null,t),this.trigger("sync",this,null,t),Promise.resolve();this.working=!0;var s=t.success;return(t=_.extend({},t)).success=function(){if(n.fetched=!0,n.working=!1,s)return s.apply(this,arguments)},e.Backbone.Collection.prototype.fetch.call(this,t)}});e.SystemTags=e.SystemTags||{},e.SystemTags.SystemTagsCollection=t,e.SystemTags.collection=new e.SystemTags.SystemTagsCollection}(OC)},9529:function(e,t,n){"use strict";var s=n(87537),i=n.n(s),l=n(23645),o=n.n(l)()(i());o.push([e.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:.5}#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result{padding:5px}","",{version:3,sources:["webpack://./core/css/systemtags.scss"],names:[],mappings:"AAcE,8DACC,iBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CAED,iFACC,YAAA,CAGF,gFACC,kBAAA,CAED,yDACC,oBAAA,CACA,UAAA,CACA,gEACC,WAAA,CAGF,iDACC,iBAAA,CACA,SAAA,CAED,qDACC,oBAAA,CACA,uBAAA,CACA,QAAA,CACA,iBAAA,CACA,2DACC,oBAAA,CACA,WAAA,CACA,uBAAA,CAGF,oCACC,SAAA,CACA,oBAAA,CACA,eAAA,CACA,sBAAA,CACA,2CACC,YAAA,CAGF,kCACC,gBAAA,CAED,8CACC,oBAAA,CACA,WAAA,CACA,UAAA,CAED,mDACC,WAAA,CAIF,kDAEC,UAAA,CAEA,oFACC,2BAAA,CACA,eAAA,CAGD,8KACC,UAAA,CAIF,6EACC,WAAA",sourcesContent:["/**\n * @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\n * @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\n * @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\n * @copyright Copyright (c) 2016, Vincent Petry <pvince81@owncloud.com>\n * @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\n * @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n */\n\n.systemtags-select2-dropdown {\n\t.select2-result-label {\n\t\t.checkmark {\n\t\t\tvisibility: hidden;\n\t\t\tmargin-left: -5px;\n\t\t\tmargin-right: 5px;\n\t\t\tpadding: 4px;\n\t\t}\n\t\t.new-item .systemtags-actions {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\t.select2-selected .select2-result-label .checkmark {\n\t\tvisibility: visible;\n\t}\n\t.select2-result-label .icon {\n\t\tdisplay: inline-block;\n\t\topacity: .5;\n\t\t&.rename {\n\t\t\tpadding: 4px;\n\t\t}\n\t}\n\t.systemtags-actions {\n\t\tposition: absolute;\n\t\tright: 5px;\n\t}\n\t.systemtags-rename-form {\n\t\tdisplay: inline-block;\n\t\twidth: calc(100% - 20px);\n\t\ttop: -6px;\n\t\tposition: relative;\n\t\tinput {\n\t\t\tdisplay: inline-block;\n\t\t\theight: 30px;\n\t\t\twidth: calc(100% - 40px);\n\t\t}\n\t}\n\t.label {\n\t\twidth: 85%;\n\t\tdisplay: inline-block;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\t&.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\tspan {\n\t\tline-height: 25px;\n\t}\n\t.systemtags-item {\n\t\tdisplay: inline-block;\n\t\theight: 25px;\n\t\twidth: 100%;\n\t}\n\t.select2-result-label {\n\t\theight: 25px;\n\t}\n}\n\n.systemTagsInfoView,\n.systemtags-select2-container {\n\twidth: 100%;\n\n\t.select2-choices {\n\t\tflex-wrap: nowrap !important;\n\t\tmax-height: 44px;\n\t}\n\n\t.select2-choices .select2-search-choice.select2-locked .label {\n\t\topacity: 0.5;\n\t}\n}\n\n#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result {\n\tpadding: 5px;\n}\n"],sourceRoot:""}]),t.Z=o},69318:function(e,t,n){var s=n(40202);e.exports=(s.default||s).template({1:function(e,t,n,s,i){return" new-item"},3:function(e,t,n,s,i){var l,o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<span class="label">'+(null!=(l="function"==typeof(o=null!=(o=a(n,"tagMarkup")||(null!=t?a(t,"tagMarkup"):t))?o:e.hooks.helperMissing)?o.call(null!=t?t:e.nullContext||{},{name:"tagMarkup",hash:{},data:i,loc:{start:{line:4,column:22},end:{line:4,column:37}}}):o)?l:"")+"</span>\n"},5:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<span class="label">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"name")||(null!=t?o(t,"name"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:i,loc:{start:{line:6,column:22},end:{line:6,column:30}}}):l)+"</span>\n"},7:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<span class="systemtags-actions">\n\t\t\t<a href="#" class="rename icon icon-rename" title="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"renameTooltip")||(null!=t?o(t,"renameTooltip"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"renameTooltip",hash:{},data:i,loc:{start:{line:10,column:54},end:{line:10,column:71}}}):l)+'"></a>\n\t\t</span>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a,c=null!=t?t:e.nullContext||{},r=e.hooks.helperMissing,u="function",d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]},p='<span class="systemtags-item'+(null!=(l=d(n,"if").call(c,null!=t?d(t,"isNew"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:1,column:28},end:{line:1,column:57}}}))?l:"")+'" data-id="'+e.escapeExpression(typeof(o=null!=(o=d(n,"id")||(null!=t?d(t,"id"):t))?o:r)===u?o.call(c,{name:"id",hash:{},data:i,loc:{start:{line:1,column:68},end:{line:1,column:74}}}):o)+'">\n<span class="checkmark icon icon-checkmark"></span>\n'+(null!=(l=d(n,"if").call(c,null!=t?d(t,"isAdmin"):t,{name:"if",hash:{},fn:e.program(3,i,0),inverse:e.program(5,i,0),data:i,loc:{start:{line:3,column:1},end:{line:7,column:8}}}))?l:"");return o=null!=(o=d(n,"allowActions")||(null!=t?d(t,"allowActions"):t))?o:r,a={name:"allowActions",hash:{},fn:e.program(7,i,0),inverse:e.noop,data:i,loc:{start:{line:8,column:1},end:{line:12,column:18}}},l=typeof o===u?o.call(c,a):o,d(n,"allowActions")||(l=e.hooks.blockHelperMissing.call(t,l,a)),null!=l&&(p+=l),p+"</span>\n"},useData:!0})},25759:function(e,t,n){var s=n(40202);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t\t<a href="#" class="delete icon icon-delete" title="'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"deleteTooltip")||(null!=t?o(t,"deleteTooltip"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"deleteTooltip",hash:{},data:i,loc:{start:{line:5,column:53},end:{line:5,column:70}}}):l)+'"></a>\n'},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o,a=null!=t?t:e.nullContext||{},c=e.hooks.helperMissing,r="function",u=e.escapeExpression,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<form class="systemtags-rename-form">\n\t <label class="hidden-visually" for="'+u(typeof(o=null!=(o=d(n,"cid")||(null!=t?d(t,"cid"):t))?o:c)===r?o.call(a,{name:"cid",hash:{},data:i,loc:{start:{line:2,column:38},end:{line:2,column:45}}}):o)+'-rename-input">'+u(typeof(o=null!=(o=d(n,"renameLabel")||(null!=t?d(t,"renameLabel"):t))?o:c)===r?o.call(a,{name:"renameLabel",hash:{},data:i,loc:{start:{line:2,column:60},end:{line:2,column:75}}}):o)+'</label>\n\t<input id="'+u(typeof(o=null!=(o=d(n,"cid")||(null!=t?d(t,"cid"):t))?o:c)===r?o.call(a,{name:"cid",hash:{},data:i,loc:{start:{line:3,column:12},end:{line:3,column:19}}}):o)+'-rename-input" type="text" value="'+u(typeof(o=null!=(o=d(n,"name")||(null!=t?d(t,"name"):t))?o:c)===r?o.call(a,{name:"name",hash:{},data:i,loc:{start:{line:3,column:53},end:{line:3,column:61}}}):o)+'">\n'+(null!=(l=d(n,"if").call(a,null!=t?d(t,"isAdmin"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.noop,data:i,loc:{start:{line:4,column:1},end:{line:6,column:8}}}))?l:"")+"</form>\n"},useData:!0})},82188:function(e,t,n){var s=n(40202);e.exports=(s.default||s).template({1:function(e,t,n,s,i){var l,o,a=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t<span class="label">'+(null!=(l="function"==typeof(o=null!=(o=a(n,"tagMarkup")||(null!=t?a(t,"tagMarkup"):t))?o:e.hooks.helperMissing)?o.call(null!=t?t:e.nullContext||{},{name:"tagMarkup",hash:{},data:i,loc:{start:{line:2,column:21},end:{line:2,column:36}}}):o)?l:"")+"</span>\n"},3:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'\t<span class="label">'+e.escapeExpression("function"==typeof(l=null!=(l=o(n,"name")||(null!=t?o(t,"name"):t))?l:e.hooks.helperMissing)?l.call(null!=t?t:e.nullContext||{},{name:"name",hash:{},data:i,loc:{start:{line:4,column:21},end:{line:4,column:29}}}):l)+"</span>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,s,i){var l,o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(l=o(n,"if").call(null!=t?t:e.nullContext||{},null!=t?o(t,"isAdmin"):t,{name:"if",hash:{},fn:e.program(1,i,0),inverse:e.program(3,i,0),data:i,loc:{start:{line:1,column:0},end:{line:5,column:7}}}))?l:""},useData:!0})}},s={};function i(e){var t=s[e];if(void 0!==t)return t.exports;var l=s[e]={id:e,loaded:!1,exports:{}};return n[e].call(l.exports,l,l.exports,i),l.loaded=!0,l.exports}i.m=n,i.amdD=function(){throw new Error("define cannot be used indirect")},i.amdO={},e=[],i.O=function(t,n,s,l){if(!n){var o=1/0;for(u=0;u<e.length;u++){n=e[u][0],s=e[u][1],l=e[u][2];for(var a=!0,c=0;c<n.length;c++)(!1&l||o>=l)&&Object.keys(i.O).every((function(e){return i.O[e](n[c])}))?n.splice(c--,1):(a=!1,l<o&&(o=l));if(a){e.splice(u--,1);var r=s();void 0!==r&&(t=r)}}return t}l=l||0;for(var u=e.length;u>0&&e[u-1][2]>l;u--)e[u]=e[u-1];e[u]=[n,s,l]},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,{a:t}),t},i.d=function(e,t){for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},i.j=1686,function(){i.b=document.baseURI||self.location.href;var e={1686:0};i.O.j=function(t){return 0===e[t]};var t=function(t,n){var s,l,o=n[0],a=n[1],c=n[2],r=0;if(o.some((function(t){return 0!==e[t]}))){for(s in a)i.o(a,s)&&(i.m[s]=a[s]);if(c)var u=c(i)}for(t&&t(n);r<o.length;r++)l=o[r],i.o(e,l)&&e[l]&&e[l][0](),e[l]=0;return i.O(u)},n=self.webpackChunknextcloud=self.webpackChunknextcloud||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))}(),i.nc=void 0;var l=i.O(void 0,[7874],(function(){return i(16558)}));l=i.O(l)}();
+//# sourceMappingURL=core-systemtags.js.map?v=f99c73c838fc53240381 \ No newline at end of file
diff --git a/dist/core-systemtags.js.map b/dist/core-systemtags.js.map
index 77886771fd5..19908fdc650 100644
--- a/dist/core-systemtags.js.map
+++ b/dist/core-systemtags.js.map
@@ -1 +1 @@
-{"version":3,"file":"core-systemtags.js?v=47675efc1feed2a45be1","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/core/src/systemtags/systemtags.js","webpack:///nextcloud/core/src/systemtags/systemtagsmappingcollection.js","webpack:///nextcloud/core/src/systemtags/systemtagsinputfield.js","webpack://nextcloud/./core/css/systemtags.scss?38f5","webpack:///nextcloud/core/src/systemtags/systemtagmodel.js","webpack:///nextcloud/core/src/systemtags/systemtagscollection.js","webpack:///nextcloud/core/css/systemtags.scss","webpack:///nextcloud/core/src/systemtags/templates/result.handlebars","webpack:///nextcloud/core/src/systemtags/templates/result_form.handlebars","webpack:///nextcloud/core/src/systemtags/templates/selection.handlebars","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2016\n *\n * @author Gary Kim <gary@garykim.dev>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport escapeHTML from 'escape-html'\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\t$span.append($('<em>').text(' (' + scope + ')'))\n\t\t\t}\n\t\t\treturn $span\n\t\t}\n\t}\n})(OC)\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { generateRemoteUrl } from '@nextcloud/router'\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\t * Use PUT instead of PROPPATCH\n\t\t\t */\n\t\t\tusePUT: true,\n\n\t\t\t/**\n\t\t\t * Id of the file for which to filter activities by\n\t\t\t *\n\t\t\t * @member int\n\t\t\t */\n\t\t\t_objectId: null,\n\n\t\t\t/**\n\t\t\t * Type of the object to filter by\n\t\t\t *\n\t\t\t * @member string\n\t\t\t */\n\t\t\t_objectType: 'files',\n\n\t\t\tmodel: OC.SystemTags.SystemTagModel,\n\n\t\t\turl() {\n\t\t\t\treturn generateRemoteUrl('dav') + '/systemtags-relations/' + this._objectType + '/' + this._objectId\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Sets the object id to filter by or null for all.\n\t\t\t *\n\t\t\t * @param {number} objectId file id or null\n\t\t\t */\n\t\t\tsetObjectId(objectId) {\n\t\t\t\tthis._objectId = objectId\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Sets the object type to filter by or null for all.\n\t\t\t *\n\t\t\t * @param {number} objectType file id or null\n\t\t\t */\n\t\t\tsetObjectType(objectType) {\n\t\t\t\tthis._objectType = objectType\n\t\t\t},\n\n\t\t\tinitialize(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() {\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","/**\n * Copyright (c) 2015\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport templateResult from './templates/result.handlebars'\nimport templateResultForm from './templates/result_form.handlebars'\nimport templateSelection from './templates/selection.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 {boolean} [options.multiple=false] whether to allow selecting multiple tags\n\t\t * @param {boolean} [options.allowActions=true] whether tags can be renamed/delete within the dropdown\n\t\t * @param {boolean} [options.allowCreate=true] whether new tags can be created\n\t\t * @param {boolean} [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 = $(templateResultForm({\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 templateResult(_.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 templateSelection(_.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","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./systemtags.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./systemtags.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function(OC) {\n\n\t_.extend(OC.Files.Client, {\n\t\tPROPERTY_FILEID: '{' + OC.Files.Client.NS_OWNCLOUD + '}id',\n\t\tPROPERTY_CAN_ASSIGN: '{' + OC.Files.Client.NS_OWNCLOUD + '}can-assign',\n\t\tPROPERTY_DISPLAYNAME: '{' + OC.Files.Client.NS_OWNCLOUD + '}display-name',\n\t\tPROPERTY_USERVISIBLE: '{' + 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\tid: OC.Files.Client.PROPERTY_FILEID,\n\t\t\t\tname: OC.Files.Client.PROPERTY_DISPLAYNAME,\n\t\t\t\tuserVisible: OC.Files.Client.PROPERTY_USERVISIBLE,\n\t\t\t\tuserAssignable: OC.Files.Client.PROPERTY_USERASSIGNABLE,\n\t\t\t\t// read-only, effective permissions computed by the server,\n\t\t\t\tcanAssign: OC.Files.Client.PROPERTY_CAN_ASSIGN,\n\t\t\t},\n\n\t\t\tparse(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 * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\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 {any} 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","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.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:.5}#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result{padding:5px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./core/css/systemtags.scss\"],\"names\":[],\"mappings\":\"AAcE,8DACC,iBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CAED,iFACC,YAAA,CAGF,gFACC,kBAAA,CAED,yDACC,oBAAA,CACA,UAAA,CACA,gEACC,WAAA,CAGF,iDACC,iBAAA,CACA,SAAA,CAED,qDACC,oBAAA,CACA,uBAAA,CACA,QAAA,CACA,iBAAA,CACA,2DACC,oBAAA,CACA,WAAA,CACA,uBAAA,CAGF,oCACC,SAAA,CACA,oBAAA,CACA,eAAA,CACA,sBAAA,CACA,2CACC,YAAA,CAGF,kCACC,gBAAA,CAED,8CACC,oBAAA,CACA,WAAA,CACA,UAAA,CAED,mDACC,WAAA,CAIF,kDAEC,UAAA,CAEA,oFACC,2BAAA,CACA,eAAA,CAGD,8KACC,UAAA,CAIF,6EACC,WAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\\n * @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\\n * @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\\n * @copyright Copyright (c) 2016, Vincent Petry <pvince81@owncloud.com>\\n * @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\\n * @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n */\\n\\n.systemtags-select2-dropdown {\\n\\t.select2-result-label {\\n\\t\\t.checkmark {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t\\tmargin-left: -5px;\\n\\t\\t\\tmargin-right: 5px;\\n\\t\\t\\tpadding: 4px;\\n\\t\\t}\\n\\t\\t.new-item .systemtags-actions {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\t.select2-selected .select2-result-label .checkmark {\\n\\t\\tvisibility: visible;\\n\\t}\\n\\t.select2-result-label .icon {\\n\\t\\tdisplay: inline-block;\\n\\t\\topacity: .5;\\n\\t\\t&.rename {\\n\\t\\t\\tpadding: 4px;\\n\\t\\t}\\n\\t}\\n\\t.systemtags-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: 5px;\\n\\t}\\n\\t.systemtags-rename-form {\\n\\t\\tdisplay: inline-block;\\n\\t\\twidth: calc(100% - 20px);\\n\\t\\ttop: -6px;\\n\\t\\tposition: relative;\\n\\t\\tinput {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\theight: 30px;\\n\\t\\t\\twidth: calc(100% - 40px);\\n\\t\\t}\\n\\t}\\n\\t.label {\\n\\t\\twidth: 85%;\\n\\t\\tdisplay: inline-block;\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\t&.hidden {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\tspan {\\n\\t\\tline-height: 25px;\\n\\t}\\n\\t.systemtags-item {\\n\\t\\tdisplay: inline-block;\\n\\t\\theight: 25px;\\n\\t\\twidth: 100%;\\n\\t}\\n\\t.select2-result-label {\\n\\t\\theight: 25px;\\n\\t}\\n}\\n\\n.systemTagsInfoView,\\n.systemtags-select2-container {\\n\\twidth: 100%;\\n\\n\\t.select2-choices {\\n\\t\\tflex-wrap: nowrap !important;\\n\\t\\tmax-height: 44px;\\n\\t}\\n\\n\\t.select2-choices .select2-search-choice.select2-locked .label {\\n\\t\\topacity: 0.5;\\n\\t}\\n}\\n\\n#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result {\\n\\tpadding: 5px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).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});","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).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});","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).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});","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1686;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1686: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(16558); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OC","SystemTags","getDescriptiveTag","tag","_","isUndefined","name","toJSON","$","addClass","text","t","scope","$span","append","escapeHTML","userAssignable","userVisible","SystemTagsMappingCollection","Backbone","Collection","extend","sync","davSync","usePUT","_objectId","_objectType","model","SystemTagModel","url","generateRemoteUrl","this","setObjectId","objectId","setObjectType","objectType","initialize","models","options","getTagIds","map","id","SystemTagsInputField","View","_rendered","_newTag","_lastUsedTags","className","template","data","_multiple","multiple","_allowActions","allowActions","_allowCreate","allowCreate","_isAdmin","isAdmin","isFunction","initSelection","_initSelection","collection","self","on","defer","_refreshSelection","bind","_getLastUsedTags","bindAll","ajax","type","generateUrl","success","response","$tagsField","select2","val","_onClickRenameTag","ev","$item","target","closest","tagId","attr","oldName","get","$renameForm","templateResultForm","cid","deleteTooltip","renameLabel","find","after","tooltip","placement","container","focus","selectRange","length","_onSubmitRenameTag","preventDefault","$form","tagModel","newName","trim","save","removeClass","remove","_onClickDeleteTag","destroy","_addToSelect2Selection","selection","push","_onSelectTag","e","object","isNew","create","canAssign","unshift","trigger","error","xhr","status","reset","fetch","where","_onDeselectTag","choice","_queryTagsAutocomplete","query","tagModels","filterByName","term","filter","callback","results","invoke","_preventDefault","stopPropagation","_formatDropDownResult","templateResult","renameTooltip","tagMarkup","innerHTML","_formatSelection","templateSelection","_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","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","Files","Client","PROPERTY_FILEID","NS_OWNCLOUD","PROPERTY_CAN_ASSIGN","PROPERTY_DISPLAYNAME","PROPERTY_USERVISIBLE","PROPERTY_USERASSIGNABLE","Model","defaults","davProperties","parse","SystemTagsCollection","linkToRemote","substr","toLowerCase","filterFunction","fetched","prototype","apply","arguments","force","Promise","resolve","call","___CSS_LOADER_EXPORT___","module","Handlebars","exports","depth0","helpers","partials","stack1","helper","lookupProperty","parent","propertyName","Object","hasOwnProperty","hooks","helperMissing","nullContext","escapeExpression","alias1","alias2","alias3","buffer","program","noop","blockHelperMissing","alias4","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","amdD","Error","amdO","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","key","splice","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","g","globalThis","Function","window","obj","prop","Symbol","toStringTag","value","nmd","paths","children","document","baseURI","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"core-systemtags.js?v=f99c73c838fc53240381","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/core/src/systemtags/systemtags.js","webpack:///nextcloud/core/src/systemtags/systemtagsmappingcollection.js","webpack:///nextcloud/core/src/systemtags/systemtagsinputfield.js","webpack://nextcloud/./core/css/systemtags.scss?38f5","webpack:///nextcloud/core/src/systemtags/systemtagmodel.js","webpack:///nextcloud/core/src/systemtags/systemtagscollection.js","webpack:///nextcloud/core/css/systemtags.scss","webpack:///nextcloud/core/src/systemtags/templates/result.handlebars","webpack:///nextcloud/core/src/systemtags/templates/result_form.handlebars","webpack:///nextcloud/core/src/systemtags/templates/selection.handlebars","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2016\n *\n * @author Gary Kim <gary@garykim.dev>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport escapeHTML from 'escape-html'\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 {HTMLElement}\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\tvar $span = document.createElement('span')\n\n\t\t\tif (_.isUndefined(tag.name)) {\n\t\t\t\t$span.classList.add('non-existing-tag')\n\t\t\t\t$span.textContent = t('core', 'Non-existing tag #{tag}', {\n\t\t\t\t\t\ttag: tag\n\t\t\t\t})\n\t\t\t\treturn $span\n\t\t\t}\n\n\t\t\t$span.textContent = 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 $scope = document.createElement('em')\n\t\t\t\t$scope.textContent = ' (' + scope + ')'\n\t\t\t\t$span.appendChild($scope)\n\t\t\t}\n\t\t\treturn $span\n\t\t}\n\t}\n})(OC)\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { generateRemoteUrl } from '@nextcloud/router'\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\t * Use PUT instead of PROPPATCH\n\t\t\t */\n\t\t\tusePUT: true,\n\n\t\t\t/**\n\t\t\t * Id of the file for which to filter activities by\n\t\t\t *\n\t\t\t * @member int\n\t\t\t */\n\t\t\t_objectId: null,\n\n\t\t\t/**\n\t\t\t * Type of the object to filter by\n\t\t\t *\n\t\t\t * @member string\n\t\t\t */\n\t\t\t_objectType: 'files',\n\n\t\t\tmodel: OC.SystemTags.SystemTagModel,\n\n\t\t\turl() {\n\t\t\t\treturn generateRemoteUrl('dav') + '/systemtags-relations/' + this._objectType + '/' + this._objectId\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Sets the object id to filter by or null for all.\n\t\t\t *\n\t\t\t * @param {number} objectId file id or null\n\t\t\t */\n\t\t\tsetObjectId(objectId) {\n\t\t\t\tthis._objectId = objectId\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Sets the object type to filter by or null for all.\n\t\t\t *\n\t\t\t * @param {number} objectType file id or null\n\t\t\t */\n\t\t\tsetObjectType(objectType) {\n\t\t\t\tthis._objectType = objectType\n\t\t\t},\n\n\t\t\tinitialize(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() {\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","/**\n * Copyright (c) 2015\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport templateResult from './templates/result.handlebars'\nimport templateResultForm from './templates/result_form.handlebars'\nimport templateSelection from './templates/selection.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 {boolean} [options.multiple=false] whether to allow selecting multiple tags\n\t\t * @param {boolean} [options.allowActions=true] whether tags can be renamed/delete within the dropdown\n\t\t * @param {boolean} [options.allowCreate=true] whether new tags can be created\n\t\t * @param {boolean} [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 = $(templateResultForm({\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 templateResult(_.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).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 templateSelection(_.extend({\n\t\t\t\t\ttagMarkup: this._isAdmin ? OC.SystemTags.getDescriptiveTag(data).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\tminimumInputLength: 3,\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","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./systemtags.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./systemtags.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function(OC) {\n\n\t_.extend(OC.Files.Client, {\n\t\tPROPERTY_FILEID: '{' + OC.Files.Client.NS_OWNCLOUD + '}id',\n\t\tPROPERTY_CAN_ASSIGN: '{' + OC.Files.Client.NS_OWNCLOUD + '}can-assign',\n\t\tPROPERTY_DISPLAYNAME: '{' + OC.Files.Client.NS_OWNCLOUD + '}display-name',\n\t\tPROPERTY_USERVISIBLE: '{' + 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\tid: OC.Files.Client.PROPERTY_FILEID,\n\t\t\t\tname: OC.Files.Client.PROPERTY_DISPLAYNAME,\n\t\t\t\tuserVisible: OC.Files.Client.PROPERTY_USERVISIBLE,\n\t\t\t\tuserAssignable: OC.Files.Client.PROPERTY_USERASSIGNABLE,\n\t\t\t\t// read-only, effective permissions computed by the server,\n\t\t\t\tcanAssign: OC.Files.Client.PROPERTY_CAN_ASSIGN,\n\t\t\t},\n\n\t\t\tparse(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 * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\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 {any} 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 || this.working || 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\tthis.working = true\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\tself.working = false\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","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.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:.5}#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result{padding:5px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./core/css/systemtags.scss\"],\"names\":[],\"mappings\":\"AAcE,8DACC,iBAAA,CACA,gBAAA,CACA,gBAAA,CACA,WAAA,CAED,iFACC,YAAA,CAGF,gFACC,kBAAA,CAED,yDACC,oBAAA,CACA,UAAA,CACA,gEACC,WAAA,CAGF,iDACC,iBAAA,CACA,SAAA,CAED,qDACC,oBAAA,CACA,uBAAA,CACA,QAAA,CACA,iBAAA,CACA,2DACC,oBAAA,CACA,WAAA,CACA,uBAAA,CAGF,oCACC,SAAA,CACA,oBAAA,CACA,eAAA,CACA,sBAAA,CACA,2CACC,YAAA,CAGF,kCACC,gBAAA,CAED,8CACC,oBAAA,CACA,WAAA,CACA,UAAA,CAED,mDACC,WAAA,CAIF,kDAEC,UAAA,CAEA,oFACC,2BAAA,CACA,eAAA,CAGD,8KACC,UAAA,CAIF,6EACC,WAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\\n * @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\\n * @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\\n * @copyright Copyright (c) 2016, Vincent Petry <pvince81@owncloud.com>\\n * @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\\n * @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n */\\n\\n.systemtags-select2-dropdown {\\n\\t.select2-result-label {\\n\\t\\t.checkmark {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t\\tmargin-left: -5px;\\n\\t\\t\\tmargin-right: 5px;\\n\\t\\t\\tpadding: 4px;\\n\\t\\t}\\n\\t\\t.new-item .systemtags-actions {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\t.select2-selected .select2-result-label .checkmark {\\n\\t\\tvisibility: visible;\\n\\t}\\n\\t.select2-result-label .icon {\\n\\t\\tdisplay: inline-block;\\n\\t\\topacity: .5;\\n\\t\\t&.rename {\\n\\t\\t\\tpadding: 4px;\\n\\t\\t}\\n\\t}\\n\\t.systemtags-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: 5px;\\n\\t}\\n\\t.systemtags-rename-form {\\n\\t\\tdisplay: inline-block;\\n\\t\\twidth: calc(100% - 20px);\\n\\t\\ttop: -6px;\\n\\t\\tposition: relative;\\n\\t\\tinput {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\theight: 30px;\\n\\t\\t\\twidth: calc(100% - 40px);\\n\\t\\t}\\n\\t}\\n\\t.label {\\n\\t\\twidth: 85%;\\n\\t\\tdisplay: inline-block;\\n\\t\\toverflow: hidden;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\t&.hidden {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\tspan {\\n\\t\\tline-height: 25px;\\n\\t}\\n\\t.systemtags-item {\\n\\t\\tdisplay: inline-block;\\n\\t\\theight: 25px;\\n\\t\\twidth: 100%;\\n\\t}\\n\\t.select2-result-label {\\n\\t\\theight: 25px;\\n\\t}\\n}\\n\\n.systemTagsInfoView,\\n.systemtags-select2-container {\\n\\twidth: 100%;\\n\\n\\t.select2-choices {\\n\\t\\tflex-wrap: nowrap !important;\\n\\t\\tmax-height: 44px;\\n\\t}\\n\\n\\t.select2-choices .select2-search-choice.select2-locked .label {\\n\\t\\topacity: 0.5;\\n\\t}\\n}\\n\\n#select2-drop.systemtags-select2-dropdown .select2-results li.select2-result {\\n\\tpadding: 5px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).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});","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).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});","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).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});","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1686;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1686: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(16558); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OC","SystemTags","getDescriptiveTag","tag","_","isUndefined","name","toJSON","scope","$span","document","createElement","classList","add","textContent","t","escapeHTML","userAssignable","userVisible","$scope","appendChild","SystemTagsMappingCollection","Backbone","Collection","extend","sync","davSync","usePUT","_objectId","_objectType","model","SystemTagModel","url","generateRemoteUrl","this","setObjectId","objectId","setObjectType","objectType","initialize","models","options","getTagIds","map","id","SystemTagsInputField","View","_rendered","_newTag","_lastUsedTags","className","template","data","_multiple","multiple","_allowActions","allowActions","_allowCreate","allowCreate","_isAdmin","isAdmin","isFunction","initSelection","_initSelection","collection","self","on","defer","_refreshSelection","bind","_getLastUsedTags","bindAll","$","ajax","type","generateUrl","success","response","$tagsField","select2","val","_onClickRenameTag","ev","$item","target","closest","tagId","attr","oldName","get","$renameForm","templateResultForm","cid","deleteTooltip","renameLabel","find","after","addClass","tooltip","placement","container","focus","selectRange","length","_onSubmitRenameTag","preventDefault","$form","tagModel","newName","trim","save","text","removeClass","remove","_onClickDeleteTag","destroy","_addToSelect2Selection","selection","push","_onSelectTag","e","object","isNew","create","canAssign","unshift","trigger","error","xhr","status","reset","fetch","where","_onDeselectTag","choice","_queryTagsAutocomplete","query","tagModels","filterByName","term","filter","callback","results","invoke","_preventDefault","stopPropagation","_formatDropDownResult","templateResult","renameTooltip","tagMarkup","innerHTML","_formatSelection","templateSelection","_createSearchChoice","entry","element","ids","split","modelToSelection","locked","selectedModels","indexOf","findSelectedObjects","render","$el","html","placeholder","containerCssClass","dropdownCssClass","closeOnSelect","allowClear","toggleSelect","minimumInputLength","formatResult","formatSelection","createSearchChoice","undefined","sortResults","selectedItems","pluck","sort","a","b","aSelected","bSelected","aLastUsed","bLastUsed","Util","naturalSortCompare","formatNoMatches","$dropDown","delegateEvents","getValues","setValues","values","setData","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","Files","Client","PROPERTY_FILEID","NS_OWNCLOUD","PROPERTY_CAN_ASSIGN","PROPERTY_DISPLAYNAME","PROPERTY_USERVISIBLE","PROPERTY_USERASSIGNABLE","Model","defaults","davProperties","parse","SystemTagsCollection","linkToRemote","substr","toLowerCase","filterFunction","fetched","prototype","apply","arguments","working","force","Promise","resolve","call","___CSS_LOADER_EXPORT___","module","Handlebars","exports","depth0","helpers","partials","stack1","helper","lookupProperty","parent","propertyName","Object","hasOwnProperty","hooks","helperMissing","nullContext","escapeExpression","alias1","alias2","alias3","buffer","program","noop","blockHelperMissing","alias4","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","amdD","Error","amdO","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","key","splice","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","g","globalThis","Function","window","obj","prop","Symbol","toStringTag","value","nmd","paths","children","baseURI","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/systemtags-systemtags.js b/dist/systemtags-systemtags.js
index 222f3977ce5..afcf8609c84 100644
--- a/dist/systemtags-systemtags.js
+++ b/dist/systemtags-systemtags.js
@@ -1,3 +1,3 @@
/*! For license information please see systemtags-systemtags.js.LICENSE.txt */
-!function(){var e,i={30213:function(){OCA.SystemTags||(OCA.SystemTags={}),OCA.SystemTags.App={initFileList:function(e){if(this._fileList)return this._fileList;var i=new URL(window.location.href).searchParams.get("tags"),s=i?i.split(",").map(parseInt):[];return this._fileList=new OCA.SystemTags.FileList(e,{id:"systemtags",fileActions:this._createFileActions(),config:OCA.Files.App.getFilesConfig(),shown:!0,systemTagIds:s}),this._fileList.appName=t("systemtags","Tags"),this._fileList},removeFileList:function(){this._fileList&&this._fileList.$fileList.empty()},_createFileActions:function(){var t=new OCA.Files.FileActions;return t.registerDefaultActions(),t.merge(OCA.Files.fileActions),this._globalActionsInitialized||(this._onActionsUpdated=_.bind(this._onActionsUpdated,this),OCA.Files.fileActions.on("setDefault.app-systemtags",this._onActionsUpdated),OCA.Files.fileActions.on("registerAction.app-systemtags",this._onActionsUpdated),this._globalActionsInitialized=!0),t.register("dir","Open",OC.PERMISSION_READ,"",(function(t,e){OCA.Files.App.setActiveView("files",{silent:!0}),OCA.Files.App.fileList.changeDirectory(OC.joinPaths(e.$file.attr("data-path"),t),!0,!0)})),t.setDefault("dir","Open"),t},_onActionsUpdated:function(t){this._fileList&&(t.action?this._fileList.fileActions.registerAction(t.action):t.defaultAction&&this._fileList.fileActions.setDefault(t.defaultAction.mime,t.defaultAction.name))},destroy:function(){OCA.Files.fileActions.off("setDefault.app-systemtags",this._onActionsUpdated),OCA.Files.fileActions.off("registerAction.app-systemtags",this._onActionsUpdated),this.removeFileList(),this._fileList=null,delete this._globalActionsInitialized}},window.addEventListener("DOMContentLoaded",(function(){$("#app-content-systemtagsfilter").on("show",(function(t){OCA.SystemTags.App.initFileList($(t.target))})),$("#app-content-systemtagsfilter").on("hide",(function(){OCA.SystemTags.App.removeFileList()}))}))},22609:function(){OCA.SystemTags=_.extend({},OCA.SystemTags),OCA.SystemTags||(OCA.SystemTags={}),OCA.SystemTags.FilesPlugin={ignoreLists:["trashbin","files.public"],attach:function(t){if(!(this.ignoreLists.indexOf(t.id)>=0||OCA.SystemTags.View)){var e=new OCA.SystemTags.SystemTagsInfoView;t.registerDetailView(e),OCA.SystemTags.View=e}}},OC.Plugins.register("OCA.Files.FileList",OCA.SystemTags.FilesPlugin)},19294:function(t,e,i){"use strict";i(30213),i(99641),i(22609),i(36670);var s=i(93379),n=i.n(s),l=i(7795),o=i.n(l),a=i(90569),r=i.n(a),c=i(3565),d=i.n(c),f=i(19216),h=i.n(f),u=i(44589),g=i.n(u),p=i(79891),m={};m.styleTagTransform=g(),m.setAttributes=d(),m.insert=r().bind(null,"head"),m.domAPI=o(),m.insertStyleElement=h(),n()(p.Z,m),p.Z&&p.Z.locals&&p.Z.locals,window.OCA.SystemTags=OCA.SystemTags},99641:function(){var e;(e=function(t,e){this.initialize(t,e)}).prototype=_.extend({},OCA.Files.FileList.prototype,{id:"systemtagsfilter",appName:t("systemtags","Tagged files"),_systemTagIds:[],_lastUsedTags:[],_clientSideSort:!0,_allowSelection:!1,_filterField:null,initialize:function(t,e){if(OCA.Files.FileList.prototype.initialize.apply(this,arguments),!this.initialized){e&&e.systemTagIds&&(this._systemTagIds=e.systemTagIds),OC.Plugins.attach("OCA.SystemTags.FileList",this);var i=this.$el.find(".files-controls").empty();_.defer(_.bind(this._getLastUsedTags,this)),this._initFilterField(i)}},destroy:function(){this.$filterField.remove(),OCA.Files.FileList.prototype.destroy.apply(this,arguments)},_getLastUsedTags:function(){var t=this;$.ajax({type:"GET",url:OC.generateUrl("/apps/systemtags/lastused"),success:function(e){t._lastUsedTags=e}})},_initFilterField:function(e){var i=this,s=this;return this.$filterField=$('<input type="hidden" name="tags"/>'),this.$filterField.val(this._systemTagIds.join(",")),e.append(this.$filterField),this.$filterField.select2({placeholder:t("systemtags","Select tags to filter by"),allowClear:!1,multiple:!0,toggleSelect:!0,separator:",",query:_.bind(this._queryTagsAutocomplete,this),id:function(t){return t.id},initSelection:function(t,e){var i=$(t).val().trim();if(i){var n=i.split(","),l=[];OC.SystemTags.collection.fetch({success:function(){_.each(n,(function(t){var e=OC.SystemTags.collection.get(t);_.isUndefined(e)||l.push(e.toJSON())})),e(l),s._onTagsChanged({target:t})}})}else e([])},formatResult:function(t){return OC.SystemTags.getDescriptiveTag(t)},formatSelection:function(t){return OC.SystemTags.getDescriptiveTag(t)[0].outerHTML},sortResults:function(t){return t.sort((function(t,e){var i=s._lastUsedTags.indexOf(t.id),n=s._lastUsedTags.indexOf(e.id);return i!==n?-1===n?-1:-1===i?1:i<n?-1:1:OC.Util.naturalSortCompare(t.name,e.name)})),t},escapeMarkup:function(t){return t},formatNoMatches:function(){return t("systemtags","No tags found")}}),this.$filterField.parent().children(".select2-container").attr("aria-expanded","false"),this.$filterField.on("select2-open",(function(){i.$filterField.parent().children(".select2-container").attr("aria-expanded","true")})),this.$filterField.on("select2-close",(function(){i.$filterField.parent().children(".select2-container").attr("aria-expanded","false")})),this.$filterField.on("change",_.bind(this._onTagsChanged,this)),this.$filterField},_queryTagsAutocomplete:function(t){OC.SystemTags.collection.fetch({success:function(){var e=OC.SystemTags.collection.filterByName(t.term);t.callback({results:_.invoke(e,"toJSON")})}})},_onUrlChanged:function(t){if(t.dir){var e=_.filter(t.dir.split("/"),(function(t){return""!==t.trim()}));this.$filterField.select2("val",e||[]),this._systemTagIds=e,this.reload()}},_onTagsChanged:function(t){var e=$(t.target).val().trim();this._systemTagIds=""!==e?e.split(","):[],this.$el.trigger($.Event("changeDirectory",{dir:this._systemTagIds.join("/")})),this.reload()},updateEmptyContent:function(){var e=this.getCurrentDirectory();"/"===e?(this._systemTagIds.length?this.$el.find(".emptyfilelist.emptycontent").html('<div class="icon-systemtags"></div><h2>'+t("systemtags","No files found for the selected tags")+"</h2>"):this.$el.find(".emptyfilelist.emptycontent").html('<div class="icon-systemtags"></div><h2>'+t("systemtags","Please select tags to filter by")+"</h2>"),this.$el.find(".emptyfilelist.emptycontent").toggleClass("hidden",!this.isEmpty),this.$el.find(".files-filestable thead th").toggleClass("hidden",this.isEmpty)):OCA.Files.FileList.prototype.updateEmptyContent.apply(this,arguments)},getDirectoryPermissions:function(){return OC.PERMISSION_READ|OC.PERMISSION_DELETE},updateStorageStatistics:function(){},reload:function(){if(this._setCurrentDir("/",!1),!this._systemTagIds.length)return this.updateEmptyContent(),this.setFiles([]),$.Deferred().resolve();this._selectedFiles={},this._selectionSummary.clear(),this._currentFileModel&&this._currentFileModel.off(),this._currentFileModel=null,this.$el.find(".select-all").prop("checked",!1),this.showMask(),this._reloadCall=this.filesClient.getFilteredFiles({systemTagIds:this._systemTagIds},{properties:this._getWebdavProperties()}),this._detailsView&&this._updateDetailsView(null);var t=this.reloadCallback.bind(this);return this._reloadCall.then(t,t)},reloadCallback:function(t,e){return e&&e.unshift({}),OCA.Files.FileList.prototype.reloadCallback.call(this,t,e)}}),OCA.SystemTags.FileList=e},36670:function(){!function(t){function e(t){var e=t.toJSON();return OC.isUserAdmin()||e.canAssign||(e.locked=!0),e}var i=t.Files.DetailFileInfoView.extend({_rendered:!1,className:"systemTagsInfoView",name:"systemTags",id:"systemTagsInfoView",_inputView:null,initialize:function(t){var i=this;t=t||{},this._inputView=new OC.SystemTags.SystemTagsInputField({multiple:!0,allowActions:!0,allowCreate:!0,isAdmin:OC.isUserAdmin(),initSelection:function(t,s){s(i.selectedTagsCollection.map(e))}}),this.selectedTagsCollection=new OC.SystemTags.SystemTagsMappingCollection([],{objectType:"files"}),this._inputView.collection.on("change:name",this._onTagRenamedGlobally,this),this._inputView.collection.on("remove",this._onTagDeletedGlobally,this),this._inputView.on("select",this._onSelectTag,this),this._inputView.on("deselect",this._onDeselectTag,this)},_onSelectTag:function(t){this.selectedTagsCollection.create(t.toJSON())},_onDeselectTag:function(t){this.selectedTagsCollection.get(t).destroy()},_onTagRenamedGlobally:function(t){var e=this.selectedTagsCollection.get(t.id);e&&e.set(t.toJSON())},_onTagDeletedGlobally:function(t){this.selectedTagsCollection.remove(t)},setFileInfo:function(t){var i=this;this._rendered||this.render(),t&&(this.selectedTagsCollection.setObjectId(t.id),this.selectedTagsCollection.fetch({success:function(t){t.fetched=!0;var s=t.map(e);i._inputView.setData(s),s.length>0&&i.show()}})),this.hide()},render:function(){this.$el.append(this._inputView.$el),this._inputView.render()},isVisible:function(){return!this.$el.hasClass("hidden")},show:function(){this.$el.removeClass("hidden")},hide:function(){this.$el.addClass("hidden")},toggle:function(){this.$el.toggleClass("hidden")},openDropdown:function(){this.$el.find(".systemTagsInputField").select2("open")},remove:function(){this._inputView.remove()}});t.SystemTags.SystemTagsInfoView=i}(OCA)},79891:function(t,e,i){"use strict";var s=i(87537),n=i.n(s),l=i(23645),o=i.n(l)()(n());o.push([t.id,"#app-content-systemtagsfilter .select2-container{width:30%;margin-left:10px}#app-sidebar .app-sidebar-header__action .tag-label{cursor:pointer;padding:13px 0;display:flex;color:var(--color-text-light);position:relative;margin-top:-20px}","",{version:3,sources:["webpack://./apps/systemtags/src/css/systemtagsfilelist.scss"],names:[],mappings:"AASA,iDACC,SAAA,CACA,gBAAA,CAGD,oDACC,cAAA,CACA,cAAA,CACA,YAAA,CACA,6BAAA,CACA,iBAAA,CACA,gBAAA",sourcesContent:["/*\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#app-content-systemtagsfilter .select2-container {\n\twidth: 30%;\n\tmargin-left: 10px;\n}\n\n#app-sidebar .app-sidebar-header__action .tag-label {\n\tcursor: pointer;\n\tpadding: 13px 0;\n\tdisplay: flex;\n\tcolor: var(--color-text-light);\n\tposition: relative;\n\tmargin-top: -20px;\n}\n"],sourceRoot:""}]),e.Z=o}},s={};function n(t){var e=s[t];if(void 0!==e)return e.exports;var l=s[t]={id:t,loaded:!1,exports:{}};return i[t].call(l.exports,l,l.exports,n),l.loaded=!0,l.exports}n.m=i,n.amdD=function(){throw new Error("define cannot be used indirect")},n.amdO={},e=[],n.O=function(t,i,s,l){if(!i){var o=1/0;for(d=0;d<e.length;d++){i=e[d][0],s=e[d][1],l=e[d][2];for(var a=!0,r=0;r<i.length;r++)(!1&l||o>=l)&&Object.keys(n.O).every((function(t){return n.O[t](i[r])}))?i.splice(r--,1):(a=!1,l<o&&(o=l));if(a){e.splice(d--,1);var c=s();void 0!==c&&(t=c)}}return t}l=l||0;for(var d=e.length;d>0&&e[d-1][2]>l;d--)e[d]=e[d-1];e[d]=[i,s,l]},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,{a:e}),e},n.d=function(t,e){for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},n.j=9698,function(){n.b=document.baseURI||self.location.href;var t={9698:0};n.O.j=function(e){return 0===t[e]};var e=function(e,i){var s,l,o=i[0],a=i[1],r=i[2],c=0;if(o.some((function(e){return 0!==t[e]}))){for(s in a)n.o(a,s)&&(n.m[s]=a[s]);if(r)var d=r(n)}for(e&&e(i);c<o.length;c++)l=o[c],n.o(t,l)&&t[l]&&t[l][0](),t[l]=0;return n.O(d)},i=self.webpackChunknextcloud=self.webpackChunknextcloud||[];i.forEach(e.bind(null,0)),i.push=e.bind(null,i.push.bind(i))}(),n.nc=void 0;var l=n.O(void 0,[7874],(function(){return n(19294)}));l=n.O(l)}();
-//# sourceMappingURL=systemtags-systemtags.js.map?v=50c13f64ade093e337aa \ No newline at end of file
+!function(){var e,i={30213:function(){OCA.SystemTags||(OCA.SystemTags={}),OCA.SystemTags.App={initFileList:function(e){if(this._fileList)return this._fileList;var i=new URL(window.location.href).searchParams.get("tags"),s=i?i.split(",").map(parseInt):[];return this._fileList=new OCA.SystemTags.FileList(e,{id:"systemtags",fileActions:this._createFileActions(),config:OCA.Files.App.getFilesConfig(),shown:!0,systemTagIds:s}),this._fileList.appName=t("systemtags","Tags"),this._fileList},removeFileList:function(){this._fileList&&this._fileList.$fileList.empty()},_createFileActions:function(){var t=new OCA.Files.FileActions;return t.registerDefaultActions(),t.merge(OCA.Files.fileActions),this._globalActionsInitialized||(this._onActionsUpdated=_.bind(this._onActionsUpdated,this),OCA.Files.fileActions.on("setDefault.app-systemtags",this._onActionsUpdated),OCA.Files.fileActions.on("registerAction.app-systemtags",this._onActionsUpdated),this._globalActionsInitialized=!0),t.register("dir","Open",OC.PERMISSION_READ,"",(function(t,e){OCA.Files.App.setActiveView("files",{silent:!0}),OCA.Files.App.fileList.changeDirectory(OC.joinPaths(e.$file.attr("data-path"),t),!0,!0)})),t.setDefault("dir","Open"),t},_onActionsUpdated:function(t){this._fileList&&(t.action?this._fileList.fileActions.registerAction(t.action):t.defaultAction&&this._fileList.fileActions.setDefault(t.defaultAction.mime,t.defaultAction.name))},destroy:function(){OCA.Files.fileActions.off("setDefault.app-systemtags",this._onActionsUpdated),OCA.Files.fileActions.off("registerAction.app-systemtags",this._onActionsUpdated),this.removeFileList(),this._fileList=null,delete this._globalActionsInitialized}},window.addEventListener("DOMContentLoaded",(function(){$("#app-content-systemtagsfilter").on("show",(function(t){OCA.SystemTags.App.initFileList($(t.target))})),$("#app-content-systemtagsfilter").on("hide",(function(){OCA.SystemTags.App.removeFileList()}))}))},22609:function(){OCA.SystemTags=_.extend({},OCA.SystemTags),OCA.SystemTags||(OCA.SystemTags={}),OCA.SystemTags.FilesPlugin={ignoreLists:["trashbin","files.public"],attach:function(t){if(!(this.ignoreLists.indexOf(t.id)>=0||OCA.SystemTags.View)){var e=new OCA.SystemTags.SystemTagsInfoView;t.registerDetailView(e),OCA.SystemTags.View=e}}},OC.Plugins.register("OCA.Files.FileList",OCA.SystemTags.FilesPlugin)},19294:function(t,e,i){"use strict";i(30213),i(99641),i(22609),i(36670);var s=i(93379),n=i.n(s),l=i(7795),o=i.n(l),a=i(90569),r=i.n(a),c=i(3565),d=i.n(c),f=i(19216),h=i.n(f),u=i(44589),g=i.n(u),p=i(79891),m={};m.styleTagTransform=g(),m.setAttributes=d(),m.insert=r().bind(null,"head"),m.domAPI=o(),m.insertStyleElement=h(),n()(p.Z,m),p.Z&&p.Z.locals&&p.Z.locals,window.OCA.SystemTags=OCA.SystemTags},99641:function(){var e;(e=function(t,e){this.initialize(t,e)}).prototype=_.extend({},OCA.Files.FileList.prototype,{id:"systemtagsfilter",appName:t("systemtags","Tagged files"),_systemTagIds:[],_lastUsedTags:[],_clientSideSort:!0,_allowSelection:!1,_filterField:null,initialize:function(t,e){if(OCA.Files.FileList.prototype.initialize.apply(this,arguments),!this.initialized){e&&e.systemTagIds&&(this._systemTagIds=e.systemTagIds),OC.Plugins.attach("OCA.SystemTags.FileList",this);var i=this.$el.find(".files-controls").empty();_.defer(_.bind(this._getLastUsedTags,this)),this._initFilterField(i)}},destroy:function(){this.$filterField.remove(),OCA.Files.FileList.prototype.destroy.apply(this,arguments)},_getLastUsedTags:function(){var t=this;$.ajax({type:"GET",url:OC.generateUrl("/apps/systemtags/lastused"),success:function(e){t._lastUsedTags=e}})},_initFilterField:function(e){var i=this,s=this;return this.$filterField=$('<input type="hidden" name="tags"/>'),this.$filterField.val(this._systemTagIds.join(",")),e.append(this.$filterField),this.$filterField.select2({placeholder:t("systemtags","Select tags to filter by"),allowClear:!1,multiple:!0,toggleSelect:!0,separator:",",query:_.bind(this._queryTagsAutocomplete,this),minimumInputLength:3,id:function(t){return t.id},initSelection:function(t,e){var i=$(t).val().trim();if(i){var n=i.split(","),l=[];OC.SystemTags.collection.fetch({success:function(){_.each(n,(function(t){var e=OC.SystemTags.collection.get(t);_.isUndefined(e)||l.push(e.toJSON())})),e(l),s._onTagsChanged({target:t})}})}else e([])},formatResult:function(t){return OC.SystemTags.getDescriptiveTag(t)},formatSelection:function(t){return OC.SystemTags.getDescriptiveTag(t).outerHTML},sortResults:function(t){return t.sort((function(t,e){var i=s._lastUsedTags.indexOf(t.id),n=s._lastUsedTags.indexOf(e.id);return i!==n?-1===n?-1:-1===i?1:i<n?-1:1:OC.Util.naturalSortCompare(t.name,e.name)})),t},escapeMarkup:function(t){return t},formatNoMatches:function(){return t("systemtags","No tags found")}}),this.$filterField.parent().children(".select2-container").attr("aria-expanded","false"),this.$filterField.on("select2-open",(function(){i.$filterField.parent().children(".select2-container").attr("aria-expanded","true")})),this.$filterField.on("select2-close",(function(){i.$filterField.parent().children(".select2-container").attr("aria-expanded","false")})),this.$filterField.on("change",_.bind(this._onTagsChanged,this)),this.$filterField},_queryTagsAutocomplete:function(t){OC.SystemTags.collection.fetch({success:function(){var e=OC.SystemTags.collection.filterByName(t.term);t.callback({results:_.invoke(e,"toJSON")})}})},_onUrlChanged:function(t){if(t.dir){var e=_.filter(t.dir.split("/"),(function(t){return""!==t.trim()}));this.$filterField.select2("val",e||[]),this._systemTagIds=e,this.reload()}},_onTagsChanged:function(t){var e=$(t.target).val().trim();this._systemTagIds=""!==e?e.split(","):[],this.$el.trigger($.Event("changeDirectory",{dir:this._systemTagIds.join("/")})),this.reload()},updateEmptyContent:function(){var e=this.getCurrentDirectory();"/"===e?(this._systemTagIds.length?this.$el.find(".emptyfilelist.emptycontent").html('<div class="icon-systemtags"></div><h2>'+t("systemtags","No files found for the selected tags")+"</h2>"):this.$el.find(".emptyfilelist.emptycontent").html('<div class="icon-systemtags"></div><h2>'+t("systemtags","Please select tags to filter by")+"</h2>"),this.$el.find(".emptyfilelist.emptycontent").toggleClass("hidden",!this.isEmpty),this.$el.find(".files-filestable thead th").toggleClass("hidden",this.isEmpty)):OCA.Files.FileList.prototype.updateEmptyContent.apply(this,arguments)},getDirectoryPermissions:function(){return OC.PERMISSION_READ|OC.PERMISSION_DELETE},updateStorageStatistics:function(){},reload:function(){if(this._setCurrentDir("/",!1),!this._systemTagIds.length)return this.updateEmptyContent(),this.setFiles([]),$.Deferred().resolve();this._selectedFiles={},this._selectionSummary.clear(),this._currentFileModel&&this._currentFileModel.off(),this._currentFileModel=null,this.$el.find(".select-all").prop("checked",!1),this.showMask(),this._reloadCall=this.filesClient.getFilteredFiles({systemTagIds:this._systemTagIds},{properties:this._getWebdavProperties()}),this._detailsView&&this._updateDetailsView(null);var t=this.reloadCallback.bind(this);return this._reloadCall.then(t,t)},reloadCallback:function(t,e){return e&&e.unshift({}),OCA.Files.FileList.prototype.reloadCallback.call(this,t,e)}}),OCA.SystemTags.FileList=e},36670:function(){!function(t){function e(t){var e=t.toJSON();return OC.isUserAdmin()||e.canAssign||(e.locked=!0),e}var i=t.Files.DetailFileInfoView.extend({_rendered:!1,className:"systemTagsInfoView",name:"systemTags",id:"systemTagsInfoView",_inputView:null,initialize:function(t){var i=this;t=t||{},this._inputView=new OC.SystemTags.SystemTagsInputField({multiple:!0,allowActions:!0,allowCreate:!0,isAdmin:OC.isUserAdmin(),initSelection:function(t,s){s(i.selectedTagsCollection.map(e))}}),this.selectedTagsCollection=new OC.SystemTags.SystemTagsMappingCollection([],{objectType:"files"}),this._inputView.collection.on("change:name",this._onTagRenamedGlobally,this),this._inputView.collection.on("remove",this._onTagDeletedGlobally,this),this._inputView.on("select",this._onSelectTag,this),this._inputView.on("deselect",this._onDeselectTag,this)},_onSelectTag:function(t){this.selectedTagsCollection.create(t.toJSON())},_onDeselectTag:function(t){this.selectedTagsCollection.get(t).destroy()},_onTagRenamedGlobally:function(t){var e=this.selectedTagsCollection.get(t.id);e&&e.set(t.toJSON())},_onTagDeletedGlobally:function(t){this.selectedTagsCollection.remove(t)},setFileInfo:function(t){var i=this;this._rendered||this.render(),t&&(this.selectedTagsCollection.setObjectId(t.id),this.selectedTagsCollection.fetch({success:function(t){t.fetched=!0;var s=t.map(e);i._inputView.setData(s),s.length>0&&i.show()}})),this.hide()},render:function(){this.$el.append(this._inputView.$el),this._inputView.render()},isVisible:function(){return!this.$el.hasClass("hidden")},show:function(){this.$el.removeClass("hidden")},hide:function(){this.$el.addClass("hidden")},toggle:function(){this.$el.toggleClass("hidden")},openDropdown:function(){this.$el.find(".systemTagsInputField").select2("open")},remove:function(){this._inputView.remove()}});t.SystemTags.SystemTagsInfoView=i}(OCA)},79891:function(t,e,i){"use strict";var s=i(87537),n=i.n(s),l=i(23645),o=i.n(l)()(n());o.push([t.id,"#app-content-systemtagsfilter .select2-container{width:30%;margin-left:10px}#app-sidebar .app-sidebar-header__action .tag-label{cursor:pointer;padding:13px 0;display:flex;color:var(--color-text-light);position:relative;margin-top:-20px}","",{version:3,sources:["webpack://./apps/systemtags/src/css/systemtagsfilelist.scss"],names:[],mappings:"AASA,iDACC,SAAA,CACA,gBAAA,CAGD,oDACC,cAAA,CACA,cAAA,CACA,YAAA,CACA,6BAAA,CACA,iBAAA,CACA,gBAAA",sourcesContent:["/*\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#app-content-systemtagsfilter .select2-container {\n\twidth: 30%;\n\tmargin-left: 10px;\n}\n\n#app-sidebar .app-sidebar-header__action .tag-label {\n\tcursor: pointer;\n\tpadding: 13px 0;\n\tdisplay: flex;\n\tcolor: var(--color-text-light);\n\tposition: relative;\n\tmargin-top: -20px;\n}\n"],sourceRoot:""}]),e.Z=o}},s={};function n(t){var e=s[t];if(void 0!==e)return e.exports;var l=s[t]={id:t,loaded:!1,exports:{}};return i[t].call(l.exports,l,l.exports,n),l.loaded=!0,l.exports}n.m=i,n.amdD=function(){throw new Error("define cannot be used indirect")},n.amdO={},e=[],n.O=function(t,i,s,l){if(!i){var o=1/0;for(d=0;d<e.length;d++){i=e[d][0],s=e[d][1],l=e[d][2];for(var a=!0,r=0;r<i.length;r++)(!1&l||o>=l)&&Object.keys(n.O).every((function(t){return n.O[t](i[r])}))?i.splice(r--,1):(a=!1,l<o&&(o=l));if(a){e.splice(d--,1);var c=s();void 0!==c&&(t=c)}}return t}l=l||0;for(var d=e.length;d>0&&e[d-1][2]>l;d--)e[d]=e[d-1];e[d]=[i,s,l]},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,{a:e}),e},n.d=function(t,e){for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t},n.j=9698,function(){n.b=document.baseURI||self.location.href;var t={9698:0};n.O.j=function(e){return 0===t[e]};var e=function(e,i){var s,l,o=i[0],a=i[1],r=i[2],c=0;if(o.some((function(e){return 0!==t[e]}))){for(s in a)n.o(a,s)&&(n.m[s]=a[s]);if(r)var d=r(n)}for(e&&e(i);c<o.length;c++)l=o[c],n.o(t,l)&&t[l]&&t[l][0](),t[l]=0;return n.O(d)},i=self.webpackChunknextcloud=self.webpackChunknextcloud||[];i.forEach(e.bind(null,0)),i.push=e.bind(null,i.push.bind(i))}(),n.nc=void 0;var l=n.O(void 0,[7874],(function(){return n(19294)}));l=n.O(l)}();
+//# sourceMappingURL=systemtags-systemtags.js.map?v=66eaac9a98da88ad2828 \ No newline at end of file
diff --git a/dist/systemtags-systemtags.js.map b/dist/systemtags-systemtags.js.map
index 803964e98c9..ed86116f274 100644
--- a/dist/systemtags-systemtags.js.map
+++ b/dist/systemtags-systemtags.js.map
@@ -1 +1 @@
-{"version":3,"file":"systemtags-systemtags.js?v=50c13f64ade093e337aa","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/systemtags/src/app.js","webpack:///nextcloud/apps/systemtags/src/filesplugin.js","webpack://nextcloud/./apps/systemtags/src/css/systemtagsfilelist.scss?3cf4","webpack:///nextcloud/apps/systemtags/src/systemtags.js","webpack:///nextcloud/apps/systemtags/src/systemtagsfilelist.js","webpack:///nextcloud/apps/systemtags/src/systemtagsinfoview.js","webpack:///nextcloud/apps/systemtags/src/css/systemtagsfilelist.scss","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2015 Vincent Petry <pvince81@owncloud.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function() {\n\tif (!OCA.SystemTags) {\n\t\t/**\n\t\t * @namespace\n\t\t */\n\t\tOCA.SystemTags = {}\n\t}\n\n\tOCA.SystemTags.App = {\n\n\t\tinitFileList($el) {\n\t\t\tif (this._fileList) {\n\t\t\t\treturn this._fileList\n\t\t\t}\n\n\t\t\tconst tagsParam = (new URL(window.location.href)).searchParams.get('tags')\n\t\t\tconst initialTags = tagsParam ? tagsParam.split(',').map(parseInt) : []\n\n\t\t\tthis._fileList = new OCA.SystemTags.FileList(\n\t\t\t\t$el,\n\t\t\t\t{\n\t\t\t\t\tid: 'systemtags',\n\t\t\t\t\tfileActions: this._createFileActions(),\n\t\t\t\t\tconfig: OCA.Files.App.getFilesConfig(),\n\t\t\t\t\t// The file list is created when a \"show\" event is handled,\n\t\t\t\t\t// so it should be marked as \"shown\" like it would have been\n\t\t\t\t\t// done if handling the event with the file list already\n\t\t\t\t\t// created.\n\t\t\t\t\tshown: true,\n\t\t\t\t\tsystemTagIds: initialTags,\n\t\t\t\t}\n\t\t\t)\n\n\t\t\tthis._fileList.appName = t('systemtags', 'Tags')\n\t\t\treturn this._fileList\n\t\t},\n\n\t\tremoveFileList() {\n\t\t\tif (this._fileList) {\n\t\t\t\tthis._fileList.$fileList.empty()\n\t\t\t}\n\t\t},\n\n\t\t_createFileActions() {\n\t\t\t// inherit file actions from the files app\n\t\t\tconst fileActions = new OCA.Files.FileActions()\n\t\t\t// note: not merging the legacy actions because legacy apps are not\n\t\t\t// compatible with the sharing overview and need to be adapted first\n\t\t\tfileActions.registerDefaultActions()\n\t\t\tfileActions.merge(OCA.Files.fileActions)\n\n\t\t\tif (!this._globalActionsInitialized) {\n\t\t\t\t// in case actions are registered later\n\t\t\t\tthis._onActionsUpdated = _.bind(this._onActionsUpdated, this)\n\t\t\t\tOCA.Files.fileActions.on('setDefault.app-systemtags', this._onActionsUpdated)\n\t\t\t\tOCA.Files.fileActions.on('registerAction.app-systemtags', this._onActionsUpdated)\n\t\t\t\tthis._globalActionsInitialized = true\n\t\t\t}\n\n\t\t\t// when the user clicks on a folder, redirect to the corresponding\n\t\t\t// folder in the files app instead of opening it directly\n\t\t\tfileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function(filename, context) {\n\t\t\t\tOCA.Files.App.setActiveView('files', { silent: true })\n\t\t\t\tOCA.Files.App.fileList.changeDirectory(OC.joinPaths(context.$file.attr('data-path'), filename), true, true)\n\t\t\t})\n\t\t\tfileActions.setDefault('dir', 'Open')\n\t\t\treturn fileActions\n\t\t},\n\n\t\t_onActionsUpdated(ev) {\n\t\t\tif (!this._fileList) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (ev.action) {\n\t\t\t\tthis._fileList.fileActions.registerAction(ev.action)\n\t\t\t} else if (ev.defaultAction) {\n\t\t\t\tthis._fileList.fileActions.setDefault(\n\t\t\t\t\tev.defaultAction.mime,\n\t\t\t\t\tev.defaultAction.name\n\t\t\t\t)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Destroy the app\n\t\t */\n\t\tdestroy() {\n\t\t\tOCA.Files.fileActions.off('setDefault.app-systemtags', this._onActionsUpdated)\n\t\t\tOCA.Files.fileActions.off('registerAction.app-systemtags', this._onActionsUpdated)\n\t\t\tthis.removeFileList()\n\t\t\tthis._fileList = null\n\t\t\tdelete this._globalActionsInitialized\n\t\t},\n\t}\n\n})()\n\nwindow.addEventListener('DOMContentLoaded', function() {\n\t$('#app-content-systemtagsfilter').on('show', function(e) {\n\t\tOCA.SystemTags.App.initFileList($(e.target))\n\t})\n\t$('#app-content-systemtagsfilter').on('hide', function() {\n\t\tOCA.SystemTags.App.removeFileList()\n\t})\n})\n","/**\n * Copyright (c) 2015 Vincent Petry <pvince81@owncloud.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function() {\n\tOCA.SystemTags = _.extend({}, OCA.SystemTags)\n\tif (!OCA.SystemTags) {\n\t\t/**\n\t\t * @namespace\n\t\t */\n\t\tOCA.SystemTags = {}\n\t}\n\n\t/**\n\t * @namespace\n\t */\n\tOCA.SystemTags.FilesPlugin = {\n\t\tignoreLists: [\n\t\t\t'trashbin',\n\t\t\t'files.public',\n\t\t],\n\n\t\tattach(fileList) {\n\t\t\tif (this.ignoreLists.indexOf(fileList.id) >= 0) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// only create and attach once\n\t\t\t// FIXME: this should likely be done on a different code path now\n\t\t\t// for the sidebar to only have it registered once\n\t\t\tif (!OCA.SystemTags.View) {\n\t\t\t\tconst systemTagsInfoView = new OCA.SystemTags.SystemTagsInfoView()\n\t\t\t\tfileList.registerDetailView(systemTagsInfoView)\n\t\t\t\tOCA.SystemTags.View = systemTagsInfoView\n\t\t\t}\n\t\t},\n\t}\n\n})()\n\nOC.Plugins.register('OCA.Files.FileList', OCA.SystemTags.FilesPlugin)\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./systemtagsfilelist.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./systemtagsfilelist.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport './app'\nimport './systemtagsfilelist'\nimport './filesplugin'\nimport './systemtagsinfoview'\nimport './css/systemtagsfilelist.scss'\n\nwindow.OCA.SystemTags = OCA.SystemTags\n","/**\n * Copyright (c) 2016 Vincent Petry <pvince81@owncloud.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function() {\n\t/**\n\t * @class OCA.SystemTags.FileList\n\t * @augments OCA.Files.FileList\n\t *\n\t * @classdesc SystemTags file list.\n\t * Contains a list of files filtered by system tags.\n\t *\n\t * @param {object} $el container element with existing markup for the .files-controls and a table\n\t * @param {Array} [options] map of options, see other parameters\n\t * @param {Array.<string>} [options.systemTagIds] array of system tag ids to\n\t * filter by\n\t */\n\tconst FileList = function($el, options) {\n\t\tthis.initialize($el, options)\n\t}\n\tFileList.prototype = _.extend(\n\t\t{},\n\t\tOCA.Files.FileList.prototype,\n\t\t/** @lends OCA.SystemTags.FileList.prototype */ {\n\t\t\tid: 'systemtagsfilter',\n\t\t\tappName: t('systemtags', 'Tagged files'),\n\n\t\t\t/**\n\t\t\t * Array of system tag ids to filter by\n\t\t\t *\n\t\t\t * @type {Array.<string>}\n\t\t\t */\n\t\t\t_systemTagIds: [],\n\t\t\t_lastUsedTags: [],\n\n\t\t\t_clientSideSort: true,\n\t\t\t_allowSelection: false,\n\n\t\t\t_filterField: null,\n\n\t\t\t/**\n\t\t\t * @private\n\t\t\t * @param {object} $el container element\n\t\t\t * @param {object} [options] map of options, see other parameters\n\t\t\t */\n\t\t\tinitialize($el, options) {\n\t\t\t\tOCA.Files.FileList.prototype.initialize.apply(this, arguments)\n\t\t\t\tif (this.initialized) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (options && options.systemTagIds) {\n\t\t\t\t\tthis._systemTagIds = options.systemTagIds\n\t\t\t\t}\n\n\t\t\t\tOC.Plugins.attach('OCA.SystemTags.FileList', this)\n\n\t\t\t\tconst $controls = this.$el.find('.files-controls').empty()\n\n\t\t\t\t_.defer(_.bind(this._getLastUsedTags, this))\n\t\t\t\tthis._initFilterField($controls)\n\t\t\t},\n\n\t\t\tdestroy() {\n\t\t\t\tthis.$filterField.remove()\n\n\t\t\t\tOCA.Files.FileList.prototype.destroy.apply(this, arguments)\n\t\t\t},\n\n\t\t\t_getLastUsedTags() {\n\t\t\t\tconst 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(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_initFilterField($container) {\n\t\t\t\tconst self = this\n\t\t\t\tthis.$filterField = $('<input type=\"hidden\" name=\"tags\"/>')\n\t\t\t\tthis.$filterField.val(this._systemTagIds.join(','))\n\t\t\t\t$container.append(this.$filterField)\n\t\t\t\tthis.$filterField.select2({\n\t\t\t\t\tplaceholder: t('systemtags', 'Select tags to filter by'),\n\t\t\t\t\tallowClear: false,\n\t\t\t\t\tmultiple: true,\n\t\t\t\t\ttoggleSelect: true,\n\t\t\t\t\tseparator: ',',\n\t\t\t\t\tquery: _.bind(this._queryTagsAutocomplete, this),\n\n\t\t\t\t\tid(tag) {\n\t\t\t\t\t\treturn tag.id\n\t\t\t\t\t},\n\n\t\t\t\t\tinitSelection(element, callback) {\n\t\t\t\t\t\tconst val = $(element)\n\t\t\t\t\t\t\t.val()\n\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\tif (val) {\n\t\t\t\t\t\t\tconst tagIds = val.split(',')\n\t\t\t\t\t\t\tconst tags = []\n\n\t\t\t\t\t\t\tOC.SystemTags.collection.fetch({\n\t\t\t\t\t\t\t\tsuccess() {\n\t\t\t\t\t\t\t\t\t_.each(tagIds, function(tagId) {\n\t\t\t\t\t\t\t\t\t\tconst tag = OC.SystemTags.collection.get(\n\t\t\t\t\t\t\t\t\t\t\ttagId\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\tif (!_.isUndefined(tag)) {\n\t\t\t\t\t\t\t\t\t\t\ttags.push(tag.toJSON())\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\tcallback(tags)\n\t\t\t\t\t\t\t\t\tself._onTagsChanged({ target: element })\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// eslint-disable-next-line n/no-callback-literal\n\t\t\t\t\t\t\tcallback([])\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\n\t\t\t\t\tformatResult(tag) {\n\t\t\t\t\t\treturn OC.SystemTags.getDescriptiveTag(tag)\n\t\t\t\t\t},\n\n\t\t\t\t\tformatSelection(tag) {\n\t\t\t\t\t\treturn OC.SystemTags.getDescriptiveTag(tag)[0]\n\t\t\t\t\t\t\t.outerHTML\n\t\t\t\t\t},\n\n\t\t\t\t\tsortResults(results) {\n\t\t\t\t\t\tresults.sort(function(a, b) {\n\t\t\t\t\t\t\tconst aLastUsed = self._lastUsedTags.indexOf(a.id)\n\t\t\t\t\t\t\tconst bLastUsed = self._lastUsedTags.indexOf(b.id)\n\n\t\t\t\t\t\t\tif (aLastUsed !== bLastUsed) {\n\t\t\t\t\t\t\t\tif (bLastUsed === -1) {\n\t\t\t\t\t\t\t\t\treturn -1\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (aLastUsed === -1) {\n\t\t\t\t\t\t\t\t\treturn 1\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn aLastUsed < bLastUsed ? -1 : 1\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t// Both not found\n\t\t\t\t\t\t\treturn OC.Util.naturalSortCompare(a.name, b.name)\n\t\t\t\t\t\t})\n\t\t\t\t\t\treturn results\n\t\t\t\t\t},\n\n\t\t\t\t\tescapeMarkup(m) {\n\t\t\t\t\t\t// prevent double markup escape\n\t\t\t\t\t\treturn m\n\t\t\t\t\t},\n\t\t\t\t\tformatNoMatches() {\n\t\t\t\t\t\treturn t('systemtags', 'No tags found')\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tthis.$filterField.parent().children('.select2-container').attr('aria-expanded', 'false')\n\t\t\t\tthis.$filterField.on('select2-open', () => {\n\t\t\t\t\tthis.$filterField.parent().children('.select2-container').attr('aria-expanded', 'true')\n\t\t\t\t})\n\t\t\t\tthis.$filterField.on('select2-close', () => {\n\t\t\t\t\tthis.$filterField.parent().children('.select2-container').attr('aria-expanded', 'false')\n\t\t\t\t})\n\t\t\t\tthis.$filterField.on(\n\t\t\t\t\t'change',\n\t\t\t\t\t_.bind(this._onTagsChanged, this)\n\t\t\t\t)\n\t\t\t\treturn this.$filterField\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Autocomplete function for dropdown results\n\t\t\t *\n\t\t\t * @param {object} query select2 query object\n\t\t\t */\n\t\t\t_queryTagsAutocomplete(query) {\n\t\t\t\tOC.SystemTags.collection.fetch({\n\t\t\t\t\tsuccess() {\n\t\t\t\t\t\tconst results = OC.SystemTags.collection.filterByName(\n\t\t\t\t\t\t\tquery.term\n\t\t\t\t\t\t)\n\n\t\t\t\t\t\tquery.callback({\n\t\t\t\t\t\t\tresults: _.invoke(results, '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/**\n\t\t\t * Event handler for when the URL changed\n\t\t\t *\n\t\t\t * @param {Event} e the urlchanged event\n\t\t\t */\n\t\t\t_onUrlChanged(e) {\n\t\t\t\tif (e.dir) {\n\t\t\t\t\tconst tags = _.filter(e.dir.split('/'), function(val) {\n\t\t\t\t\t\treturn val.trim() !== ''\n\t\t\t\t\t})\n\t\t\t\t\tthis.$filterField.select2('val', tags || [])\n\t\t\t\t\tthis._systemTagIds = tags\n\t\t\t\t\tthis.reload()\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t_onTagsChanged(ev) {\n\t\t\t\tconst val = $(ev.target)\n\t\t\t\t\t.val()\n\t\t\t\t\t.trim()\n\t\t\t\tif (val !== '') {\n\t\t\t\t\tthis._systemTagIds = val.split(',')\n\t\t\t\t} else {\n\t\t\t\t\tthis._systemTagIds = []\n\t\t\t\t}\n\n\t\t\t\tthis.$el.trigger(\n\t\t\t\t\t$.Event('changeDirectory', {\n\t\t\t\t\t\tdir: this._systemTagIds.join('/'),\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t\tthis.reload()\n\t\t\t},\n\n\t\t\tupdateEmptyContent() {\n\t\t\t\tconst dir = this.getCurrentDirectory()\n\t\t\t\tif (dir === '/') {\n\t\t\t\t\t// root has special permissions\n\t\t\t\t\tif (!this._systemTagIds.length) {\n\t\t\t\t\t\t// no tags selected\n\t\t\t\t\t\tthis.$el\n\t\t\t\t\t\t\t.find('.emptyfilelist.emptycontent')\n\t\t\t\t\t\t\t.html(\n\t\t\t\t\t\t\t\t'<div class=\"icon-systemtags\"></div>'\n\t\t\t\t\t\t\t\t\t+ '<h2>'\n\t\t\t\t\t\t\t\t\t+ t(\n\t\t\t\t\t\t\t\t\t\t'systemtags',\n\t\t\t\t\t\t\t\t\t\t'Please select tags to filter by'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t+ '</h2>'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// tags selected but no results\n\t\t\t\t\t\tthis.$el\n\t\t\t\t\t\t\t.find('.emptyfilelist.emptycontent')\n\t\t\t\t\t\t\t.html(\n\t\t\t\t\t\t\t\t'<div class=\"icon-systemtags\"></div>'\n\t\t\t\t\t\t\t\t\t+ '<h2>'\n\t\t\t\t\t\t\t\t\t+ t(\n\t\t\t\t\t\t\t\t\t\t'systemtags',\n\t\t\t\t\t\t\t\t\t\t'No files found for the selected tags'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t+ '</h2>'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t\tthis.$el\n\t\t\t\t\t\t.find('.emptyfilelist.emptycontent')\n\t\t\t\t\t\t.toggleClass('hidden', !this.isEmpty)\n\t\t\t\t\tthis.$el\n\t\t\t\t\t\t.find('.files-filestable thead th')\n\t\t\t\t\t\t.toggleClass('hidden', this.isEmpty)\n\t\t\t\t} else {\n\t\t\t\t\tOCA.Files.FileList.prototype.updateEmptyContent.apply(\n\t\t\t\t\t\tthis,\n\t\t\t\t\t\targuments\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tgetDirectoryPermissions() {\n\t\t\t\treturn OC.PERMISSION_READ | OC.PERMISSION_DELETE\n\t\t\t},\n\n\t\t\tupdateStorageStatistics() {\n\t\t\t\t// no op because it doesn't have\n\t\t\t\t// storage info like free space / used space\n\t\t\t},\n\n\t\t\treload() {\n\t\t\t\t// there is only root\n\t\t\t\tthis._setCurrentDir('/', false)\n\n\t\t\t\tif (!this._systemTagIds.length) {\n\t\t\t\t\t// don't reload\n\t\t\t\t\tthis.updateEmptyContent()\n\t\t\t\t\tthis.setFiles([])\n\t\t\t\t\treturn $.Deferred().resolve()\n\t\t\t\t}\n\n\t\t\t\tthis._selectedFiles = {}\n\t\t\t\tthis._selectionSummary.clear()\n\t\t\t\tif (this._currentFileModel) {\n\t\t\t\t\tthis._currentFileModel.off()\n\t\t\t\t}\n\t\t\t\tthis._currentFileModel = null\n\t\t\t\tthis.$el.find('.select-all').prop('checked', false)\n\t\t\t\tthis.showMask()\n\t\t\t\tthis._reloadCall = this.filesClient.getFilteredFiles(\n\t\t\t\t\t{\n\t\t\t\t\t\tsystemTagIds: this._systemTagIds,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tproperties: this._getWebdavProperties(),\n\t\t\t\t\t}\n\t\t\t\t)\n\t\t\t\tif (this._detailsView) {\n\t\t\t\t\t// close sidebar\n\t\t\t\t\tthis._updateDetailsView(null)\n\t\t\t\t}\n\t\t\t\tconst callBack = this.reloadCallback.bind(this)\n\t\t\t\treturn this._reloadCall.then(callBack, callBack)\n\t\t\t},\n\n\t\t\treloadCallback(status, result) {\n\t\t\t\tif (result) {\n\t\t\t\t\t// prepend empty dir info because original handler\n\t\t\t\t\tresult.unshift({})\n\t\t\t\t}\n\n\t\t\t\treturn OCA.Files.FileList.prototype.reloadCallback.call(\n\t\t\t\t\tthis,\n\t\t\t\t\tstatus,\n\t\t\t\t\tresult\n\t\t\t\t)\n\t\t\t},\n\t\t}\n\t)\n\n\tOCA.SystemTags.FileList = FileList\n})()\n","/**\n * Copyright (c) 2015\n *\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function(OCA) {\n\n\t/**\n\t * @param {any} model -\n\t */\n\tfunction modelToSelection(model) {\n\t\tconst data = model.toJSON()\n\t\tif (!OC.isUserAdmin() && !data.canAssign) {\n\t\t\tdata.locked = true\n\t\t}\n\t\treturn data\n\t}\n\n\t/**\n\t * @class OCA.SystemTags.SystemTagsInfoView\n\t * @classdesc\n\t *\n\t * Displays a file's system tags\n\t *\n\t */\n\tconst SystemTagsInfoView = OCA.Files.DetailFileInfoView.extend(\n\t\t/** @lends OCA.SystemTags.SystemTagsInfoView.prototype */ {\n\n\t\t\t_rendered: false,\n\n\t\t\tclassName: 'systemTagsInfoView',\n\t\t\tname: 'systemTags',\n\n\t\t\t/* required by the new files sidebar to check if the view is unique */\n\t\t\tid: 'systemTagsInfoView',\n\n\t\t\t/**\n\t\t\t * @type {OC.SystemTags.SystemTagsInputField}\n\t\t\t */\n\t\t\t_inputView: null,\n\n\t\t\tinitialize(options) {\n\t\t\t\tconst self = this\n\t\t\t\toptions = options || {}\n\n\t\t\t\tthis._inputView = new OC.SystemTags.SystemTagsInputField({\n\t\t\t\t\tmultiple: true,\n\t\t\t\t\tallowActions: true,\n\t\t\t\t\tallowCreate: true,\n\t\t\t\t\tisAdmin: OC.isUserAdmin(),\n\t\t\t\t\tinitSelection(element, callback) {\n\t\t\t\t\t\tcallback(self.selectedTagsCollection.map(modelToSelection))\n\t\t\t\t\t},\n\t\t\t\t})\n\n\t\t\t\tthis.selectedTagsCollection = new OC.SystemTags.SystemTagsMappingCollection([], { objectType: 'files' })\n\n\t\t\t\tthis._inputView.collection.on('change:name', this._onTagRenamedGlobally, this)\n\t\t\t\tthis._inputView.collection.on('remove', this._onTagDeletedGlobally, this)\n\n\t\t\t\tthis._inputView.on('select', this._onSelectTag, this)\n\t\t\t\tthis._inputView.on('deselect', this._onDeselectTag, this)\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag was selected\n\t\t\t *\n\t\t\t * @param {object} tag the tag to create\n\t\t\t */\n\t\t\t_onSelectTag(tag) {\n\t\t\t// create a mapping entry for this tag\n\t\t\t\tthis.selectedTagsCollection.create(tag.toJSON())\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag gets deselected.\n\t\t\t * Removes the selected tag from the mapping collection.\n\t\t\t *\n\t\t\t * @param {string} tagId tag id\n\t\t\t */\n\t\t\t_onDeselectTag(tagId) {\n\t\t\t\tthis.selectedTagsCollection.get(tagId).destroy()\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag was renamed globally.\n\t\t\t *\n\t\t\t * This will automatically adjust the tag mapping collection to\n\t\t\t * container the new name.\n\t\t\t *\n\t\t\t * @param {OC.Backbone.Model} changedTag tag model that has changed\n\t\t\t */\n\t\t\t_onTagRenamedGlobally(changedTag) {\n\t\t\t// also rename it in the selection, if applicable\n\t\t\t\tconst selectedTagMapping = this.selectedTagsCollection.get(changedTag.id)\n\t\t\t\tif (selectedTagMapping) {\n\t\t\t\t\tselectedTagMapping.set(changedTag.toJSON())\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag was deleted globally.\n\t\t\t *\n\t\t\t * This will automatically adjust the tag mapping collection to\n\t\t\t * container the new name.\n\t\t\t *\n\t\t\t * @param {OC.Backbone.Model} tagId tag model that has changed\n\t\t\t */\n\t\t\t_onTagDeletedGlobally(tagId) {\n\t\t\t// also rename it in the selection, if applicable\n\t\t\t\tthis.selectedTagsCollection.remove(tagId)\n\t\t\t},\n\n\t\t\tsetFileInfo(fileInfo) {\n\t\t\t\tconst self = this\n\t\t\t\tif (!this._rendered) {\n\t\t\t\t\tthis.render()\n\t\t\t\t}\n\n\t\t\t\tif (fileInfo) {\n\t\t\t\t\tthis.selectedTagsCollection.setObjectId(fileInfo.id)\n\t\t\t\t\tthis.selectedTagsCollection.fetch({\n\t\t\t\t\t\tsuccess(collection) {\n\t\t\t\t\t\t\tcollection.fetched = true\n\n\t\t\t\t\t\t\tconst appliedTags = collection.map(modelToSelection)\n\t\t\t\t\t\t\tself._inputView.setData(appliedTags)\n\t\t\t\t\t\t\tif (appliedTags.length > 0) {\n\t\t\t\t\t\t\t\tself.show()\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}\n\n\t\t\t\tthis.hide()\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Renders this details view\n\t\t\t */\n\t\t\trender() {\n\t\t\t\tthis.$el.append(this._inputView.$el)\n\t\t\t\tthis._inputView.render()\n\t\t\t},\n\n\t\t\tisVisible() {\n\t\t\t\treturn !this.$el.hasClass('hidden')\n\t\t\t},\n\n\t\t\tshow() {\n\t\t\t\tthis.$el.removeClass('hidden')\n\t\t\t},\n\n\t\t\thide() {\n\t\t\t\tthis.$el.addClass('hidden')\n\t\t\t},\n\n\t\t\ttoggle() {\n\t\t\t\tthis.$el.toggleClass('hidden')\n\t\t\t},\n\n\t\t\topenDropdown() {\n\t\t\t\tthis.$el.find('.systemTagsInputField').select2('open')\n\t\t\t},\n\n\t\t\tremove() {\n\t\t\t\tthis._inputView.remove()\n\t\t\t},\n\t\t})\n\n\tOCA.SystemTags.SystemTagsInfoView = SystemTagsInfoView\n\n})(OCA)\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#app-content-systemtagsfilter .select2-container{width:30%;margin-left:10px}#app-sidebar .app-sidebar-header__action .tag-label{cursor:pointer;padding:13px 0;display:flex;color:var(--color-text-light);position:relative;margin-top:-20px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/systemtags/src/css/systemtagsfilelist.scss\"],\"names\":[],\"mappings\":\"AASA,iDACC,SAAA,CACA,gBAAA,CAGD,oDACC,cAAA,CACA,cAAA,CACA,YAAA,CACA,6BAAA,CACA,iBAAA,CACA,gBAAA\",\"sourcesContent\":[\"/*\\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#app-content-systemtagsfilter .select2-container {\\n\\twidth: 30%;\\n\\tmargin-left: 10px;\\n}\\n\\n#app-sidebar .app-sidebar-header__action .tag-label {\\n\\tcursor: pointer;\\n\\tpadding: 13px 0;\\n\\tdisplay: flex;\\n\\tcolor: var(--color-text-light);\\n\\tposition: relative;\\n\\tmargin-top: -20px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9698;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t9698: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(19294); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OCA","SystemTags","App","initFileList","$el","this","_fileList","tagsParam","URL","window","location","href","searchParams","get","initialTags","split","map","parseInt","FileList","id","fileActions","_createFileActions","config","Files","getFilesConfig","shown","systemTagIds","appName","t","removeFileList","$fileList","empty","FileActions","registerDefaultActions","merge","_globalActionsInitialized","_onActionsUpdated","_","bind","on","register","OC","PERMISSION_READ","filename","context","setActiveView","silent","fileList","changeDirectory","joinPaths","$file","attr","setDefault","ev","action","registerAction","defaultAction","mime","name","destroy","off","addEventListener","$","e","target","extend","FilesPlugin","ignoreLists","attach","indexOf","View","systemTagsInfoView","SystemTagsInfoView","registerDetailView","Plugins","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","initialize","prototype","_systemTagIds","_lastUsedTags","_clientSideSort","_allowSelection","_filterField","apply","arguments","initialized","$controls","find","defer","_getLastUsedTags","_initFilterField","$filterField","remove","self","ajax","type","url","generateUrl","success","response","$container","val","join","append","select2","placeholder","allowClear","multiple","toggleSelect","separator","query","_queryTagsAutocomplete","tag","initSelection","element","callback","trim","tagIds","tags","collection","fetch","each","tagId","isUndefined","push","toJSON","_onTagsChanged","formatResult","getDescriptiveTag","formatSelection","outerHTML","sortResults","results","sort","a","b","aLastUsed","bLastUsed","Util","naturalSortCompare","escapeMarkup","m","formatNoMatches","parent","children","filterByName","term","invoke","_onUrlChanged","dir","filter","reload","trigger","Event","updateEmptyContent","getCurrentDirectory","length","html","toggleClass","isEmpty","getDirectoryPermissions","PERMISSION_DELETE","updateStorageStatistics","_setCurrentDir","setFiles","Deferred","resolve","_selectedFiles","_selectionSummary","clear","_currentFileModel","prop","showMask","_reloadCall","filesClient","getFilteredFiles","properties","_getWebdavProperties","_detailsView","_updateDetailsView","callBack","reloadCallback","then","status","result","unshift","call","modelToSelection","model","data","isUserAdmin","canAssign","locked","DetailFileInfoView","_rendered","className","_inputView","SystemTagsInputField","allowActions","allowCreate","isAdmin","selectedTagsCollection","SystemTagsMappingCollection","objectType","_onTagRenamedGlobally","_onTagDeletedGlobally","_onSelectTag","_onDeselectTag","create","changedTag","selectedTagMapping","set","setFileInfo","fileInfo","render","setObjectId","fetched","appliedTags","setData","show","hide","isVisible","hasClass","removeClass","addClass","toggle","openDropdown","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","amdD","Error","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","g","globalThis","Function","obj","hasOwnProperty","Symbol","toStringTag","value","nmd","paths","document","baseURI","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"systemtags-systemtags.js?v=66eaac9a98da88ad2828","mappings":";gBAAIA,sBC0BEC,IAAIC,aAIRD,IAAIC,WAAa,IAGlBD,IAAIC,WAAWC,IAAM,CAEpBC,aAFoB,SAEPC,GACZ,GAAIC,KAAKC,UACR,OAAOD,KAAKC,UAGb,IAAMC,EAAa,IAAIC,IAAIC,OAAOC,SAASC,MAAOC,aAAaC,IAAI,QAC7DC,EAAcP,EAAYA,EAAUQ,MAAM,KAAKC,IAAIC,UAAY,GAkBrE,OAhBAZ,KAAKC,UAAY,IAAIN,IAAIC,WAAWiB,SACnCd,EACA,CACCe,GAAI,aACJC,YAAaf,KAAKgB,qBAClBC,OAAQtB,IAAIuB,MAAMrB,IAAIsB,iBAKtBC,OAAO,EACPC,aAAcZ,IAIhBT,KAAKC,UAAUqB,QAAUC,EAAE,aAAc,QAClCvB,KAAKC,WAGbuB,eA7BoB,WA8BfxB,KAAKC,WACRD,KAAKC,UAAUwB,UAAUC,SAI3BV,mBAnCoB,WAqCnB,IAAMD,EAAc,IAAIpB,IAAIuB,MAAMS,YAqBlC,OAlBAZ,EAAYa,yBACZb,EAAYc,MAAMlC,IAAIuB,MAAMH,aAEvBf,KAAK8B,4BAET9B,KAAK+B,kBAAoBC,EAAEC,KAAKjC,KAAK+B,kBAAmB/B,MACxDL,IAAIuB,MAAMH,YAAYmB,GAAG,4BAA6BlC,KAAK+B,mBAC3DpC,IAAIuB,MAAMH,YAAYmB,GAAG,gCAAiClC,KAAK+B,mBAC/D/B,KAAK8B,2BAA4B,GAKlCf,EAAYoB,SAAS,MAAO,OAAQC,GAAGC,gBAAiB,IAAI,SAASC,EAAUC,GAC9E5C,IAAIuB,MAAMrB,IAAI2C,cAAc,QAAS,CAAEC,QAAQ,IAC/C9C,IAAIuB,MAAMrB,IAAI6C,SAASC,gBAAgBP,GAAGQ,UAAUL,EAAQM,MAAMC,KAAK,aAAcR,IAAW,GAAM,MAEvGvB,EAAYgC,WAAW,MAAO,QACvBhC,GAGRgB,kBA7DoB,SA6DFiB,GACZhD,KAAKC,YAIN+C,EAAGC,OACNjD,KAAKC,UAAUc,YAAYmC,eAAeF,EAAGC,QACnCD,EAAGG,eACbnD,KAAKC,UAAUc,YAAYgC,WAC1BC,EAAGG,cAAcC,KACjBJ,EAAGG,cAAcE,QAQpBC,QA/EoB,WAgFnB3D,IAAIuB,MAAMH,YAAYwC,IAAI,4BAA6BvD,KAAK+B,mBAC5DpC,IAAIuB,MAAMH,YAAYwC,IAAI,gCAAiCvD,KAAK+B,mBAChE/B,KAAKwB,iBACLxB,KAAKC,UAAY,YACVD,KAAK8B,4BAMf1B,OAAOoD,iBAAiB,oBAAoB,WAC3CC,EAAE,iCAAiCvB,GAAG,QAAQ,SAASwB,GACtD/D,IAAIC,WAAWC,IAAIC,aAAa2D,EAAEC,EAAEC,YAErCF,EAAE,iCAAiCvB,GAAG,QAAQ,WAC7CvC,IAAIC,WAAWC,IAAI2B,yCCvGpB7B,IAAIC,WAAaoC,EAAE4B,OAAO,GAAIjE,IAAIC,YAC7BD,IAAIC,aAIRD,IAAIC,WAAa,IAMlBD,IAAIC,WAAWiE,YAAc,CAC5BC,YAAa,CACZ,WACA,gBAGDC,OAN4B,SAMrBrB,GACN,KAAI1C,KAAK8D,YAAYE,QAAQtB,EAAS5B,KAAO,GAOxCnB,IAAIC,WAAWqE,MAAM,CACzB,IAAMC,EAAqB,IAAIvE,IAAIC,WAAWuE,mBAC9CzB,EAAS0B,mBAAmBF,GAC5BvE,IAAIC,WAAWqE,KAAOC,KAO1B9B,GAAGiC,QAAQlC,SAAS,qBAAsBxC,IAAIC,WAAWiE,0NCjDrDS,EAAU,GAEdA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,YAAiB,WCGlDlE,OAAOT,IAAIC,WAAaD,IAAIC,6BCL5B,IAaOiB,GAAAA,EAAW,SAASd,EAAKuE,GAC9BtE,KAAK4E,WAAW7E,EAAKuE,KAEbO,UAAY7C,EAAE4B,OACtB,GACAjE,IAAIuB,MAAML,SAASgE,UAC6B,CAC/C/D,GAAI,mBACJQ,QAASC,EAAE,aAAc,gBAOzBuD,cAAe,GACfC,cAAe,GAEfC,iBAAiB,EACjBC,iBAAiB,EAEjBC,aAAc,KAOdN,WAtB+C,SAsBpC7E,EAAKuE,GAEf,GADA3E,IAAIuB,MAAML,SAASgE,UAAUD,WAAWO,MAAMnF,KAAMoF,YAChDpF,KAAKqF,YAAT,CAIIf,GAAWA,EAAQjD,eACtBrB,KAAK8E,cAAgBR,EAAQjD,cAG9Be,GAAGiC,QAAQN,OAAO,0BAA2B/D,MAE7C,IAAMsF,EAAYtF,KAAKD,IAAIwF,KAAK,mBAAmB7D,QAEnDM,EAAEwD,MAAMxD,EAAEC,KAAKjC,KAAKyF,iBAAkBzF,OACtCA,KAAK0F,iBAAiBJ,KAGvBhC,QAxC+C,WAyC9CtD,KAAK2F,aAAaC,SAElBjG,IAAIuB,MAAML,SAASgE,UAAUvB,QAAQ6B,MAAMnF,KAAMoF,YAGlDK,iBA9C+C,WA+C9C,IAAMI,EAAO7F,KACbyD,EAAEqC,KAAK,CACNC,KAAM,MACNC,IAAK5D,GAAG6D,YAAY,6BACpBC,QAHM,SAGEC,GACPN,EAAKd,cAAgBoB,MAKxBT,iBAzD+C,SAyD9BU,GAAY,WACtBP,EAAO7F,KA6Fb,OA5FAA,KAAK2F,aAAelC,EAAE,sCACtBzD,KAAK2F,aAAaU,IAAIrG,KAAK8E,cAAcwB,KAAK,MAC9CF,EAAWG,OAAOvG,KAAK2F,cACvB3F,KAAK2F,aAAaa,QAAQ,CACzBC,YAAalF,EAAE,aAAc,4BAC7BmF,YAAY,EACZC,UAAU,EACVC,cAAc,EACdC,UAAW,IACXC,MAAO9E,EAAEC,KAAKjC,KAAK+G,uBAAwB/G,MAC3CgH,mBAAoB,EAEpBlG,GATyB,SAStBmG,GACF,OAAOA,EAAInG,IAGZoG,cAbyB,SAaXC,EAASC,GACtB,IAAMf,EAAM5C,EAAE0D,GACZd,MACAgB,OACF,GAAIhB,EAAK,CACR,IAAMiB,EAASjB,EAAI3F,MAAM,KACnB6G,EAAO,GAEbnF,GAAGxC,WAAW4H,WAAWC,MAAM,CAC9BvB,QAD8B,WAE7BlE,EAAE0F,KAAKJ,GAAQ,SAASK,GACvB,IAAMV,EAAM7E,GAAGxC,WAAW4H,WAAWhH,IACpCmH,GAEI3F,EAAE4F,YAAYX,IAClBM,EAAKM,KAAKZ,EAAIa,aAGhBV,EAASG,GACT1B,EAAKkC,eAAe,CAAEpE,OAAQwD,YAKhCC,EAAS,KAIXY,aAzCyB,SAyCZf,GACZ,OAAO7E,GAAGxC,WAAWqI,kBAAkBhB,IAGxCiB,gBA7CyB,SA6CTjB,GACf,OAAO7E,GAAGxC,WAAWqI,kBAAkBhB,GAAKkB,WAG7CC,YAjDyB,SAiDbC,GAkBX,OAjBAA,EAAQC,MAAK,SAASC,EAAGC,GACxB,IAAMC,EAAY5C,EAAKd,cAAcf,QAAQuE,EAAEzH,IACzC4H,EAAY7C,EAAKd,cAAcf,QAAQwE,EAAE1H,IAE/C,OAAI2H,IAAcC,GACE,IAAfA,GACK,GAEU,IAAfD,EACI,EAEDA,EAAYC,GAAa,EAAI,EAI9BtG,GAAGuG,KAAKC,mBAAmBL,EAAElF,KAAMmF,EAAEnF,SAEtCgF,GAGRQ,aAtEyB,SAsEZC,GAEZ,OAAOA,GAERC,gBA1EyB,WA2ExB,OAAOxH,EAAE,aAAc,oBAGzBvB,KAAK2F,aAAaqD,SAASC,SAAS,sBAAsBnG,KAAK,gBAAiB,SAChF9C,KAAK2F,aAAazD,GAAG,gBAAgB,WACpC,EAAKyD,aAAaqD,SAASC,SAAS,sBAAsBnG,KAAK,gBAAiB,WAEjF9C,KAAK2F,aAAazD,GAAG,iBAAiB,WACrC,EAAKyD,aAAaqD,SAASC,SAAS,sBAAsBnG,KAAK,gBAAiB,YAEjF9C,KAAK2F,aAAazD,GACjB,SACAF,EAAEC,KAAKjC,KAAK+H,eAAgB/H,OAEtBA,KAAK2F,cAQboB,uBA/J+C,SA+JxBD,GACtB1E,GAAGxC,WAAW4H,WAAWC,MAAM,CAC9BvB,QAD8B,WAE7B,IAAMmC,EAAUjG,GAAGxC,WAAW4H,WAAW0B,aACxCpC,EAAMqC,MAGPrC,EAAMM,SAAS,CACdiB,QAASrG,EAAEoH,OAAOf,EAAS,gBAW/BgB,cAlL+C,SAkLjC3F,GACb,GAAIA,EAAE4F,IAAK,CACV,IAAM/B,EAAOvF,EAAEuH,OAAO7F,EAAE4F,IAAI5I,MAAM,MAAM,SAAS2F,GAChD,MAAsB,KAAfA,EAAIgB,UAEZrH,KAAK2F,aAAaa,QAAQ,MAAOe,GAAQ,IACzCvH,KAAK8E,cAAgByC,EACrBvH,KAAKwJ,WAIPzB,eA7L+C,SA6LhC/E,GACd,IAAMqD,EAAM5C,EAAET,EAAGW,QACf0C,MACAgB,OAEDrH,KAAK8E,cADM,KAARuB,EACkBA,EAAI3F,MAAM,KAEV,GAGtBV,KAAKD,IAAI0J,QACRhG,EAAEiG,MAAM,kBAAmB,CAC1BJ,IAAKtJ,KAAK8E,cAAcwB,KAAK,QAG/BtG,KAAKwJ,UAGNG,mBA/M+C,WAgN9C,IAAML,EAAMtJ,KAAK4J,sBACL,MAARN,GAEEtJ,KAAK8E,cAAc+E,OAevB7J,KAAKD,IACHwF,KAAK,+BACLuE,KACA,0CAEGvI,EACD,aACA,wCAEC,SAtBLvB,KAAKD,IACHwF,KAAK,+BACLuE,KACA,0CAEGvI,EACD,aACA,mCAEC,SAgBNvB,KAAKD,IACHwF,KAAK,+BACLwE,YAAY,UAAW/J,KAAKgK,SAC9BhK,KAAKD,IACHwF,KAAK,8BACLwE,YAAY,SAAU/J,KAAKgK,UAE7BrK,IAAIuB,MAAML,SAASgE,UAAU8E,mBAAmBxE,MAC/CnF,KACAoF,YAKH6E,wBA5P+C,WA6P9C,OAAO7H,GAAGC,gBAAkBD,GAAG8H,mBAGhCC,wBAhQ+C,aAqQ/CX,OArQ+C,WAyQ9C,GAFAxJ,KAAKoK,eAAe,KAAK,IAEpBpK,KAAK8E,cAAc+E,OAIvB,OAFA7J,KAAK2J,qBACL3J,KAAKqK,SAAS,IACP5G,EAAE6G,WAAWC,UAGrBvK,KAAKwK,eAAiB,GACtBxK,KAAKyK,kBAAkBC,QACnB1K,KAAK2K,mBACR3K,KAAK2K,kBAAkBpH,MAExBvD,KAAK2K,kBAAoB,KACzB3K,KAAKD,IAAIwF,KAAK,eAAeqF,KAAK,WAAW,GAC7C5K,KAAK6K,WACL7K,KAAK8K,YAAc9K,KAAK+K,YAAYC,iBACnC,CACC3J,aAAcrB,KAAK8E,eAEpB,CACCmG,WAAYjL,KAAKkL,yBAGflL,KAAKmL,cAERnL,KAAKoL,mBAAmB,MAEzB,IAAMC,EAAWrL,KAAKsL,eAAerJ,KAAKjC,MAC1C,OAAOA,KAAK8K,YAAYS,KAAKF,EAAUA,IAGxCC,eAxS+C,SAwShCE,EAAQC,GAMtB,OALIA,GAEHA,EAAOC,QAAQ,IAGT/L,IAAIuB,MAAML,SAASgE,UAAUyG,eAAeK,KAClD3L,KACAwL,EACAC,MAMJ9L,IAAIC,WAAWiB,SAAWA,qBCxU3B,SAAUlB,GAKT,SAASiM,EAAiBC,GACzB,IAAMC,EAAOD,EAAM/D,SAInB,OAHK1F,GAAG2J,eAAkBD,EAAKE,YAC9BF,EAAKG,QAAS,GAERH,EAUR,IAAM3H,EAAqBxE,EAAIuB,MAAMgL,mBAAmBtI,OACG,CAEzDuI,WAAW,EAEXC,UAAW,qBACX/I,KAAM,aAGNvC,GAAI,qBAKJuL,WAAY,KAEZzH,WAfyD,SAe9CN,GACV,IAAMuB,EAAO7F,KACbsE,EAAUA,GAAW,GAErBtE,KAAKqM,WAAa,IAAIjK,GAAGxC,WAAW0M,qBAAqB,CACxD3F,UAAU,EACV4F,cAAc,EACdC,aAAa,EACbC,QAASrK,GAAG2J,cACZ7E,cALwD,SAK1CC,EAASC,GACtBA,EAASvB,EAAK6G,uBAAuB/L,IAAIiL,OAI3C5L,KAAK0M,uBAAyB,IAAItK,GAAGxC,WAAW+M,4BAA4B,GAAI,CAAEC,WAAY,UAE9F5M,KAAKqM,WAAW7E,WAAWtF,GAAG,cAAelC,KAAK6M,sBAAuB7M,MACzEA,KAAKqM,WAAW7E,WAAWtF,GAAG,SAAUlC,KAAK8M,sBAAuB9M,MAEpEA,KAAKqM,WAAWnK,GAAG,SAAUlC,KAAK+M,aAAc/M,MAChDA,KAAKqM,WAAWnK,GAAG,WAAYlC,KAAKgN,eAAgBhN,OAQrD+M,aA3CyD,SA2C5C9F,GAEZjH,KAAK0M,uBAAuBO,OAAOhG,EAAIa,WASxCkF,eAtDyD,SAsD1CrF,GACd3H,KAAK0M,uBAAuBlM,IAAImH,GAAOrE,WAWxCuJ,sBAlEyD,SAkEnCK,GAErB,IAAMC,EAAqBnN,KAAK0M,uBAAuBlM,IAAI0M,EAAWpM,IAClEqM,GACHA,EAAmBC,IAAIF,EAAWpF,WAYpCgF,sBAlFyD,SAkFnCnF,GAErB3H,KAAK0M,uBAAuB9G,OAAO+B,IAGpC0F,YAvFyD,SAuF7CC,GACX,IAAMzH,EAAO7F,KACRA,KAAKmM,WACTnM,KAAKuN,SAGFD,IACHtN,KAAK0M,uBAAuBc,YAAYF,EAASxM,IACjDd,KAAK0M,uBAAuBjF,MAAM,CACjCvB,QADiC,SACzBsB,GACPA,EAAWiG,SAAU,EAErB,IAAMC,EAAclG,EAAW7G,IAAIiL,GACnC/F,EAAKwG,WAAWsB,QAAQD,GACpBA,EAAY7D,OAAS,GACxBhE,EAAK+H,WAMT5N,KAAK6N,QAMNN,OAlHyD,WAmHxDvN,KAAKD,IAAIwG,OAAOvG,KAAKqM,WAAWtM,KAChCC,KAAKqM,WAAWkB,UAGjBO,UAvHyD,WAwHxD,OAAQ9N,KAAKD,IAAIgO,SAAS,WAG3BH,KA3HyD,WA4HxD5N,KAAKD,IAAIiO,YAAY,WAGtBH,KA/HyD,WAgIxD7N,KAAKD,IAAIkO,SAAS,WAGnBC,OAnIyD,WAoIxDlO,KAAKD,IAAIgK,YAAY,WAGtBoE,aAvIyD,WAwIxDnO,KAAKD,IAAIwF,KAAK,yBAAyBiB,QAAQ,SAGhDZ,OA3IyD,WA4IxD5F,KAAKqM,WAAWzG,YAInBjG,EAAIC,WAAWuE,mBAAqBA,EArKrC,CAuKGxE,4EC9LCyO,QAA0B,GAA4B,KAE1DA,EAAwBvG,KAAK,CAACwG,EAAOvN,GAAI,+OAAgP,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,kGAAkG,eAAiB,CAAC,6cAA6c,WAAa,MAEv9B,QCNIwN,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaE,QAGrB,IAAIN,EAASC,EAAyBE,GAAY,CACjD1N,GAAI0N,EACJI,QAAQ,EACRD,QAAS,IAUV,OANAE,EAAoBL,GAAU7C,KAAK0C,EAAOM,QAASN,EAAQA,EAAOM,QAASJ,GAG3EF,EAAOO,QAAS,EAGTP,EAAOM,QAIfJ,EAAoBzF,EAAI+F,EC5BxBN,EAAoBO,KAAO,WAC1B,MAAM,IAAIC,MAAM,mCCDjBR,EAAoBS,KAAO,GVAvBtP,EAAW,GACf6O,EAAoBU,EAAI,SAASxD,EAAQyD,EAAUC,EAAIC,GACtD,IAAGF,EAAH,CAMA,IAAIG,EAAeC,EAAAA,EACnB,IAASC,EAAI,EAAGA,EAAI7P,EAASmK,OAAQ0F,IAAK,CACrCL,EAAWxP,EAAS6P,GAAG,GACvBJ,EAAKzP,EAAS6P,GAAG,GACjBH,EAAW1P,EAAS6P,GAAG,GAE3B,IAJA,IAGIC,GAAY,EACPC,EAAI,EAAGA,EAAIP,EAASrF,OAAQ4F,MACpB,EAAXL,GAAsBC,GAAgBD,IAAaM,OAAOC,KAAKpB,EAAoBU,GAAGW,OAAM,SAASC,GAAO,OAAOtB,EAAoBU,EAAEY,GAAKX,EAASO,OAC3JP,EAASY,OAAOL,IAAK,IAErBD,GAAY,EACTJ,EAAWC,IAAcA,EAAeD,IAG7C,GAAGI,EAAW,CACb9P,EAASoQ,OAAOP,IAAK,GACrB,IAAIQ,EAAIZ,SACET,IAANqB,IAAiBtE,EAASsE,IAGhC,OAAOtE,EAzBN2D,EAAWA,GAAY,EACvB,IAAI,IAAIG,EAAI7P,EAASmK,OAAQ0F,EAAI,GAAK7P,EAAS6P,EAAI,GAAG,GAAKH,EAAUG,IAAK7P,EAAS6P,GAAK7P,EAAS6P,EAAI,GACrG7P,EAAS6P,GAAK,CAACL,EAAUC,EAAIC,IWJ/Bb,EAAoByB,EAAI,SAAS3B,GAChC,IAAI4B,EAAS5B,GAAUA,EAAO6B,WAC7B,WAAa,OAAO7B,EAAgB,SACpC,WAAa,OAAOA,GAErB,OADAE,EAAoB4B,EAAEF,EAAQ,CAAE1H,EAAG0H,IAC5BA,GCLR1B,EAAoB4B,EAAI,SAASxB,EAASyB,GACzC,IAAI,IAAIP,KAAOO,EACX7B,EAAoB8B,EAAED,EAAYP,KAAStB,EAAoB8B,EAAE1B,EAASkB,IAC5EH,OAAOY,eAAe3B,EAASkB,EAAK,CAAEU,YAAY,EAAM/P,IAAK4P,EAAWP,MCJ3EtB,EAAoBiC,EAAI,WACvB,GAA0B,iBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAOzQ,MAAQ,IAAI0Q,SAAS,cAAb,GACd,MAAOhN,GACR,GAAsB,iBAAXtD,OAAqB,OAAOA,QALjB,GCAxBmO,EAAoB8B,EAAI,SAASM,EAAK/F,GAAQ,OAAO8E,OAAO7K,UAAU+L,eAAejF,KAAKgF,EAAK/F,ICC/F2D,EAAoBwB,EAAI,SAASpB,GACX,oBAAXkC,QAA0BA,OAAOC,aAC1CpB,OAAOY,eAAe3B,EAASkC,OAAOC,YAAa,CAAEC,MAAO,WAE7DrB,OAAOY,eAAe3B,EAAS,aAAc,CAAEoC,OAAO,KCLvDxC,EAAoByC,IAAM,SAAS3C,GAGlC,OAFAA,EAAO4C,MAAQ,GACV5C,EAAOpF,WAAUoF,EAAOpF,SAAW,IACjCoF,GCHRE,EAAoBkB,EAAI,gBCAxBlB,EAAoB/F,EAAI0I,SAASC,SAAWtL,KAAKxF,SAASC,KAK1D,IAAI8Q,EAAkB,CACrB,KAAM,GAaP7C,EAAoBU,EAAEQ,EAAI,SAAS4B,GAAW,OAAoC,IAA7BD,EAAgBC,IAGrE,IAAIC,EAAuB,SAASC,EAA4BzF,GAC/D,IAKI0C,EAAU6C,EALVnC,EAAWpD,EAAK,GAChB0F,EAAc1F,EAAK,GACnB2F,EAAU3F,EAAK,GAGIyD,EAAI,EAC3B,GAAGL,EAASwC,MAAK,SAAS5Q,GAAM,OAA+B,IAAxBsQ,EAAgBtQ,MAAe,CACrE,IAAI0N,KAAYgD,EACZjD,EAAoB8B,EAAEmB,EAAahD,KACrCD,EAAoBzF,EAAE0F,GAAYgD,EAAYhD,IAGhD,GAAGiD,EAAS,IAAIhG,EAASgG,EAAQlD,GAGlC,IADGgD,GAA4BA,EAA2BzF,GACrDyD,EAAIL,EAASrF,OAAQ0F,IACzB8B,EAAUnC,EAASK,GAChBhB,EAAoB8B,EAAEe,EAAiBC,IAAYD,EAAgBC,IACrED,EAAgBC,GAAS,KAE1BD,EAAgBC,GAAW,EAE5B,OAAO9C,EAAoBU,EAAExD,IAG1BkG,EAAqB9L,KAA4B,sBAAIA,KAA4B,uBAAK,GAC1F8L,EAAmBC,QAAQN,EAAqBrP,KAAK,KAAM,IAC3D0P,EAAmB9J,KAAOyJ,EAAqBrP,KAAK,KAAM0P,EAAmB9J,KAAK5F,KAAK0P,OClDvFpD,EAAoBsD,QAAKnD,ECGzB,IAAIoD,EAAsBvD,EAAoBU,OAAEP,EAAW,CAAC,OAAO,WAAa,OAAOH,EAAoB,UAC3GuD,EAAsBvD,EAAoBU,EAAE6C","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/systemtags/src/app.js","webpack:///nextcloud/apps/systemtags/src/filesplugin.js","webpack://nextcloud/./apps/systemtags/src/css/systemtagsfilelist.scss?3cf4","webpack:///nextcloud/apps/systemtags/src/systemtags.js","webpack:///nextcloud/apps/systemtags/src/systemtagsfilelist.js","webpack:///nextcloud/apps/systemtags/src/systemtagsinfoview.js","webpack:///nextcloud/apps/systemtags/src/css/systemtagsfilelist.scss","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2015 Vincent Petry <pvince81@owncloud.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function() {\n\tif (!OCA.SystemTags) {\n\t\t/**\n\t\t * @namespace\n\t\t */\n\t\tOCA.SystemTags = {}\n\t}\n\n\tOCA.SystemTags.App = {\n\n\t\tinitFileList($el) {\n\t\t\tif (this._fileList) {\n\t\t\t\treturn this._fileList\n\t\t\t}\n\n\t\t\tconst tagsParam = (new URL(window.location.href)).searchParams.get('tags')\n\t\t\tconst initialTags = tagsParam ? tagsParam.split(',').map(parseInt) : []\n\n\t\t\tthis._fileList = new OCA.SystemTags.FileList(\n\t\t\t\t$el,\n\t\t\t\t{\n\t\t\t\t\tid: 'systemtags',\n\t\t\t\t\tfileActions: this._createFileActions(),\n\t\t\t\t\tconfig: OCA.Files.App.getFilesConfig(),\n\t\t\t\t\t// The file list is created when a \"show\" event is handled,\n\t\t\t\t\t// so it should be marked as \"shown\" like it would have been\n\t\t\t\t\t// done if handling the event with the file list already\n\t\t\t\t\t// created.\n\t\t\t\t\tshown: true,\n\t\t\t\t\tsystemTagIds: initialTags,\n\t\t\t\t}\n\t\t\t)\n\n\t\t\tthis._fileList.appName = t('systemtags', 'Tags')\n\t\t\treturn this._fileList\n\t\t},\n\n\t\tremoveFileList() {\n\t\t\tif (this._fileList) {\n\t\t\t\tthis._fileList.$fileList.empty()\n\t\t\t}\n\t\t},\n\n\t\t_createFileActions() {\n\t\t\t// inherit file actions from the files app\n\t\t\tconst fileActions = new OCA.Files.FileActions()\n\t\t\t// note: not merging the legacy actions because legacy apps are not\n\t\t\t// compatible with the sharing overview and need to be adapted first\n\t\t\tfileActions.registerDefaultActions()\n\t\t\tfileActions.merge(OCA.Files.fileActions)\n\n\t\t\tif (!this._globalActionsInitialized) {\n\t\t\t\t// in case actions are registered later\n\t\t\t\tthis._onActionsUpdated = _.bind(this._onActionsUpdated, this)\n\t\t\t\tOCA.Files.fileActions.on('setDefault.app-systemtags', this._onActionsUpdated)\n\t\t\t\tOCA.Files.fileActions.on('registerAction.app-systemtags', this._onActionsUpdated)\n\t\t\t\tthis._globalActionsInitialized = true\n\t\t\t}\n\n\t\t\t// when the user clicks on a folder, redirect to the corresponding\n\t\t\t// folder in the files app instead of opening it directly\n\t\t\tfileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function(filename, context) {\n\t\t\t\tOCA.Files.App.setActiveView('files', { silent: true })\n\t\t\t\tOCA.Files.App.fileList.changeDirectory(OC.joinPaths(context.$file.attr('data-path'), filename), true, true)\n\t\t\t})\n\t\t\tfileActions.setDefault('dir', 'Open')\n\t\t\treturn fileActions\n\t\t},\n\n\t\t_onActionsUpdated(ev) {\n\t\t\tif (!this._fileList) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (ev.action) {\n\t\t\t\tthis._fileList.fileActions.registerAction(ev.action)\n\t\t\t} else if (ev.defaultAction) {\n\t\t\t\tthis._fileList.fileActions.setDefault(\n\t\t\t\t\tev.defaultAction.mime,\n\t\t\t\t\tev.defaultAction.name\n\t\t\t\t)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Destroy the app\n\t\t */\n\t\tdestroy() {\n\t\t\tOCA.Files.fileActions.off('setDefault.app-systemtags', this._onActionsUpdated)\n\t\t\tOCA.Files.fileActions.off('registerAction.app-systemtags', this._onActionsUpdated)\n\t\t\tthis.removeFileList()\n\t\t\tthis._fileList = null\n\t\t\tdelete this._globalActionsInitialized\n\t\t},\n\t}\n\n})()\n\nwindow.addEventListener('DOMContentLoaded', function() {\n\t$('#app-content-systemtagsfilter').on('show', function(e) {\n\t\tOCA.SystemTags.App.initFileList($(e.target))\n\t})\n\t$('#app-content-systemtagsfilter').on('hide', function() {\n\t\tOCA.SystemTags.App.removeFileList()\n\t})\n})\n","/**\n * Copyright (c) 2015 Vincent Petry <pvince81@owncloud.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function() {\n\tOCA.SystemTags = _.extend({}, OCA.SystemTags)\n\tif (!OCA.SystemTags) {\n\t\t/**\n\t\t * @namespace\n\t\t */\n\t\tOCA.SystemTags = {}\n\t}\n\n\t/**\n\t * @namespace\n\t */\n\tOCA.SystemTags.FilesPlugin = {\n\t\tignoreLists: [\n\t\t\t'trashbin',\n\t\t\t'files.public',\n\t\t],\n\n\t\tattach(fileList) {\n\t\t\tif (this.ignoreLists.indexOf(fileList.id) >= 0) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// only create and attach once\n\t\t\t// FIXME: this should likely be done on a different code path now\n\t\t\t// for the sidebar to only have it registered once\n\t\t\tif (!OCA.SystemTags.View) {\n\t\t\t\tconst systemTagsInfoView = new OCA.SystemTags.SystemTagsInfoView()\n\t\t\t\tfileList.registerDetailView(systemTagsInfoView)\n\t\t\t\tOCA.SystemTags.View = systemTagsInfoView\n\t\t\t}\n\t\t},\n\t}\n\n})()\n\nOC.Plugins.register('OCA.Files.FileList', OCA.SystemTags.FilesPlugin)\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./systemtagsfilelist.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./systemtagsfilelist.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport './app'\nimport './systemtagsfilelist'\nimport './filesplugin'\nimport './systemtagsinfoview'\nimport './css/systemtagsfilelist.scss'\n\nwindow.OCA.SystemTags = OCA.SystemTags\n","/**\n * Copyright (c) 2016 Vincent Petry <pvince81@owncloud.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function() {\n\t/**\n\t * @class OCA.SystemTags.FileList\n\t * @augments OCA.Files.FileList\n\t *\n\t * @classdesc SystemTags file list.\n\t * Contains a list of files filtered by system tags.\n\t *\n\t * @param {object} $el container element with existing markup for the .files-controls and a table\n\t * @param {Array} [options] map of options, see other parameters\n\t * @param {Array.<string>} [options.systemTagIds] array of system tag ids to\n\t * filter by\n\t */\n\tconst FileList = function($el, options) {\n\t\tthis.initialize($el, options)\n\t}\n\tFileList.prototype = _.extend(\n\t\t{},\n\t\tOCA.Files.FileList.prototype,\n\t\t/** @lends OCA.SystemTags.FileList.prototype */ {\n\t\t\tid: 'systemtagsfilter',\n\t\t\tappName: t('systemtags', 'Tagged files'),\n\n\t\t\t/**\n\t\t\t * Array of system tag ids to filter by\n\t\t\t *\n\t\t\t * @type {Array.<string>}\n\t\t\t */\n\t\t\t_systemTagIds: [],\n\t\t\t_lastUsedTags: [],\n\n\t\t\t_clientSideSort: true,\n\t\t\t_allowSelection: false,\n\n\t\t\t_filterField: null,\n\n\t\t\t/**\n\t\t\t * @private\n\t\t\t * @param {object} $el container element\n\t\t\t * @param {object} [options] map of options, see other parameters\n\t\t\t */\n\t\t\tinitialize($el, options) {\n\t\t\t\tOCA.Files.FileList.prototype.initialize.apply(this, arguments)\n\t\t\t\tif (this.initialized) {\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (options && options.systemTagIds) {\n\t\t\t\t\tthis._systemTagIds = options.systemTagIds\n\t\t\t\t}\n\n\t\t\t\tOC.Plugins.attach('OCA.SystemTags.FileList', this)\n\n\t\t\t\tconst $controls = this.$el.find('.files-controls').empty()\n\n\t\t\t\t_.defer(_.bind(this._getLastUsedTags, this))\n\t\t\t\tthis._initFilterField($controls)\n\t\t\t},\n\n\t\t\tdestroy() {\n\t\t\t\tthis.$filterField.remove()\n\n\t\t\t\tOCA.Files.FileList.prototype.destroy.apply(this, arguments)\n\t\t\t},\n\n\t\t\t_getLastUsedTags() {\n\t\t\t\tconst 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(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_initFilterField($container) {\n\t\t\t\tconst self = this\n\t\t\t\tthis.$filterField = $('<input type=\"hidden\" name=\"tags\"/>')\n\t\t\t\tthis.$filterField.val(this._systemTagIds.join(','))\n\t\t\t\t$container.append(this.$filterField)\n\t\t\t\tthis.$filterField.select2({\n\t\t\t\t\tplaceholder: t('systemtags', 'Select tags to filter by'),\n\t\t\t\t\tallowClear: false,\n\t\t\t\t\tmultiple: true,\n\t\t\t\t\ttoggleSelect: true,\n\t\t\t\t\tseparator: ',',\n\t\t\t\t\tquery: _.bind(this._queryTagsAutocomplete, this),\n\t\t\t\t\tminimumInputLength: 3,\n\n\t\t\t\t\tid(tag) {\n\t\t\t\t\t\treturn tag.id\n\t\t\t\t\t},\n\n\t\t\t\t\tinitSelection(element, callback) {\n\t\t\t\t\t\tconst val = $(element)\n\t\t\t\t\t\t\t.val()\n\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\tif (val) {\n\t\t\t\t\t\t\tconst tagIds = val.split(',')\n\t\t\t\t\t\t\tconst tags = []\n\n\t\t\t\t\t\t\tOC.SystemTags.collection.fetch({\n\t\t\t\t\t\t\t\tsuccess() {\n\t\t\t\t\t\t\t\t\t_.each(tagIds, function(tagId) {\n\t\t\t\t\t\t\t\t\t\tconst tag = OC.SystemTags.collection.get(\n\t\t\t\t\t\t\t\t\t\t\ttagId\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\tif (!_.isUndefined(tag)) {\n\t\t\t\t\t\t\t\t\t\t\ttags.push(tag.toJSON())\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\tcallback(tags)\n\t\t\t\t\t\t\t\t\tself._onTagsChanged({ target: element })\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// eslint-disable-next-line n/no-callback-literal\n\t\t\t\t\t\t\tcallback([])\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\n\t\t\t\t\tformatResult(tag) {\n\t\t\t\t\t\treturn OC.SystemTags.getDescriptiveTag(tag)\n\t\t\t\t\t},\n\n\t\t\t\t\tformatSelection(tag) {\n\t\t\t\t\t\treturn OC.SystemTags.getDescriptiveTag(tag).outerHTML\n\t\t\t\t\t},\n\n\t\t\t\t\tsortResults(results) {\n\t\t\t\t\t\tresults.sort(function(a, b) {\n\t\t\t\t\t\t\tconst aLastUsed = self._lastUsedTags.indexOf(a.id)\n\t\t\t\t\t\t\tconst bLastUsed = self._lastUsedTags.indexOf(b.id)\n\n\t\t\t\t\t\t\tif (aLastUsed !== bLastUsed) {\n\t\t\t\t\t\t\t\tif (bLastUsed === -1) {\n\t\t\t\t\t\t\t\t\treturn -1\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (aLastUsed === -1) {\n\t\t\t\t\t\t\t\t\treturn 1\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn aLastUsed < bLastUsed ? -1 : 1\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t// Both not found\n\t\t\t\t\t\t\treturn OC.Util.naturalSortCompare(a.name, b.name)\n\t\t\t\t\t\t})\n\t\t\t\t\t\treturn results\n\t\t\t\t\t},\n\n\t\t\t\t\tescapeMarkup(m) {\n\t\t\t\t\t\t// prevent double markup escape\n\t\t\t\t\t\treturn m\n\t\t\t\t\t},\n\t\t\t\t\tformatNoMatches() {\n\t\t\t\t\t\treturn t('systemtags', 'No tags found')\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tthis.$filterField.parent().children('.select2-container').attr('aria-expanded', 'false')\n\t\t\t\tthis.$filterField.on('select2-open', () => {\n\t\t\t\t\tthis.$filterField.parent().children('.select2-container').attr('aria-expanded', 'true')\n\t\t\t\t})\n\t\t\t\tthis.$filterField.on('select2-close', () => {\n\t\t\t\t\tthis.$filterField.parent().children('.select2-container').attr('aria-expanded', 'false')\n\t\t\t\t})\n\t\t\t\tthis.$filterField.on(\n\t\t\t\t\t'change',\n\t\t\t\t\t_.bind(this._onTagsChanged, this)\n\t\t\t\t)\n\t\t\t\treturn this.$filterField\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Autocomplete function for dropdown results\n\t\t\t *\n\t\t\t * @param {object} query select2 query object\n\t\t\t */\n\t\t\t_queryTagsAutocomplete(query) {\n\t\t\t\tOC.SystemTags.collection.fetch({\n\t\t\t\t\tsuccess() {\n\t\t\t\t\t\tconst results = OC.SystemTags.collection.filterByName(\n\t\t\t\t\t\t\tquery.term\n\t\t\t\t\t\t)\n\n\t\t\t\t\t\tquery.callback({\n\t\t\t\t\t\t\tresults: _.invoke(results, '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/**\n\t\t\t * Event handler for when the URL changed\n\t\t\t *\n\t\t\t * @param {Event} e the urlchanged event\n\t\t\t */\n\t\t\t_onUrlChanged(e) {\n\t\t\t\tif (e.dir) {\n\t\t\t\t\tconst tags = _.filter(e.dir.split('/'), function(val) {\n\t\t\t\t\t\treturn val.trim() !== ''\n\t\t\t\t\t})\n\t\t\t\t\tthis.$filterField.select2('val', tags || [])\n\t\t\t\t\tthis._systemTagIds = tags\n\t\t\t\t\tthis.reload()\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t_onTagsChanged(ev) {\n\t\t\t\tconst val = $(ev.target)\n\t\t\t\t\t.val()\n\t\t\t\t\t.trim()\n\t\t\t\tif (val !== '') {\n\t\t\t\t\tthis._systemTagIds = val.split(',')\n\t\t\t\t} else {\n\t\t\t\t\tthis._systemTagIds = []\n\t\t\t\t}\n\n\t\t\t\tthis.$el.trigger(\n\t\t\t\t\t$.Event('changeDirectory', {\n\t\t\t\t\t\tdir: this._systemTagIds.join('/'),\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t\tthis.reload()\n\t\t\t},\n\n\t\t\tupdateEmptyContent() {\n\t\t\t\tconst dir = this.getCurrentDirectory()\n\t\t\t\tif (dir === '/') {\n\t\t\t\t\t// root has special permissions\n\t\t\t\t\tif (!this._systemTagIds.length) {\n\t\t\t\t\t\t// no tags selected\n\t\t\t\t\t\tthis.$el\n\t\t\t\t\t\t\t.find('.emptyfilelist.emptycontent')\n\t\t\t\t\t\t\t.html(\n\t\t\t\t\t\t\t\t'<div class=\"icon-systemtags\"></div>'\n\t\t\t\t\t\t\t\t\t+ '<h2>'\n\t\t\t\t\t\t\t\t\t+ t(\n\t\t\t\t\t\t\t\t\t\t'systemtags',\n\t\t\t\t\t\t\t\t\t\t'Please select tags to filter by'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t+ '</h2>'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// tags selected but no results\n\t\t\t\t\t\tthis.$el\n\t\t\t\t\t\t\t.find('.emptyfilelist.emptycontent')\n\t\t\t\t\t\t\t.html(\n\t\t\t\t\t\t\t\t'<div class=\"icon-systemtags\"></div>'\n\t\t\t\t\t\t\t\t\t+ '<h2>'\n\t\t\t\t\t\t\t\t\t+ t(\n\t\t\t\t\t\t\t\t\t\t'systemtags',\n\t\t\t\t\t\t\t\t\t\t'No files found for the selected tags'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t+ '</h2>'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t\tthis.$el\n\t\t\t\t\t\t.find('.emptyfilelist.emptycontent')\n\t\t\t\t\t\t.toggleClass('hidden', !this.isEmpty)\n\t\t\t\t\tthis.$el\n\t\t\t\t\t\t.find('.files-filestable thead th')\n\t\t\t\t\t\t.toggleClass('hidden', this.isEmpty)\n\t\t\t\t} else {\n\t\t\t\t\tOCA.Files.FileList.prototype.updateEmptyContent.apply(\n\t\t\t\t\t\tthis,\n\t\t\t\t\t\targuments\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tgetDirectoryPermissions() {\n\t\t\t\treturn OC.PERMISSION_READ | OC.PERMISSION_DELETE\n\t\t\t},\n\n\t\t\tupdateStorageStatistics() {\n\t\t\t\t// no op because it doesn't have\n\t\t\t\t// storage info like free space / used space\n\t\t\t},\n\n\t\t\treload() {\n\t\t\t\t// there is only root\n\t\t\t\tthis._setCurrentDir('/', false)\n\n\t\t\t\tif (!this._systemTagIds.length) {\n\t\t\t\t\t// don't reload\n\t\t\t\t\tthis.updateEmptyContent()\n\t\t\t\t\tthis.setFiles([])\n\t\t\t\t\treturn $.Deferred().resolve()\n\t\t\t\t}\n\n\t\t\t\tthis._selectedFiles = {}\n\t\t\t\tthis._selectionSummary.clear()\n\t\t\t\tif (this._currentFileModel) {\n\t\t\t\t\tthis._currentFileModel.off()\n\t\t\t\t}\n\t\t\t\tthis._currentFileModel = null\n\t\t\t\tthis.$el.find('.select-all').prop('checked', false)\n\t\t\t\tthis.showMask()\n\t\t\t\tthis._reloadCall = this.filesClient.getFilteredFiles(\n\t\t\t\t\t{\n\t\t\t\t\t\tsystemTagIds: this._systemTagIds,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tproperties: this._getWebdavProperties(),\n\t\t\t\t\t}\n\t\t\t\t)\n\t\t\t\tif (this._detailsView) {\n\t\t\t\t\t// close sidebar\n\t\t\t\t\tthis._updateDetailsView(null)\n\t\t\t\t}\n\t\t\t\tconst callBack = this.reloadCallback.bind(this)\n\t\t\t\treturn this._reloadCall.then(callBack, callBack)\n\t\t\t},\n\n\t\t\treloadCallback(status, result) {\n\t\t\t\tif (result) {\n\t\t\t\t\t// prepend empty dir info because original handler\n\t\t\t\t\tresult.unshift({})\n\t\t\t\t}\n\n\t\t\t\treturn OCA.Files.FileList.prototype.reloadCallback.call(\n\t\t\t\t\tthis,\n\t\t\t\t\tstatus,\n\t\t\t\t\tresult\n\t\t\t\t)\n\t\t\t},\n\t\t}\n\t)\n\n\tOCA.SystemTags.FileList = FileList\n})()\n","/**\n * Copyright (c) 2015\n *\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n(function(OCA) {\n\n\t/**\n\t * @param {any} model -\n\t */\n\tfunction modelToSelection(model) {\n\t\tconst data = model.toJSON()\n\t\tif (!OC.isUserAdmin() && !data.canAssign) {\n\t\t\tdata.locked = true\n\t\t}\n\t\treturn data\n\t}\n\n\t/**\n\t * @class OCA.SystemTags.SystemTagsInfoView\n\t * @classdesc\n\t *\n\t * Displays a file's system tags\n\t *\n\t */\n\tconst SystemTagsInfoView = OCA.Files.DetailFileInfoView.extend(\n\t\t/** @lends OCA.SystemTags.SystemTagsInfoView.prototype */ {\n\n\t\t\t_rendered: false,\n\n\t\t\tclassName: 'systemTagsInfoView',\n\t\t\tname: 'systemTags',\n\n\t\t\t/* required by the new files sidebar to check if the view is unique */\n\t\t\tid: 'systemTagsInfoView',\n\n\t\t\t/**\n\t\t\t * @type {OC.SystemTags.SystemTagsInputField}\n\t\t\t */\n\t\t\t_inputView: null,\n\n\t\t\tinitialize(options) {\n\t\t\t\tconst self = this\n\t\t\t\toptions = options || {}\n\n\t\t\t\tthis._inputView = new OC.SystemTags.SystemTagsInputField({\n\t\t\t\t\tmultiple: true,\n\t\t\t\t\tallowActions: true,\n\t\t\t\t\tallowCreate: true,\n\t\t\t\t\tisAdmin: OC.isUserAdmin(),\n\t\t\t\t\tinitSelection(element, callback) {\n\t\t\t\t\t\tcallback(self.selectedTagsCollection.map(modelToSelection))\n\t\t\t\t\t},\n\t\t\t\t})\n\n\t\t\t\tthis.selectedTagsCollection = new OC.SystemTags.SystemTagsMappingCollection([], { objectType: 'files' })\n\n\t\t\t\tthis._inputView.collection.on('change:name', this._onTagRenamedGlobally, this)\n\t\t\t\tthis._inputView.collection.on('remove', this._onTagDeletedGlobally, this)\n\n\t\t\t\tthis._inputView.on('select', this._onSelectTag, this)\n\t\t\t\tthis._inputView.on('deselect', this._onDeselectTag, this)\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag was selected\n\t\t\t *\n\t\t\t * @param {object} tag the tag to create\n\t\t\t */\n\t\t\t_onSelectTag(tag) {\n\t\t\t// create a mapping entry for this tag\n\t\t\t\tthis.selectedTagsCollection.create(tag.toJSON())\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag gets deselected.\n\t\t\t * Removes the selected tag from the mapping collection.\n\t\t\t *\n\t\t\t * @param {string} tagId tag id\n\t\t\t */\n\t\t\t_onDeselectTag(tagId) {\n\t\t\t\tthis.selectedTagsCollection.get(tagId).destroy()\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag was renamed globally.\n\t\t\t *\n\t\t\t * This will automatically adjust the tag mapping collection to\n\t\t\t * container the new name.\n\t\t\t *\n\t\t\t * @param {OC.Backbone.Model} changedTag tag model that has changed\n\t\t\t */\n\t\t\t_onTagRenamedGlobally(changedTag) {\n\t\t\t// also rename it in the selection, if applicable\n\t\t\t\tconst selectedTagMapping = this.selectedTagsCollection.get(changedTag.id)\n\t\t\t\tif (selectedTagMapping) {\n\t\t\t\t\tselectedTagMapping.set(changedTag.toJSON())\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Event handler whenever a tag was deleted globally.\n\t\t\t *\n\t\t\t * This will automatically adjust the tag mapping collection to\n\t\t\t * container the new name.\n\t\t\t *\n\t\t\t * @param {OC.Backbone.Model} tagId tag model that has changed\n\t\t\t */\n\t\t\t_onTagDeletedGlobally(tagId) {\n\t\t\t// also rename it in the selection, if applicable\n\t\t\t\tthis.selectedTagsCollection.remove(tagId)\n\t\t\t},\n\n\t\t\tsetFileInfo(fileInfo) {\n\t\t\t\tconst self = this\n\t\t\t\tif (!this._rendered) {\n\t\t\t\t\tthis.render()\n\t\t\t\t}\n\n\t\t\t\tif (fileInfo) {\n\t\t\t\t\tthis.selectedTagsCollection.setObjectId(fileInfo.id)\n\t\t\t\t\tthis.selectedTagsCollection.fetch({\n\t\t\t\t\t\tsuccess(collection) {\n\t\t\t\t\t\t\tcollection.fetched = true\n\n\t\t\t\t\t\t\tconst appliedTags = collection.map(modelToSelection)\n\t\t\t\t\t\t\tself._inputView.setData(appliedTags)\n\t\t\t\t\t\t\tif (appliedTags.length > 0) {\n\t\t\t\t\t\t\t\tself.show()\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}\n\n\t\t\t\tthis.hide()\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * Renders this details view\n\t\t\t */\n\t\t\trender() {\n\t\t\t\tthis.$el.append(this._inputView.$el)\n\t\t\t\tthis._inputView.render()\n\t\t\t},\n\n\t\t\tisVisible() {\n\t\t\t\treturn !this.$el.hasClass('hidden')\n\t\t\t},\n\n\t\t\tshow() {\n\t\t\t\tthis.$el.removeClass('hidden')\n\t\t\t},\n\n\t\t\thide() {\n\t\t\t\tthis.$el.addClass('hidden')\n\t\t\t},\n\n\t\t\ttoggle() {\n\t\t\t\tthis.$el.toggleClass('hidden')\n\t\t\t},\n\n\t\t\topenDropdown() {\n\t\t\t\tthis.$el.find('.systemTagsInputField').select2('open')\n\t\t\t},\n\n\t\t\tremove() {\n\t\t\t\tthis._inputView.remove()\n\t\t\t},\n\t\t})\n\n\tOCA.SystemTags.SystemTagsInfoView = SystemTagsInfoView\n\n})(OCA)\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#app-content-systemtagsfilter .select2-container{width:30%;margin-left:10px}#app-sidebar .app-sidebar-header__action .tag-label{cursor:pointer;padding:13px 0;display:flex;color:var(--color-text-light);position:relative;margin-top:-20px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/systemtags/src/css/systemtagsfilelist.scss\"],\"names\":[],\"mappings\":\"AASA,iDACC,SAAA,CACA,gBAAA,CAGD,oDACC,cAAA,CACA,cAAA,CACA,YAAA,CACA,6BAAA,CACA,iBAAA,CACA,gBAAA\",\"sourcesContent\":[\"/*\\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#app-content-systemtagsfilter .select2-container {\\n\\twidth: 30%;\\n\\tmargin-left: 10px;\\n}\\n\\n#app-sidebar .app-sidebar-header__action .tag-label {\\n\\tcursor: pointer;\\n\\tpadding: 13px 0;\\n\\tdisplay: flex;\\n\\tcolor: var(--color-text-light);\\n\\tposition: relative;\\n\\tmargin-top: -20px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9698;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t9698: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(19294); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OCA","SystemTags","App","initFileList","$el","this","_fileList","tagsParam","URL","window","location","href","searchParams","get","initialTags","split","map","parseInt","FileList","id","fileActions","_createFileActions","config","Files","getFilesConfig","shown","systemTagIds","appName","t","removeFileList","$fileList","empty","FileActions","registerDefaultActions","merge","_globalActionsInitialized","_onActionsUpdated","_","bind","on","register","OC","PERMISSION_READ","filename","context","setActiveView","silent","fileList","changeDirectory","joinPaths","$file","attr","setDefault","ev","action","registerAction","defaultAction","mime","name","destroy","off","addEventListener","$","e","target","extend","FilesPlugin","ignoreLists","attach","indexOf","View","systemTagsInfoView","SystemTagsInfoView","registerDetailView","Plugins","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","initialize","prototype","_systemTagIds","_lastUsedTags","_clientSideSort","_allowSelection","_filterField","apply","arguments","initialized","$controls","find","defer","_getLastUsedTags","_initFilterField","$filterField","remove","self","ajax","type","url","generateUrl","success","response","$container","val","join","append","select2","placeholder","allowClear","multiple","toggleSelect","separator","query","_queryTagsAutocomplete","minimumInputLength","tag","initSelection","element","callback","trim","tagIds","tags","collection","fetch","each","tagId","isUndefined","push","toJSON","_onTagsChanged","formatResult","getDescriptiveTag","formatSelection","outerHTML","sortResults","results","sort","a","b","aLastUsed","bLastUsed","Util","naturalSortCompare","escapeMarkup","m","formatNoMatches","parent","children","filterByName","term","invoke","_onUrlChanged","dir","filter","reload","trigger","Event","updateEmptyContent","getCurrentDirectory","length","html","toggleClass","isEmpty","getDirectoryPermissions","PERMISSION_DELETE","updateStorageStatistics","_setCurrentDir","setFiles","Deferred","resolve","_selectedFiles","_selectionSummary","clear","_currentFileModel","prop","showMask","_reloadCall","filesClient","getFilteredFiles","properties","_getWebdavProperties","_detailsView","_updateDetailsView","callBack","reloadCallback","then","status","result","unshift","call","modelToSelection","model","data","isUserAdmin","canAssign","locked","DetailFileInfoView","_rendered","className","_inputView","SystemTagsInputField","allowActions","allowCreate","isAdmin","selectedTagsCollection","SystemTagsMappingCollection","objectType","_onTagRenamedGlobally","_onTagDeletedGlobally","_onSelectTag","_onDeselectTag","create","changedTag","selectedTagMapping","set","setFileInfo","fileInfo","render","setObjectId","fetched","appliedTags","setData","show","hide","isVisible","hasClass","removeClass","addClass","toggle","openDropdown","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","amdD","Error","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","g","globalThis","Function","obj","hasOwnProperty","Symbol","toStringTag","value","nmd","paths","document","baseURI","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file