/*! For license information please see groupfolders-sharing.js.LICENSE.txt */ "use strict";(self.webpackChunkgroupfolders=self.webpackChunkgroupfolders||[]).push([["sharing","data_image_svg_xml_3c_21--_20-_20SPDX-FileCopyrightText_202020_20Google_20Inc_20-_20SPDX-Lice-cc29b1"],{2845:(e,r,i)=>{i.r(r),i.d(r,{default:()=>K});var o=i(5471),a=i(6802),s=i(5168),l=i(3814),c=i(1944),d=i(4095),u=i(7607),p=i(9656),A=i(9112),m=i(6549);const h={toString:function(t){return(t>>>0).toString(2).padStart(8,"0")},firstHigh:function(t){for(var e=0;0!==t;){if(!0&t)return e;e++,t>>=1}return 0},test:function(t,e){return(t>>e)%2!=0},set:function(t,e){return t|1<=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var l=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(l&&c){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;x(n)}return i}}throw Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:O(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),f}},e}function U(t,e,n,r,i,o,a){try{var s=t[o](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,i)}function q(t){return function(t){if(Array.isArray(t))return $(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return $(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n0}},getState:function(){var t=this;return function(e,n){var r=t.isAllowed(e,n.permissions);if(t.isNotInherited(e,n.mask))return r?C.SELF_ALLOW:C.SELF_DENY;var i=t.isAllowed(e,n.inheritedPermissions);return t.isNotInherited(e,n.inheritedMask)?i?C.INHERIT_ALLOW:C.INHERIT_DENY:C.INHERIT_DEFAULT}}},watch:{fileInfo:function(){this.loadAcls()}},beforeMount:function(){this.loadAcls()},methods:{loadAcls:function(){var t=this;this.options=[],this.loading=!0,this.model=JSON.parse(JSON.stringify(this.fileInfo)),f.A.propFind(this.model).then((function(e){e.acls&&(t.list=e.acls),t.inheritedAclsById=e.inheritedAclsById,t.aclEnabled=e.aclEnabled,t.aclCanManage=e.aclCanManage,t.groupFolderId=e.groupFolderId,t.loading=!1,t.searchMappings("")}))},getFullDisplayName:function(e,n){return"group"===n?"".concat(e," (").concat(t("groupfolders","Group"),")"):"circle"===n?"".concat(e," (").concat(t("groupfolders","Team"),")"):e},searchMappings:function(t){var e=this;z&&z.cancel("Operation canceled by another search request."),z=a.Ay.CancelToken.source(),this.isSearching=!0,a.Ay.get((0,l.Jv)("apps/groupfolders/folders/".concat(this.groupFolderId,"/search"))+"?format=json&search="+t,{cancelToken:z.token}).then((function(t){e.isSearching=!1;var n=Object.values(t.data.ocs.data.groups).map((function(t){return{unique:"group:"+t.gid,type:"group",id:t.gid,displayname:t.displayname,label:e.getFullDisplayName(t.displayname,"group")}})),r=Object.values(t.data.ocs.data.users).map((function(t){return{unique:"user:"+t.uid,type:"user",id:t.uid,displayname:t.displayname,label:e.getFullDisplayName(t.displayname,"user")}})),i=Object.values(t.data.ocs.data.circles).map((function(t){return{unique:"circle:"+t.sid,type:"circle",id:t.sid,displayname:t.displayname,label:e.getFullDisplayName(t.displayname,"circle")}}));e.options=[].concat(q(n),q(r),q(i)).filter((function(t){return!e.list.find((function(e){return t.unique===e.getUniqueMappingIdentifier()}))}))})).catch((function(t){a.Ay.isCancel(t)||logger.error("Failed to search results for groupfolder ACL")}))},toggleAclCreate:function(){var t=this;this.showAclCreate=!this.showAclCreate,this.showAclCreate&&o.Ay.nextTick((function(){t.$refs.select.$el.querySelector("input").focus()}))},createAcl:function(t){var e=this;this.value=null;var n=new g.A;n.fromValues(t.type,t.id,t.displayname,0,31),this.list.push(n),f.A.propPatch(this.model,this.list.filter((function(t){return!t.inherited}))).then((function(){e.showAclCreate=!1}))},removeAcl:function(t){var e=this,n=this.list.indexOf(t),r=this.list.concat([]);n>-1&&r.splice(n,1),f.A.propPatch(this.model,r.filter((function(t){return!t.inherited}))).then((function(){e.list.splice(n,1);var r=e.inheritedAclsById[t.getUniqueMappingIdentifier()];null!=r&&e.list.splice(n,0,r)}))},changePermission:function(t,e,n){var r=this;return function(t){return function(){var e=this,n=arguments;return new Promise((function(r,i){var o=t.apply(e,n);function a(t){U(o,r,i,a,s,"next",t)}function s(t){U(o,r,i,a,s,"throw",t)}a(void 0)}))}}(j().mark((function i(){var a,l,c,d,u;return j().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return a=r.list.indexOf(t),l=n===C.INHERIT_ALLOW||n===C.INHERIT_DENY||n===C.INHERIT_DEFAULT,c=n===C.SELF_ALLOW,d=h.firstHigh(e),u=t.clone(),t=t.clone(),l?t.mask=h.clear(t.mask,d):(t.mask=h.set(t.mask,d),t.permissions=c?h.set(t.permissions,d):h.clear(t.permissions,d)),t.inherited=!1,o.Ay.set(r.list,a,t),r.loading=!0,i.prev=10,i.next=13,f.A.propPatch(r.model,r.list.filter((function(t){return!t.inherited})));case 13:logger.debug("Permissions updated successfully"),i.next=21;break;case 16:i.prev=16,i.t0=i.catch(10),logger.error("Failed to save changes:",{error:i.t0}),o.Ay.set(r.list,a,u),(0,s.Qg)(i.t0);case 21:return i.prev=21,r.loading=!1,i.finish(21);case 24:case"end":return i.stop()}}),i,null,[[10,16,21,24]])})))()}}};var X=i(6814),V={};V.styleTagTransform=k(),V.setAttributes=R(),V.insert=L().bind(null,"head"),V.domAPI=w(),V.insertStyleElement=P();_()(X.A,V);X.A&&X.A.locals&&X.A.locals;const J=(0,H.A)(G,(function(){var t=this,e=t._self._c;return t.aclEnabled&&!t.loading?e("div",{attrs:{id:"groupfolder-acl-container"}},[e("div",{staticClass:"section-header"},[e("h4",[t._v(t._s(t.t("groupfolders","Advanced permissions for Team folder")))])]),t._v(" "),t._m(0),t._v(" "),e("table",[e("thead",[e("tr",[e("th"),t._v(" "),e("th",[t.model?e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.model.name,expression:"model.name"}]},[t._v("\n\t\t\t\t\t\t"+t._s(t.model.name)+"\n\t\t\t\t\t")]):e("span",[t._v("\n\t\t\t\t\t\t"+t._s(t.t("groupfolders","Team folder"))+"\n\t\t\t\t\t")])]),t._v(" "),e("th",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.t("groupfolders","Read"),expression:"t('groupfolders', 'Read')"}],staticClass:"state-column"},[t._v("\n\t\t\t\t\t"+t._s(t.t("groupfolders","Read"))+"\n\t\t\t\t")]),t._v(" "),e("th",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.t("groupfolders","Write"),expression:"t('groupfolders', 'Write')"}],staticClass:"state-column"},[t._v("\n\t\t\t\t\t"+t._s(t.t("groupfolders","Write"))+"\n\t\t\t\t")]),t._v(" "),"dir"===t.model.type?e("th",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.t("groupfolders","Create"),expression:"t('groupfolders', 'Create')"}],staticClass:"state-column"},[t._v("\n\t\t\t\t\t"+t._s(t.t("groupfolders","Create"))+"\n\t\t\t\t")]):t._e(),t._v(" "),e("th",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.t("groupfolders","Delete"),expression:"t('groupfolders', 'Delete')"}],staticClass:"state-column"},[t._v("\n\t\t\t\t\t"+t._s(t.t("groupfolders","Delete"))+"\n\t\t\t\t")]),t._v(" "),e("th",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.t("groupfolders","Share"),expression:"t('groupfolders', 'Share')"}],staticClass:"state-column"},[t._v("\n\t\t\t\t\t"+t._s(t.t("groupfolders","Share"))+"\n\t\t\t\t")]),t._v(" "),e("th",{staticClass:"state-column"})])]),t._v(" "),t.isAdmin?e("tbody",t._l(t.list,(function(n){return e("tr",{key:n.mappingType+"-"+n.mappingId},[e("td",[e("NcAvatar",{attrs:{user:n.mappingId,"is-no-user":"user"!==n.mappingType,size:24}})],1),t._v(" "),e("td",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.getFullDisplayName(n.mappingDisplayName,n.mappingType),expression:"getFullDisplayName(item.mappingDisplayName, item.mappingType)"}],staticClass:"username"},[t._v("\n\t\t\t\t\t"+t._s(t.getFullDisplayName(n.mappingDisplayName,n.mappingType))+"\n\t\t\t\t")]),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_READ,n),inherited:n.inherited,disabled:t.loading},on:{update:function(e){return t.changePermission(n,t.OC.PERMISSION_READ,e)}}})],1),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_UPDATE,n),inherited:n.inherited,disabled:t.loading},on:{update:function(e){return t.changePermission(n,t.OC.PERMISSION_UPDATE,e)}}})],1),t._v(" "),"dir"===t.model.type?e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_CREATE,n),inherited:n.inherited,disabled:t.loading},on:{update:function(e){return t.changePermission(n,t.OC.PERMISSION_CREATE,e)}}})],1):t._e(),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_DELETE,n),inherited:n.inherited,disabled:t.loading},on:{update:function(e){return t.changePermission(n,t.OC.PERMISSION_DELETE,e)}}})],1),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_SHARE,n),inherited:n.inherited,disabled:t.loading},on:{update:function(e){return t.changePermission(n,t.OC.PERMISSION_SHARE,e)}}})],1),t._v(" "),e("td",{staticClass:"state-column"},[!1===n.inherited?e("NcButton",{attrs:{type:"tertiary","v-tooltip":t.t("groupfolders","Remove access rule"),"aria-label":t.t("groupfolders","Remove access rule")},on:{click:function(e){return t.removeAcl(n)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Delete",{attrs:{size:16}})]},proxy:!0}],null,!0)}):t._e()],1)])})),0):e("tbody",[e("tr",[e("td",[e("NcAvatar",{attrs:{user:"admin",size:24}})],1),t._v(" "),e("td",{staticClass:"username"},[t._v("\n\t\t\t\t\t"+t._s(t.t("groupfolders","You"))+"\n\t\t\t\t")]),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_READ,{permissions:t.model.permissions,mask:31}),"read-only":!0}})],1),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_UPDATE,{permissions:t.model.permissions,mask:31}),"read-only":!0}})],1),t._v(" "),"dir"===t.model.type?e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_CREATE,{permissions:t.model.permissions,mask:31}),"read-only":!0}})],1):t._e(),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_DELETE,{permissions:t.model.permissions,mask:31}),"read-only":!0}})],1),t._v(" "),e("td",{staticClass:"state-column"},[e("AclStateButton",{attrs:{state:t.getState(t.OC.PERMISSION_SHARE,{permissions:t.model.permissions,mask:31}),"read-only":!0}})],1)])])]),t._v(" "),!t.isAdmin||t.loading||t.showAclCreate?t._e():e("NcButton",{on:{click:t.toggleAclCreate},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Plus",{attrs:{size:16}})]},proxy:!0}],null,!1,1065440311)},[t._v("\n\t\t"+t._s(t.t("groupfolders","Add new rule"))+"\n\t")]),t._v(" "),t.isAdmin&&!t.loading&&t.showAclCreate?e("NcSelect",{ref:"select",attrs:{options:t.options,loading:t.isSearching,filterable:!1,placeholder:t.t("groupfolders","Select a user or group"),"get-option-key":function(){return"unique"}},on:{input:t.createAcl,search:t.searchMappings},scopedSlots:t._u([{key:"option",fn:function(n){return[e("NcAvatar",{attrs:{user:n.id,"is-no-user":"user"!==n.type}}),t._v("\n\t\t\t"+t._s(n.label)+"\n\t\t")]}}],null,!1,918868790),model:{value:t.value,callback:function(e){t.value=e},expression:"value"}}):t._e()],1):t._e()}),[function(){var t=this._self._c;return t("div",{staticClass:"groupfolder-entry"},[t("div",{staticClass:"avatar icon-group-white"}),this._v(" "),t("span",{staticClass:"username"})])}],!1,null,"97832dfc",null).exports;var Q=i(6036);o.Ay.prototype.t=t,o.Ay.prototype.n=n,o.Ay.prototype.OC=OC,o.Ay.prototype.OCA=OCA,o.Ay.use(Q.m_);const K=o.Ay.extend(J)},6763:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(1354),i=n.n(r),o=n(6314),a=n.n(o)()(i());a.push([t.id,"\n.inherited[data-v-3b787510] {\n\topacity: 0.5;\n\tcolor: var(--color-text-maxcontrast);\n}\n","",{version:3,sources:["webpack://./src/components/AclStateButton.vue"],names:[],mappings:";AAkJA;CACA,YAAA;CACA,oCAAA;AACA",sourcesContent:["\x3c!--\n - SPDX-FileCopyrightText: 2018 F7cloud GmbH and F7cloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n\n\n