diff --git a/dist/SystemTagPicker-m8yyirsH.chunk.mjs b/dist/SystemTagPicker-CAj-3F0_.chunk.mjs similarity index 98% rename from dist/SystemTagPicker-m8yyirsH.chunk.mjs rename to dist/SystemTagPicker-CAj-3F0_.chunk.mjs index e50ebee5ff5e5..c1356ace442bd 100644 --- a/dist/SystemTagPicker-m8yyirsH.chunk.mjs +++ b/dist/SystemTagPicker-CAj-3F0_.chunk.mjs @@ -1,2 +1,2 @@ -import{e as E,a as q,d as K}from"./index-Bndk0DrU.chunk.mjs";import{a as _}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{a as A,l as J}from"./index-Ma7sfat2.chunk.mjs";import{t as y,g as S,e as Q,p as W,b as k}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{N as X}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import{N as Y}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{P as tt,N as et}from"./Plus-2xII8VOW.chunk.mjs";import{N as st}from"./NcColorPicker-DDHxR-iN-DPYQyC01.chunk.mjs";import{N as at}from"./index-CKn3f84a.chunk.mjs";import{N as it}from"./NcEmptyContent-B8-90BSI-BbZilwDO.chunk.mjs";import{N as ot}from"./Web-BMpaLM07.chunk.mjs";import{N as lt}from"./mdi-Cgau7A4L.chunk.mjs";import{_ as nt}from"./TrashCanOutline-CIT5iIpm.chunk.mjs";import{o as a,c as d,b as g,t as p,e as C,m as w,f as rt,i as c,g as h,w as m,F as R,h as u,C as ct,K as dt,j as N,E as mt,G as gt,p as ht}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{P as pt}from"./PencilOutline-BEazDXA8.chunk.mjs";import{l as L,g as O,s as x,e as I,h as z,c as ut,i as ft,f as yt,u as Ct}from"./api-CQ0gM7Uk.chunk.mjs";import{e as bt,i as kt,a as Nt}from"./systemtags-init.mjs";import"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./colors-BHGKZFDI-CR_0725C.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./index-BCebL___.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./index-DxnK_Coe.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./dav-CL9HtPMq.chunk.mjs";import"./index-BiqRItaQ.chunk.mjs";import"./public-Dw51J06r.chunk.mjs";import"./index-DdTMDjmV.chunk.mjs";const At={name:"CheckCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},vt=["aria-hidden","aria-label"],wt=["fill","width","height"],Tt={d:"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M10 17L5 12L6.41 10.59L10 14.17L17.59 6.58L19 8L10 17Z"},_t={key:0};function St(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon check-circle-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Tt,[e.title?(a(),d("title",_t,p(e.title),1)):C("",!0)])],8,wt))],16,vt)}const Lt=A(At,[["render",St]]),It={name:"CircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},$t=["aria-hidden","aria-label"],Et=["fill","width","height"],Rt={d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"},Ot={key:0};function xt(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon circle-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Rt,[e.title?(a(),d("title",Ot,p(e.title),1)):C("",!0)])],8,Et))],16,$t)}const zt=A(It,[["render",xt]]),Pt={name:"CircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Mt=["aria-hidden","aria-label"],Vt=["fill","width","height"],Bt={d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"},Ut={key:0};function Gt(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon circle-outline-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Bt,[e.title?(a(),d("title",Ut,p(e.title),1)):C("",!0)])],8,Vt))],16,Mt)}const Dt=A(Pt,[["render",Gt]]),jt={name:"TagOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ft=["aria-hidden","aria-label"],Ht=["fill","width","height"],Zt={d:"M21.41 11.58L12.41 2.58A2 2 0 0 0 11 2H4A2 2 0 0 0 2 4V11A2 2 0 0 0 2.59 12.42L11.59 21.42A2 2 0 0 0 13 22A2 2 0 0 0 14.41 21.41L21.41 14.41A2 2 0 0 0 22 13A2 2 0 0 0 21.41 11.58M13 20L4 11V4H11L20 13M6.5 5A1.5 1.5 0 1 1 5 6.5A1.5 1.5 0 0 1 6.5 5Z"},qt={key:0};function Kt(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon tag-outline-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Zt,[e.title?(a(),d("title",qt,p(e.title),1)):C("",!0)])],8,Ht))],16,Ft)}const Jt=A(jt,[["render",Kt]]),Qt=K(Ct,500),Wt=getComputedStyle(document.body).getPropertyValue("--color-main-background").replace("#","")||(Nt()?"000000":"ffffff");var P=(t=>(t.BASE="base",t.LOADING="loading",t.CREATING_TAG="creating-tag",t.DONE="done",t))(P||{});const Xt=J("systemtags","restrictSystemTagsCreationToAdmin",!1),Yt=rt({name:"SystemTagPicker",components:{CheckIcon:Lt,CircleIcon:zt,CircleOutlineIcon:Dt,NcButton:X,NcCheckboxRadioSwitch:Y,NcChip:et,NcColorPicker:st,NcDialog:at,NcEmptyContent:it,NcLoadingIcon:ot,NcNoteCard:lt,NcTextField:nt,PencilIcon:pt,PlusIcon:tt,TagIcon:Jt},props:{nodes:{type:Array,required:!0}},emits:{close(t){return t===null||typeof t=="boolean"}},setup(){return{emit:E,Status:P,t:y,canEditOrCreateTag:!Xt||q()?.isAdmin}},data(){return{status:"base",opened:!0,openedPicker:!1,input:"",tags:[],tagList:{},toAdd:[],toRemove:[]}},computed:{sortedTags(){return[...this.tags].sort((t,s)=>t.displayName.localeCompare(s.displayName,S(),{ignorePunctuation:!0}))},filteredTags(){return this.input.trim()===""?this.sortedTags:this.sortedTags.filter(t=>t.displayName.normalize().toLowerCase().includes(this.input.normalize().toLowerCase()))},hasChanges(){return this.toAdd.length>0||this.toRemove.length>0},canCreateTag(){return this.input.trim()!==""&&!this.tags.some(t=>t.displayName.trim().toLocaleLowerCase()===this.input.trim().toLocaleLowerCase())},statusMessage(){if(this.toAdd.length===0&&this.toRemove.length===0)return"";if(this.toAdd.length===1&&this.toRemove.length===1)return k("systemtags","{tag1} will be set and {tag2} will be removed from 1 file.","{tag1} will be set and {tag2} will be removed from {count} files.",this.nodes.length,{tag1:this.formatTagChip(this.toAdd[0]),tag2:this.formatTagChip(this.toRemove[0]),count:this.nodes.length},{escape:!1});const t=this.toAdd.map(this.formatTagChip),s=t.pop(),e=this.toRemove.map(this.formatTagChip),o=e.pop(),l=k("systemtags","{tag} will be set to 1 file.","{tag} will be set to {count} files.",this.nodes.length,{tag:s,count:this.nodes.length},{escape:!1}),n=k("systemtags","{tag} will be removed from 1 file.","{tag} will be removed from {count} files.",this.nodes.length,{tag:o,count:this.nodes.length},{escape:!1}),i=k("systemtags","{tags} and {lastTag} will be set to 1 file.","{tags} and {lastTag} will be set to {count} files.",this.nodes.length,{tags:t.join(", "),lastTag:s,count:this.nodes.length},{escape:!1}),f=k("systemtags","{tags} and {lastTag} will be removed from 1 file.","{tags} and {lastTag} will be removed from {count} files.",this.nodes.length,{tags:e.join(", "),lastTag:o,count:this.nodes.length},{escape:!1});return this.toAdd.length===1&&this.toRemove.length===0?l:this.toAdd.length===0&&this.toRemove.length===1?n:this.toAdd.length>1&&this.toRemove.length===0?i:this.toAdd.length===0&&this.toRemove.length>1?f:this.toAdd.length>1&&this.toRemove.length===1?`${i} ${n}`:this.toAdd.length===1&&this.toRemove.length>1?`${l} ${f}`:`${i} ${f}`}},beforeMount(){yt().then(t=>{this.tags=t}),this.tagList=this.nodes.reduce((t,s)=>((I(s)||[]).forEach(e=>{t[e]=(t[e]||0)+1}),t),{}),this.canEditOrCreateTag||L.debug("System tag creation is restricted to admins and the current user is not an admin")},methods:{formatTagChip(t){const s=this.$refs.chip.$el.cloneNode(!0);if(t.color){const e=this.tagListStyle(t);Object.entries(e).forEach(([o,l])=>{s.style.setProperty(o,l)})}return s.outerHTML.replace("%s",Q(W.sanitize(t.displayName)))},formatTagName(t){return t.userVisible?t.userAssignable?t.displayName:y("systemtags","{displayName} (restricted)",{displayName:t.displayName}):y("systemtags","{displayName} (hidden)",{displayName:t.displayName})},onColorChange(t,s){t.color=s.replace("#",""),Qt(t)},isChecked(t){return t.displayName in this.tagList&&this.tagList[t.displayName]===this.nodes.length},isIndeterminate(t){return t.displayName in this.tagList&&this.tagList[t.displayName]!==0&&this.tagList[t.displayName]!==this.nodes.length},onCheckUpdate(t,s){s?(this.toAdd.push(t),this.toRemove=this.toRemove.filter(e=>e.id!==t.id),this.tagList[t.displayName]=this.nodes.length):(this.toRemove.push(t),this.toAdd=this.toAdd.filter(e=>e.id!==t.id),this.tagList[t.displayName]=0)},async onNewTag(){if(!this.canEditOrCreateTag){_(y("systemtags","Only admins can create new tags"));return}this.status="creating-tag";try{const t={displayName:this.input.trim(),userAssignable:!0,userVisible:!0,canAssign:!0},s=await ut(t),e=await ft(s);this.tags.push(e),this.input="",this.onCheckUpdate(e,!0),await this.$nextTick(),Array.isArray(this.$refs.tags)&&this.$refs.tags.find(o=>o.dataset.cySystemtagsPickerTag===s.toString())?.scrollIntoView({behavior:"instant",block:"center",inline:"center"})}catch(t){_(t?.message||y("systemtags","Failed to create tag"))}finally{this.status="base"}},async onSubmit(){this.status="loading",L.debug("Applying tags",{toAdd:this.toAdd,toRemove:this.toRemove});try{for(const s of this.toAdd){const{etag:e,objects:o}=await O(s,"files"),l=[...new Set([...o.map(n=>n.id).filter(Boolean),...this.nodes.map(n=>n.fileid).filter(Boolean)])];await x(s,"files",l.map(n=>({id:n,type:"files"})),e)}for(const s of this.toRemove){const{etag:e,objects:o}=await O(s,"files"),l=new Set(this.nodes.map(i=>i.fileid)),n=o.map(i=>i.id).filter((i,f,T)=>!l.has(i)&&T.indexOf(i)===f);await x(s,"files",n.map(i=>({id:i,type:"files"})),e)}}catch(s){L.error("Failed to apply tags",{error:s}),_(y("systemtags","Failed to apply tags changes")),this.status="base";return}const t=[];this.toAdd.forEach(s=>{this.nodes.forEach(e=>{const o=[...I(e)||[],s.displayName].sort((l,n)=>l.localeCompare(n,S(),{ignorePunctuation:!0}));z(e,o),t.push(e)})}),this.toRemove.forEach(s=>{this.nodes.forEach(e=>{const o=[...I(e)||[]].filter(l=>l!==s.displayName).sort((l,n)=>l.localeCompare(n,S(),{ignorePunctuation:!0}));z(e,o),t.push(e)})}),t.forEach(s=>E("systemtags:node:updated",s)),this.status="done",setTimeout(()=>{this.opened=!1,this.$emit("close",!0)},2e3)},onCancel(){this.opened=!1,this.$emit("close",null)},tagListStyle(t){if(!t.color)return{"--color-circle-icon":"var(--color-text-maxcontrast)"};const s=bt(`#${t.color}`,`#${Wt}`),e=kt(s)?"#000000":"#ffffff";return{"--color-circle-icon":"var(--color-primary-element)","--color-primary":s,"--color-primary-text":e,"--color-primary-element":s,"--color-primary-element-text":e}}}}),te={class:"systemtags-picker__input"},ee={class:"systemtags-picker__tags","data-cy-systemtags-picker-tags":""},se=["data-cy-systemtags-picker-tag"],ae={class:"systemtags-picker__tag-create-subline"},ie={class:"systemtags-picker__note"},oe=["innerHTML"];function le(t,s,e,o,l,n){const i=c("NcLoadingIcon"),f=c("CheckIcon"),T=c("NcEmptyContent"),M=c("TagIcon"),V=c("NcTextField"),B=c("NcCheckboxRadioSwitch"),U=c("CircleIcon"),G=c("CircleOutlineIcon"),D=c("PencilIcon"),v=c("NcButton"),j=c("NcColorPicker"),F=c("PlusIcon"),$=c("NcNoteCard"),H=c("NcChip"),Z=c("NcDialog");return a(),h(Z,{"data-cy-systemtags-picker":"",noClose:t.status===t.Status.LOADING,name:t.t("systemtags","Manage tags"),open:t.opened,class:ht(["systemtags-picker--"+t.status,"systemtags-picker"]),closeOnClickOutside:"",outTransition:"","onUpdate:open":t.onCancel},{actions:m(()=>[u(v,{disabled:t.status!==t.Status.BASE,variant:"tertiary","data-cy-systemtags-picker-button-cancel":"",onClick:t.onCancel},{default:m(()=>[N(p(t.t("systemtags","Cancel")),1)]),_:1},8,["disabled","onClick"]),u(v,{disabled:!t.hasChanges||t.status!==t.Status.BASE,"data-cy-systemtags-picker-button-submit":"",onClick:t.onSubmit},{default:m(()=>[N(p(t.t("systemtags","Apply")),1)]),_:1},8,["disabled","onClick"])]),default:m(()=>[t.status===t.Status.LOADING||t.status===t.Status.DONE?(a(),h(T,{key:0,name:t.t("systemtags","Applying tags changes…")},{icon:m(()=>[t.status===t.Status.LOADING?(a(),h(i,{key:0})):(a(),h(f,{key:1,fillColor:"var(--color-border-success)"}))]),_:1},8,["name"])):(a(),d(R,{key:1},[g("div",te,[u(V,{modelValue:t.input,"onUpdate:modelValue":s[0]||(s[0]=r=>t.input=r),label:t.canEditOrCreateTag?t.t("systemtags","Search or create tag"):t.t("systemtags","Search tag"),"data-cy-systemtags-picker-input":""},{default:m(()=>[u(M,{size:20})]),_:1},8,["modelValue","label"])]),g("ul",ee,[(a(!0),d(R,null,ct(t.filteredTags,r=>(a(),d("li",{key:r.id,ref_for:!0,ref:"tags","data-cy-systemtags-picker-tag":r.id,style:dt(t.tagListStyle(r)),class:"systemtags-picker__tag"},[u(B,{modelValue:t.isChecked(r),disabled:!r.canAssign,indeterminate:t.isIndeterminate(r),label:r.displayName,class:"systemtags-picker__tag-checkbox","onUpdate:modelValue":b=>t.onCheckUpdate(r,b)},{default:m(()=>[N(p(t.formatTagName(r)),1)]),_:2},1032,["modelValue","disabled","indeterminate","label","onUpdate:modelValue"]),t.canEditOrCreateTag?(a(),h(j,{key:0,"data-cy-systemtags-picker-tag-color":r.id,modelValue:`#${r.color||"000000"}`,shown:t.openedPicker===r.id,class:"systemtags-picker__tag-color","onUpdate:shown":b=>t.openedPicker=b?r.id:!1,onSubmit:b=>t.onColorChange(r,b)},{default:m(()=>[u(v,{"aria-label":t.t("systemtags","Change tag color"),variant:"tertiary"},{icon:m(()=>[r.color?(a(),h(U,{key:0,size:24,fillColor:"var(--color-circle-icon)",class:"button-color-circle"})):(a(),h(G,{key:1,size:24,fillColor:"var(--color-circle-icon)",class:"button-color-empty"})),u(D,{class:"button-color-pencil"})]),_:2},1032,["aria-label"])]),_:2},1032,["data-cy-systemtags-picker-tag-color","modelValue","shown","onUpdate:shown","onSubmit"])):C("",!0)],12,se))),128)),g("li",null,[t.canEditOrCreateTag&&t.canCreateTag?(a(),h(v,{key:0,disabled:t.status===t.Status.CREATING_TAG,alignment:"start",class:"systemtags-picker__tag-create",type:"submit",variant:"tertiary","data-cy-systemtags-picker-button-create":"",onClick:t.onNewTag},{icon:m(()=>[u(F)]),default:m(()=>[N(p(t.input.trim()),1),s[1]||(s[1]=g("br",null,null,-1)),g("span",ae,p(t.t("systemtags","Create new tag")),1)]),_:1},8,["disabled","onClick"])):C("",!0)])]),g("div",ie,[t.hasChanges?(a(),h($,{key:1,type:"info"},{default:m(()=>[g("span",{innerHTML:t.statusMessage},null,8,oe)]),_:1})):(a(),h($,{key:0,type:"info"},{default:m(()=>[N(p(t.t("systemtags","Choose tags for the selected files")),1)]),_:1}))])],64)),mt(g("div",null,[u(H,{ref:"chip",text:"%s",noClose:"",variant:"primary"},null,512)],512),[[gt,!1]])]),_:1},8,["noClose","name","open","class","onUpdate:open"])}const Pe=A(Yt,[["render",le],["__scopeId","data-v-fbaf4147"]]);export{Pe as default}; -//# sourceMappingURL=SystemTagPicker-m8yyirsH.chunk.mjs.map +import{e as E,a as q,d as K}from"./index-Bndk0DrU.chunk.mjs";import{a as _}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{a as A,l as J}from"./index-Ma7sfat2.chunk.mjs";import{t as y,g as S,e as Q,p as W,b as k}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{N as X}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import{N as Y}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{P as tt,N as et}from"./Plus-2xII8VOW.chunk.mjs";import{N as st}from"./NcColorPicker-DDHxR-iN-DPYQyC01.chunk.mjs";import{N as at}from"./index-CKn3f84a.chunk.mjs";import{N as it}from"./NcEmptyContent-B8-90BSI-BbZilwDO.chunk.mjs";import{N as ot}from"./Web-BMpaLM07.chunk.mjs";import{N as lt}from"./mdi-Cgau7A4L.chunk.mjs";import{_ as nt}from"./TrashCanOutline-CIT5iIpm.chunk.mjs";import{o as a,c as d,b as g,t as p,e as C,m as w,f as rt,i as c,g as h,w as m,F as R,h as u,C as ct,K as dt,j as N,E as mt,G as gt,p as ht}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{P as pt}from"./PencilOutline-BEazDXA8.chunk.mjs";import{l as L,g as O,s as x,e as I,h as z,c as ut,i as ft,f as yt,u as Ct}from"./api-DntTCVXB.chunk.mjs";import{e as bt,i as kt,a as Nt}from"./systemtags-init.mjs";import"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./colors-BHGKZFDI-CR_0725C.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./index-BCebL___.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./index-B8CmRwk1.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./dav-CL9HtPMq.chunk.mjs";import"./index-BiqRItaQ.chunk.mjs";import"./public-Dw51J06r.chunk.mjs";import"./index-DdTMDjmV.chunk.mjs";const At={name:"CheckCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},vt=["aria-hidden","aria-label"],wt=["fill","width","height"],Tt={d:"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M10 17L5 12L6.41 10.59L10 14.17L17.59 6.58L19 8L10 17Z"},_t={key:0};function St(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon check-circle-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Tt,[e.title?(a(),d("title",_t,p(e.title),1)):C("",!0)])],8,wt))],16,vt)}const Lt=A(At,[["render",St]]),It={name:"CircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},$t=["aria-hidden","aria-label"],Et=["fill","width","height"],Rt={d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"},Ot={key:0};function xt(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon circle-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Rt,[e.title?(a(),d("title",Ot,p(e.title),1)):C("",!0)])],8,Et))],16,$t)}const zt=A(It,[["render",xt]]),Pt={name:"CircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Mt=["aria-hidden","aria-label"],Vt=["fill","width","height"],Bt={d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"},Ut={key:0};function Gt(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon circle-outline-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Bt,[e.title?(a(),d("title",Ut,p(e.title),1)):C("",!0)])],8,Vt))],16,Mt)}const Dt=A(Pt,[["render",Gt]]),jt={name:"TagOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ft=["aria-hidden","aria-label"],Ht=["fill","width","height"],Zt={d:"M21.41 11.58L12.41 2.58A2 2 0 0 0 11 2H4A2 2 0 0 0 2 4V11A2 2 0 0 0 2.59 12.42L11.59 21.42A2 2 0 0 0 13 22A2 2 0 0 0 14.41 21.41L21.41 14.41A2 2 0 0 0 22 13A2 2 0 0 0 21.41 11.58M13 20L4 11V4H11L20 13M6.5 5A1.5 1.5 0 1 1 5 6.5A1.5 1.5 0 0 1 6.5 5Z"},qt={key:0};function Kt(t,s,e,o,l,n){return a(),d("span",w(t.$attrs,{"aria-hidden":e.title?null:"true","aria-label":e.title,class:"material-design-icon tag-outline-icon",role:"img",onClick:s[0]||(s[0]=i=>t.$emit("click",i))}),[(a(),d("svg",{fill:e.fillColor,class:"material-design-icon__svg",width:e.size,height:e.size,viewBox:"0 0 24 24"},[g("path",Zt,[e.title?(a(),d("title",qt,p(e.title),1)):C("",!0)])],8,Ht))],16,Ft)}const Jt=A(jt,[["render",Kt]]),Qt=K(Ct,500),Wt=getComputedStyle(document.body).getPropertyValue("--color-main-background").replace("#","")||(Nt()?"000000":"ffffff");var P=(t=>(t.BASE="base",t.LOADING="loading",t.CREATING_TAG="creating-tag",t.DONE="done",t))(P||{});const Xt=J("systemtags","restrictSystemTagsCreationToAdmin",!1),Yt=rt({name:"SystemTagPicker",components:{CheckIcon:Lt,CircleIcon:zt,CircleOutlineIcon:Dt,NcButton:X,NcCheckboxRadioSwitch:Y,NcChip:et,NcColorPicker:st,NcDialog:at,NcEmptyContent:it,NcLoadingIcon:ot,NcNoteCard:lt,NcTextField:nt,PencilIcon:pt,PlusIcon:tt,TagIcon:Jt},props:{nodes:{type:Array,required:!0}},emits:{close(t){return t===null||typeof t=="boolean"}},setup(){return{emit:E,Status:P,t:y,canEditOrCreateTag:!Xt||q()?.isAdmin}},data(){return{status:"base",opened:!0,openedPicker:!1,input:"",tags:[],tagList:{},toAdd:[],toRemove:[]}},computed:{sortedTags(){return[...this.tags].sort((t,s)=>t.displayName.localeCompare(s.displayName,S(),{ignorePunctuation:!0}))},filteredTags(){return this.input.trim()===""?this.sortedTags:this.sortedTags.filter(t=>t.displayName.normalize().toLowerCase().includes(this.input.normalize().toLowerCase()))},hasChanges(){return this.toAdd.length>0||this.toRemove.length>0},canCreateTag(){return this.input.trim()!==""&&!this.tags.some(t=>t.displayName.trim().toLocaleLowerCase()===this.input.trim().toLocaleLowerCase())},statusMessage(){if(this.toAdd.length===0&&this.toRemove.length===0)return"";if(this.toAdd.length===1&&this.toRemove.length===1)return k("systemtags","{tag1} will be set and {tag2} will be removed from 1 file.","{tag1} will be set and {tag2} will be removed from {count} files.",this.nodes.length,{tag1:this.formatTagChip(this.toAdd[0]),tag2:this.formatTagChip(this.toRemove[0]),count:this.nodes.length},{escape:!1});const t=this.toAdd.map(this.formatTagChip),s=t.pop(),e=this.toRemove.map(this.formatTagChip),o=e.pop(),l=k("systemtags","{tag} will be set to 1 file.","{tag} will be set to {count} files.",this.nodes.length,{tag:s,count:this.nodes.length},{escape:!1}),n=k("systemtags","{tag} will be removed from 1 file.","{tag} will be removed from {count} files.",this.nodes.length,{tag:o,count:this.nodes.length},{escape:!1}),i=k("systemtags","{tags} and {lastTag} will be set to 1 file.","{tags} and {lastTag} will be set to {count} files.",this.nodes.length,{tags:t.join(", "),lastTag:s,count:this.nodes.length},{escape:!1}),f=k("systemtags","{tags} and {lastTag} will be removed from 1 file.","{tags} and {lastTag} will be removed from {count} files.",this.nodes.length,{tags:e.join(", "),lastTag:o,count:this.nodes.length},{escape:!1});return this.toAdd.length===1&&this.toRemove.length===0?l:this.toAdd.length===0&&this.toRemove.length===1?n:this.toAdd.length>1&&this.toRemove.length===0?i:this.toAdd.length===0&&this.toRemove.length>1?f:this.toAdd.length>1&&this.toRemove.length===1?`${i} ${n}`:this.toAdd.length===1&&this.toRemove.length>1?`${l} ${f}`:`${i} ${f}`}},beforeMount(){yt().then(t=>{this.tags=t}),this.tagList=this.nodes.reduce((t,s)=>((I(s)||[]).forEach(e=>{t[e]=(t[e]||0)+1}),t),{}),this.canEditOrCreateTag||L.debug("System tag creation is restricted to admins and the current user is not an admin")},methods:{formatTagChip(t){const s=this.$refs.chip.$el.cloneNode(!0);if(t.color){const e=this.tagListStyle(t);Object.entries(e).forEach(([o,l])=>{s.style.setProperty(o,l)})}return s.outerHTML.replace("%s",Q(W.sanitize(t.displayName)))},formatTagName(t){return t.userVisible?t.userAssignable?t.displayName:y("systemtags","{displayName} (restricted)",{displayName:t.displayName}):y("systemtags","{displayName} (hidden)",{displayName:t.displayName})},onColorChange(t,s){t.color=s.replace("#",""),Qt(t)},isChecked(t){return t.displayName in this.tagList&&this.tagList[t.displayName]===this.nodes.length},isIndeterminate(t){return t.displayName in this.tagList&&this.tagList[t.displayName]!==0&&this.tagList[t.displayName]!==this.nodes.length},onCheckUpdate(t,s){s?(this.toAdd.push(t),this.toRemove=this.toRemove.filter(e=>e.id!==t.id),this.tagList[t.displayName]=this.nodes.length):(this.toRemove.push(t),this.toAdd=this.toAdd.filter(e=>e.id!==t.id),this.tagList[t.displayName]=0)},async onNewTag(){if(!this.canEditOrCreateTag){_(y("systemtags","Only admins can create new tags"));return}this.status="creating-tag";try{const t={displayName:this.input.trim(),userAssignable:!0,userVisible:!0,canAssign:!0},s=await ut(t),e=await ft(s);this.tags.push(e),this.input="",this.onCheckUpdate(e,!0),await this.$nextTick(),Array.isArray(this.$refs.tags)&&this.$refs.tags.find(o=>o.dataset.cySystemtagsPickerTag===s.toString())?.scrollIntoView({behavior:"instant",block:"center",inline:"center"})}catch(t){_(t?.message||y("systemtags","Failed to create tag"))}finally{this.status="base"}},async onSubmit(){this.status="loading",L.debug("Applying tags",{toAdd:this.toAdd,toRemove:this.toRemove});try{for(const s of this.toAdd){const{etag:e,objects:o}=await O(s,"files"),l=[...new Set([...o.map(n=>n.id).filter(Boolean),...this.nodes.map(n=>n.fileid).filter(Boolean)])];await x(s,"files",l.map(n=>({id:n,type:"files"})),e)}for(const s of this.toRemove){const{etag:e,objects:o}=await O(s,"files"),l=new Set(this.nodes.map(i=>i.fileid)),n=o.map(i=>i.id).filter((i,f,T)=>!l.has(i)&&T.indexOf(i)===f);await x(s,"files",n.map(i=>({id:i,type:"files"})),e)}}catch(s){L.error("Failed to apply tags",{error:s}),_(y("systemtags","Failed to apply tags changes")),this.status="base";return}const t=[];this.toAdd.forEach(s=>{this.nodes.forEach(e=>{const o=[...I(e)||[],s.displayName].sort((l,n)=>l.localeCompare(n,S(),{ignorePunctuation:!0}));z(e,o),t.push(e)})}),this.toRemove.forEach(s=>{this.nodes.forEach(e=>{const o=[...I(e)||[]].filter(l=>l!==s.displayName).sort((l,n)=>l.localeCompare(n,S(),{ignorePunctuation:!0}));z(e,o),t.push(e)})}),t.forEach(s=>E("systemtags:node:updated",s)),this.status="done",setTimeout(()=>{this.opened=!1,this.$emit("close",!0)},2e3)},onCancel(){this.opened=!1,this.$emit("close",null)},tagListStyle(t){if(!t.color)return{"--color-circle-icon":"var(--color-text-maxcontrast)"};const s=bt(`#${t.color}`,`#${Wt}`),e=kt(s)?"#000000":"#ffffff";return{"--color-circle-icon":"var(--color-primary-element)","--color-primary":s,"--color-primary-text":e,"--color-primary-element":s,"--color-primary-element-text":e}}}}),te={class:"systemtags-picker__input"},ee={class:"systemtags-picker__tags","data-cy-systemtags-picker-tags":""},se=["data-cy-systemtags-picker-tag"],ae={class:"systemtags-picker__tag-create-subline"},ie={class:"systemtags-picker__note"},oe=["innerHTML"];function le(t,s,e,o,l,n){const i=c("NcLoadingIcon"),f=c("CheckIcon"),T=c("NcEmptyContent"),M=c("TagIcon"),V=c("NcTextField"),B=c("NcCheckboxRadioSwitch"),U=c("CircleIcon"),G=c("CircleOutlineIcon"),D=c("PencilIcon"),v=c("NcButton"),j=c("NcColorPicker"),F=c("PlusIcon"),$=c("NcNoteCard"),H=c("NcChip"),Z=c("NcDialog");return a(),h(Z,{"data-cy-systemtags-picker":"",noClose:t.status===t.Status.LOADING,name:t.t("systemtags","Manage tags"),open:t.opened,class:ht(["systemtags-picker--"+t.status,"systemtags-picker"]),closeOnClickOutside:"",outTransition:"","onUpdate:open":t.onCancel},{actions:m(()=>[u(v,{disabled:t.status!==t.Status.BASE,variant:"tertiary","data-cy-systemtags-picker-button-cancel":"",onClick:t.onCancel},{default:m(()=>[N(p(t.t("systemtags","Cancel")),1)]),_:1},8,["disabled","onClick"]),u(v,{disabled:!t.hasChanges||t.status!==t.Status.BASE,"data-cy-systemtags-picker-button-submit":"",onClick:t.onSubmit},{default:m(()=>[N(p(t.t("systemtags","Apply")),1)]),_:1},8,["disabled","onClick"])]),default:m(()=>[t.status===t.Status.LOADING||t.status===t.Status.DONE?(a(),h(T,{key:0,name:t.t("systemtags","Applying tags changes…")},{icon:m(()=>[t.status===t.Status.LOADING?(a(),h(i,{key:0})):(a(),h(f,{key:1,fillColor:"var(--color-border-success)"}))]),_:1},8,["name"])):(a(),d(R,{key:1},[g("div",te,[u(V,{modelValue:t.input,"onUpdate:modelValue":s[0]||(s[0]=r=>t.input=r),label:t.canEditOrCreateTag?t.t("systemtags","Search or create tag"):t.t("systemtags","Search tag"),"data-cy-systemtags-picker-input":""},{default:m(()=>[u(M,{size:20})]),_:1},8,["modelValue","label"])]),g("ul",ee,[(a(!0),d(R,null,ct(t.filteredTags,r=>(a(),d("li",{key:r.id,ref_for:!0,ref:"tags","data-cy-systemtags-picker-tag":r.id,style:dt(t.tagListStyle(r)),class:"systemtags-picker__tag"},[u(B,{modelValue:t.isChecked(r),disabled:!r.canAssign,indeterminate:t.isIndeterminate(r),label:r.displayName,class:"systemtags-picker__tag-checkbox","onUpdate:modelValue":b=>t.onCheckUpdate(r,b)},{default:m(()=>[N(p(t.formatTagName(r)),1)]),_:2},1032,["modelValue","disabled","indeterminate","label","onUpdate:modelValue"]),t.canEditOrCreateTag?(a(),h(j,{key:0,"data-cy-systemtags-picker-tag-color":r.id,modelValue:`#${r.color||"000000"}`,shown:t.openedPicker===r.id,class:"systemtags-picker__tag-color","onUpdate:shown":b=>t.openedPicker=b?r.id:!1,onSubmit:b=>t.onColorChange(r,b)},{default:m(()=>[u(v,{"aria-label":t.t("systemtags","Change tag color"),variant:"tertiary"},{icon:m(()=>[r.color?(a(),h(U,{key:0,size:24,fillColor:"var(--color-circle-icon)",class:"button-color-circle"})):(a(),h(G,{key:1,size:24,fillColor:"var(--color-circle-icon)",class:"button-color-empty"})),u(D,{class:"button-color-pencil"})]),_:2},1032,["aria-label"])]),_:2},1032,["data-cy-systemtags-picker-tag-color","modelValue","shown","onUpdate:shown","onSubmit"])):C("",!0)],12,se))),128)),g("li",null,[t.canEditOrCreateTag&&t.canCreateTag?(a(),h(v,{key:0,disabled:t.status===t.Status.CREATING_TAG,alignment:"start",class:"systemtags-picker__tag-create",type:"submit",variant:"tertiary","data-cy-systemtags-picker-button-create":"",onClick:t.onNewTag},{icon:m(()=>[u(F)]),default:m(()=>[N(p(t.input.trim()),1),s[1]||(s[1]=g("br",null,null,-1)),g("span",ae,p(t.t("systemtags","Create new tag")),1)]),_:1},8,["disabled","onClick"])):C("",!0)])]),g("div",ie,[t.hasChanges?(a(),h($,{key:1,type:"info"},{default:m(()=>[g("span",{innerHTML:t.statusMessage},null,8,oe)]),_:1})):(a(),h($,{key:0,type:"info"},{default:m(()=>[N(p(t.t("systemtags","Choose tags for the selected files")),1)]),_:1}))])],64)),mt(g("div",null,[u(H,{ref:"chip",text:"%s",noClose:"",variant:"primary"},null,512)],512),[[gt,!1]])]),_:1},8,["noClose","name","open","class","onUpdate:open"])}const Pe=A(Yt,[["render",le],["__scopeId","data-v-fbaf4147"]]);export{Pe as default}; +//# sourceMappingURL=SystemTagPicker-CAj-3F0_.chunk.mjs.map diff --git a/dist/SystemTagPicker-m8yyirsH.chunk.mjs.license b/dist/SystemTagPicker-CAj-3F0_.chunk.mjs.license similarity index 100% rename from dist/SystemTagPicker-m8yyirsH.chunk.mjs.license rename to dist/SystemTagPicker-CAj-3F0_.chunk.mjs.license diff --git a/dist/SystemTagPicker-m8yyirsH.chunk.mjs.map b/dist/SystemTagPicker-CAj-3F0_.chunk.mjs.map similarity index 99% rename from dist/SystemTagPicker-m8yyirsH.chunk.mjs.map rename to dist/SystemTagPicker-CAj-3F0_.chunk.mjs.map index 87a44386e53b2..ddf64c51b8b77 100644 --- a/dist/SystemTagPicker-m8yyirsH.chunk.mjs.map +++ b/dist/SystemTagPicker-CAj-3F0_.chunk.mjs.map @@ -1 +1 @@ -{"version":3,"file":"SystemTagPicker-m8yyirsH.chunk.mjs","sources":["../node_modules/vue-material-design-icons/CheckCircle.vue","../node_modules/vue-material-design-icons/Circle.vue","../node_modules/vue-material-design-icons/CircleOutline.vue","../node_modules/vue-material-design-icons/TagOutline.vue","../build/frontend/apps/systemtags/src/components/SystemTagPicker.vue"],"sourcesContent":["\n\n","\n\n","\n\n","\n\n","\n\n\n\n\n\n\n"],"names":["_sfc_main","_hoisted_3","_createElementBlock","_mergeProps","_ctx","$props","_cache","$event","_createElementVNode","_openBlock","debounceUpdateTag","debounce","updateTag","mainBackgroundColor","isDarkModeEnabled","Status","restrictSystemTagsCreationToAdmin","loadState","defineComponent","CheckIcon","CircleIcon","CircleOutlineIcon","NcButton","NcCheckboxRadioSwitch","NcChip","NcColorPicker","NcDialog","NcEmptyContent","NcLoadingIcon","NcNoteCard","NcTextField","PencilIcon","PlusIcon","TagIcon","status","emit","t","getCurrentUser","a","b","getLanguage","tag","n","tagsAdd","lastTagAdd","tagsRemove","lastTagRemove","addStringSingular","removeStringSingular","addStringPlural","removeStringPlural","fetchTags","tags","acc","node","getNodeSystemTags","logger","chipCloneEl","style","key","value","escapeHTML","domPurify","color","checked","search","showError","payload","id","createTag","fetchTag","el","error","etag","objects","getTagObjects","ids","obj","setTagObjects","nodeFileIds","index","self","nodes","setNodeSystemTags","primaryElement","elementColor","textColor","invertTextColor","_hoisted_1","_hoisted_4","_hoisted_5","_createBlock","_component_NcDialog","_normalizeClass","_withCtx","_createVNode","_component_NcButton","_createTextVNode","_toDisplayString","_component_NcEmptyContent","_component_NcLoadingIcon","_component_CheckIcon","_Fragment","_component_NcTextField","_component_TagIcon","_hoisted_2","_renderList","_normalizeStyle","_component_NcCheckboxRadioSwitch","_component_NcColorPicker","_component_CircleIcon","_component_CircleOutlineIcon","_component_PencilIcon","_component_PlusIcon","_component_NcNoteCard","_hoisted_6","_component_NcChip"],"mappings":"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","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file +{"version":3,"file":"SystemTagPicker-CAj-3F0_.chunk.mjs","sources":["../node_modules/vue-material-design-icons/CheckCircle.vue","../node_modules/vue-material-design-icons/Circle.vue","../node_modules/vue-material-design-icons/CircleOutline.vue","../node_modules/vue-material-design-icons/TagOutline.vue","../build/frontend/apps/systemtags/src/components/SystemTagPicker.vue"],"sourcesContent":["\n\n","\n\n","\n\n","\n\n","\n\n\n\n\n\n\n"],"names":["_sfc_main","_hoisted_3","_createElementBlock","_mergeProps","_ctx","$props","_cache","$event","_createElementVNode","_openBlock","debounceUpdateTag","debounce","updateTag","mainBackgroundColor","isDarkModeEnabled","Status","restrictSystemTagsCreationToAdmin","loadState","defineComponent","CheckIcon","CircleIcon","CircleOutlineIcon","NcButton","NcCheckboxRadioSwitch","NcChip","NcColorPicker","NcDialog","NcEmptyContent","NcLoadingIcon","NcNoteCard","NcTextField","PencilIcon","PlusIcon","TagIcon","status","emit","t","getCurrentUser","a","b","getLanguage","tag","n","tagsAdd","lastTagAdd","tagsRemove","lastTagRemove","addStringSingular","removeStringSingular","addStringPlural","removeStringPlural","fetchTags","tags","acc","node","getNodeSystemTags","logger","chipCloneEl","style","key","value","escapeHTML","domPurify","color","checked","search","showError","payload","id","createTag","fetchTag","el","error","etag","objects","getTagObjects","ids","obj","setTagObjects","nodeFileIds","index","self","nodes","setNodeSystemTags","primaryElement","elementColor","textColor","invertTextColor","_hoisted_1","_hoisted_4","_hoisted_5","_createBlock","_component_NcDialog","_normalizeClass","_withCtx","_createVNode","_component_NcButton","_createTextVNode","_toDisplayString","_component_NcEmptyContent","_component_NcLoadingIcon","_component_CheckIcon","_Fragment","_component_NcTextField","_component_TagIcon","_hoisted_2","_renderList","_normalizeStyle","_component_NcCheckboxRadioSwitch","_component_NcColorPicker","_component_CircleIcon","_component_CircleOutlineIcon","_component_PencilIcon","_component_PlusIcon","_component_NcNoteCard","_hoisted_6","_component_NcChip"],"mappings":"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","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file diff --git a/dist/SystemTagPicker-m8yyirsH.chunk.mjs.map.license b/dist/SystemTagPicker-CAj-3F0_.chunk.mjs.map.license similarity index 100% rename from dist/SystemTagPicker-m8yyirsH.chunk.mjs.map.license rename to dist/SystemTagPicker-CAj-3F0_.chunk.mjs.map.license diff --git a/dist/api-CQ0gM7Uk.chunk.mjs b/dist/api-DntTCVXB.chunk.mjs similarity index 96% rename from dist/api-CQ0gM7Uk.chunk.mjs rename to dist/api-DntTCVXB.chunk.mjs index f7ec1386331ff..9a69404ef8d96 100644 --- a/dist/api-CQ0gM7Uk.chunk.mjs +++ b/dist/api-DntTCVXB.chunk.mjs @@ -1,4 +1,4 @@ -import{c as u}from"./index-BCebL___.chunk.mjs";import{g as y,e as c}from"./index-Bndk0DrU.chunk.mjs";import{t as o}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as f}from"./index-DxnK_Coe.chunk.mjs";import{b as h}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{g as b}from"./dav-CL9HtPMq.chunk.mjs";const r=y().setApp("systemtags").detectUser().build(),V={userVisible:!0,userAssignable:!0,canAssign:!0},x=Object.freeze({"display-name":"displayName","user-visible":"userVisible","user-assignable":"userAssignable","can-assign":"canAssign"});function p(t){return t.map(({props:s})=>Object.fromEntries(Object.entries(s).map(([e,a])=>(e=x[e]??e,a=e==="displayName"?String(a):a,[e,a]))))}function w(t){const s=t.indexOf("?");s>0&&(t=t.substring(0,s));const e=t.split("/");let a;do a=e[e.length-1],e.pop();while(!a&&e.length>0);return Number(a)}function v(t){if("name"in t&&!("displayName"in t))return{...t};const s={...t};return s.name=s.displayName,delete s.displayName,s}function N(t){const s=t.attributes?.["system-tags"]?.["system-tag"];return s===void 0?[]:[s].flat().map(e=>typeof e=="string"?e:e.text)}function P(t,s){t.attributes["system-tags"]={"system-tag":s},c("files:node:updated",t)}const n=b(),l=` +import{c as u}from"./index-BCebL___.chunk.mjs";import{g as y,e as c}from"./index-Bndk0DrU.chunk.mjs";import{t as o}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as f}from"./index-B8CmRwk1.chunk.mjs";import{b as h}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{g as b}from"./dav-CL9HtPMq.chunk.mjs";const r=y().setApp("systemtags").detectUser().build(),V={userVisible:!0,userAssignable:!0,canAssign:!0},x=Object.freeze({"display-name":"displayName","user-visible":"userVisible","user-assignable":"userAssignable","can-assign":"canAssign"});function p(t){return t.map(({props:s})=>Object.fromEntries(Object.entries(s).map(([e,a])=>(e=x[e]??e,a=e==="displayName"?String(a):a,[e,a]))))}function w(t){const s=t.indexOf("?");s>0&&(t=t.substring(0,s));const e=t.split("/");let a;do a=e[e.length-1],e.pop();while(!a&&e.length>0);return Number(a)}function v(t){if("name"in t&&!("displayName"in t))return{...t};const s={...t};return s.name=s.displayName,delete s.displayName,s}function N(t){const s=t.attributes?.["system-tags"]?.["system-tag"];return s===void 0?[]:[s].flat().map(e=>typeof e=="string"?e:e.text)}function P(t,s){t.attributes["system-tags"]={"system-tag":s},c("files:node:updated",t)}const n=b(),l=` @@ -40,4 +40,4 @@ import{c as u}from"./index-BCebL___.chunk.mjs";import{g as y,e as c}from"./index `),await n.customRequest(i,{method:"PROPPATCH",data:d,headers:{"if-match":a}})}async function H(t){const s=t?"1":"0",e=h("/apps/provisioning_api/api/v1/config/apps/{appId}/{key}",{appId:"systemtags",key:"restrict_creation_to_admin"});await f();const{data:a}=await u.post(e,{value:s});return a}export{_ as a,H as b,R as c,V as d,N as e,D as f,q as g,P as h,C as i,r as l,k as s,T as u}; -//# sourceMappingURL=api-CQ0gM7Uk.chunk.mjs.map +//# sourceMappingURL=api-DntTCVXB.chunk.mjs.map diff --git a/dist/api-CQ0gM7Uk.chunk.mjs.license b/dist/api-DntTCVXB.chunk.mjs.license similarity index 100% rename from dist/api-CQ0gM7Uk.chunk.mjs.license rename to dist/api-DntTCVXB.chunk.mjs.license diff --git a/dist/api-CQ0gM7Uk.chunk.mjs.map b/dist/api-DntTCVXB.chunk.mjs.map similarity index 99% rename from dist/api-CQ0gM7Uk.chunk.mjs.map rename to dist/api-DntTCVXB.chunk.mjs.map index 1ffbe4c793c54..fcf46db9b0b80 100644 --- a/dist/api-CQ0gM7Uk.chunk.mjs.map +++ b/dist/api-DntTCVXB.chunk.mjs.map @@ -1 +1 @@ -{"version":3,"file":"api-CQ0gM7Uk.chunk.mjs","sources":["../build/frontend/apps/systemtags/src/logger.ts","../build/frontend/apps/systemtags/src/utils.ts","../build/frontend/apps/systemtags/src/services/davClient.ts","../build/frontend/apps/systemtags/src/services/api.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('systemtags')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { INode } from '@nextcloud/files'\nimport type { DAVResultResponseProps } from 'webdav'\nimport type { BaseTag, ServerTag, Tag, TagWithId } from './types.ts'\n\nimport { emit } from '@nextcloud/event-bus'\n\nexport const defaultBaseTag: BaseTag = {\n\tuserVisible: true,\n\tuserAssignable: true,\n\tcanAssign: true,\n}\n\nconst propertyMappings = Object.freeze({\n\t'display-name': 'displayName',\n\t'user-visible': 'userVisible',\n\t'user-assignable': 'userAssignable',\n\t'can-assign': 'canAssign',\n})\n\n/**\n * Parse tags from WebDAV response\n *\n * @param tags - Array of tags from WebDAV response\n */\nexport function parseTags(tags: { props: DAVResultResponseProps }[]): TagWithId[] {\n\treturn tags.map(({ props }) => Object.fromEntries(Object.entries(props)\n\t\t.map(([key, value]) => {\n\t\t\tkey = propertyMappings[key] ?? key\n\t\t\tvalue = key === 'displayName' ? String(value) : value\n\t\t\treturn [key, value]\n\t\t})) as unknown as TagWithId)\n}\n\n/**\n * Parse id from `Content-Location` header\n *\n * @param url URL to parse\n */\nexport function parseIdFromLocation(url: string): number {\n\tconst queryPos = url.indexOf('?')\n\tif (queryPos > 0) {\n\t\turl = url.substring(0, queryPos)\n\t}\n\n\tconst parts = url.split('/')\n\tlet result\n\tdo {\n\t\tresult = parts[parts.length - 1]\n\t\tparts.pop()\n\t\t// note: first result can be empty when there is a trailing slash,\n\t\t// so we take the part before that\n\t} while (!result && parts.length > 0)\n\n\treturn Number(result)\n}\n\n/**\n * Format a tag for WebDAV operations\n *\n * @param initialTag - Tag to format\n */\nexport function formatTag(initialTag: Tag | ServerTag): ServerTag {\n\tif ('name' in initialTag && !('displayName' in initialTag)) {\n\t\treturn { ...initialTag }\n\t}\n\n\tconst tag: Record = { ...initialTag }\n\ttag.name = tag.displayName\n\tdelete tag.displayName\n\n\treturn tag as unknown as ServerTag\n}\n\n/**\n * Get system tags from a node\n *\n * @param node - The node to get tags from\n */\nexport function getNodeSystemTags(node: INode): string[] {\n\tconst attribute = node.attributes?.['system-tags']?.['system-tag']\n\tif (attribute === undefined) {\n\t\treturn []\n\t}\n\n\t// if there is only one tag it is a single string or prop object\n\t// if there are multiple then its an array - so we flatten it to be always an array of string or prop objects\n\treturn [attribute]\n\t\t.flat()\n\t\t.map((tag: string | { text: string }) => (\n\t\t\ttypeof tag === 'string'\n\t\t\t\t// its a plain text prop (the tag name) without prop attributes\n\t\t\t\t? tag\n\t\t\t\t// its a prop object with attributes, the tag name is in the 'text' attribute\n\t\t\t\t: tag.text\n\t\t))\n}\n\n/**\n * Set system tags on a node\n *\n * @param node - The node to set tags on\n * @param tags - The tags to set\n */\nexport function setNodeSystemTags(node: INode, tags: string[]): void {\n\tnode.attributes['system-tags'] = {\n\t\t'system-tag': tags,\n\t}\n\temit('files:node:updated', node)\n}\n","/*!\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { Node } from '@nextcloud/files'\nimport type { FileStat, ResponseDataDetailed } from 'webdav'\n\nimport { getClient, getDefaultPropfind, getRootPath, resultToNode } from '@nextcloud/files/dav'\n\nexport const davClient = getClient()\n\n/**\n * Fetches a node from the given path\n *\n * @param path - The path to fetch the node from\n */\nexport async function fetchNode(path: string): Promise {\n\tconst propfindPayload = getDefaultPropfind()\n\tconst result = await davClient.stat(`${getRootPath()}${path}`, {\n\t\tdetails: true,\n\t\tdata: propfindPayload,\n\t}) as ResponseDataDetailed\n\treturn resultToNode(result.data)\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { OCSResponse } from '@nextcloud/typings/ocs'\nimport type { FileStat, ResponseDataDetailed, WebDAVClientError } from 'webdav'\nimport type { ServerTag, Tag, TagWithId } from '../types.ts'\n\nimport axios from '@nextcloud/axios'\nimport { emit } from '@nextcloud/event-bus'\nimport { t } from '@nextcloud/l10n'\nimport { confirmPassword } from '@nextcloud/password-confirmation'\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport logger from '../logger.ts'\nimport { formatTag, parseIdFromLocation, parseTags } from '../utils.ts'\nimport { davClient } from './davClient.ts'\n\nexport const fetchTagsPayload = `\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n`\n\n/**\n * Fetch all tags.\n */\nexport async function fetchTags(): Promise {\n\tconst path = '/systemtags'\n\ttry {\n\t\tconst { data: tags } = await davClient.getDirectoryContents(path, {\n\t\t\tdata: fetchTagsPayload,\n\t\t\tdetails: true,\n\t\t\tglob: '/systemtags/*', // Filter out first empty tag\n\t\t}) as ResponseDataDetailed[]>\n\t\treturn parseTags(tags)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to load tags'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to load tags'))\n\t}\n}\n\n/**\n * Fetch a single tag by its ID.\n *\n * @param tagId - The ID of the tag to fetch\n */\nexport async function fetchTag(tagId: number): Promise {\n\tconst path = '/systemtags/' + tagId\n\ttry {\n\t\tconst { data: tag } = await davClient.stat(path, {\n\t\t\tdata: fetchTagsPayload,\n\t\t\tdetails: true,\n\t\t}) as ResponseDataDetailed>\n\t\treturn parseTags([tag])[0]!\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to load tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to load tag'))\n\t}\n}\n\n/**\n * Get the last used tag IDs.\n */\nexport async function fetchLastUsedTagIds(): Promise {\n\tconst url = generateUrl('/apps/systemtags/lastused')\n\ttry {\n\t\tconst { data: lastUsedTagIds } = await axios.get(url)\n\t\treturn lastUsedTagIds.map(Number)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to load last used tags'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to load last used tags'))\n\t}\n}\n\n/**\n * Create a tag and return the Id of the newly created tag.\n *\n * @param tag The tag to create\n */\nexport async function createTag(tag: Tag | ServerTag): Promise {\n\tconst path = '/systemtags'\n\tconst tagToPost = formatTag(tag)\n\ttry {\n\t\tconst { headers } = await davClient.customRequest(path, {\n\t\t\tmethod: 'POST',\n\t\t\tdata: tagToPost,\n\t\t})\n\t\tconst contentLocation = headers.get('content-location')\n\t\tif (contentLocation) {\n\t\t\temit('systemtags:tag:created', tag)\n\t\t\treturn parseIdFromLocation(contentLocation)\n\t\t}\n\t\tlogger.error(t('systemtags', 'Missing \"Content-Location\" header'))\n\t\tthrow new Error(t('systemtags', 'Missing \"Content-Location\" header'))\n\t} catch (error) {\n\t\tif ((error as WebDAVClientError)?.response?.status === 409) {\n\t\t\tlogger.error(t('systemtags', 'A tag with the same name already exists'), { error })\n\t\t\tthrow new Error(t('systemtags', 'A tag with the same name already exists'))\n\t\t}\n\t\tlogger.error(t('systemtags', 'Failed to create tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to create tag'))\n\t}\n}\n\n/**\n * Update a tag on the server.\n *\n * @param tag - The tag to update\n */\nexport async function updateTag(tag: TagWithId): Promise {\n\tconst path = '/systemtags/' + tag.id\n\tconst data = `\n\t\n\t\t\n\t\t\t\n\t\t\t\t${tag.displayName}\n\t\t\t\t${tag.userVisible}\n\t\t\t\t${tag.userAssignable}\n\t\t\t\t${tag?.color || null}\n\t\t\t\n\t\t\n\t`\n\n\ttry {\n\t\tawait davClient.customRequest(path, {\n\t\t\tmethod: 'PROPPATCH',\n\t\t\tdata,\n\t\t})\n\t\temit('systemtags:tag:updated', tag)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to update tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to update tag'))\n\t}\n}\n\n/**\n * Delete a tag.\n *\n * @param tag - The tag to delete\n */\nexport async function deleteTag(tag: TagWithId): Promise {\n\tconst path = '/systemtags/' + tag.id\n\ttry {\n\t\tawait davClient.deleteFile(path)\n\t\temit('systemtags:tag:deleted', tag)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to delete tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to delete tag'))\n\t}\n}\n\ntype TagObject = {\n\tid: number\n\ttype: string\n}\n\ntype TagObjectResponse = {\n\tetag: string\n\tobjects: TagObject[]\n}\n\n/**\n * Get the objects for a tag.\n *\n * @param tag - The tag to get the objects for\n * @param type - The type of the objects\n */\nexport async function getTagObjects(tag: TagWithId, type: string): Promise {\n\tconst path = `/systemtags/${tag.id}/${type}`\n\tconst data = `\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t`\n\n\tconst response = await davClient.stat(path, { data, details: true }) as ResponseDataDetailed\n\tconst etag = response?.data?.props?.getetag || '\"\"'\n\tconst objects = Object.values(response?.data?.props?.['object-ids'] || []).flat() as TagObject[]\n\n\treturn {\n\t\tetag,\n\t\tobjects,\n\t}\n}\n\n/**\n * Set the objects for a tag.\n * Warning: This will overwrite the existing objects.\n *\n * @param tag The tag to set the objects for\n * @param type The type of the objects\n * @param objectIds The objects to set\n * @param etag Strongly recommended to avoid conflict and data loss.\n */\nexport async function setTagObjects(tag: TagWithId, type: string, objectIds: TagObject[], etag: string = ''): Promise {\n\tconst path = `/systemtags/${tag.id}/${type}`\n\tlet data = `\n\t\n\t\t\n\t\t\t\n\t\t\t\t${objectIds.map(({ id, type }) => `${id}${type}`).join('')}\n\t\t\t\n\t\t\n\t`\n\n\tif (objectIds.length === 0) {\n\t\tdata = `\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t`\n\t}\n\n\tawait davClient.customRequest(path, {\n\t\tmethod: 'PROPPATCH',\n\t\tdata,\n\t\theaders: {\n\t\t\t'if-match': etag,\n\t\t},\n\t})\n}\n\n/**\n * Update the system tags admin restriction setting.\n *\n * @param isAllowed - True if system tags creation is allowed for non-admins\n */\nexport async function updateSystemTagsAdminRestriction(isAllowed: boolean): Promise {\n\t// Convert to string for compatibility\n\tconst isAllowedString = isAllowed ? '1' : '0'\n\n\tconst url = generateOcsUrl('/apps/provisioning_api/api/v1/config/apps/{appId}/{key}', {\n\t\tappId: 'systemtags',\n\t\tkey: 'restrict_creation_to_admin',\n\t})\n\n\tawait confirmPassword()\n\n\tconst { data } = await axios.post(url, {\n\t\tvalue: isAllowedString,\n\t})\n\n\treturn data\n}\n"],"names":["logger","getLoggerBuilder","defaultBaseTag","propertyMappings","parseTags","tags","props","key","value","parseIdFromLocation","url","queryPos","parts","result","formatTag","initialTag","tag","getNodeSystemTags","node","attribute","setNodeSystemTags","emit","davClient","getClient","fetchTagsPayload","fetchTags","path","error","t","fetchTag","tagId","createTag","tagToPost","headers","contentLocation","updateTag","data","deleteTag","getTagObjects","type","response","etag","objects","setTagObjects","objectIds","id","updateSystemTagsAdminRestriction","isAllowed","isAllowedString","generateOcsUrl","confirmPassword","axios"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"api-DntTCVXB.chunk.mjs","sources":["../build/frontend/apps/systemtags/src/logger.ts","../build/frontend/apps/systemtags/src/utils.ts","../build/frontend/apps/systemtags/src/services/davClient.ts","../build/frontend/apps/systemtags/src/services/api.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('systemtags')\n\t.detectUser()\n\t.build()\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { INode } from '@nextcloud/files'\nimport type { DAVResultResponseProps } from 'webdav'\nimport type { BaseTag, ServerTag, Tag, TagWithId } from './types.ts'\n\nimport { emit } from '@nextcloud/event-bus'\n\nexport const defaultBaseTag: BaseTag = {\n\tuserVisible: true,\n\tuserAssignable: true,\n\tcanAssign: true,\n}\n\nconst propertyMappings = Object.freeze({\n\t'display-name': 'displayName',\n\t'user-visible': 'userVisible',\n\t'user-assignable': 'userAssignable',\n\t'can-assign': 'canAssign',\n})\n\n/**\n * Parse tags from WebDAV response\n *\n * @param tags - Array of tags from WebDAV response\n */\nexport function parseTags(tags: { props: DAVResultResponseProps }[]): TagWithId[] {\n\treturn tags.map(({ props }) => Object.fromEntries(Object.entries(props)\n\t\t.map(([key, value]) => {\n\t\t\tkey = propertyMappings[key] ?? key\n\t\t\tvalue = key === 'displayName' ? String(value) : value\n\t\t\treturn [key, value]\n\t\t})) as unknown as TagWithId)\n}\n\n/**\n * Parse id from `Content-Location` header\n *\n * @param url URL to parse\n */\nexport function parseIdFromLocation(url: string): number {\n\tconst queryPos = url.indexOf('?')\n\tif (queryPos > 0) {\n\t\turl = url.substring(0, queryPos)\n\t}\n\n\tconst parts = url.split('/')\n\tlet result\n\tdo {\n\t\tresult = parts[parts.length - 1]\n\t\tparts.pop()\n\t\t// note: first result can be empty when there is a trailing slash,\n\t\t// so we take the part before that\n\t} while (!result && parts.length > 0)\n\n\treturn Number(result)\n}\n\n/**\n * Format a tag for WebDAV operations\n *\n * @param initialTag - Tag to format\n */\nexport function formatTag(initialTag: Tag | ServerTag): ServerTag {\n\tif ('name' in initialTag && !('displayName' in initialTag)) {\n\t\treturn { ...initialTag }\n\t}\n\n\tconst tag: Record = { ...initialTag }\n\ttag.name = tag.displayName\n\tdelete tag.displayName\n\n\treturn tag as unknown as ServerTag\n}\n\n/**\n * Get system tags from a node\n *\n * @param node - The node to get tags from\n */\nexport function getNodeSystemTags(node: INode): string[] {\n\tconst attribute = node.attributes?.['system-tags']?.['system-tag']\n\tif (attribute === undefined) {\n\t\treturn []\n\t}\n\n\t// if there is only one tag it is a single string or prop object\n\t// if there are multiple then its an array - so we flatten it to be always an array of string or prop objects\n\treturn [attribute]\n\t\t.flat()\n\t\t.map((tag: string | { text: string }) => (\n\t\t\ttypeof tag === 'string'\n\t\t\t\t// its a plain text prop (the tag name) without prop attributes\n\t\t\t\t? tag\n\t\t\t\t// its a prop object with attributes, the tag name is in the 'text' attribute\n\t\t\t\t: tag.text\n\t\t))\n}\n\n/**\n * Set system tags on a node\n *\n * @param node - The node to set tags on\n * @param tags - The tags to set\n */\nexport function setNodeSystemTags(node: INode, tags: string[]): void {\n\tnode.attributes['system-tags'] = {\n\t\t'system-tag': tags,\n\t}\n\temit('files:node:updated', node)\n}\n","/*!\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { Node } from '@nextcloud/files'\nimport type { FileStat, ResponseDataDetailed } from 'webdav'\n\nimport { getClient, getDefaultPropfind, getRootPath, resultToNode } from '@nextcloud/files/dav'\n\nexport const davClient = getClient()\n\n/**\n * Fetches a node from the given path\n *\n * @param path - The path to fetch the node from\n */\nexport async function fetchNode(path: string): Promise {\n\tconst propfindPayload = getDefaultPropfind()\n\tconst result = await davClient.stat(`${getRootPath()}${path}`, {\n\t\tdetails: true,\n\t\tdata: propfindPayload,\n\t}) as ResponseDataDetailed\n\treturn resultToNode(result.data)\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { OCSResponse } from '@nextcloud/typings/ocs'\nimport type { FileStat, ResponseDataDetailed, WebDAVClientError } from 'webdav'\nimport type { ServerTag, Tag, TagWithId } from '../types.ts'\n\nimport axios from '@nextcloud/axios'\nimport { emit } from '@nextcloud/event-bus'\nimport { t } from '@nextcloud/l10n'\nimport { confirmPassword } from '@nextcloud/password-confirmation'\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport logger from '../logger.ts'\nimport { formatTag, parseIdFromLocation, parseTags } from '../utils.ts'\nimport { davClient } from './davClient.ts'\n\nexport const fetchTagsPayload = `\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n`\n\n/**\n * Fetch all tags.\n */\nexport async function fetchTags(): Promise {\n\tconst path = '/systemtags'\n\ttry {\n\t\tconst { data: tags } = await davClient.getDirectoryContents(path, {\n\t\t\tdata: fetchTagsPayload,\n\t\t\tdetails: true,\n\t\t\tglob: '/systemtags/*', // Filter out first empty tag\n\t\t}) as ResponseDataDetailed[]>\n\t\treturn parseTags(tags)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to load tags'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to load tags'))\n\t}\n}\n\n/**\n * Fetch a single tag by its ID.\n *\n * @param tagId - The ID of the tag to fetch\n */\nexport async function fetchTag(tagId: number): Promise {\n\tconst path = '/systemtags/' + tagId\n\ttry {\n\t\tconst { data: tag } = await davClient.stat(path, {\n\t\t\tdata: fetchTagsPayload,\n\t\t\tdetails: true,\n\t\t}) as ResponseDataDetailed>\n\t\treturn parseTags([tag])[0]!\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to load tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to load tag'))\n\t}\n}\n\n/**\n * Get the last used tag IDs.\n */\nexport async function fetchLastUsedTagIds(): Promise {\n\tconst url = generateUrl('/apps/systemtags/lastused')\n\ttry {\n\t\tconst { data: lastUsedTagIds } = await axios.get(url)\n\t\treturn lastUsedTagIds.map(Number)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to load last used tags'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to load last used tags'))\n\t}\n}\n\n/**\n * Create a tag and return the Id of the newly created tag.\n *\n * @param tag The tag to create\n */\nexport async function createTag(tag: Tag | ServerTag): Promise {\n\tconst path = '/systemtags'\n\tconst tagToPost = formatTag(tag)\n\ttry {\n\t\tconst { headers } = await davClient.customRequest(path, {\n\t\t\tmethod: 'POST',\n\t\t\tdata: tagToPost,\n\t\t})\n\t\tconst contentLocation = headers.get('content-location')\n\t\tif (contentLocation) {\n\t\t\temit('systemtags:tag:created', tag)\n\t\t\treturn parseIdFromLocation(contentLocation)\n\t\t}\n\t\tlogger.error(t('systemtags', 'Missing \"Content-Location\" header'))\n\t\tthrow new Error(t('systemtags', 'Missing \"Content-Location\" header'))\n\t} catch (error) {\n\t\tif ((error as WebDAVClientError)?.response?.status === 409) {\n\t\t\tlogger.error(t('systemtags', 'A tag with the same name already exists'), { error })\n\t\t\tthrow new Error(t('systemtags', 'A tag with the same name already exists'))\n\t\t}\n\t\tlogger.error(t('systemtags', 'Failed to create tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to create tag'))\n\t}\n}\n\n/**\n * Update a tag on the server.\n *\n * @param tag - The tag to update\n */\nexport async function updateTag(tag: TagWithId): Promise {\n\tconst path = '/systemtags/' + tag.id\n\tconst data = `\n\t\n\t\t\n\t\t\t\n\t\t\t\t${tag.displayName}\n\t\t\t\t${tag.userVisible}\n\t\t\t\t${tag.userAssignable}\n\t\t\t\t${tag?.color || null}\n\t\t\t\n\t\t\n\t`\n\n\ttry {\n\t\tawait davClient.customRequest(path, {\n\t\t\tmethod: 'PROPPATCH',\n\t\t\tdata,\n\t\t})\n\t\temit('systemtags:tag:updated', tag)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to update tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to update tag'))\n\t}\n}\n\n/**\n * Delete a tag.\n *\n * @param tag - The tag to delete\n */\nexport async function deleteTag(tag: TagWithId): Promise {\n\tconst path = '/systemtags/' + tag.id\n\ttry {\n\t\tawait davClient.deleteFile(path)\n\t\temit('systemtags:tag:deleted', tag)\n\t} catch (error) {\n\t\tlogger.error(t('systemtags', 'Failed to delete tag'), { error })\n\t\tthrow new Error(t('systemtags', 'Failed to delete tag'))\n\t}\n}\n\ntype TagObject = {\n\tid: number\n\ttype: string\n}\n\ntype TagObjectResponse = {\n\tetag: string\n\tobjects: TagObject[]\n}\n\n/**\n * Get the objects for a tag.\n *\n * @param tag - The tag to get the objects for\n * @param type - The type of the objects\n */\nexport async function getTagObjects(tag: TagWithId, type: string): Promise {\n\tconst path = `/systemtags/${tag.id}/${type}`\n\tconst data = `\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t`\n\n\tconst response = await davClient.stat(path, { data, details: true }) as ResponseDataDetailed\n\tconst etag = response?.data?.props?.getetag || '\"\"'\n\tconst objects = Object.values(response?.data?.props?.['object-ids'] || []).flat() as TagObject[]\n\n\treturn {\n\t\tetag,\n\t\tobjects,\n\t}\n}\n\n/**\n * Set the objects for a tag.\n * Warning: This will overwrite the existing objects.\n *\n * @param tag The tag to set the objects for\n * @param type The type of the objects\n * @param objectIds The objects to set\n * @param etag Strongly recommended to avoid conflict and data loss.\n */\nexport async function setTagObjects(tag: TagWithId, type: string, objectIds: TagObject[], etag: string = ''): Promise {\n\tconst path = `/systemtags/${tag.id}/${type}`\n\tlet data = `\n\t\n\t\t\n\t\t\t\n\t\t\t\t${objectIds.map(({ id, type }) => `${id}${type}`).join('')}\n\t\t\t\n\t\t\n\t`\n\n\tif (objectIds.length === 0) {\n\t\tdata = `\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t`\n\t}\n\n\tawait davClient.customRequest(path, {\n\t\tmethod: 'PROPPATCH',\n\t\tdata,\n\t\theaders: {\n\t\t\t'if-match': etag,\n\t\t},\n\t})\n}\n\n/**\n * Update the system tags admin restriction setting.\n *\n * @param isAllowed - True if system tags creation is allowed for non-admins\n */\nexport async function updateSystemTagsAdminRestriction(isAllowed: boolean): Promise {\n\t// Convert to string for compatibility\n\tconst isAllowedString = isAllowed ? '1' : '0'\n\n\tconst url = generateOcsUrl('/apps/provisioning_api/api/v1/config/apps/{appId}/{key}', {\n\t\tappId: 'systemtags',\n\t\tkey: 'restrict_creation_to_admin',\n\t})\n\n\tawait confirmPassword()\n\n\tconst { data } = await axios.post(url, {\n\t\tvalue: isAllowedString,\n\t})\n\n\treturn data\n}\n"],"names":["logger","getLoggerBuilder","defaultBaseTag","propertyMappings","parseTags","tags","props","key","value","parseIdFromLocation","url","queryPos","parts","result","formatTag","initialTag","tag","getNodeSystemTags","node","attribute","setNodeSystemTags","emit","davClient","getClient","fetchTagsPayload","fetchTags","path","error","t","fetchTag","tagId","createTag","tagToPost","headers","contentLocation","updateTag","data","deleteTag","getTagObjects","type","response","etag","objects","setTagObjects","objectIds","id","updateSystemTagsAdminRestriction","isAllowed","isAllowedString","generateOcsUrl","confirmPassword","axios"],"mappings":"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"} \ No newline at end of file diff --git a/dist/api-CQ0gM7Uk.chunk.mjs.map.license b/dist/api-DntTCVXB.chunk.mjs.map.license similarity index 100% rename from dist/api-CQ0gM7Uk.chunk.mjs.map.license rename to dist/api-DntTCVXB.chunk.mjs.map.license diff --git a/dist/federatedfilesharing-settings-admin.mjs b/dist/federatedfilesharing-settings-admin.mjs index 44683a71d4de6..0ced2d2ab33ee 100644 --- a/dist/federatedfilesharing-settings-admin.mjs +++ b/dist/federatedfilesharing-settings-admin.mjs @@ -1,2 +1,2 @@ -import{l as s,a as A}from"./index-Ma7sfat2.chunk.mjs";import{f as U,o as g,g as c,w as i,h as f,u as a,j as p,t as l,e as m,b as h,L as G,k as T}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{c as x}from"./index-BCebL___.chunk.mjs";import{a as v,e as b}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{t as e}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as C}from"./index-DxnK_Coe.chunk.mjs";import{b as D}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{N as u}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{N as j}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{l as S}from"./logger-Z3HfytLa.chunk.mjs";import"./modulepreload-polyfill-BxzAKjcf.chunk.mjs";import"./index-Bndk0DrU.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";const I={class:"settings-subsection"},q={class:"settings-subsection__name"},F=U({__name:"AdminSettings",setup(W){const E=s("federatedfilesharing","sharingFederatedDocUrl"),y=new Proxy({outgoingServer2serverShareEnabled:[s("federatedfilesharing","outgoingServer2serverShareEnabled"),"outgoing_server2server_share_enabled"],incomingServer2serverShareEnabled:[s("federatedfilesharing","incomingServer2serverShareEnabled"),"incoming_server2server_share_enabled"],outgoingServer2serverGroupShareEnabled:[s("federatedfilesharing","outgoingServer2serverGroupShareEnabled"),"outgoing_server2server_group_share_enabled"],incomingServer2serverGroupShareEnabled:[s("federatedfilesharing","incomingServer2serverGroupShareEnabled"),"incoming_server2server_group_share_enabled"],federatedGroupSharingSupported:[s("federatedfilesharing","federatedGroupSharingSupported"),"federated_group_sharing_supported"],federatedTrustedShareAutoAccept:[s("federatedfilesharing","federatedTrustedShareAutoAccept"),"federatedTrustedShareAutoAccept"],lookupServerEnabled:[s("federatedfilesharing","lookupServerEnabled"),"lookupServerEnabled"],lookupServerUploadEnabled:[s("federatedfilesharing","lookupServerUploadEnabled"),"lookupServerUploadEnabled"]},{get(d,o){return d[o]?.[0]},set(d,o,t){return o in d?(d[o][0]=t,k(d[o][1],t),!0):!1}}),r=G(y);async function _(d){if(d===!1)return r.lookupServerUploadEnabled=!1;await b({name:e("federatedfilesharing","Confirm data upload to lookup server"),text:e("federatedfilesharing",'When enabled, all account properties (e.g. email address) with scope visibility set to "published", will be automatically synced and transmitted to an external system and made available in a public, global address book.'),labelConfirm:e("federatedfilesharing","Enable data upload"),labelReject:e("federatedfilesharing","Disable upload"),severity:"warning"}).then(()=>{r.lookupServerUploadEnabled=!0}).catch(()=>{r.lookupServerUploadEnabled=!1})}async function w(d){if(d===!1)return r.lookupServerEnabled=!1;await b({name:e("federatedfilesharing","Confirm querying lookup server"),text:e("federatedfilesharing","When enabled, the search input when creating shares will be sent to an external system that provides a public and global address book.")+e("federatedfilesharing","This is used to retrieve the federated cloud ID to make federated sharing easier.")+e("federatedfilesharing","Moreover, email addresses of users might be sent to that system in order to verify them."),labelConfirm:e("federatedfilesharing","Enable querying"),labelReject:e("federatedfilesharing","Disable querying"),severity:"warning"}).then(()=>{r.lookupServerEnabled=!0}).catch(()=>{r.lookupServerEnabled=!1})}async function k(d,o){await C();const t=D("/apps/provisioning_api/api/v1/config/apps/{appId}/{key}",{appId:"files_sharing",key:d}),V=o?"yes":"no";try{const{data:n}=await x.post(t,{value:V});if(n.ocs.meta.status!=="ok")if(n.ocs.meta.message)v(n.ocs.meta.message),S.error("Error updating federated files sharing config",{error:n.ocs});else throw new Error(`Failed to update federatedfilesharing config, ${n.ocs.meta.statuscode}`)}catch(n){S.error("Error updating federated files sharing config",{error:n}),v(e("federatedfilesharing","Unable to update federated files sharing config"))}}return(d,o)=>(g(),c(a(j),{name:a(e)("federatedfilesharing","Federated Cloud Sharing"),description:a(e)("federatedfilesharing","Adjust how people can share between servers. This includes shares between people on this server as well if they are using federated sharing."),docUrl:a(E)},{default:i(()=>[f(a(u),{modelValue:r.outgoingServer2serverShareEnabled,"onUpdate:modelValue":o[0]||(o[0]=t=>r.outgoingServer2serverShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to send shares to other servers (this option also allows WebDAV access to public shares)")),1)]),_:1},8,["modelValue"]),f(a(u),{modelValue:r.incomingServer2serverShareEnabled,"onUpdate:modelValue":o[1]||(o[1]=t=>r.incomingServer2serverShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to receive shares from other servers")),1)]),_:1},8,["modelValue"]),r.federatedGroupSharingSupported?(g(),c(a(u),{key:0,modelValue:r.outgoingServer2serverGroupShareEnabled,"onUpdate:modelValue":o[2]||(o[2]=t=>r.outgoingServer2serverGroupShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to send shares to groups on other servers")),1)]),_:1},8,["modelValue"])):m("",!0),r.federatedGroupSharingSupported?(g(),c(a(u),{key:1,modelValue:r.incomingServer2serverGroupShareEnabled,"onUpdate:modelValue":o[3]||(o[3]=t=>r.incomingServer2serverGroupShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to receive group shares from other servers")),1)]),_:1},8,["modelValue"])):m("",!0),h("fieldset",null,[h("legend",null,l(a(e)("federatedfilesharing","The lookup server is only available for global scale.")),1),f(a(u),{type:"switch",modelValue:r.lookupServerEnabled,disabled:"","onUpdate:modelValue":w},{default:i(()=>[p(l(a(e)("federatedfilesharing","Search global and public address book for people")),1)]),_:1},8,["modelValue"]),f(a(u),{type:"switch",modelValue:r.lookupServerUploadEnabled,disabled:"","onUpdate:modelValue":_},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people to publish their data to a global and public address book")),1)]),_:1},8,["modelValue"])]),h("div",I,[h("h3",q,l(a(e)("federatedfilesharing","Trusted federation")),1),f(a(u),{modelValue:r.federatedTrustedShareAutoAccept,"onUpdate:modelValue":o[4]||(o[4]=t=>r.federatedTrustedShareAutoAccept=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Automatically accept shares from trusted federated accounts and groups by default")),1)]),_:1},8,["modelValue"])])]),_:1},8,["name","description","docUrl"]))}}),N=A(F,[["__scopeId","data-v-71370f43"]]),R=s("federatedfilesharing","internalOnly",!1);R||T(N).mount("#vue-admin-federated"); +import{l as s,a as A}from"./index-Ma7sfat2.chunk.mjs";import{f as U,o as g,g as c,w as i,h as f,u as a,j as p,t as l,e as m,b as h,L as G,k as T}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{c as x}from"./index-BCebL___.chunk.mjs";import{a as v,e as b}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{t as e}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as C}from"./index-B8CmRwk1.chunk.mjs";import{b as D}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{N as u}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{N as j}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{l as S}from"./logger-Z3HfytLa.chunk.mjs";import"./modulepreload-polyfill-BxzAKjcf.chunk.mjs";import"./index-Bndk0DrU.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";const I={class:"settings-subsection"},q={class:"settings-subsection__name"},F=U({__name:"AdminSettings",setup(W){const E=s("federatedfilesharing","sharingFederatedDocUrl"),y=new Proxy({outgoingServer2serverShareEnabled:[s("federatedfilesharing","outgoingServer2serverShareEnabled"),"outgoing_server2server_share_enabled"],incomingServer2serverShareEnabled:[s("federatedfilesharing","incomingServer2serverShareEnabled"),"incoming_server2server_share_enabled"],outgoingServer2serverGroupShareEnabled:[s("federatedfilesharing","outgoingServer2serverGroupShareEnabled"),"outgoing_server2server_group_share_enabled"],incomingServer2serverGroupShareEnabled:[s("federatedfilesharing","incomingServer2serverGroupShareEnabled"),"incoming_server2server_group_share_enabled"],federatedGroupSharingSupported:[s("federatedfilesharing","federatedGroupSharingSupported"),"federated_group_sharing_supported"],federatedTrustedShareAutoAccept:[s("federatedfilesharing","federatedTrustedShareAutoAccept"),"federatedTrustedShareAutoAccept"],lookupServerEnabled:[s("federatedfilesharing","lookupServerEnabled"),"lookupServerEnabled"],lookupServerUploadEnabled:[s("federatedfilesharing","lookupServerUploadEnabled"),"lookupServerUploadEnabled"]},{get(d,o){return d[o]?.[0]},set(d,o,t){return o in d?(d[o][0]=t,k(d[o][1],t),!0):!1}}),r=G(y);async function _(d){if(d===!1)return r.lookupServerUploadEnabled=!1;await b({name:e("federatedfilesharing","Confirm data upload to lookup server"),text:e("federatedfilesharing",'When enabled, all account properties (e.g. email address) with scope visibility set to "published", will be automatically synced and transmitted to an external system and made available in a public, global address book.'),labelConfirm:e("federatedfilesharing","Enable data upload"),labelReject:e("federatedfilesharing","Disable upload"),severity:"warning"}).then(()=>{r.lookupServerUploadEnabled=!0}).catch(()=>{r.lookupServerUploadEnabled=!1})}async function w(d){if(d===!1)return r.lookupServerEnabled=!1;await b({name:e("federatedfilesharing","Confirm querying lookup server"),text:e("federatedfilesharing","When enabled, the search input when creating shares will be sent to an external system that provides a public and global address book.")+e("federatedfilesharing","This is used to retrieve the federated cloud ID to make federated sharing easier.")+e("federatedfilesharing","Moreover, email addresses of users might be sent to that system in order to verify them."),labelConfirm:e("federatedfilesharing","Enable querying"),labelReject:e("federatedfilesharing","Disable querying"),severity:"warning"}).then(()=>{r.lookupServerEnabled=!0}).catch(()=>{r.lookupServerEnabled=!1})}async function k(d,o){await C();const t=D("/apps/provisioning_api/api/v1/config/apps/{appId}/{key}",{appId:"files_sharing",key:d}),V=o?"yes":"no";try{const{data:n}=await x.post(t,{value:V});if(n.ocs.meta.status!=="ok")if(n.ocs.meta.message)v(n.ocs.meta.message),S.error("Error updating federated files sharing config",{error:n.ocs});else throw new Error(`Failed to update federatedfilesharing config, ${n.ocs.meta.statuscode}`)}catch(n){S.error("Error updating federated files sharing config",{error:n}),v(e("federatedfilesharing","Unable to update federated files sharing config"))}}return(d,o)=>(g(),c(a(j),{name:a(e)("federatedfilesharing","Federated Cloud Sharing"),description:a(e)("federatedfilesharing","Adjust how people can share between servers. This includes shares between people on this server as well if they are using federated sharing."),docUrl:a(E)},{default:i(()=>[f(a(u),{modelValue:r.outgoingServer2serverShareEnabled,"onUpdate:modelValue":o[0]||(o[0]=t=>r.outgoingServer2serverShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to send shares to other servers (this option also allows WebDAV access to public shares)")),1)]),_:1},8,["modelValue"]),f(a(u),{modelValue:r.incomingServer2serverShareEnabled,"onUpdate:modelValue":o[1]||(o[1]=t=>r.incomingServer2serverShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to receive shares from other servers")),1)]),_:1},8,["modelValue"]),r.federatedGroupSharingSupported?(g(),c(a(u),{key:0,modelValue:r.outgoingServer2serverGroupShareEnabled,"onUpdate:modelValue":o[2]||(o[2]=t=>r.outgoingServer2serverGroupShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to send shares to groups on other servers")),1)]),_:1},8,["modelValue"])):m("",!0),r.federatedGroupSharingSupported?(g(),c(a(u),{key:1,modelValue:r.incomingServer2serverGroupShareEnabled,"onUpdate:modelValue":o[3]||(o[3]=t=>r.incomingServer2serverGroupShareEnabled=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people on this server to receive group shares from other servers")),1)]),_:1},8,["modelValue"])):m("",!0),h("fieldset",null,[h("legend",null,l(a(e)("federatedfilesharing","The lookup server is only available for global scale.")),1),f(a(u),{type:"switch",modelValue:r.lookupServerEnabled,disabled:"","onUpdate:modelValue":w},{default:i(()=>[p(l(a(e)("federatedfilesharing","Search global and public address book for people")),1)]),_:1},8,["modelValue"]),f(a(u),{type:"switch",modelValue:r.lookupServerUploadEnabled,disabled:"","onUpdate:modelValue":_},{default:i(()=>[p(l(a(e)("federatedfilesharing","Allow people to publish their data to a global and public address book")),1)]),_:1},8,["modelValue"])]),h("div",I,[h("h3",q,l(a(e)("federatedfilesharing","Trusted federation")),1),f(a(u),{modelValue:r.federatedTrustedShareAutoAccept,"onUpdate:modelValue":o[4]||(o[4]=t=>r.federatedTrustedShareAutoAccept=t),type:"switch"},{default:i(()=>[p(l(a(e)("federatedfilesharing","Automatically accept shares from trusted federated accounts and groups by default")),1)]),_:1},8,["modelValue"])])]),_:1},8,["name","description","docUrl"]))}}),N=A(F,[["__scopeId","data-v-71370f43"]]),R=s("federatedfilesharing","internalOnly",!1);R||T(N).mount("#vue-admin-federated"); //# sourceMappingURL=federatedfilesharing-settings-admin.mjs.map diff --git a/dist/files_external-init.mjs b/dist/files_external-init.mjs index 1ca5ac3111b18..6b5a7f57b30e7 100644 --- a/dist/files_external-init.mjs +++ b/dist/files_external-init.mjs @@ -1,3 +1,3 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('', '', 'dist/CredentialsDialog-Du34Aomc.chunk.mjs'),window.OC.filePath('', '', 'dist/translation-DoG5ZELJ-XUrtIRvk.chunk.mjs'),window.OC.filePath('', '', 'dist/index-Bndk0DrU.chunk.mjs'),window.OC.filePath('', '', 'dist/index-CKn3f84a.chunk.mjs'),window.OC.filePath('', '', 'dist/NcModal-DHryP_87-Cy2jN0l1.chunk.mjs'),window.OC.filePath('', '', 'dist/runtime-dom.esm-bundler-DPEdZePn.chunk.mjs'),window.OC.filePath('', '', 'dist/autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs'),window.OC.filePath('', '', 'dist/createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs'),window.OC.filePath('', '', 'dist/createElementId-DhjFt1I9-C_oBIsvc.chunk.css'),window.OC.filePath('', '', 'dist/autolink-U5pBzLgI-R3us1MM8.chunk.css'),window.OC.filePath('', '', 'dist/NcModal-DHryP_87-CU2wYsLf.chunk.css'),window.OC.filePath('', '', 'dist/Web-BMpaLM07.chunk.mjs'),window.OC.filePath('', '', 'dist/index-Ma7sfat2.chunk.mjs'),window.OC.filePath('', '', 'dist/Web-BYHcrfvW.chunk.css'),window.OC.filePath('', '', 'dist/index-DYA_tnKg.chunk.css'),window.OC.filePath('', '', 'dist/mdi-Cgau7A4L.chunk.mjs'),window.OC.filePath('', '', 'dist/mdi-Jq77EThs.chunk.css'),window.OC.filePath('', '', 'dist/NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs'),window.OC.filePath('', '', 'dist/index-BCebL___.chunk.mjs'),window.OC.filePath('', '', 'dist/index-sH3U_332.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-o5OFv3z6-BYlw6Xsd.chunk.css'),window.OC.filePath('', '', 'dist/NcPasswordField-uaMO2pdt-DxPSRxK-.chunk.css'),window.OC.filePath('', '', 'dist/TrashCanOutline-CIT5iIpm.chunk.mjs')])))=>i.map(i=>d[i]); -import{D as x,g as C,V as E,C as p,b as u}from"./index-DdTMDjmV.chunk.mjs";import{_ as V,l as M}from"./index-Ma7sfat2.chunk.mjs";import{t as s}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as l}from"./index-BCebL___.chunk.mjs";import{d as w,a as h,s as L,e as S}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{e as _,a as c}from"./index-Bndk0DrU.chunk.mjs";import{a as T,P as A}from"./index-DxnK_Coe.chunk.mjs";import{g as m,b as N,h as y}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{s as P}from"./index-CKn3f84a.chunk.mjs";import{S as a}from"./types-DjW25Xxr.chunk.mjs";import{F as k,b,P as d}from"./public-Dw51J06r.chunk.mjs";import{a as D}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";const I='',O='';function v(e){return e.status===void 0||e.status===a.Success?!1:e.userProvided||e.authMechanism==="password::global::user"}function H(e){if(e.type===k.File)return!1;const t=e.attributes;return!t.scope||!t.backend?!1:t.scope==="personal"||t.scope==="system"}T(l);async function R(e,t,n){const r=(await l.request({method:"PUT",url:m("apps/files_external/userglobalstorages/{id}",{id:e.id}),confirmPassword:A.Strict,data:{backendOptions:{user:t,password:n}}})).data;return r.status!==a.Success?(h(s("files_external","Unable to update this external storage config. {statusMessage}",{statusMessage:r?.statusMessage||""})),null):(w(s("files_external","New configuration successfully saved")),e.attributes.config=r,_("files:node:updated",e),!0)}const F="credentials-external-storage",U={id:F,displayName:()=>s("files","Enter missing credentials"),iconSvgInline:()=>O,enabled:({nodes:e})=>{if(e.length!==1||!e[0])return!1;const t=e[0];if(!H(t))return!1;const n=t.attributes?.config||{};return!!v(n)},async exec({nodes:e}){const{login:t,password:n}=await P(D(()=>V(()=>import("./CredentialsDialog-Du34Aomc.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]),import.meta.url)))??{};if(t&&n)try{await R(e[0],t,n),w(s("files_external","Credentials successfully set"))}catch(r){h(s("files_external","Error while setting credentials: {error}",{error:r.message}))}return null},order:-1e3,default:x.DEFAULT,inline:()=>!0},$='',o=`/files/${c()?.uid}`;function B(e){const t=(e.path+"/"+e.name).replace(/^\//gm,"");return new b({id:e.id,source:y("dav"+o+"/"+t),root:o,owner:c()?.uid||null,permissions:e.config.status!==a.Success?d.NONE:e?.permissions||d.READ,attributes:{displayName:t,...e}})}async function Z(){const e=(await l.get(N("apps/files_external/api/v1/mounts"))).data.ocs.data.map(B);return{folder:new b({id:0,source:y("dav"+o),root:o,owner:c()?.uid||null,permissions:d.READ}),contents:e}}function j(e,t=!0){const n=t?"userglobalstorages":"userstorages";return l.get(m(`apps/files_external/${n}/${e}?testOnly=false`))}const q={id:"check-external-storage",displayName:()=>"",iconSvgInline:()=>"",enabled:({nodes:e})=>e.every(t=>H(t)===!0),exec:async()=>null,async renderInline({nodes:e}){if(e.length!==1||!e[0])return null;const t=e[0],n=document.createElement("span");n.className="files-list__row-status",n.innerHTML=s("files_external","Checking storage …");let r;try{const{data:i}=await j(t.id,t.attributes.scope==="system");if(r=i,t.attributes.config=r,_("files:node:updated",t),r.status!==a.Success)throw new Error(r?.statusMessage||s("files_external","There was an error with this external storage."));n.remove()}catch(i){i.response&&!r&&L(s("files_external","We were unable to check the external storage {basename}",{basename:t.basename})),n.innerHTML="";const f=r?v(r):!1,g=document.createElement("span");g.classList.add(`files-list__row-status--${f?"warning":"error"}`),f||(n.innerHTML=$,n.title=i.message),n.prepend(g)}return n},order:10},W={id:"open-in-files-external-storage",displayName:({nodes:e})=>(e?.[0]?.attributes?.config||{status:a.Indeterminate}).status!==a.Success?s("files_external","Examine this faulty external storage configuration"):s("files","Open in Files"),iconSvgInline:()=>"",enabled:({view:e})=>e.id==="extstoragemounts",async exec({nodes:e}){if(e[0]?.attributes?.config?.status!==a.Success){if(await S({name:s("files_external","External mount error"),text:s("files_external","There was an error with this external storage. Do you want to review this mount point config in the settings page?"),labelConfirm:s("files_external","Open settings"),labelReject:s("files_external","Ignore")})===!0){const t=c()?.isAdmin?"admin":"user";window.location.href=m(`/settings/${t}/externalstorages`)}return null}return window.OCP.Files.Router.goToRoute(null,{view:"files"},{dir:e[0].path}),null},order:-1e3,default:x.HIDDEN},Y=M("files_external","allowUserMounting",!1),z=C();z.register(new E({id:"extstoragemounts",name:s("files_external","External storage"),caption:s("files_external","List of external storage."),emptyCaption:Y?s("files_external","There is no external storage configured. You can configure them in your Personal settings."):s("files_external","There is no external storage configured and you don't have the permission to configure them."),emptyTitle:s("files_external","No external storage"),icon:I,order:30,columns:[new p({id:"storage-type",title:s("files_external","Storage type"),render(e){const t=e.attributes?.backend||s("files_external","Unknown"),n=document.createElement("span");return n.textContent=t,n}}),new p({id:"scope",title:s("files_external","Scope"),render(e){const t=document.createElement("span");let n=s("files_external","Personal");return e.attributes?.scope==="system"&&(n=s("files_external","System")),t.textContent=n,t}})],getContents:Z})),u(U),u(q),u(W); +import{D as x,g as C,V as E,C as p,b as u}from"./index-DdTMDjmV.chunk.mjs";import{_ as V,l as M}from"./index-Ma7sfat2.chunk.mjs";import{t as s}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as l}from"./index-BCebL___.chunk.mjs";import{d as w,a as h,s as L,e as S}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{e as _,a as c}from"./index-Bndk0DrU.chunk.mjs";import{a as T,P as A}from"./index-B8CmRwk1.chunk.mjs";import{g as m,b as N,h as y}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{s as P}from"./index-CKn3f84a.chunk.mjs";import{S as a}from"./types-DjW25Xxr.chunk.mjs";import{F as k,b,P as d}from"./public-Dw51J06r.chunk.mjs";import{a as D}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";const I='',O='';function v(e){return e.status===void 0||e.status===a.Success?!1:e.userProvided||e.authMechanism==="password::global::user"}function H(e){if(e.type===k.File)return!1;const t=e.attributes;return!t.scope||!t.backend?!1:t.scope==="personal"||t.scope==="system"}T(l);async function R(e,t,n){const r=(await l.request({method:"PUT",url:m("apps/files_external/userglobalstorages/{id}",{id:e.id}),confirmPassword:A.Strict,data:{backendOptions:{user:t,password:n}}})).data;return r.status!==a.Success?(h(s("files_external","Unable to update this external storage config. {statusMessage}",{statusMessage:r?.statusMessage||""})),null):(w(s("files_external","New configuration successfully saved")),e.attributes.config=r,_("files:node:updated",e),!0)}const F="credentials-external-storage",U={id:F,displayName:()=>s("files","Enter missing credentials"),iconSvgInline:()=>O,enabled:({nodes:e})=>{if(e.length!==1||!e[0])return!1;const t=e[0];if(!H(t))return!1;const n=t.attributes?.config||{};return!!v(n)},async exec({nodes:e}){const{login:t,password:n}=await P(D(()=>V(()=>import("./CredentialsDialog-Du34Aomc.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]),import.meta.url)))??{};if(t&&n)try{await R(e[0],t,n),w(s("files_external","Credentials successfully set"))}catch(r){h(s("files_external","Error while setting credentials: {error}",{error:r.message}))}return null},order:-1e3,default:x.DEFAULT,inline:()=>!0},$='',o=`/files/${c()?.uid}`;function B(e){const t=(e.path+"/"+e.name).replace(/^\//gm,"");return new b({id:e.id,source:y("dav"+o+"/"+t),root:o,owner:c()?.uid||null,permissions:e.config.status!==a.Success?d.NONE:e?.permissions||d.READ,attributes:{displayName:t,...e}})}async function Z(){const e=(await l.get(N("apps/files_external/api/v1/mounts"))).data.ocs.data.map(B);return{folder:new b({id:0,source:y("dav"+o),root:o,owner:c()?.uid||null,permissions:d.READ}),contents:e}}function j(e,t=!0){const n=t?"userglobalstorages":"userstorages";return l.get(m(`apps/files_external/${n}/${e}?testOnly=false`))}const q={id:"check-external-storage",displayName:()=>"",iconSvgInline:()=>"",enabled:({nodes:e})=>e.every(t=>H(t)===!0),exec:async()=>null,async renderInline({nodes:e}){if(e.length!==1||!e[0])return null;const t=e[0],n=document.createElement("span");n.className="files-list__row-status",n.innerHTML=s("files_external","Checking storage …");let r;try{const{data:i}=await j(t.id,t.attributes.scope==="system");if(r=i,t.attributes.config=r,_("files:node:updated",t),r.status!==a.Success)throw new Error(r?.statusMessage||s("files_external","There was an error with this external storage."));n.remove()}catch(i){i.response&&!r&&L(s("files_external","We were unable to check the external storage {basename}",{basename:t.basename})),n.innerHTML="";const f=r?v(r):!1,g=document.createElement("span");g.classList.add(`files-list__row-status--${f?"warning":"error"}`),f||(n.innerHTML=$,n.title=i.message),n.prepend(g)}return n},order:10},W={id:"open-in-files-external-storage",displayName:({nodes:e})=>(e?.[0]?.attributes?.config||{status:a.Indeterminate}).status!==a.Success?s("files_external","Examine this faulty external storage configuration"):s("files","Open in Files"),iconSvgInline:()=>"",enabled:({view:e})=>e.id==="extstoragemounts",async exec({nodes:e}){if(e[0]?.attributes?.config?.status!==a.Success){if(await S({name:s("files_external","External mount error"),text:s("files_external","There was an error with this external storage. Do you want to review this mount point config in the settings page?"),labelConfirm:s("files_external","Open settings"),labelReject:s("files_external","Ignore")})===!0){const t=c()?.isAdmin?"admin":"user";window.location.href=m(`/settings/${t}/externalstorages`)}return null}return window.OCP.Files.Router.goToRoute(null,{view:"files"},{dir:e[0].path}),null},order:-1e3,default:x.HIDDEN},Y=M("files_external","allowUserMounting",!1),z=C();z.register(new E({id:"extstoragemounts",name:s("files_external","External storage"),caption:s("files_external","List of external storage."),emptyCaption:Y?s("files_external","There is no external storage configured. You can configure them in your Personal settings."):s("files_external","There is no external storage configured and you don't have the permission to configure them."),emptyTitle:s("files_external","No external storage"),icon:I,order:30,columns:[new p({id:"storage-type",title:s("files_external","Storage type"),render(e){const t=e.attributes?.backend||s("files_external","Unknown"),n=document.createElement("span");return n.textContent=t,n}}),new p({id:"scope",title:s("files_external","Scope"),render(e){const t=document.createElement("span");let n=s("files_external","Personal");return e.attributes?.scope==="system"&&(n=s("files_external","System")),t.textContent=n,t}})],getContents:Z})),u(U),u(q),u(W); //# sourceMappingURL=files_external-init.mjs.map diff --git a/dist/files_external-settings.mjs b/dist/files_external-settings.mjs index cbd8259d387c1..4382bd32c7066 100644 --- a/dist/files_external-settings.mjs +++ b/dist/files_external-settings.mjs @@ -1,2 +1,2 @@ -import{d as he,c as xe}from"./pinia-Bl16uMvU.chunk.mjs";import{a9 as z,a2 as J,L as we,z as C,f as $,q as B,o as u,g as V,u as e,r as M,s as I,c as h,p as x,b as y,t as v,F as S,I as Ve,C as O,E as Z,G as K,e as T,y as Q,a1 as ne,h as b,w,j as k,W as G,H as ke,k as Se}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{l as Ce,n as Me,o as Ae,p as Ue,f as $e,q as Te,N as oe,e as Oe}from"./mdi-Cgau7A4L.chunk.mjs";import{a as q,l as A}from"./index-Ma7sfat2.chunk.mjs";import{t as n,b as qe}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{N}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./NcEmptyContent-B8-90BSI-BbZilwDO.chunk.mjs";import{g as R,N as F}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{N as ue}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{N as Ee,s as Ne}from"./index-CKn3f84a.chunk.mjs";import{N as X}from"./NcSelect-DLheQ2yp-DujwD-Lb.chunk.mjs";import{_ as de}from"./TrashCanOutline-CIT5iIpm.chunk.mjs";import{c as U}from"./index-BCebL___.chunk.mjs";import{N as Pe}from"./index-I853c8Sg.chunk.mjs";import{k as Re}from"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./PencilOutline-BEazDXA8.chunk.mjs";import"./NcBreadcrumbs-5gl8Syfa-ntu0zncw.chunk.mjs";import"./NcDateTime.vue_vue_type_script_setup_true_lang-BhB8yA4U-B7cQ5dZh.chunk.mjs";import"./NcAvatar-C9d7Wrc8-CqO42q15.chunk.mjs";import"./NcContent-O-bMKi-3-K3z5OUIs.chunk.mjs";import{N as ce}from"./Web-BMpaLM07.chunk.mjs";import"./index-Bndk0DrU.chunk.mjs";import{N as P}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{N as Fe}from"./Plus-2xII8VOW.chunk.mjs";import"./NcColorPicker-DDHxR-iN-DPYQyC01.chunk.mjs";import"./TrayArrowDown-LQFML4iS.chunk.mjs";import"./NcEmojiPicker-Djc9a0gw-Qydh3fWL.chunk.mjs";import"./NcRichText-DJlaHs_Q-DlLQhs1g.chunk.mjs";/* empty css */import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import{N as Be}from"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./index-BS5_ykH2.chunk.mjs";import{N as Le}from"./NcUserBubble-vOAXLHB5-G4AdA8gZ.chunk.mjs";import"./NcUserStatusIcon-XiwrgeCm-BdYY-0D8.chunk.mjs";import"./colors-BHGKZFDI-CR_0725C.chunk.mjs";import{_ as me}from"./AuthMechanismRsa-ClWp2M4c.chunk.mjs";import{C as _e,a as D,M as L,S as j,b as je,c as De}from"./types-DjW25Xxr.chunk.mjs";import{a as pe,P as H}from"./index-DxnK_Coe.chunk.mjs";import{a as ee,d as ae}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{l as fe}from"./logger-resIultJ.chunk.mjs";import"./index-sH3U_332.chunk.mjs";const He='',W=we(new Map);function ge(s){const a=C(()=>J(s).map(l=>({id:`user:${l}`,user:l,displayName:W.get(l)||l})));return z(async()=>{const l=J(s).filter(r=>!W.has(r));if(l.length>0){const{data:r}=await U.post(R("/displaynames"),{users:l});for(const[c,m]of Object.entries(r.users))W.set(c,m)}}),a}function Ge(s){return C(()=>J(s).map(ve))}function ve(s){return{id:s,isNoUser:!0,displayName:s,iconSvg:He}}const Ie=$({__name:"ApplicableEntities",props:{groups:{default:()=>[]},groupsModifiers:{},users:{default:()=>[]},usersModifiers:{}},emits:["update:groups","update:users"],setup(s){const a=B(s,"groups"),l=B(s,"users"),r=M([]),c=ge(l),m=Ge(a),o=C({get(){return[...m.value,...c.value]},set(p){l.value=p.filter(d=>d.user).map(d=>d.user),a.value=p.filter(d=>d.isNoUser).map(d=>d.id)}}),i=Re(t,500);async function t(p){const{data:d}=await U.get(R("apps/files_external/ajax/applicable"),{params:{pattern:p,limit:20}}),_=[...r.value.map(f=>[f.id,f]),...Object.entries(d.groups).map(([f,g])=>[f,{...ve(f),displayName:g}]),...Object.entries(d.users).map(([f,g])=>[`user:${f}`,{id:`user:${f}`,user:f,displayName:g}])];r.value=[...new Map(_).values()]}return(p,d)=>(u(),V(e(Pe),{modelValue:o.value,"onUpdate:modelValue":d[0]||(d[0]=_=>o.value=_),keepOpen:"",multiple:"",options:r.value,inputLabel:e(n)("files_external","Restrict to"),onSearch:e(i)},null,8,["modelValue","options","inputLabel","onSearch"]))}}),Qe=$({__name:"AuthMechanismConfiguration",props:Q({authMechanism:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const a=B(s,"modelValue"),l=s,r=C(()=>{if(!l.authMechanism.configuration)return;const t=Object.entries(l.authMechanism.configuration).filter(([,p])=>!(p.flags&D.UserProvided));return Object.fromEntries(t)}),c=C(()=>window.OCA.FilesExternal.AuthMechanism.getHandler(l.authMechanism)),m=C(()=>{if(!r.value)return!1;for(const t of Object.values(r.value))if(!(t.flags&D.Hidden||t.flags&D.UserProvided))return!0;return!1}),o=M(!1);z(async()=>{c.value&&(o.value=!0,await window.customElements.whenDefined(c.value.tagName),o.value=!1)}),I(r,()=>{for(const t in r.value)t in a.value||(a.value[t]=r.value[t]?.type===_e.Boolean?!1:"")});function i(t){const p=[t.detail].flat()[0];a.value={...a.value,...p}}return(t,p)=>m.value?(u(),h("fieldset",{key:0,class:x(t.$style.authMechanismConfiguration)},[y("legend",null,v(e(n)("files_external","Authentication")),1),c.value?(u(),h(S,{key:0},[o.value?(u(),V(e(ce),{key:0})):(u(),V(Ve(c.value.tagName),{key:1,".modelValue":a.value,".authMechanism":s.authMechanism,"onUpdate:modelValue":i},null,40,[".modelValue",".authMechanism"]))],64)):(u(!0),h(S,{key:1},O(r.value,(d,_)=>Z((u(),V(me,{key:d.value,modelValue:a.value[_],"onUpdate:modelValue":f=>a.value[_]=f,"config-key":_,"config-option":d},null,8,["modelValue","onUpdate:modelValue","config-key","config-option"])),[[K,!(d.flags&e(D).Hidden)]])),128))],2)):T("",!0)}}),ze="_authMechanismConfiguration_kpcpy_2",Ze={authMechanismConfiguration:ze},Ke={$style:Ze},We=q(Qe,[["__cssModules",Ke]]),Ye=$({__name:"BackendConfiguration",props:Q({configuration:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const a=B(s,"modelValue"),l=s;return I(()=>l.configuration,()=>{for(const r in l.configuration)r in a.value||(a.value[r]=l.configuration[r]?.type===_e.Boolean?!1:"")},{immediate:!0}),(r,c)=>(u(),h("fieldset",{class:x(r.$style.backendConfiguration)},[y("legend",null,v(e(n)("files_external","Storage configuration")),1),(u(!0),h(S,null,O(s.configuration,(m,o)=>Z((u(),V(me,{key:m.value,modelValue:a.value[o],"onUpdate:modelValue":i=>a.value[o]=i,configKey:o,configOption:m},null,8,["modelValue","onUpdate:modelValue","configKey","configOption"])),[[K,!(m.flags&e(D).Hidden)]])),128))],2))}}),Je="_backendConfiguration_1sf6y_2",Xe={backendConfiguration:Je},ea={$style:Xe},aa=q(Ye,[["__cssModules",ea]]),la=["id","aria-labelledby"],ta=$({__name:"MountOptions",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(s){const a=B(s,"modelValue");z(()=>{Object.keys(a.value).length===0&&(a.value.encrypt=!0,a.value.previews=!0,a.value.enable_sharing=!1,a.value.filesystem_check_changes=L.OncePerRequest,a.value.encoding_compatibility=!1,a.value.readonly=!1)});const{hasEncryption:l}=A("files_external","settings"),r=ne(),c=ne(),m=M(!1),o=[{label:n("files_external","Never"),value:L.Never},{label:n("files_external","Once every direct access"),value:L.OncePerRequest},{label:n("files_external","Always"),value:L.Always}],i=C({get(){return o.find(t=>t.value===a.value.filesystem_check_changes)},set(t){a.value.filesystem_check_changes=t?.value??L.OncePerRequest}});return(t,p)=>(u(),h("div",{class:x(t.$style.mountOptions)},[b(e(N),{id:e(r),"aria-controls":e(c),"aria-expanded":m.value,variant:"tertiary-no-background",onClick:p[0]||(p[0]=d=>m.value=!m.value)},{icon:w(()=>[b(e(F),{directional:"",path:m.value?e(Ce):e(Me)},null,8,["path"])]),default:w(()=>[k(" "+v(e(n)("files_external","Mount options")),1)]),_:1},8,["id","aria-controls","aria-expanded"]),Z(y("fieldset",{id:e(c),class:x(t.$style.mountOptions__fieldset),"aria-labelledby":e(r)},[b(e(X),{modelValue:i.value,"onUpdate:modelValue":p[1]||(p[1]=d=>i.value=d),inputLabel:e(n)("files_external","Check filesystem changes"),options:o},null,8,["modelValue","inputLabel"]),b(e(P),{modelValue:s.modelValue.readonly,"onUpdate:modelValue":p[2]||(p[2]=d=>s.modelValue.readonly=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Read only")),1)]),_:1},8,["modelValue"]),b(e(P),{modelValue:s.modelValue.previews,"onUpdate:modelValue":p[3]||(p[3]=d=>s.modelValue.previews=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Enable previews")),1)]),_:1},8,["modelValue"]),b(e(P),{modelValue:s.modelValue.enable_sharing,"onUpdate:modelValue":p[4]||(p[4]=d=>s.modelValue.enable_sharing=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Enable sharing")),1)]),_:1},8,["modelValue"]),e(l)?(u(),V(e(P),{key:0,modelValue:s.modelValue.encrypt,"onUpdate:modelValue":p[5]||(p[5]=d=>s.modelValue.encrypt=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Enable encryption")),1)]),_:1},8,["modelValue"])):T("",!0),b(e(P),{modelValue:s.modelValue.encoding_compatibility,"onUpdate:modelValue":p[6]||(p[6]=d=>s.modelValue.encoding_compatibility=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Compatibility with Mac NFD encoding (slow)")),1)]),_:1},8,["modelValue"])],10,la),[[K,m.value]])],2))}}),sa="_mountOptions_1fqyb_2",na="_mountOptions__fieldset_1fqyb_12",oa={mountOptions:sa,mountOptions__fieldset:na},ia={$style:oa},ra=q(ta,[["__cssModules",ia]]),{isAdmin:ie}=A("files_external","settings"),ua=A("files_external","allowedBackends"),re=A("files_external","backends").filter(s=>ua.includes(s.identifier)),da=A("files_external","authMechanisms"),ca=$({__name:"AddExternalStorageDialog",props:Q({storage:{default:()=>({backendOptions:{},mountOptions:{},type:ie?"system":"personal"})}},{open:{type:Boolean,default:!0},openModifiers:{}}),emits:Q(["close"],["update:open"]),setup(s){const a=B(s,"open"),l=M(structuredClone(G(s.storage)));z(()=>{a.value&&(l.value=structuredClone(G(s.storage)))});const r=C({get(){return re.find(o=>o.identifier===l.value.backend)},set(o){l.value.backend=o?.identifier}}),c=C(()=>da.filter(({scheme:o})=>r.value?.authSchemes[o])),m=C({get(){return c.value.find(o=>o.identifier===l.value.authMechanism)},set(o){l.value.authMechanism=o?.identifier}});return I(c,()=>{c.value.length===1&&(l.value.authMechanism=c.value[0].identifier)}),(o,i)=>(u(),V(e(Ee),{open:a.value,"onUpdate:open":[i[9]||(i[9]=t=>a.value=t),i[11]||(i[11]=t=>t||o.$emit("close"))],isForm:"",contentClasses:o.$style.externalStorageDialog,name:l.value.id?e(n)("files_external","Edit storage"):e(n)("files_external","Add storage"),onSubmit:i[10]||(i[10]=t=>o.$emit("close",l.value))},{actions:w(()=>[s.storage.id?(u(),V(e(N),{key:0,onClick:i[8]||(i[8]=t=>o.$emit("close"))},{default:w(()=>[k(v(e(n)("files_external","Cancel")),1)]),_:1})):T("",!0),b(e(N),{variant:"primary",type:"submit"},{default:w(()=>[k(v(s.storage.id?e(n)("files_external","Edit"):e(n)("files_external","Create")),1)]),_:1})]),default:w(()=>[b(e(de),{modelValue:l.value.mountPoint,"onUpdate:modelValue":i[0]||(i[0]=t=>l.value.mountPoint=t),label:e(n)("files_external","Folder name"),required:""},null,8,["modelValue","label"]),b(ra,{modelValue:l.value.mountOptions,"onUpdate:modelValue":i[1]||(i[1]=t=>l.value.mountOptions=t)},null,8,["modelValue"]),e(ie)?(u(),V(Ie,{key:0,groups:l.value.applicableGroups,"onUpdate:groups":i[2]||(i[2]=t=>l.value.applicableGroups=t),users:l.value.applicableUsers,"onUpdate:users":i[3]||(i[3]=t=>l.value.applicableUsers=t)},null,8,["groups","users"])):T("",!0),b(e(X),{modelValue:r.value,"onUpdate:modelValue":i[4]||(i[4]=t=>r.value=t),options:e(re),disabled:!!(l.value.id&&l.value.backend),inputLabel:e(n)("files_external","External storage"),label:"name",required:""},null,8,["modelValue","options","disabled","inputLabel"]),b(e(X),{modelValue:m.value,"onUpdate:modelValue":i[5]||(i[5]=t=>m.value=t),options:c.value,disabled:!l.value.backend||c.value.length<=1||!!(l.value.id&&l.value.authMechanism),inputLabel:e(n)("files_external","Authentication"),label:"name",required:""},null,8,["modelValue","options","disabled","inputLabel"]),r.value?(u(),V(aa,{key:1,modelValue:l.value.backendOptions,"onUpdate:modelValue":i[6]||(i[6]=t=>l.value.backendOptions=t),class:x(o.$style.externalStorageDialog__configuration),configuration:r.value.configuration},null,8,["modelValue","class","configuration"])):T("",!0),m.value?(u(),V(We,{key:2,modelValue:l.value.backendOptions,"onUpdate:modelValue":i[7]||(i[7]=t=>l.value.backendOptions=t),class:x(o.$style.externalStorageDialog__configuration),authMechanism:m.value},null,8,["modelValue","class","authMechanism"])):T("",!0)]),_:1},8,["open","contentClasses","name"]))}}),ma="_externalStorageDialog_9wew8_2",_a="_externalStorageDialog__configuration_9wew8_9",pa={externalStorageDialog:ma,externalStorageDialog__configuration:_a},fa={$style:pa},be=q(ca,[["__cssModules",fa]]),{isAdmin:ga}=A("files_external","settings"),le=he("files_external--storages",()=>{const s=M([]),a=M([]);async function l(_){const f=R("apps/files_external/globalstorages"),{data:g}=await U.post(f,G(_),{confirmPassword:H.Strict});s.value.push(g)}async function r(_){const f=R("apps/files_external/userstorages"),{data:g}=await U.post(f,G(_),{confirmPassword:H.Strict});a.value.push(g)}async function c(_){await U.delete(p(_),{confirmPassword:H.Strict}),_.type==="personal"?a.value=a.value.filter(f=>f.id!==_.id):s.value=s.value.filter(f=>f.id!==_.id)}async function m(_){const{data:f}=await U.put(p(_),G(_),{confirmPassword:H.Strict});d(f)}async function o(_){const{data:f}=await U.get(p(_));d(f)}return t(),{globalStorages:s,userStorages:a,createGlobalStorage:l,createUserStorage:r,deleteStorage:c,reloadStorage:o,updateStorage:m};async function i(_){const f=`apps/files_external/${_}`,{data:g}=await U.get(R(f));return Object.values(g)}async function t(){pe(U),ga?s.value=await i("globalstorages"):(a.value=await i("userstorages"),s.value=await i("userglobalstorages"))}function p(_){const f=_.type==="personal"?"userstorages":"globalstorages";return R(`apps/files_external/${f}/${_.id}`)}function d(_){if(_.type==="personal"){const f=a.value.findIndex(g=>g.id===_.id);a.value.splice(f,1,_)}else{const f=s.value.findIndex(g=>g.id===_.id);s.value.splice(f,1,_)}}}),va={class:"hidden-visually"},ba={key:0},ya=$({__name:"ExternalStorageTableRow",props:{storage:{},isAdmin:{type:Boolean}},setup(s){const a=s,l=le(),r=A("files_external","backends"),c=C(()=>r.find(g=>g.identifier===a.storage.backend).name),m=A("files_external","authMechanisms"),o=C(()=>m.find(g=>g.identifier===a.storage.authMechanism).name),i=M(!1),t=C(()=>{if(i.value)return{icon:"loading",label:n("files_external","Checking …")};const g=a.storage.status??j.Indeterminate,te=a.storage.statusMessage||je[g],E=De[g],se=g===j.NetworkError||g===j.Timeout,ye=!se&&g!==j.Success&&g!==j.Indeterminate;return{icon:E,label:te,isWarning:se,isError:ye}}),p=ge(()=>a.storage.applicableUsers||[]);async function d(){await l.deleteStorage(a.storage)}async function _(){const g=await Ne(be,{storage:a.storage});g&&await l.updateStorage(g)}async function f(){i.value=!0;try{await l.reloadStorage(a.storage)}finally{i.value=!1}}return(g,te)=>(u(),h("tr",{class:x(g.$style.storageTableRow)},[y("td",null,[y("span",va,v(t.value.label),1),b(e(N),{"aria-label":e(n)("files_external","Recheck status"),title:t.value.label,variant:"tertiary-no-background",onClick:f},{icon:w(()=>[t.value.icon==="loading"?(u(),V(e(ce),{key:0})):(u(),V(e(F),{key:1,class:x({[g.$style.storageTableRow__status_error]:t.value.isError,[g.$style.storageTableRow__status_warning]:t.value.isWarning}),path:t.value.icon},null,8,["class","path"]))]),_:1},8,["aria-label","title"])]),y("td",null,v(s.storage.mountPoint),1),y("td",null,v(c.value),1),y("td",null,v(o.value),1),s.isAdmin?(u(),h("td",ba,[y("div",{class:x(g.$style.storageTableRow__cellApplicable)},[(u(!0),h(S,null,O(s.storage.applicableGroups,E=>(u(),V(e(Fe),{key:E,iconPath:e(Ae),noClose:"",text:E},null,8,["iconPath","text"]))),128)),(u(!0),h(S,null,O(e(p),E=>(u(),V(e(Le),{key:E.user,displayName:E.displayName,size:24,user:E.user},null,8,["displayName","user"]))),128))],2)])):T("",!0),y("td",null,[s.isAdmin||s.storage.type==="personal"?(u(),h("div",{key:0,class:x(g.$style.storageTableRow__cellActions)},[b(e(N),{"aria-label":e(n)("files_external","Edit"),title:e(n)("files_external","Edit"),onClick:_},{icon:w(()=>[b(e(F),{path:e(Ue)},null,8,["path"])]),_:1},8,["aria-label","title"]),b(e(N),{"aria-label":e(n)("files_external","Delete"),title:e(n)("files_external","Delete"),variant:"error",onClick:d},{icon:w(()=>[b(e(F),{path:e($e)},null,8,["path"])]),_:1},8,["aria-label","title"])],2)):(u(),V(e(F),{key:1,inline:"",path:e(Te),name:e(n)("files_external","System provided storage"),title:e(n)("files_external","System provided storage")},null,8,["path","name","title"]))])],2))}}),ha="_storageTableRow__cellActions_1k62p_2",xa="_storageTableRow__cellApplicable_1k62p_7",wa="_storageTableRow__status_warning_1k62p_17",Va="_storageTableRow__status_error_1k62p_21",ka={storageTableRow__cellActions:ha,storageTableRow__cellApplicable:xa,storageTableRow__status_warning:wa,storageTableRow__status_error:Va},Sa={$style:ka},Ca=q(ya,[["__cssModules",Sa]]),Ma=["aria-label"],Aa={class:"hidden-visually"},Ua={key:0},$a={class:"hidden-visually"},Ta=$({__name:"ExternalStorageTable",setup(s){const a=le(),{isAdmin:l}=A("files_external","settings"),r=C(()=>l?a.globalStorages:[...a.userStorages,...a.globalStorages]);return(c,m)=>(u(),h("table",{class:x(c.$style.storageTable),"aria-label":e(n)("files_external","External storages")},[y("thead",{class:x(c.$style.storageTable__header)},[y("tr",null,[y("th",{class:x(c.$style.storageTable__headerStatus)},[y("span",Aa,v(e(n)("files_external","Status")),1)],2),y("th",{class:x(c.$style.storageTable__headerFolder)},v(e(n)("files_external","Folder name")),3),y("th",{class:x(c.$style.storageTable__headerBackend)},v(e(n)("files_external","External storage")),3),y("th",{class:x(c.$style.storageTable__headerAuthentication)},v(e(n)("files_external","Authentication")),3),e(l)?(u(),h("th",Ua,v(e(n)("files_external","Restricted to")),1)):T("",!0),y("th",{class:x(c.$style.storageTable__headerActions)},[y("span",$a,v(e(n)("files_external","Actions")),1)],2)])],2),y("tbody",null,[(u(!0),h(S,null,O(r.value,o=>(u(),V(Ca,{key:o.id,isAdmin:e(l),storage:o},null,8,["isAdmin","storage"]))),128))])],10,Ma))}}),Oa="_storageTable_1dqte_2",qa="_storageTable__header_1dqte_11",Ea="_storageTable__headerStatus_1dqte_16",Na="_storageTable__headerFolder_1dqte_20",Pa="_storageTable__headerBackend_1dqte_24",Ra="_storageTable__headerFAuthentication_1dqte_28",Fa="_storageTable__headerActions_1dqte_32",Ba={storageTable:Oa,storageTable__header:qa,storageTable__headerStatus:Ea,storageTable__headerFolder:Na,storageTable__headerBackend:Pa,storageTable__headerFAuthentication:Ra,storageTable__headerActions:Fa},La={$style:Ba},ja=q(Ta,[["__cssModules",La]]),Da=$({__name:"UserMountSettings",setup(s){const a=A("files_external","user-mounting"),l=A("files_external","backends").filter(m=>m.identifier!=="local"),r=M(a.allowUserMounting),c=M(a.allowedBackends);return I(r,()=>{const m=!r.value;window.OCP.AppConfig.setValue("files_external","allow_user_mounting",r.value?"yes":"no",{success:()=>ae(n("files_external","Saved")),error:()=>{r.value=m,ee(n("files_external","Error while saving"))}})}),I(c,(m,o)=>{window.OCP.AppConfig.setValue("files_external","user_mounting_backends",m.join(","),{success:()=>ae(n("files_external","Saved allowed backends")),error:()=>{ee(n("files_external","Failed to save allowed backends")),c.value=o}})}),(m,o)=>(u(),h("form",null,[y("h3",{class:x(m.$style.userMountSettings__heading)},v(e(n)("files_external","Advanced options for external storage mounts")),3),b(e(P),{modelValue:r.value,"onUpdate:modelValue":o[0]||(o[0]=i=>r.value=i),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Allow people to mount external storage")),1)]),_:1},8,["modelValue"]),Z(y("fieldset",{class:x(m.$style.userMountSettings__backends)},[y("legend",null,v(e(n)("files_external","External storage backends people are allowed to mount")),1),(u(!0),h(S,null,O(e(l),i=>(u(),V(e(P),{key:i.identifier,modelValue:c.value,"onUpdate:modelValue":o[1]||(o[1]=t=>c.value=t),value:i.identifier,name:"allowUserMountingBackends[]"},{default:w(()=>[k(v(i.name),1)]),_:2},1032,["modelValue","value"]))),128))],2),[[K,r.value]])]))}}),Ha="_userMountSettings__heading_59moz_2",Ga="_userMountSettings__backends_59moz_9",Ia={userMountSettings__heading:Ha,userMountSettings__backends:Ga},Qa={$style:Ia},za=q(Da,[["__cssModules",Qa]]);const Za=["aria-label"],Ka=$({__name:"ExternalStoragesSection",setup(s){const a=A("files_external","settings",{docUrl:"",dependencyIssues:{messages:null,modules:null},isAdmin:!1}),l=le(),r=a.dependencyIssues?.messages??[],c=a.dependencyIssues?.modules??{},m=M(!1),o=M();async function i(t){if(m.value=!1,!!t)try{a.isAdmin?await l.createGlobalStorage(t):await l.createUserStorage(t),o.value=void 0}catch(p){fe.error("Failed to add external storage",{error:p}),m.value=!0}}return(t,p)=>(u(),V(e(ue),{docUrl:e(a).docUrl,name:e(n)("files_external","External storage"),description:e(n)("files_external","External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices.")+(e(a).isAdmin?" "+e(n)("files_external","You may also allow people to mount their own external storage services."):"")},{default:w(()=>[(u(!0),h(S,null,O(e(r),(d,_)=>(u(),V(e(oe),{key:_,type:"error"},{default:w(()=>[k(v(d),1)]),_:2},1024))),128)),(u(!0),h(S,null,O(e(c),(d,_)=>(u(),V(e(oe),{key:_,type:"warning"},{default:w(()=>[y("p",null,[_==="curl"?(u(),h(S,{key:0},[k(v(e(n)("files_external","The cURL support in PHP is not enabled or installed.")),1)],64)):_==="ftp"?(u(),h(S,{key:1},[k(v(e(n)("files_external","The FTP support in PHP is not enabled or installed.")),1)],64)):(u(),h(S,{key:2},[k(v(e(n)("files_external","{module} is not installed.",{module:_})),1)],64)),k(" "+v(e(qe)("files_external","Please ask your system administrator to install it as otherwise mounting the following backend is not possible:","Please ask your system administrator to install it as otherwise mounting the following backends is not possible:",d.length)),1)]),y("ul",{class:x(t.$style.externalStoragesSection__dependantList),"aria-label":e(n)("files_external","Dependant backends")},[(u(!0),h(S,null,O(d,f=>(u(),h("li",{key:f},v(f),1))),128))],10,Za)]),_:2},1024))),128)),T("",!0),b(ja),b(e(N),{class:x(t.$style.externalStoragesSection__newStorageButton),variant:"primary",onClick:p[0]||(p[0]=d=>m.value=!m.value)},{icon:w(()=>[b(e(F),{path:e(Oe)},null,8,["path"])]),default:w(()=>[k(" "+v(e(n)("files_external","Add external storage")),1)]),_:1},8,["class"]),b(be,{modelValue:o.value,"onUpdate:modelValue":p[1]||(p[1]=d=>o.value=d),open:m.value,"onUpdate:open":p[2]||(p[2]=d=>m.value=d),onClose:i},null,8,["modelValue","open"]),e(a).isAdmin?(u(),V(za,{key:1})):T("",!0)]),_:1},8,["docUrl","name","description"]))}}),Wa="_externalStoragesSection__dependantList_atsmn_2",Ya="_externalStoragesSection__newStorageButton_atsmn_7",Ja={externalStoragesSection__dependantList:Wa,externalStoragesSection__newStorageButton:Ya},Xa={$style:Ja},el=q(Ka,[["__cssModules",Xa]]),al=$({__name:"GlobalCredentialsSection",setup(s){const a=A("files_external","global-credentials"),l=M(!1),r=M(a.user),c=M(a.password);pe(U);async function m(){try{l.value=!0;const{data:o}=await U.post(R("apps/files_external/globalcredentials"),{uid:a.uid,user:r.value,password:c.value},{confirmPassword:H.Strict});if(o){ae(n("files_external","Global credentials saved"));return}}catch(o){fe.error(o)}finally{l.value=!1}ee(n("files_external","Could not save global credentials")),r.value=a.user,c.value=a.password}return(o,i)=>(u(),V(e(ue),{name:e(n)("files_external","Global credentials"),description:e(n)("files_external","Global credentials can be used to authenticate with multiple external storages that have the same credentials.")},{default:w(()=>[y("form",{id:"global_credentials",class:x(o.$style.globalCredentialsSectionForm),autocomplete:"false",onSubmit:ke(m,["prevent"])},[b(e(de),{modelValue:r.value,"onUpdate:modelValue":i[0]||(i[0]=t=>r.value=t),name:"username",autocomplete:"false",label:e(n)("files_external","Login")},null,8,["modelValue","label"]),b(e(Be),{modelValue:c.value,"onUpdate:modelValue":i[1]||(i[1]=t=>c.value=t),name:"password",autocomplete:"false",label:e(n)("files_external","Password")},null,8,["modelValue","label"]),b(e(N),{class:x(o.$style.globalCredentialsSectionForm__submit),disabled:l.value,variant:"primary",type:"submit"},{default:w(()=>[k(v(l.value?e(n)("files_external","Saving …"):e(n)("files_external","Save")),1)]),_:1},8,["class","disabled"])],34)]),_:1},8,["name","description"]))}}),ll="_globalCredentialsSectionForm_bgjv2_2",tl="_globalCredentialsSectionForm__submit_bgjv2_10",sl={globalCredentialsSectionForm:ll,globalCredentialsSectionForm__submit:tl},nl={$style:sl},ol=q(al,[["__cssModules",nl]]),il=$({__name:"FilesExternalSettings",setup(s){return(a,l)=>(u(),h(S,null,[b(el),b(ol)],64))}}),rl=xe(),Y=Se(il);Y.config.idPrefix="files-external",Y.use(rl),Y.mount("#files-external"); +import{d as he,c as xe}from"./pinia-Bl16uMvU.chunk.mjs";import{a9 as z,a2 as J,L as we,z as C,f as $,q as B,o as u,g as V,u as e,r as M,s as I,c as h,p as x,b as y,t as v,F as S,I as Ve,C as O,E as Z,G as K,e as T,y as Q,a1 as ne,h as b,w,j as k,W as G,H as ke,k as Se}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{l as Ce,n as Me,o as Ae,p as Ue,f as $e,q as Te,N as oe,e as Oe}from"./mdi-Cgau7A4L.chunk.mjs";import{a as q,l as A}from"./index-Ma7sfat2.chunk.mjs";import{t as n,b as qe}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{N}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./NcEmptyContent-B8-90BSI-BbZilwDO.chunk.mjs";import{g as R,N as F}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{N as ue}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{N as Ee,s as Ne}from"./index-CKn3f84a.chunk.mjs";import{N as X}from"./NcSelect-DLheQ2yp-DujwD-Lb.chunk.mjs";import{_ as de}from"./TrashCanOutline-CIT5iIpm.chunk.mjs";import{c as U}from"./index-BCebL___.chunk.mjs";import{N as Pe}from"./index-I853c8Sg.chunk.mjs";import{k as Re}from"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./PencilOutline-BEazDXA8.chunk.mjs";import"./NcBreadcrumbs-5gl8Syfa-ntu0zncw.chunk.mjs";import"./NcDateTime.vue_vue_type_script_setup_true_lang-BhB8yA4U-B7cQ5dZh.chunk.mjs";import"./NcAvatar-C9d7Wrc8-CqO42q15.chunk.mjs";import"./NcContent-O-bMKi-3-K3z5OUIs.chunk.mjs";import{N as ce}from"./Web-BMpaLM07.chunk.mjs";import"./index-Bndk0DrU.chunk.mjs";import{N as P}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{N as Fe}from"./Plus-2xII8VOW.chunk.mjs";import"./NcColorPicker-DDHxR-iN-DPYQyC01.chunk.mjs";import"./TrayArrowDown-LQFML4iS.chunk.mjs";import"./NcEmojiPicker-Djc9a0gw-Qydh3fWL.chunk.mjs";import"./NcRichText-DJlaHs_Q-DlLQhs1g.chunk.mjs";/* empty css */import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import{N as Be}from"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./index-BS5_ykH2.chunk.mjs";import{N as Le}from"./NcUserBubble-vOAXLHB5-G4AdA8gZ.chunk.mjs";import"./NcUserStatusIcon-XiwrgeCm-BdYY-0D8.chunk.mjs";import"./colors-BHGKZFDI-CR_0725C.chunk.mjs";import{_ as me}from"./AuthMechanismRsa-ClWp2M4c.chunk.mjs";import{C as _e,a as D,M as L,S as j,b as je,c as De}from"./types-DjW25Xxr.chunk.mjs";import{a as pe,P as H}from"./index-B8CmRwk1.chunk.mjs";import{a as ee,d as ae}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{l as fe}from"./logger-resIultJ.chunk.mjs";import"./index-sH3U_332.chunk.mjs";const He='',W=we(new Map);function ge(s){const a=C(()=>J(s).map(l=>({id:`user:${l}`,user:l,displayName:W.get(l)||l})));return z(async()=>{const l=J(s).filter(r=>!W.has(r));if(l.length>0){const{data:r}=await U.post(R("/displaynames"),{users:l});for(const[c,m]of Object.entries(r.users))W.set(c,m)}}),a}function Ge(s){return C(()=>J(s).map(ve))}function ve(s){return{id:s,isNoUser:!0,displayName:s,iconSvg:He}}const Ie=$({__name:"ApplicableEntities",props:{groups:{default:()=>[]},groupsModifiers:{},users:{default:()=>[]},usersModifiers:{}},emits:["update:groups","update:users"],setup(s){const a=B(s,"groups"),l=B(s,"users"),r=M([]),c=ge(l),m=Ge(a),o=C({get(){return[...m.value,...c.value]},set(p){l.value=p.filter(d=>d.user).map(d=>d.user),a.value=p.filter(d=>d.isNoUser).map(d=>d.id)}}),i=Re(t,500);async function t(p){const{data:d}=await U.get(R("apps/files_external/ajax/applicable"),{params:{pattern:p,limit:20}}),_=[...r.value.map(f=>[f.id,f]),...Object.entries(d.groups).map(([f,g])=>[f,{...ve(f),displayName:g}]),...Object.entries(d.users).map(([f,g])=>[`user:${f}`,{id:`user:${f}`,user:f,displayName:g}])];r.value=[...new Map(_).values()]}return(p,d)=>(u(),V(e(Pe),{modelValue:o.value,"onUpdate:modelValue":d[0]||(d[0]=_=>o.value=_),keepOpen:"",multiple:"",options:r.value,inputLabel:e(n)("files_external","Restrict to"),onSearch:e(i)},null,8,["modelValue","options","inputLabel","onSearch"]))}}),Qe=$({__name:"AuthMechanismConfiguration",props:Q({authMechanism:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const a=B(s,"modelValue"),l=s,r=C(()=>{if(!l.authMechanism.configuration)return;const t=Object.entries(l.authMechanism.configuration).filter(([,p])=>!(p.flags&D.UserProvided));return Object.fromEntries(t)}),c=C(()=>window.OCA.FilesExternal.AuthMechanism.getHandler(l.authMechanism)),m=C(()=>{if(!r.value)return!1;for(const t of Object.values(r.value))if(!(t.flags&D.Hidden||t.flags&D.UserProvided))return!0;return!1}),o=M(!1);z(async()=>{c.value&&(o.value=!0,await window.customElements.whenDefined(c.value.tagName),o.value=!1)}),I(r,()=>{for(const t in r.value)t in a.value||(a.value[t]=r.value[t]?.type===_e.Boolean?!1:"")});function i(t){const p=[t.detail].flat()[0];a.value={...a.value,...p}}return(t,p)=>m.value?(u(),h("fieldset",{key:0,class:x(t.$style.authMechanismConfiguration)},[y("legend",null,v(e(n)("files_external","Authentication")),1),c.value?(u(),h(S,{key:0},[o.value?(u(),V(e(ce),{key:0})):(u(),V(Ve(c.value.tagName),{key:1,".modelValue":a.value,".authMechanism":s.authMechanism,"onUpdate:modelValue":i},null,40,[".modelValue",".authMechanism"]))],64)):(u(!0),h(S,{key:1},O(r.value,(d,_)=>Z((u(),V(me,{key:d.value,modelValue:a.value[_],"onUpdate:modelValue":f=>a.value[_]=f,"config-key":_,"config-option":d},null,8,["modelValue","onUpdate:modelValue","config-key","config-option"])),[[K,!(d.flags&e(D).Hidden)]])),128))],2)):T("",!0)}}),ze="_authMechanismConfiguration_kpcpy_2",Ze={authMechanismConfiguration:ze},Ke={$style:Ze},We=q(Qe,[["__cssModules",Ke]]),Ye=$({__name:"BackendConfiguration",props:Q({configuration:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const a=B(s,"modelValue"),l=s;return I(()=>l.configuration,()=>{for(const r in l.configuration)r in a.value||(a.value[r]=l.configuration[r]?.type===_e.Boolean?!1:"")},{immediate:!0}),(r,c)=>(u(),h("fieldset",{class:x(r.$style.backendConfiguration)},[y("legend",null,v(e(n)("files_external","Storage configuration")),1),(u(!0),h(S,null,O(s.configuration,(m,o)=>Z((u(),V(me,{key:m.value,modelValue:a.value[o],"onUpdate:modelValue":i=>a.value[o]=i,configKey:o,configOption:m},null,8,["modelValue","onUpdate:modelValue","configKey","configOption"])),[[K,!(m.flags&e(D).Hidden)]])),128))],2))}}),Je="_backendConfiguration_1sf6y_2",Xe={backendConfiguration:Je},ea={$style:Xe},aa=q(Ye,[["__cssModules",ea]]),la=["id","aria-labelledby"],ta=$({__name:"MountOptions",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(s){const a=B(s,"modelValue");z(()=>{Object.keys(a.value).length===0&&(a.value.encrypt=!0,a.value.previews=!0,a.value.enable_sharing=!1,a.value.filesystem_check_changes=L.OncePerRequest,a.value.encoding_compatibility=!1,a.value.readonly=!1)});const{hasEncryption:l}=A("files_external","settings"),r=ne(),c=ne(),m=M(!1),o=[{label:n("files_external","Never"),value:L.Never},{label:n("files_external","Once every direct access"),value:L.OncePerRequest},{label:n("files_external","Always"),value:L.Always}],i=C({get(){return o.find(t=>t.value===a.value.filesystem_check_changes)},set(t){a.value.filesystem_check_changes=t?.value??L.OncePerRequest}});return(t,p)=>(u(),h("div",{class:x(t.$style.mountOptions)},[b(e(N),{id:e(r),"aria-controls":e(c),"aria-expanded":m.value,variant:"tertiary-no-background",onClick:p[0]||(p[0]=d=>m.value=!m.value)},{icon:w(()=>[b(e(F),{directional:"",path:m.value?e(Ce):e(Me)},null,8,["path"])]),default:w(()=>[k(" "+v(e(n)("files_external","Mount options")),1)]),_:1},8,["id","aria-controls","aria-expanded"]),Z(y("fieldset",{id:e(c),class:x(t.$style.mountOptions__fieldset),"aria-labelledby":e(r)},[b(e(X),{modelValue:i.value,"onUpdate:modelValue":p[1]||(p[1]=d=>i.value=d),inputLabel:e(n)("files_external","Check filesystem changes"),options:o},null,8,["modelValue","inputLabel"]),b(e(P),{modelValue:s.modelValue.readonly,"onUpdate:modelValue":p[2]||(p[2]=d=>s.modelValue.readonly=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Read only")),1)]),_:1},8,["modelValue"]),b(e(P),{modelValue:s.modelValue.previews,"onUpdate:modelValue":p[3]||(p[3]=d=>s.modelValue.previews=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Enable previews")),1)]),_:1},8,["modelValue"]),b(e(P),{modelValue:s.modelValue.enable_sharing,"onUpdate:modelValue":p[4]||(p[4]=d=>s.modelValue.enable_sharing=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Enable sharing")),1)]),_:1},8,["modelValue"]),e(l)?(u(),V(e(P),{key:0,modelValue:s.modelValue.encrypt,"onUpdate:modelValue":p[5]||(p[5]=d=>s.modelValue.encrypt=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Enable encryption")),1)]),_:1},8,["modelValue"])):T("",!0),b(e(P),{modelValue:s.modelValue.encoding_compatibility,"onUpdate:modelValue":p[6]||(p[6]=d=>s.modelValue.encoding_compatibility=d),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Compatibility with Mac NFD encoding (slow)")),1)]),_:1},8,["modelValue"])],10,la),[[K,m.value]])],2))}}),sa="_mountOptions_1fqyb_2",na="_mountOptions__fieldset_1fqyb_12",oa={mountOptions:sa,mountOptions__fieldset:na},ia={$style:oa},ra=q(ta,[["__cssModules",ia]]),{isAdmin:ie}=A("files_external","settings"),ua=A("files_external","allowedBackends"),re=A("files_external","backends").filter(s=>ua.includes(s.identifier)),da=A("files_external","authMechanisms"),ca=$({__name:"AddExternalStorageDialog",props:Q({storage:{default:()=>({backendOptions:{},mountOptions:{},type:ie?"system":"personal"})}},{open:{type:Boolean,default:!0},openModifiers:{}}),emits:Q(["close"],["update:open"]),setup(s){const a=B(s,"open"),l=M(structuredClone(G(s.storage)));z(()=>{a.value&&(l.value=structuredClone(G(s.storage)))});const r=C({get(){return re.find(o=>o.identifier===l.value.backend)},set(o){l.value.backend=o?.identifier}}),c=C(()=>da.filter(({scheme:o})=>r.value?.authSchemes[o])),m=C({get(){return c.value.find(o=>o.identifier===l.value.authMechanism)},set(o){l.value.authMechanism=o?.identifier}});return I(c,()=>{c.value.length===1&&(l.value.authMechanism=c.value[0].identifier)}),(o,i)=>(u(),V(e(Ee),{open:a.value,"onUpdate:open":[i[9]||(i[9]=t=>a.value=t),i[11]||(i[11]=t=>t||o.$emit("close"))],isForm:"",contentClasses:o.$style.externalStorageDialog,name:l.value.id?e(n)("files_external","Edit storage"):e(n)("files_external","Add storage"),onSubmit:i[10]||(i[10]=t=>o.$emit("close",l.value))},{actions:w(()=>[s.storage.id?(u(),V(e(N),{key:0,onClick:i[8]||(i[8]=t=>o.$emit("close"))},{default:w(()=>[k(v(e(n)("files_external","Cancel")),1)]),_:1})):T("",!0),b(e(N),{variant:"primary",type:"submit"},{default:w(()=>[k(v(s.storage.id?e(n)("files_external","Edit"):e(n)("files_external","Create")),1)]),_:1})]),default:w(()=>[b(e(de),{modelValue:l.value.mountPoint,"onUpdate:modelValue":i[0]||(i[0]=t=>l.value.mountPoint=t),label:e(n)("files_external","Folder name"),required:""},null,8,["modelValue","label"]),b(ra,{modelValue:l.value.mountOptions,"onUpdate:modelValue":i[1]||(i[1]=t=>l.value.mountOptions=t)},null,8,["modelValue"]),e(ie)?(u(),V(Ie,{key:0,groups:l.value.applicableGroups,"onUpdate:groups":i[2]||(i[2]=t=>l.value.applicableGroups=t),users:l.value.applicableUsers,"onUpdate:users":i[3]||(i[3]=t=>l.value.applicableUsers=t)},null,8,["groups","users"])):T("",!0),b(e(X),{modelValue:r.value,"onUpdate:modelValue":i[4]||(i[4]=t=>r.value=t),options:e(re),disabled:!!(l.value.id&&l.value.backend),inputLabel:e(n)("files_external","External storage"),label:"name",required:""},null,8,["modelValue","options","disabled","inputLabel"]),b(e(X),{modelValue:m.value,"onUpdate:modelValue":i[5]||(i[5]=t=>m.value=t),options:c.value,disabled:!l.value.backend||c.value.length<=1||!!(l.value.id&&l.value.authMechanism),inputLabel:e(n)("files_external","Authentication"),label:"name",required:""},null,8,["modelValue","options","disabled","inputLabel"]),r.value?(u(),V(aa,{key:1,modelValue:l.value.backendOptions,"onUpdate:modelValue":i[6]||(i[6]=t=>l.value.backendOptions=t),class:x(o.$style.externalStorageDialog__configuration),configuration:r.value.configuration},null,8,["modelValue","class","configuration"])):T("",!0),m.value?(u(),V(We,{key:2,modelValue:l.value.backendOptions,"onUpdate:modelValue":i[7]||(i[7]=t=>l.value.backendOptions=t),class:x(o.$style.externalStorageDialog__configuration),authMechanism:m.value},null,8,["modelValue","class","authMechanism"])):T("",!0)]),_:1},8,["open","contentClasses","name"]))}}),ma="_externalStorageDialog_9wew8_2",_a="_externalStorageDialog__configuration_9wew8_9",pa={externalStorageDialog:ma,externalStorageDialog__configuration:_a},fa={$style:pa},be=q(ca,[["__cssModules",fa]]),{isAdmin:ga}=A("files_external","settings"),le=he("files_external--storages",()=>{const s=M([]),a=M([]);async function l(_){const f=R("apps/files_external/globalstorages"),{data:g}=await U.post(f,G(_),{confirmPassword:H.Strict});s.value.push(g)}async function r(_){const f=R("apps/files_external/userstorages"),{data:g}=await U.post(f,G(_),{confirmPassword:H.Strict});a.value.push(g)}async function c(_){await U.delete(p(_),{confirmPassword:H.Strict}),_.type==="personal"?a.value=a.value.filter(f=>f.id!==_.id):s.value=s.value.filter(f=>f.id!==_.id)}async function m(_){const{data:f}=await U.put(p(_),G(_),{confirmPassword:H.Strict});d(f)}async function o(_){const{data:f}=await U.get(p(_));d(f)}return t(),{globalStorages:s,userStorages:a,createGlobalStorage:l,createUserStorage:r,deleteStorage:c,reloadStorage:o,updateStorage:m};async function i(_){const f=`apps/files_external/${_}`,{data:g}=await U.get(R(f));return Object.values(g)}async function t(){pe(U),ga?s.value=await i("globalstorages"):(a.value=await i("userstorages"),s.value=await i("userglobalstorages"))}function p(_){const f=_.type==="personal"?"userstorages":"globalstorages";return R(`apps/files_external/${f}/${_.id}`)}function d(_){if(_.type==="personal"){const f=a.value.findIndex(g=>g.id===_.id);a.value.splice(f,1,_)}else{const f=s.value.findIndex(g=>g.id===_.id);s.value.splice(f,1,_)}}}),va={class:"hidden-visually"},ba={key:0},ya=$({__name:"ExternalStorageTableRow",props:{storage:{},isAdmin:{type:Boolean}},setup(s){const a=s,l=le(),r=A("files_external","backends"),c=C(()=>r.find(g=>g.identifier===a.storage.backend).name),m=A("files_external","authMechanisms"),o=C(()=>m.find(g=>g.identifier===a.storage.authMechanism).name),i=M(!1),t=C(()=>{if(i.value)return{icon:"loading",label:n("files_external","Checking …")};const g=a.storage.status??j.Indeterminate,te=a.storage.statusMessage||je[g],E=De[g],se=g===j.NetworkError||g===j.Timeout,ye=!se&&g!==j.Success&&g!==j.Indeterminate;return{icon:E,label:te,isWarning:se,isError:ye}}),p=ge(()=>a.storage.applicableUsers||[]);async function d(){await l.deleteStorage(a.storage)}async function _(){const g=await Ne(be,{storage:a.storage});g&&await l.updateStorage(g)}async function f(){i.value=!0;try{await l.reloadStorage(a.storage)}finally{i.value=!1}}return(g,te)=>(u(),h("tr",{class:x(g.$style.storageTableRow)},[y("td",null,[y("span",va,v(t.value.label),1),b(e(N),{"aria-label":e(n)("files_external","Recheck status"),title:t.value.label,variant:"tertiary-no-background",onClick:f},{icon:w(()=>[t.value.icon==="loading"?(u(),V(e(ce),{key:0})):(u(),V(e(F),{key:1,class:x({[g.$style.storageTableRow__status_error]:t.value.isError,[g.$style.storageTableRow__status_warning]:t.value.isWarning}),path:t.value.icon},null,8,["class","path"]))]),_:1},8,["aria-label","title"])]),y("td",null,v(s.storage.mountPoint),1),y("td",null,v(c.value),1),y("td",null,v(o.value),1),s.isAdmin?(u(),h("td",ba,[y("div",{class:x(g.$style.storageTableRow__cellApplicable)},[(u(!0),h(S,null,O(s.storage.applicableGroups,E=>(u(),V(e(Fe),{key:E,iconPath:e(Ae),noClose:"",text:E},null,8,["iconPath","text"]))),128)),(u(!0),h(S,null,O(e(p),E=>(u(),V(e(Le),{key:E.user,displayName:E.displayName,size:24,user:E.user},null,8,["displayName","user"]))),128))],2)])):T("",!0),y("td",null,[s.isAdmin||s.storage.type==="personal"?(u(),h("div",{key:0,class:x(g.$style.storageTableRow__cellActions)},[b(e(N),{"aria-label":e(n)("files_external","Edit"),title:e(n)("files_external","Edit"),onClick:_},{icon:w(()=>[b(e(F),{path:e(Ue)},null,8,["path"])]),_:1},8,["aria-label","title"]),b(e(N),{"aria-label":e(n)("files_external","Delete"),title:e(n)("files_external","Delete"),variant:"error",onClick:d},{icon:w(()=>[b(e(F),{path:e($e)},null,8,["path"])]),_:1},8,["aria-label","title"])],2)):(u(),V(e(F),{key:1,inline:"",path:e(Te),name:e(n)("files_external","System provided storage"),title:e(n)("files_external","System provided storage")},null,8,["path","name","title"]))])],2))}}),ha="_storageTableRow__cellActions_1k62p_2",xa="_storageTableRow__cellApplicable_1k62p_7",wa="_storageTableRow__status_warning_1k62p_17",Va="_storageTableRow__status_error_1k62p_21",ka={storageTableRow__cellActions:ha,storageTableRow__cellApplicable:xa,storageTableRow__status_warning:wa,storageTableRow__status_error:Va},Sa={$style:ka},Ca=q(ya,[["__cssModules",Sa]]),Ma=["aria-label"],Aa={class:"hidden-visually"},Ua={key:0},$a={class:"hidden-visually"},Ta=$({__name:"ExternalStorageTable",setup(s){const a=le(),{isAdmin:l}=A("files_external","settings"),r=C(()=>l?a.globalStorages:[...a.userStorages,...a.globalStorages]);return(c,m)=>(u(),h("table",{class:x(c.$style.storageTable),"aria-label":e(n)("files_external","External storages")},[y("thead",{class:x(c.$style.storageTable__header)},[y("tr",null,[y("th",{class:x(c.$style.storageTable__headerStatus)},[y("span",Aa,v(e(n)("files_external","Status")),1)],2),y("th",{class:x(c.$style.storageTable__headerFolder)},v(e(n)("files_external","Folder name")),3),y("th",{class:x(c.$style.storageTable__headerBackend)},v(e(n)("files_external","External storage")),3),y("th",{class:x(c.$style.storageTable__headerAuthentication)},v(e(n)("files_external","Authentication")),3),e(l)?(u(),h("th",Ua,v(e(n)("files_external","Restricted to")),1)):T("",!0),y("th",{class:x(c.$style.storageTable__headerActions)},[y("span",$a,v(e(n)("files_external","Actions")),1)],2)])],2),y("tbody",null,[(u(!0),h(S,null,O(r.value,o=>(u(),V(Ca,{key:o.id,isAdmin:e(l),storage:o},null,8,["isAdmin","storage"]))),128))])],10,Ma))}}),Oa="_storageTable_1dqte_2",qa="_storageTable__header_1dqte_11",Ea="_storageTable__headerStatus_1dqte_16",Na="_storageTable__headerFolder_1dqte_20",Pa="_storageTable__headerBackend_1dqte_24",Ra="_storageTable__headerFAuthentication_1dqte_28",Fa="_storageTable__headerActions_1dqte_32",Ba={storageTable:Oa,storageTable__header:qa,storageTable__headerStatus:Ea,storageTable__headerFolder:Na,storageTable__headerBackend:Pa,storageTable__headerFAuthentication:Ra,storageTable__headerActions:Fa},La={$style:Ba},ja=q(Ta,[["__cssModules",La]]),Da=$({__name:"UserMountSettings",setup(s){const a=A("files_external","user-mounting"),l=A("files_external","backends").filter(m=>m.identifier!=="local"),r=M(a.allowUserMounting),c=M(a.allowedBackends);return I(r,()=>{const m=!r.value;window.OCP.AppConfig.setValue("files_external","allow_user_mounting",r.value?"yes":"no",{success:()=>ae(n("files_external","Saved")),error:()=>{r.value=m,ee(n("files_external","Error while saving"))}})}),I(c,(m,o)=>{window.OCP.AppConfig.setValue("files_external","user_mounting_backends",m.join(","),{success:()=>ae(n("files_external","Saved allowed backends")),error:()=>{ee(n("files_external","Failed to save allowed backends")),c.value=o}})}),(m,o)=>(u(),h("form",null,[y("h3",{class:x(m.$style.userMountSettings__heading)},v(e(n)("files_external","Advanced options for external storage mounts")),3),b(e(P),{modelValue:r.value,"onUpdate:modelValue":o[0]||(o[0]=i=>r.value=i),type:"switch"},{default:w(()=>[k(v(e(n)("files_external","Allow people to mount external storage")),1)]),_:1},8,["modelValue"]),Z(y("fieldset",{class:x(m.$style.userMountSettings__backends)},[y("legend",null,v(e(n)("files_external","External storage backends people are allowed to mount")),1),(u(!0),h(S,null,O(e(l),i=>(u(),V(e(P),{key:i.identifier,modelValue:c.value,"onUpdate:modelValue":o[1]||(o[1]=t=>c.value=t),value:i.identifier,name:"allowUserMountingBackends[]"},{default:w(()=>[k(v(i.name),1)]),_:2},1032,["modelValue","value"]))),128))],2),[[K,r.value]])]))}}),Ha="_userMountSettings__heading_59moz_2",Ga="_userMountSettings__backends_59moz_9",Ia={userMountSettings__heading:Ha,userMountSettings__backends:Ga},Qa={$style:Ia},za=q(Da,[["__cssModules",Qa]]);const Za=["aria-label"],Ka=$({__name:"ExternalStoragesSection",setup(s){const a=A("files_external","settings",{docUrl:"",dependencyIssues:{messages:null,modules:null},isAdmin:!1}),l=le(),r=a.dependencyIssues?.messages??[],c=a.dependencyIssues?.modules??{},m=M(!1),o=M();async function i(t){if(m.value=!1,!!t)try{a.isAdmin?await l.createGlobalStorage(t):await l.createUserStorage(t),o.value=void 0}catch(p){fe.error("Failed to add external storage",{error:p}),m.value=!0}}return(t,p)=>(u(),V(e(ue),{docUrl:e(a).docUrl,name:e(n)("files_external","External storage"),description:e(n)("files_external","External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices.")+(e(a).isAdmin?" "+e(n)("files_external","You may also allow people to mount their own external storage services."):"")},{default:w(()=>[(u(!0),h(S,null,O(e(r),(d,_)=>(u(),V(e(oe),{key:_,type:"error"},{default:w(()=>[k(v(d),1)]),_:2},1024))),128)),(u(!0),h(S,null,O(e(c),(d,_)=>(u(),V(e(oe),{key:_,type:"warning"},{default:w(()=>[y("p",null,[_==="curl"?(u(),h(S,{key:0},[k(v(e(n)("files_external","The cURL support in PHP is not enabled or installed.")),1)],64)):_==="ftp"?(u(),h(S,{key:1},[k(v(e(n)("files_external","The FTP support in PHP is not enabled or installed.")),1)],64)):(u(),h(S,{key:2},[k(v(e(n)("files_external","{module} is not installed.",{module:_})),1)],64)),k(" "+v(e(qe)("files_external","Please ask your system administrator to install it as otherwise mounting the following backend is not possible:","Please ask your system administrator to install it as otherwise mounting the following backends is not possible:",d.length)),1)]),y("ul",{class:x(t.$style.externalStoragesSection__dependantList),"aria-label":e(n)("files_external","Dependant backends")},[(u(!0),h(S,null,O(d,f=>(u(),h("li",{key:f},v(f),1))),128))],10,Za)]),_:2},1024))),128)),T("",!0),b(ja),b(e(N),{class:x(t.$style.externalStoragesSection__newStorageButton),variant:"primary",onClick:p[0]||(p[0]=d=>m.value=!m.value)},{icon:w(()=>[b(e(F),{path:e(Oe)},null,8,["path"])]),default:w(()=>[k(" "+v(e(n)("files_external","Add external storage")),1)]),_:1},8,["class"]),b(be,{modelValue:o.value,"onUpdate:modelValue":p[1]||(p[1]=d=>o.value=d),open:m.value,"onUpdate:open":p[2]||(p[2]=d=>m.value=d),onClose:i},null,8,["modelValue","open"]),e(a).isAdmin?(u(),V(za,{key:1})):T("",!0)]),_:1},8,["docUrl","name","description"]))}}),Wa="_externalStoragesSection__dependantList_atsmn_2",Ya="_externalStoragesSection__newStorageButton_atsmn_7",Ja={externalStoragesSection__dependantList:Wa,externalStoragesSection__newStorageButton:Ya},Xa={$style:Ja},el=q(Ka,[["__cssModules",Xa]]),al=$({__name:"GlobalCredentialsSection",setup(s){const a=A("files_external","global-credentials"),l=M(!1),r=M(a.user),c=M(a.password);pe(U);async function m(){try{l.value=!0;const{data:o}=await U.post(R("apps/files_external/globalcredentials"),{uid:a.uid,user:r.value,password:c.value},{confirmPassword:H.Strict});if(o){ae(n("files_external","Global credentials saved"));return}}catch(o){fe.error(o)}finally{l.value=!1}ee(n("files_external","Could not save global credentials")),r.value=a.user,c.value=a.password}return(o,i)=>(u(),V(e(ue),{name:e(n)("files_external","Global credentials"),description:e(n)("files_external","Global credentials can be used to authenticate with multiple external storages that have the same credentials.")},{default:w(()=>[y("form",{id:"global_credentials",class:x(o.$style.globalCredentialsSectionForm),autocomplete:"false",onSubmit:ke(m,["prevent"])},[b(e(de),{modelValue:r.value,"onUpdate:modelValue":i[0]||(i[0]=t=>r.value=t),name:"username",autocomplete:"false",label:e(n)("files_external","Login")},null,8,["modelValue","label"]),b(e(Be),{modelValue:c.value,"onUpdate:modelValue":i[1]||(i[1]=t=>c.value=t),name:"password",autocomplete:"false",label:e(n)("files_external","Password")},null,8,["modelValue","label"]),b(e(N),{class:x(o.$style.globalCredentialsSectionForm__submit),disabled:l.value,variant:"primary",type:"submit"},{default:w(()=>[k(v(l.value?e(n)("files_external","Saving …"):e(n)("files_external","Save")),1)]),_:1},8,["class","disabled"])],34)]),_:1},8,["name","description"]))}}),ll="_globalCredentialsSectionForm_bgjv2_2",tl="_globalCredentialsSectionForm__submit_bgjv2_10",sl={globalCredentialsSectionForm:ll,globalCredentialsSectionForm__submit:tl},nl={$style:sl},ol=q(al,[["__cssModules",nl]]),il=$({__name:"FilesExternalSettings",setup(s){return(a,l)=>(u(),h(S,null,[b(el),b(ol)],64))}}),rl=xe(),Y=Se(il);Y.config.idPrefix="files-external",Y.use(rl),Y.mount("#files-external"); //# sourceMappingURL=files_external-settings.mjs.map diff --git a/dist/index-B8CmRwk1.chunk.mjs b/dist/index-B8CmRwk1.chunk.mjs new file mode 100644 index 0000000000000..9cf88daa9b03b --- /dev/null +++ b/dist/index-B8CmRwk1.chunk.mjs @@ -0,0 +1,2 @@ +import{g as T,a as q}from"./index-Bndk0DrU.chunk.mjs";import{i as z,c as W}from"./index-BCebL___.chunk.mjs";import{o as j,g as U}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{s as _,N as S}from"./index-CKn3f84a.chunk.mjs";import{N as V}from"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import{f as L,A as K,v as N,M as A,o as I,g as M,w as O,b as H,t as R,u as m,h as J,r as p,z as Z}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";var o=(s=>(s.Lax="lax",s.Strict="strict",s))(o||{});const G=Date.now();function x(s){if(!window.backendAllowsPasswordConfirmation)return!1;if(s===o.Strict)return!0;const r=G-window.nc_pageLoad*1e3;return Date.now()-(r+window.nc_lastLogin*1e3)>1800*1e3}const F=j().detectLanguage();[{locale:"ar",translations:[{msgid:"Checking password …",msgstr:["يتم التحقق من كلمة المرور..."]},{msgid:"Confirm",msgstr:["تأكيد"]},{msgid:"Confirm your password",msgstr:["تأكيد كلمة المرور"]},{msgid:"Password",msgstr:["كلمة المرور"]},{msgid:"Please enter your password",msgstr:["يرجى إدخال كلمة المرور الخاصة بك"]},{msgid:"This action needs authentication",msgstr:["هذا الإجراء يتطلب التحقق من الهوية"]},{msgid:"Wrong password",msgstr:["كلمة المرور غير صحيحة"]}]},{locale:"ast",translations:[{msgid:"Checking password …",msgstr:["Comprobando la contraseña…"]},{msgid:"Confirm",msgstr:["Confirmación"]},{msgid:"Confirm your password",msgstr:["Confirma la contraseña"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Introduz la contraseña"]},{msgid:"This action needs authentication",msgstr:["Esta aición precisa l'autenticación"]},{msgid:"Wrong password",msgstr:["La contraseña ye incorreuta"]}]},{locale:"az",translations:[{msgid:"Confirm",msgstr:["Təsdiq edin"]},{msgid:"Confirm your password",msgstr:["Parolunuzu təsdiq edin"]},{msgid:"Password",msgstr:["Parol"]},{msgid:"Password confirmation dialog already mounted",msgstr:["Parolun təsdiqi dialoqu artıq quraşdırılıb"]},{msgid:"This action needs authentication",msgstr:["Bu əməliyyat autentifikasiya tələb edir"]},{msgid:"Wrong password",msgstr:["Səhv parol"]}]},{locale:"be",translations:[{msgid:"Checking password …",msgstr:["Праверка пароля…"]},{msgid:"Confirm",msgstr:["Пацвердзіць"]},{msgid:"Confirm your password",msgstr:["Пацвердзіць пароль"]},{msgid:"Password",msgstr:["Пароль"]},{msgid:"Please enter your password",msgstr:["Калі ласка, увядзіце ваш пароль"]},{msgid:"This action needs authentication",msgstr:["Гэта дзеянне патрабуе аўтэнтыфікацыі"]},{msgid:"Wrong password",msgstr:["Памылковы пароль"]}]},{locale:"ca",translations:[{msgid:"Checking password …",msgstr:["S'està comprovant la contrasenya …"]},{msgid:"Confirm",msgstr:["Confirma"]},{msgid:"Confirm your password",msgstr:["Confirmeu la vostra contrasenya"]},{msgid:"Password",msgstr:["Contrasenya"]},{msgid:"Please enter your password",msgstr:["Introduïu la vostra contrasenya"]},{msgid:"This action needs authentication",msgstr:["Aquesta acció necessita autenticació"]},{msgid:"Wrong password",msgstr:["Contrasenya incorrecta"]}]},{locale:"cs_CZ",translations:[{msgid:"Authentication required",msgstr:["Vyžadováno ověření se"]},{msgid:"Checking password …",msgstr:["Ověřování hesla…"]},{msgid:"Confirm",msgstr:["Potvrdit"]},{msgid:"Password",msgstr:["Heslo"]},{msgid:"Please enter your password",msgstr:["Zadejte heslo"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tato akce vyžaduje ověření se – potvrďte ji zadáním svého hesla."]},{msgid:"Unknown error while checking password",msgstr:["Neznámá chyba při kontrolování hesla"]},{msgid:"Wrong password",msgstr:["Nesprávné heslo"]}]},{locale:"da",translations:[{msgid:"Authentication required",msgstr:["Bekræft din identitet"]},{msgid:"Checking password …",msgstr:["Kontrollerer adgangskode …"]},{msgid:"Confirm",msgstr:["Bekræft"]},{msgid:"Password",msgstr:["Adgangskode"]},{msgid:"Please enter your password",msgstr:["Indtast venligst dit kodeord"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Denne handling kræver godkendelse. Indtast din adgangskode for at bekræfte."]},{msgid:"Unknown error while checking password",msgstr:["Ukendt fejl under kontrol af adgangskode"]},{msgid:"Wrong password",msgstr:["forkert Adgangskode"]}]},{locale:"de",translations:[{msgid:"Authentication required",msgstr:["Authentifizierung erforderlich"]},{msgid:"Checking password …",msgstr:["Passwort prüfen  …"]},{msgid:"Confirm",msgstr:["Bestätigen"]},{msgid:"Password",msgstr:["Passwort"]},{msgid:"Please enter your password",msgstr:["Bitte gib dein Passwort ein"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätige diese durch Eingabe deines Passworts."]},{msgid:"Unknown error while checking password",msgstr:["Unbekannter Fehler beim Überprüfen des Passworts"]},{msgid:"Wrong password",msgstr:["Falsches Passwort"]}]},{locale:"de_DE",translations:[{msgid:"Authentication required",msgstr:["Authentifizierung erforderlich"]},{msgid:"Checking password …",msgstr:["Passwort prüfen …"]},{msgid:"Confirm",msgstr:["Bestätigen"]},{msgid:"Password",msgstr:["Passwort"]},{msgid:"Please enter your password",msgstr:["Bitte geben Sie Ihr Passwort ein"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätigen Sie diese durch Eingabe Ihres Passworts."]},{msgid:"Unknown error while checking password",msgstr:["Unbekannter Fehler beim Überprüfen des Passworts"]},{msgid:"Wrong password",msgstr:["Falsches Passwort"]}]},{locale:"el",translations:[{msgid:"Authentication required",msgstr:["Απαιτείται πιστοποίηση"]},{msgid:"Checking password …",msgstr:["Έλεγχος κωδικού πρόσβασης …"]},{msgid:"Confirm",msgstr:["Επιβεβαίωση"]},{msgid:"Password",msgstr:["Συνθηματικό"]},{msgid:"Please enter your password",msgstr:["Παρακαλώ εισάγετε το συνθηματικό σας"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Αυτή η ενέργεια απαιτεί πιστοποίηση. Επιβεβαιώστε την εισάγοντας τον κωδικό πρόσβασής σας."]},{msgid:"Unknown error while checking password",msgstr:["Άγνωστο σφάλμα κατά τον έλεγχο του κωδικού πρόσβασης"]},{msgid:"Wrong password",msgstr:["Λάθος συνθηματικό"]}]},{locale:"en_GB",translations:[{msgid:"Authentication required",msgstr:["Authentication required"]},{msgid:"Checking password …",msgstr:["Checking password …"]},{msgid:"Confirm",msgstr:["Confirm"]},{msgid:"Password",msgstr:["Password"]},{msgid:"Please enter your password",msgstr:["Please enter your password"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["This action needs authentication, please confirm it by entering your password."]},{msgid:"Unknown error while checking password",msgstr:["Unknown error while checking password"]},{msgid:"Wrong password",msgstr:["Wrong password"]}]},{locale:"es",translations:[{msgid:"Authentication required",msgstr:["Se requiere autenticación"]},{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor, Introduzca su contraseña"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta acción requiere autenticación, por favor, confírmela ingresado su contraseña."]},{msgid:"Wrong password",msgstr:["Contraseña errónea"]}]},{locale:"es_AR",translations:[{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Confirm your password",msgstr:["Confirme su contraseña"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor, introduzca su contraseña"]},{msgid:"This action needs authentication",msgstr:["Esta acción necesita autenticación"]},{msgid:"Wrong password",msgstr:["Contraseña incorrecta"]}]},{locale:"es_CO",translations:[{msgid:"Authentication required",msgstr:["Autenticación requerida"]},{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor introduzca su contraseña"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta acción necesita autentificación, por favor confírmela introduciendo su contraseña."]},{msgid:"Wrong password",msgstr:["Contraseña incorrecta"]}]},{locale:"es_MX",translations:[{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Confirm your password",msgstr:["Confirme su contraseña"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor introduzca su contraseña"]},{msgid:"This action needs authentication",msgstr:["Esta acción necesita autenticación"]},{msgid:"Wrong password",msgstr:["Contraseña incorrecta"]}]},{locale:"et_EE",translations:[{msgid:"Authentication required",msgstr:["Autentimine on vajalik"]},{msgid:"Checking password …",msgstr:["Kontrollin salasõna…"]},{msgid:"Confirm",msgstr:["Kinnita"]},{msgid:"Password",msgstr:["Salasõna"]},{msgid:"Please enter your password",msgstr:["Palun sisesta oma salasõna"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["See tegevus eeldab autentimist, palun tee seda sisestades oma salasõna."]},{msgid:"Unknown error while checking password",msgstr:["Tundmatu viga salasõna kontrollimisel"]},{msgid:"Wrong password",msgstr:["Vale salasõna"]}]},{locale:"fa",translations:[{msgid:"Authentication required",msgstr:["احراز هویت مورد نیاز است"]},{msgid:"Checking password …",msgstr:["در حال بررسی رمز عبور..."]},{msgid:"Confirm",msgstr:["تأیید"]},{msgid:"Password",msgstr:["رمز عبور"]},{msgid:"Please enter your password",msgstr:["لطفاً رمز عبور خود را وارد کنید"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["این عمل نیاز به احراز هویت دارد، لطفاً با وارد کردن رمز عبور خود آن را تأیید کنید."]},{msgid:"Wrong password",msgstr:["رمز عبور اشتباه است"]}]},{locale:"fi_FI",translations:[{msgid:"Authentication required",msgstr:["Tunnistautuminen vaaditaan"]},{msgid:"Checking password …",msgstr:["Tarkistetaan salasanaa …"]},{msgid:"Confirm",msgstr:["Vahvista"]},{msgid:"Password",msgstr:["Salasana"]},{msgid:"Please enter your password",msgstr:["Kirjoita salasanasi"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tämä toimenpide vaatii tunnistautumisen. Vahvista kirjoittamalla salasanasi."]},{msgid:"Unknown error while checking password",msgstr:["Tuntematon virhe salasanaa tarkistaessa"]},{msgid:"Wrong password",msgstr:["Väärä salasana"]}]},{locale:"fr",translations:[{msgid:"Authentication required",msgstr:["Authentification requise"]},{msgid:"Checking password …",msgstr:["Vérification du mot de passe ..."]},{msgid:"Confirm",msgstr:["Confirmer"]},{msgid:"Password",msgstr:["Mot de passe"]},{msgid:"Please enter your password",msgstr:["Veuillez saisir votre mot de passe"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Cette action nécessite une authentification, veuillez confirmer en saisissant votre mot de passe."]},{msgid:"Unknown error while checking password",msgstr:["Erreur inconnue lors de la vérification du mot de passe"]},{msgid:"Wrong password",msgstr:["Mot de passe incorrect"]}]},{locale:"ga",translations:[{msgid:"Authentication required",msgstr:["Fíordheimhniú ag teastáil"]},{msgid:"Checking password …",msgstr:["Ag seiceáil an focal faire …"]},{msgid:"Confirm",msgstr:["Deimhnigh"]},{msgid:"Password",msgstr:["Pasfhocal"]},{msgid:"Please enter your password",msgstr:["Cuir isteach do phasfhocal"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Teastaíonn fíordheimhniú don ghníomh seo, deimhnigh é trí do phasfhocal a iontráil."]},{msgid:"Unknown error while checking password",msgstr:["Earráid anaithnid agus an focal faire á sheiceáil"]},{msgid:"Wrong password",msgstr:["Pasfhocal mícheart"]}]},{locale:"gl",translations:[{msgid:"Authentication required",msgstr:["É necesaria a autenticación"]},{msgid:"Checking password …",msgstr:["Comprobando o contrasinal…"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Contrasinal"]},{msgid:"Please enter your password",msgstr:["Introduza o seu contrasinal"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta acción precisa de autenticación, confírmea introducindo o seu contrasinal."]},{msgid:"Unknown error while checking password",msgstr:["Produciuse un erro descoñecido ao comprobar o contrasinal"]},{msgid:"Wrong password",msgstr:["Contrasinal incorrecto"]}]},{locale:"hr",translations:[{msgid:"Authentication required",msgstr:["Potrebna je autentifikacija"]},{msgid:"Checking password …",msgstr:["Provjera lozinke …"]},{msgid:"Confirm",msgstr:["Potvrdi"]},{msgid:"Password",msgstr:["Lozinka"]},{msgid:"Please enter your password",msgstr:["Molimo unesite vašu lozinku"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ova radnja zahtijeva autentifikaciju, potvrdite je unosom svoje lozinke."]},{msgid:"Unknown error while checking password",msgstr:["Nepoznata pogreška pri provjeri lozinke"]},{msgid:"Wrong password",msgstr:["Pogrešna lozinka"]}]},{locale:"hu_HU",translations:[{msgid:"Authentication required",msgstr:["Azonosítás szükséges"]},{msgid:"Checking password …",msgstr:["Jelszó ellenőrzése ..."]},{msgid:"Confirm",msgstr:["Jóváhagyás"]},{msgid:"Password",msgstr:["Jelszó"]},{msgid:"Please enter your password",msgstr:["Adja meg a jelszavát"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ehhez a tevékenységhez azonosítás szükséges. Kérlek hagyd jóvá a jelszavad megadásával."]},{msgid:"Wrong password",msgstr:["Hibás jelszó"]}]},{locale:"id",translations:[{msgid:"Authentication required",msgstr:["Autentikasi diperlukan"]},{msgid:"Checking password …",msgstr:["Memeriksa kata sandi ..."]},{msgid:"Confirm",msgstr:["Konfirmasi"]},{msgid:"Password",msgstr:["Kata sandi"]},{msgid:"Please enter your password",msgstr:["Silahkan masukan kata sandi Anda"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Aksi ini memerlukan autentikasi, silahkan konfirmasi dengan memasukan kata sandi Anda."]},{msgid:"Wrong password",msgstr:["Kata sandi salah"]}]},{locale:"is",translations:[{msgid:"Checking password …",msgstr:["Athuga lykilorð …"]},{msgid:"Confirm",msgstr:["Staðfesta"]},{msgid:"Confirm your password",msgstr:["Staðfestu lykilorðið þitt"]},{msgid:"Password",msgstr:["Lykilorð"]},{msgid:"Please enter your password",msgstr:["Settu inn lykilorðið þitt"]},{msgid:"This action needs authentication",msgstr:["Þessi aðgerð krefst auðkenningar"]},{msgid:"Wrong password",msgstr:["Rangt lykilorð"]}]},{locale:"it",translations:[{msgid:"Authentication required",msgstr:["Autenticazione richiesta"]},{msgid:"Checking password …",msgstr:["Controllo della password…"]},{msgid:"Confirm",msgstr:["Conferma"]},{msgid:"Password",msgstr:["Password"]},{msgid:"Please enter your password",msgstr:["Digita la tua password"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Questa azione richiede l'autenticazione, confermala digitando la tua password."]},{msgid:"Unknown error while checking password",msgstr:["Errore sconosciuto durante la verifica della password"]},{msgid:"Wrong password",msgstr:["Password errata"]}]},{locale:"ja_JP",translations:[{msgid:"Authentication required",msgstr:["認証が必要です"]},{msgid:"Checking password …",msgstr:["パスワードの確認 …"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Password",msgstr:["パスワード"]},{msgid:"Please enter your password",msgstr:["パスワードを入力してください"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["この操作には認証が必要です。パスワードを入力してください。"]},{msgid:"Unknown error while checking password",msgstr:["パスワードのチェック中に不明なエラーが発生しました"]},{msgid:"Wrong password",msgstr:["間違ったパスワード"]}]},{locale:"kab",translations:[{msgid:"Authentication required",msgstr:["Asesteb yettwasra"]},{msgid:"Checking password …",msgstr:["Asenqed n wawal n uɛeddi …"]},{msgid:"Confirm",msgstr:["Sentem"]},{msgid:"Password",msgstr:["Awal n uɛeddi"]},{msgid:"Please enter your password",msgstr:["Txil, sekcem-d awal-ik·im n uɛeddi"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tigawt-a tesra asesteb, ttxil-k·m, wekked-itt-id s usekcem n wawal-inek·inem n uɛeddi."]},{msgid:"Unknown error while checking password",msgstr:["Tuccḍa tarussint imi yessefqad ɣef wawal n uɛeddi"]},{msgid:"Wrong password",msgstr:["Awal n uɛeddi d arameɣtu"]}]},{locale:"ko",translations:[{msgid:"Authentication required",msgstr:["인증 필요 "]},{msgid:"Checking password …",msgstr:["비밀번호 확인 중 ..."]},{msgid:"Confirm",msgstr:["확인"]},{msgid:"Password",msgstr:["비밀번호"]},{msgid:"Please enter your password",msgstr:["비밀번호를 입력하세요"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["이 작업은 인증이 필요합니다. 비밀번호를 입력하여 확인하십시오. "]},{msgid:"Unknown error while checking password",msgstr:["비밀번호 확인 중 알 수 없는 오류가 발생했습니다."]},{msgid:"Wrong password",msgstr:["잘못된 비밀번호"]}]},{locale:"lv",translations:[{msgid:"Authentication required",msgstr:["Nepieciešama autentificēšanās"]},{msgid:"Checking password …",msgstr:["Pārbauda paroli..."]},{msgid:"Confirm",msgstr:["Apstiprināt"]},{msgid:"Password",msgstr:["Parole"]},{msgid:"Please enter your password",msgstr:["Lūgums ievadīt savu paroli"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Šai darbībai ir nepieciešama autentificēšanās. Lūgums to apstiprināt ar savas paroles ievadīšanu."]},{msgid:"Wrong password",msgstr:["Nepareiza parole"]}]},{locale:"mk",translations:[{msgid:"Authentication required",msgstr:["Потребна е автентификација"]},{msgid:"Checking password …",msgstr:["Проверка на лозинка …"]},{msgid:"Confirm",msgstr:["Потврди"]},{msgid:"Password",msgstr:["Лозинка"]},{msgid:"Please enter your password",msgstr:["Внесете ја вашата лозинка"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Оваа акција бара автентикација, потврдете ја со внесување на вашата лозинка."]},{msgid:"Unknown error while checking password",msgstr:["Непозната грешка додека се проверува лозинката"]},{msgid:"Wrong password",msgstr:["Погрешна лозинка"]}]},{locale:"ms_MY",translations:[{msgid:"Authentication required",msgstr:["Pengesahan diperlukan"]},{msgid:"Checking password …",msgstr:["Menyemak kata laluan …"]},{msgid:"Confirm",msgstr:["Mengesahkan"]},{msgid:"Password",msgstr:["Kata laluan"]},{msgid:"Please enter your password",msgstr:["Sila masukkan kata laluan anda"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tindakan ini memerlukan pengesahan, sila sahkan dengan memasukkan kata laluan anda."]},{msgid:"Wrong password",msgstr:["Kata laluan salah"]}]},{locale:"nb_NO",translations:[{msgid:"Checking password …",msgstr:["Sjekker passord …"]},{msgid:"Confirm",msgstr:["Bekreft"]},{msgid:"Confirm your password",msgstr:["Bekreft passordet ditt"]},{msgid:"Password",msgstr:["Passord"]},{msgid:"Please enter your password",msgstr:["Vennligst skriv inn passordet ditt"]},{msgid:"This action needs authentication",msgstr:["Denne handlingen krever autentisering"]},{msgid:"Wrong password",msgstr:["Feil passord"]}]},{locale:"nl",translations:[{msgid:"Authentication required",msgstr:["Authenticatie vereist"]},{msgid:"Checking password …",msgstr:["Wachtwoord controleren…"]},{msgid:"Confirm",msgstr:["Bevestigen"]},{msgid:"Password",msgstr:["Wachtwoord"]},{msgid:"Please enter your password",msgstr:["Voer je wachtwoord in"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Deze actie vereist authenticatie, voer je wachtwoord in."]},{msgid:"Unknown error while checking password",msgstr:["Onbekende fout bij wachtwoord controleren"]},{msgid:"Wrong password",msgstr:["Incorrect wachtwoord"]}]},{locale:"pl",translations:[{msgid:"Checking password …",msgstr:["Sprawdzanie hasła…"]},{msgid:"Confirm",msgstr:["Potwierdź"]},{msgid:"Confirm your password",msgstr:["Potwierdź swoje hasło"]},{msgid:"Password",msgstr:["Hasło"]},{msgid:"Please enter your password",msgstr:["Wprowadź swoje hasło"]},{msgid:"This action needs authentication",msgstr:["Wykonanie tej czynności wymaga autoryzacji"]},{msgid:"Wrong password",msgstr:["Nieprawidłowe hasło"]}]},{locale:"pt_BR",translations:[{msgid:"Authentication required",msgstr:["Autenticação necessária"]},{msgid:"Checking password …",msgstr:["Verificando a senha …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Senha"]},{msgid:"Please enter your password",msgstr:["Por favor, insira sua senha"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta ação precisa de autenticação. Por favor, confirme-a digitando sua senha."]},{msgid:"Unknown error while checking password",msgstr:["Erro desconhecido ao verificar a senha"]},{msgid:"Wrong password",msgstr:["Senha incorreta"]}]},{locale:"pt_PT",translations:[{msgid:"Authentication required",msgstr:["Autenticação necessária"]},{msgid:"Checking password …",msgstr:["A verificar palavra-passe…"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Palavra-passe"]},{msgid:"Please enter your password",msgstr:["Introduza a sua palavra-passe, por favor"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta ação requer autenticação; confirme-a introduzindo a sua palavra-passe."]},{msgid:"Unknown error while checking password",msgstr:["Erro desconhecido ao verificar a palavra-passe"]},{msgid:"Wrong password",msgstr:["Palavra-passe incorreta"]}]},{locale:"ro",translations:[{msgid:"Checking password …",msgstr:["Se verifică parola ..."]},{msgid:"Confirm",msgstr:["Confirmare"]},{msgid:"Confirm your password",msgstr:["Confirmare parolă"]},{msgid:"Password",msgstr:["Parolă"]},{msgid:"Please enter your password",msgstr:["Vă rugăm să introduceți parola"]},{msgid:"This action needs authentication",msgstr:["Această acțiune necesită autentificare"]},{msgid:"Wrong password",msgstr:["Parolă incorectă"]}]},{locale:"ru",translations:[{msgid:"Authentication required",msgstr:["Требуется аутентификация"]},{msgid:"Checking password …",msgstr:["Проверка пароля …"]},{msgid:"Confirm",msgstr:["Подтвердить"]},{msgid:"Password",msgstr:["Пароль"]},{msgid:"Please enter your password",msgstr:["Пожалуйста, введите свой пароль"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Это действие требует аутентификации, пожалуйста подтвердите его вводом вашего пароля."]},{msgid:"Unknown error while checking password",msgstr:["Неизвестная ошибка при проверке пароля"]},{msgid:"Wrong password",msgstr:["Неправильный пароль"]}]},{locale:"sk_SK",translations:[{msgid:"Authentication required",msgstr:["Vyžaduje sa autentifikácia"]},{msgid:"Checking password …",msgstr:["Kontrola hesla…"]},{msgid:"Confirm",msgstr:["Potvrdiť"]},{msgid:"Password",msgstr:["Heslo"]},{msgid:"Please enter your password",msgstr:["Zadajte prosím svoje heslo"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Táto akcia vyžaduje overenie, prosím potvrďte ju zadaním vášho hesla."]},{msgid:"Unknown error while checking password",msgstr:["Neznáma chyba pri overovaní hesla"]},{msgid:"Wrong password",msgstr:["Nesprávne heslo"]}]},{locale:"sl",translations:[{msgid:"Authentication required",msgstr:["Zahtevana avtentikacija"]},{msgid:"Checking password …",msgstr:["Poteka preverjanje gesla ..."]},{msgid:"Confirm",msgstr:["Potrdi"]},{msgid:"Password",msgstr:["Geslo"]},{msgid:"Please enter your password",msgstr:["Vpisati je treba geslo"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["To dejanje zahteva preverjanje pristnosti, potrdite ga z vnosom gesla."]},{msgid:"Unknown error while checking password",msgstr:["Neznana napaka pri preverjanju gesla"]},{msgid:"Wrong password",msgstr:["Napačno geslo"]}]},{locale:"sr",translations:[{msgid:"Authentication required",msgstr:["Потребна је потврда идентитета"]},{msgid:"Checking password …",msgstr:["Проверава се лозинка…"]},{msgid:"Confirm",msgstr:["Потврда"]},{msgid:"Password",msgstr:["Лозинка"]},{msgid:"Please enter your password",msgstr:["Молимо вас да унесете своју лозинку"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["За ову акцију је потребна провера идентитета, молимо вас да га потврдите уносом своје лозинке."]},{msgid:"Unknown error while checking password",msgstr:["Непозната грешка током провере лозинке"]},{msgid:"Wrong password",msgstr:["Погрешна лозинка"]}]},{locale:"sv",translations:[{msgid:"Authentication required",msgstr:["Autentisering krävs"]},{msgid:"Checking password …",msgstr:["Kontrollerar lösenord …"]},{msgid:"Confirm",msgstr:["Bekräfta"]},{msgid:"Password",msgstr:["Lösenord"]},{msgid:"Please enter your password",msgstr:["Ange ditt lösenord"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Den här åtgärden kräver autentisering, bekräfta genom att ange ditt lösenord."]},{msgid:"Unknown error while checking password",msgstr:["Okänt fel vid kontroll av lösenord"]},{msgid:"Wrong password",msgstr:["Fel lösenord"]}]},{locale:"tr",translations:[{msgid:"Authentication required",msgstr:["Kimlik doğrulaması gerekli"]},{msgid:"Checking password …",msgstr:["Parola denetleniyor…"]},{msgid:"Confirm",msgstr:["Parola onayı"]},{msgid:"Password",msgstr:["Parola"]},{msgid:"Please enter your password",msgstr:["Lütfen parolanızı yazın"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Bu işlemi yapmak için kimliğinizi doğrulamalısınız. Lütfen parolanızı yazın."]},{msgid:"Unknown error while checking password",msgstr:["Parola denetlenirken bilinmeyen bir sorun çıktı"]},{msgid:"Wrong password",msgstr:["Parola geçersiz"]}]},{locale:"uk",translations:[{msgid:"Authentication required",msgstr:["Потрібна авторизація"]},{msgid:"Checking password …",msgstr:["Перевірка паролю ..."]},{msgid:"Confirm",msgstr:["Підтвердити"]},{msgid:"Password",msgstr:["Пароль"]},{msgid:"Please enter your password",msgstr:["Зазначте ваш пароль"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ця дія вимагає авторизацію, зазначте ваш пароль."]},{msgid:"Unknown error while checking password",msgstr:["Невідома помилка під час перевірки пароля"]},{msgid:"Wrong password",msgstr:["Помилковий пароль"]}]},{locale:"ur_PK",translations:[{msgid:"Authentication required",msgstr:["تصدیق درکار ہے"]},{msgid:"Checking password …",msgstr:["پاس ورڈ چیک ہو رہا ہے …"]},{msgid:"Confirm",msgstr:["تصدیق کریں"]},{msgid:"Password",msgstr:["پاس ورڈ"]},{msgid:"Please enter your password",msgstr:["براہ کرم اپنا پاس ورڈ درج کریں"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["اس عمل کو تصدیق کی ضرورت ہے، براہ کرم پاس ورڈ درج کرکے اس کی تصدیق کریں۔"]},{msgid:"Unknown error while checking password",msgstr:["پاس ورڈ چیک کرنے میں نامعلوم خرابی"]},{msgid:"Wrong password",msgstr:["نادرست پاس ورڈ"]}]},{locale:"uz",translations:[{msgid:"Authentication required",msgstr:["Autentifikatsiya talab qilinadi"]},{msgid:"Checking password …",msgstr:["Parol tekshirilmoqda…"]},{msgid:"Confirm",msgstr:["Tasdiqlang"]},{msgid:"Password",msgstr:["Parol"]},{msgid:"Please enter your password",msgstr:["Iltimos, parolingizni kiriting"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ushbu amaliyot autentifikatsiya talab etadi, parolingizni kiritish orqali buni tasdiqlang."]},{msgid:"Unknown error while checking password",msgstr:["Parolni tekshirishda noma'lum xatolik yuz berdi"]},{msgid:"Wrong password",msgstr:["Parol noto'g'ri "]}]},{locale:"vi",translations:[{msgid:"Authentication required",msgstr:["Yêu cầu xác thực"]},{msgid:"Checking password …",msgstr:["Đang kiểm tra mật khẩu ..."]},{msgid:"Confirm",msgstr:["Chấp nhận"]},{msgid:"Password",msgstr:["Mật khẩu"]},{msgid:"Please enter your password",msgstr:["Vui lòng nhập mật khẩu của bạn"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Thao tác này cần xác thực, vui lòng xác nhận bằng cách nhập mật khẩu của bạn."]},{msgid:"Wrong password",msgstr:["Mật khẩu sai"]}]},{locale:"zh_CN",translations:[{msgid:"Authentication required",msgstr:["需要身份验证"]},{msgid:"Checking password …",msgstr:["正在检查密码 …"]},{msgid:"Confirm",msgstr:["确认"]},{msgid:"Password",msgstr:["密码"]},{msgid:"Please enter your password",msgstr:["请输入您的密码"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["此操作需要身份验证,请输入密码进行确认。"]},{msgid:"Unknown error while checking password",msgstr:["检查密码时出现未知错误"]},{msgid:"Wrong password",msgstr:["密码错误"]}]},{locale:"zh_HK",translations:[{msgid:"Authentication required",msgstr:["需要驗證"]},{msgid:"Checking password …",msgstr:["正在檢查密碼 …"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Password",msgstr:["密碼"]},{msgid:"Please enter your password",msgstr:["請輸入您的密碼"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["此操作需要身份驗證,請輸入您的密碼以進行確認。"]},{msgid:"Unknown error while checking password",msgstr:["檢查密碼時發生未知錯誤"]},{msgid:"Wrong password",msgstr:["密碼錯誤"]}]},{locale:"zh_TW",translations:[{msgid:"Checking password …",msgstr:["正在檢查密碼……"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Confirm your password",msgstr:["確認您的密碼"]},{msgid:"Password",msgstr:["密碼"]},{msgid:"Please enter your password",msgstr:["請輸入您的密碼"]},{msgid:"This action needs authentication",msgstr:["此動作需要驗證"]},{msgid:"Wrong password",msgstr:["密碼錯誤"]}]}].map(({locale:s,translations:r})=>F.addTranslation(s,{headers:{},translations:{"":Object.fromEntries(r.map(u=>[u.msgid,u]))}}));const C=F.build();C.ngettext.bind(C);const e=C.gettext.bind(C),i=T().setApp("@nextcloud/password-confirmation").detectLogLevel().build(),Y=L({__name:"PasswordDialog",props:{validate:{type:Function}},emits:["close"],setup(s,{emit:r}){const u=s,g=r;K(v);const t=N("field"),a=p(""),w=p(!1),n=p(!1),y=[{label:e("Confirm"),type:"submit",variant:"primary",callback:D}],P=Z(()=>{if(n.value!==!1){if(a.value==="")return e("Please enter your password");switch(n.value){case!0:return e("Unknown error while checking password");case 403:return e("Wrong password")}}return w.value?e("Checking password …"):""});async function D(){if(n.value=!1,w.value=!0,a.value==="")return n.value=!0,!1;try{return await u.validate(a.value),g("close",!0),!0}catch(d){return z(d)&&d.response?.status===403?n.value=403:n.value=!0,i.error("Exception during password confirmation",{error:d}),b(),!1}finally{w.value=!1}}function v(){A(()=>{t.value.focus()})}function b(){A(()=>{t.value.select()})}return(d,c)=>(I(),M(m(S),{isForm:"",buttons:y,name:m(e)("Authentication required"),contentClasses:d.$style.passwordDialog,"onUpdate:open":c[1]||(c[1]=h=>g("close",!1))},{default:O(()=>[H("p",null,R(m(e)("This action needs authentication, please confirm it by entering your password.")),1),J(m(V),{ref:"field",modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=h=>a.value=h),label:m(e)("Password"),helperText:P.value,checkPasswordStrength:!1,error:n.value!==!1,required:""},null,8,["modelValue","label","helperText","error"])]),_:1},8,["name","contentClasses"]))}}),$="_passwordDialog_joix2_2",Q={passwordDialog:$},X=(s,r)=>{const u=s.__vccOpts||s;for(const[g,t]of r)u[g]=t;return u},uu={$style:Q},su=X(Y,[["__cssModules",uu]]);let B=!1;async function ou(){if(!x(o.Lax))return Promise.resolve();await k(async s=>{await f(s)})}async function f(s){i.debug("Confirming password");const r=U("/login/confirm"),{data:u}=await W.post(r,{password:s});window.nc_lastLogin=u.lastLogin,i.debug("Password confirmed")}let l,E;async function k(s){E=s,l||(l=_(su,{validate(u){return E(u)}}));const r=await l;if(l=void 0,!r)throw new Error("Dialog closed")}function gu(s){if(B)return;B=!0;let r;s.interceptors.request.use(async u=>{if(u.confirmPassword===void 0||!x(u.confirmPassword))return u;const{promise:g,resolve:t}=Promise.withResolvers();return k(async a=>{switch(u.confirmPassword){case o.Lax:await f(a),t(u);break;case o.Strict:return r=Promise.withResolvers(),u.auth={username:q()?.uid??"",password:a},i.debug("Adding auth info to the request",{config:u}),t(u),r.promise}}),g}),s.interceptors.response.use(u=>u.config.confirmPassword!==o.Strict?u:r===void 0?(i.debug("Password confirmation not required",{response:u}),u):(i.debug("Password confirmation succeeded",{response:u}),window.nc_lastLogin=Date.now()/1e3,r.resolve(),u),u=>{if(u.config?.confirmPassword!==o.Strict)throw u;if(r===void 0)throw i.debug("Password confirmation not required",{error:u}),u;return i.debug("Password confirmation failed",{error:u}),r.reject(u),i.debug("Triggering new request",{error:u}),s.request(u.config)})}export{o as P,gu as a,ou as c}; +//# sourceMappingURL=index-B8CmRwk1.chunk.mjs.map diff --git a/dist/index-DxnK_Coe.chunk.mjs.license b/dist/index-B8CmRwk1.chunk.mjs.license similarity index 92% rename from dist/index-DxnK_Coe.chunk.mjs.license rename to dist/index-B8CmRwk1.chunk.mjs.license index cdf6dd8de66b6..8451a921c2859 100644 --- a/dist/index-DxnK_Coe.chunk.mjs.license +++ b/dist/index-B8CmRwk1.chunk.mjs.license @@ -3,5 +3,5 @@ SPDX-FileCopyrightText: Nextcloud GmbH and Nextcloud contributors This file is generated from multiple sources. Included packages: - @nextcloud/password-confirmation - - version: 6.0.2 + - version: 6.0.3 - license: MIT diff --git a/dist/index-B8CmRwk1.chunk.mjs.map b/dist/index-B8CmRwk1.chunk.mjs.map new file mode 100644 index 0000000000000..28407f1f51ac5 --- /dev/null +++ b/dist/index-B8CmRwk1.chunk.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"index-B8CmRwk1.chunk.mjs","sources":["../node_modules/@nextcloud/password-confirmation/dist/index.mjs"],"sourcesContent":["import { getCurrentUser } from \"@nextcloud/auth\";\nimport axios, { isAxiosError } from \"@nextcloud/axios\";\nimport { generateUrl } from \"@nextcloud/router\";\nimport { spawnDialog } from \"@nextcloud/vue/functions/dialog\";\nimport { defineComponent, onMounted, useTemplateRef, ref, computed, nextTick, openBlock, createBlock, unref, withCtx, createElementVNode, toDisplayString, createVNode } from \"vue\";\nimport NcDialog from \"@nextcloud/vue/components/NcDialog\";\nimport NcPasswordField from \"@nextcloud/vue/components/NcPasswordField\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nvar PwdConfirmationMode = /* @__PURE__ */ ((PwdConfirmationMode2) => {\n PwdConfirmationMode2[\"Lax\"] = \"lax\";\n PwdConfirmationMode2[\"Strict\"] = \"strict\";\n return PwdConfirmationMode2;\n})(PwdConfirmationMode || {});\n/*!\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nconst PAGE_LOAD_TIME = Date.now();\nfunction isPasswordConfirmationRequired(mode) {\n if (!window.backendAllowsPasswordConfirmation) {\n return false;\n }\n if (mode === PwdConfirmationMode.Strict) {\n return true;\n }\n const serverTimeDiff = PAGE_LOAD_TIME - window.nc_pageLoad * 1e3;\n const timeSinceLogin = Date.now() - (serverTimeDiff + window.nc_lastLogin * 1e3);\n return timeSinceLogin > 30 * 60 * 1e3;\n}\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nconst gtBuilder = getGettextBuilder().detectLanguage();\n[{ \"locale\": \"ar\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"يتم التحقق من كلمة المرور...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"تأكيد\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"تأكيد كلمة المرور\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"كلمة المرور\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"يرجى إدخال كلمة المرور الخاصة بك\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"هذا الإجراء يتطلب التحقق من الهوية\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"كلمة المرور غير صحيحة\"] }] }, { \"locale\": \"ast\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Comprobando la contraseña…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmación\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirma la contraseña\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduz la contraseña\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Esta aición precisa l'autenticación\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"La contraseña ye incorreuta\"] }] }, { \"locale\": \"az\", \"translations\": [{ \"msgid\": \"Confirm\", \"msgstr\": [\"Təsdiq edin\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Parolunuzu təsdiq edin\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parol\"] }, { \"msgid\": \"Password confirmation dialog already mounted\", \"msgstr\": [\"Parolun təsdiqi dialoqu artıq quraşdırılıb\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Bu əməliyyat autentifikasiya tələb edir\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Səhv parol\"] }] }, { \"locale\": \"be\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Праверка пароля…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Пацвердзіць\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Пацвердзіць пароль\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Пароль\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Калі ласка, увядзіце ваш пароль\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Гэта дзеянне патрабуе аўтэнтыфікацыі\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Памылковы пароль\"] }] }, { \"locale\": \"ca\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"S'està comprovant la contrasenya …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirma\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirmeu la vostra contrasenya\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contrasenya\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduïu la vostra contrasenya\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Aquesta acció necessita autenticació\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contrasenya incorrecta\"] }] }, { \"locale\": \"cs_CZ\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Vyžadováno ověření se\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Ověřování hesla…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potvrdit\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Heslo\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Zadejte heslo\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tato akce vyžaduje ověření se – potvrďte ji zadáním svého hesla.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Neznámá chyba při kontrolování hesla\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nesprávné heslo\"] }] }, { \"locale\": \"da\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Bekræft din identitet\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrollerer adgangskode …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bekræft\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Adgangskode\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Indtast venligst dit kodeord\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Denne handling kræver godkendelse. Indtast din adgangskode for at bekræfte.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Ukendt fejl under kontrol af adgangskode\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"forkert Adgangskode\"] }] }, { \"locale\": \"de\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentifizierung erforderlich\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Passwort prüfen  …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bestätigen\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Passwort\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Bitte gib dein Passwort ein\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätige diese durch Eingabe deines Passworts.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Unbekannter Fehler beim Überprüfen des Passworts\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Falsches Passwort\"] }] }, { \"locale\": \"de_DE\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentifizierung erforderlich\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Passwort prüfen …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bestätigen\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Passwort\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Bitte geben Sie Ihr Passwort ein\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätigen Sie diese durch Eingabe Ihres Passworts.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Unbekannter Fehler beim Überprüfen des Passworts\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Falsches Passwort\"] }] }, { \"locale\": \"el\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Απαιτείται πιστοποίηση\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Έλεγχος κωδικού πρόσβασης …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Επιβεβαίωση\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Συνθηματικό\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Παρακαλώ εισάγετε το συνθηματικό σας\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Αυτή η ενέργεια απαιτεί πιστοποίηση. Επιβεβαιώστε την εισάγοντας τον κωδικό πρόσβασής σας.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Άγνωστο σφάλμα κατά τον έλεγχο του κωδικού πρόσβασης\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Λάθος συνθηματικό\"] }] }, { \"locale\": \"en_GB\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentication required\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Checking password …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirm\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Password\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Please enter your password\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"This action needs authentication, please confirm it by entering your password.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Unknown error while checking password\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Wrong password\"] }] }, { \"locale\": \"es\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Se requiere autenticación\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor, Introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta acción requiere autenticación, por favor, confírmela ingresado su contraseña.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña errónea\"] }] }, { \"locale\": \"es_AR\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirme su contraseña\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor, introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Esta acción necesita autenticación\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña incorrecta\"] }] }, { \"locale\": \"es_CO\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticación requerida\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta acción necesita autentificación, por favor confírmela introduciendo su contraseña.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña incorrecta\"] }] }, { \"locale\": \"es_MX\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirme su contraseña\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Esta acción necesita autenticación\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña incorrecta\"] }] }, { \"locale\": \"et_EE\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentimine on vajalik\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrollin salasõna…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Kinnita\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Salasõna\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Palun sisesta oma salasõna\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"See tegevus eeldab autentimist, palun tee seda sisestades oma salasõna.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Tundmatu viga salasõna kontrollimisel\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Vale salasõna\"] }] }, { \"locale\": \"fa\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"احراز هویت مورد نیاز است\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"در حال بررسی رمز عبور...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"تأیید\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"رمز عبور\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"لطفاً رمز عبور خود را وارد کنید\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"این عمل نیاز به احراز هویت دارد، لطفاً با وارد کردن رمز عبور خود آن را تأیید کنید.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"رمز عبور اشتباه است\"] }] }, { \"locale\": \"fi_FI\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Tunnistautuminen vaaditaan\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Tarkistetaan salasanaa …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Vahvista\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Salasana\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Kirjoita salasanasi\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tämä toimenpide vaatii tunnistautumisen. Vahvista kirjoittamalla salasanasi.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Tuntematon virhe salasanaa tarkistaessa\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Väärä salasana\"] }] }, { \"locale\": \"fr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentification requise\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Vérification du mot de passe ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmer\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Mot de passe\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Veuillez saisir votre mot de passe\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Cette action nécessite une authentification, veuillez confirmer en saisissant votre mot de passe.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Erreur inconnue lors de la vérification du mot de passe\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Mot de passe incorrect\"] }] }, { \"locale\": \"ga\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Fíordheimhniú ag teastáil\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Ag seiceáil an focal faire …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Deimhnigh\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Pasfhocal\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Cuir isteach do phasfhocal\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Teastaíonn fíordheimhniú don ghníomh seo, deimhnigh é trí do phasfhocal a iontráil.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Earráid anaithnid agus an focal faire á sheiceáil\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Pasfhocal mícheart\"] }] }, { \"locale\": \"gl\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"É necesaria a autenticación\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Comprobando o contrasinal…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contrasinal\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduza o seu contrasinal\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta acción precisa de autenticación, confírmea introducindo o seu contrasinal.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Produciuse un erro descoñecido ao comprobar o contrasinal\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contrasinal incorrecto\"] }] }, { \"locale\": \"hr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Potrebna je autentifikacija\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Provjera lozinke …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potvrdi\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Lozinka\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Molimo unesite vašu lozinku\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ova radnja zahtijeva autentifikaciju, potvrdite je unosom svoje lozinke.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Nepoznata pogreška pri provjeri lozinke\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Pogrešna lozinka\"] }] }, { \"locale\": \"hu_HU\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Azonosítás szükséges\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Jelszó ellenőrzése ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Jóváhagyás\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Jelszó\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Adja meg a jelszavát\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ehhez a tevékenységhez azonosítás szükséges. Kérlek hagyd jóvá a jelszavad megadásával.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Hibás jelszó\"] }] }, { \"locale\": \"id\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentikasi diperlukan\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Memeriksa kata sandi ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Konfirmasi\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Kata sandi\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Silahkan masukan kata sandi Anda\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Aksi ini memerlukan autentikasi, silahkan konfirmasi dengan memasukan kata sandi Anda.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Kata sandi salah\"] }] }, { \"locale\": \"is\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Athuga lykilorð …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Staðfesta\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Staðfestu lykilorðið þitt\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Lykilorð\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Settu inn lykilorðið þitt\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Þessi aðgerð krefst auðkenningar\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Rangt lykilorð\"] }] }, { \"locale\": \"it\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticazione richiesta\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Controllo della password…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Conferma\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Password\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Digita la tua password\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Questa azione richiede l'autenticazione, confermala digitando la tua password.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Errore sconosciuto durante la verifica della password\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Password errata\"] }] }, { \"locale\": \"ja_JP\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"認証が必要です\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"パスワードの確認 …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"確認\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"パスワード\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"パスワードを入力してください\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"この操作には認証が必要です。パスワードを入力してください。\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"パスワードのチェック中に不明なエラーが発生しました\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"間違ったパスワード\"] }] }, { \"locale\": \"kab\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Asesteb yettwasra\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Asenqed n wawal n uɛeddi …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Sentem\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Awal n uɛeddi\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Txil, sekcem-d awal-ik·im n uɛeddi\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tigawt-a tesra asesteb, ttxil-k·m, wekked-itt-id s usekcem n wawal-inek·inem n uɛeddi.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Tuccḍa tarussint imi yessefqad ɣef wawal n uɛeddi\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Awal n uɛeddi d arameɣtu\"] }] }, { \"locale\": \"ko\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"인증 필요 \"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"비밀번호 확인 중 ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"확인\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"비밀번호\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"비밀번호를 입력하세요\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"이 작업은 인증이 필요합니다. 비밀번호를 입력하여 확인하십시오. \"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"비밀번호 확인 중 알 수 없는 오류가 발생했습니다.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"잘못된 비밀번호\"] }] }, { \"locale\": \"lv\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Nepieciešama autentificēšanās\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Pārbauda paroli...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Apstiprināt\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parole\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Lūgums ievadīt savu paroli\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Šai darbībai ir nepieciešama autentificēšanās. Lūgums to apstiprināt ar savas paroles ievadīšanu.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nepareiza parole\"] }] }, { \"locale\": \"mk\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Потребна е автентификација\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Проверка на лозинка …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Потврди\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Лозинка\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Внесете ја вашата лозинка\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Оваа акција бара автентикација, потврдете ја со внесување на вашата лозинка.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Непозната грешка додека се проверува лозинката\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Погрешна лозинка\"] }] }, { \"locale\": \"ms_MY\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Pengesahan diperlukan\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Menyemak kata laluan …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Mengesahkan\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Kata laluan\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Sila masukkan kata laluan anda\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tindakan ini memerlukan pengesahan, sila sahkan dengan memasukkan kata laluan anda.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Kata laluan salah\"] }] }, { \"locale\": \"nb_NO\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Sjekker passord …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bekreft\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Bekreft passordet ditt\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Passord\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vennligst skriv inn passordet ditt\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Denne handlingen krever autentisering\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Feil passord\"] }] }, { \"locale\": \"nl\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authenticatie vereist\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Wachtwoord controleren…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bevestigen\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Wachtwoord\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Voer je wachtwoord in\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Deze actie vereist authenticatie, voer je wachtwoord in.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Onbekende fout bij wachtwoord controleren\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Incorrect wachtwoord\"] }] }, { \"locale\": \"pl\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Sprawdzanie hasła…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potwierdź\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Potwierdź swoje hasło\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Hasło\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Wprowadź swoje hasło\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Wykonanie tej czynności wymaga autoryzacji\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nieprawidłowe hasło\"] }] }, { \"locale\": \"pt_BR\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticação necessária\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando a senha …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Senha\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor, insira sua senha\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta ação precisa de autenticação. Por favor, confirme-a digitando sua senha.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Erro desconhecido ao verificar a senha\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Senha incorreta\"] }] }, { \"locale\": \"pt_PT\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticação necessária\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"A verificar palavra-passe…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Palavra-passe\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduza a sua palavra-passe, por favor\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta ação requer autenticação; confirme-a introduzindo a sua palavra-passe.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Erro desconhecido ao verificar a palavra-passe\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Palavra-passe incorreta\"] }] }, { \"locale\": \"ro\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Se verifică parola ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmare\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirmare parolă\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parolă\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vă rugăm să introduceți parola\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Această acțiune necesită autentificare\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Parolă incorectă\"] }] }, { \"locale\": \"ru\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Требуется аутентификация\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Проверка пароля …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Подтвердить\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Пароль\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Пожалуйста, введите свой пароль\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Это действие требует аутентификации, пожалуйста подтвердите его вводом вашего пароля.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Неизвестная ошибка при проверке пароля\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Неправильный пароль\"] }] }, { \"locale\": \"sk_SK\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Vyžaduje sa autentifikácia\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrola hesla…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potvrdiť\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Heslo\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Zadajte prosím svoje heslo\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Táto akcia vyžaduje overenie, prosím potvrďte ju zadaním vášho hesla.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Neznáma chyba pri overovaní hesla\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nesprávne heslo\"] }] }, { \"locale\": \"sl\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Zahtevana avtentikacija\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Poteka preverjanje gesla ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potrdi\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Geslo\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vpisati je treba geslo\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"To dejanje zahteva preverjanje pristnosti, potrdite ga z vnosom gesla.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Neznana napaka pri preverjanju gesla\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Napačno geslo\"] }] }, { \"locale\": \"sr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Потребна је потврда идентитета\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Проверава се лозинка…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Потврда\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Лозинка\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Молимо вас да унесете своју лозинку\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"За ову акцију је потребна провера идентитета, молимо вас да га потврдите уносом своје лозинке.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Непозната грешка током провере лозинке\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Погрешна лозинка\"] }] }, { \"locale\": \"sv\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentisering krävs\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrollerar lösenord …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bekräfta\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Lösenord\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Ange ditt lösenord\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Den här åtgärden kräver autentisering, bekräfta genom att ange ditt lösenord.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Okänt fel vid kontroll av lösenord\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Fel lösenord\"] }] }, { \"locale\": \"tr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Kimlik doğrulaması gerekli\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Parola denetleniyor…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Parola onayı\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parola\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Lütfen parolanızı yazın\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Bu işlemi yapmak için kimliğinizi doğrulamalısınız. Lütfen parolanızı yazın.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Parola denetlenirken bilinmeyen bir sorun çıktı\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Parola geçersiz\"] }] }, { \"locale\": \"uk\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Потрібна авторизація\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Перевірка паролю ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Підтвердити\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Пароль\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Зазначте ваш пароль\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ця дія вимагає авторизацію, зазначте ваш пароль.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Невідома помилка під час перевірки пароля\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Помилковий пароль\"] }] }, { \"locale\": \"ur_PK\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"تصدیق درکار ہے\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"پاس ورڈ چیک ہو رہا ہے …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"تصدیق کریں\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"پاس ورڈ\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"براہ کرم اپنا پاس ورڈ درج کریں\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"اس عمل کو تصدیق کی ضرورت ہے، براہ کرم پاس ورڈ درج کرکے اس کی تصدیق کریں۔\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"پاس ورڈ چیک کرنے میں نامعلوم خرابی\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"نادرست پاس ورڈ\"] }] }, { \"locale\": \"uz\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentifikatsiya talab qilinadi\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Parol tekshirilmoqda…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Tasdiqlang\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parol\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Iltimos, parolingizni kiriting\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ushbu amaliyot autentifikatsiya talab etadi, parolingizni kiritish orqali buni tasdiqlang.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Parolni tekshirishda noma'lum xatolik yuz berdi\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Parol noto'g'ri \"] }] }, { \"locale\": \"vi\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Yêu cầu xác thực\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Đang kiểm tra mật khẩu ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Chấp nhận\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Mật khẩu\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vui lòng nhập mật khẩu của bạn\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Thao tác này cần xác thực, vui lòng xác nhận bằng cách nhập mật khẩu của bạn.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Mật khẩu sai\"] }] }, { \"locale\": \"zh_CN\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"需要身份验证\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"正在检查密码 …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"确认\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"密码\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"请输入您的密码\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"此操作需要身份验证,请输入密码进行确认。\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"检查密码时出现未知错误\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"密码错误\"] }] }, { \"locale\": \"zh_HK\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"需要驗證\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"正在檢查密碼 …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"確認\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"密碼\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"請輸入您的密碼\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"此操作需要身份驗證,請輸入您的密碼以進行確認。\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"檢查密碼時發生未知錯誤\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"密碼錯誤\"] }] }, { \"locale\": \"zh_TW\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"正在檢查密碼……\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"確認\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"確認您的密碼\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"密碼\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"請輸入您的密碼\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"此動作需要驗證\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"密碼錯誤\"] }] }].map(({ locale, translations }) => gtBuilder.addTranslation(locale, {\n headers: {},\n translations: {\n \"\": Object.fromEntries(translations.map((t2) => [t2.msgid, t2]))\n }\n}));\nconst gt = gtBuilder.build();\ngt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: CC0-1.0\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/password-confirmation\").detectLogLevel().build();\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"PasswordDialog\",\n props: {\n validate: { type: Function }\n },\n emits: [\"close\"],\n setup(__props, { emit: __emit }) {\n const props = __props;\n const emit = __emit;\n onMounted(focusPasswordField);\n const passwordInput = useTemplateRef(\"field\");\n const password = ref(\"\");\n const loading = ref(false);\n const hasError = ref(false);\n const buttons = [{\n label: t(\"Confirm\"),\n type: \"submit\",\n variant: \"primary\",\n callback\n }];\n const helperText = computed(() => {\n if (hasError.value !== false) {\n if (password.value === \"\") {\n return t(\"Please enter your password\");\n }\n switch (hasError.value) {\n case true:\n return t(\"Unknown error while checking password\");\n case 403:\n return t(\"Wrong password\");\n }\n }\n if (loading.value) {\n return t(\"Checking password …\");\n }\n return \"\";\n });\n async function callback() {\n hasError.value = false;\n loading.value = true;\n if (password.value === \"\") {\n hasError.value = true;\n return false;\n }\n try {\n await props.validate(password.value);\n emit(\"close\", true);\n return true;\n } catch (error) {\n if (isAxiosError(error) && error.response?.status === 403) {\n hasError.value = 403;\n } else {\n hasError.value = true;\n }\n logger.error(\"Exception during password confirmation\", { error });\n selectPasswordField();\n return false;\n } finally {\n loading.value = false;\n }\n }\n function focusPasswordField() {\n nextTick(() => {\n passwordInput.value.focus();\n });\n }\n function selectPasswordField() {\n nextTick(() => {\n passwordInput.value.select();\n });\n }\n return (_ctx, _cache) => {\n return openBlock(), createBlock(unref(NcDialog), {\n isForm: \"\",\n buttons,\n name: unref(t)(\"Authentication required\"),\n contentClasses: _ctx.$style.passwordDialog,\n \"onUpdate:open\": _cache[1] || (_cache[1] = ($event) => emit(\"close\", false))\n }, {\n default: withCtx(() => [\n createElementVNode(\"p\", null, toDisplayString(unref(t)(\"This action needs authentication, please confirm it by entering your password.\")), 1),\n createVNode(unref(NcPasswordField), {\n ref: \"field\",\n modelValue: password.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => password.value = $event),\n label: unref(t)(\"Password\"),\n helperText: helperText.value,\n checkPasswordStrength: false,\n error: hasError.value !== false,\n required: \"\"\n }, null, 8, [\"modelValue\", \"label\", \"helperText\", \"error\"])\n ]),\n _: 1\n }, 8, [\"name\", \"contentClasses\"]);\n };\n }\n});\nconst passwordDialog = \"_passwordDialog_joix2_2\";\nconst style0 = {\n passwordDialog\n};\nconst _export_sfc = (sfc, props) => {\n const target = sfc.__vccOpts || sfc;\n for (const [key, val] of props) {\n target[key] = val;\n }\n return target;\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst PasswordDialogVue = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__cssModules\", cssModules]]);\n/*!\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nlet INTERCEPTOR_INITIALIZED = false;\nasync function confirmPassword() {\n if (!isPasswordConfirmationRequired(PwdConfirmationMode.Lax)) {\n return Promise.resolve();\n }\n await promptPassword(async (password) => {\n await _confirmPassword(password);\n });\n}\nasync function _confirmPassword(password) {\n logger.debug(\"Confirming password\");\n const url = generateUrl(\"/login/confirm\");\n const { data } = await axios.post(url, { password });\n window.nc_lastLogin = data.lastLogin;\n logger.debug(\"Password confirmed\");\n}\nlet _passwordDialog;\nlet _dialogCallback;\nasync function promptPassword(validate) {\n _dialogCallback = validate;\n if (!_passwordDialog) {\n _passwordDialog = spawnDialog(PasswordDialogVue, {\n validate(password) {\n return _dialogCallback(password);\n }\n });\n }\n const result = await _passwordDialog;\n _passwordDialog = void 0;\n if (!result) {\n throw new Error(\"Dialog closed\");\n }\n}\nfunction addPasswordConfirmationInterceptors(axios2) {\n if (INTERCEPTOR_INITIALIZED) {\n return;\n }\n INTERCEPTOR_INITIALIZED = true;\n let validatePromise;\n axios2.interceptors.request.use(async (config) => {\n if (config.confirmPassword === void 0) {\n return config;\n }\n if (!isPasswordConfirmationRequired(config.confirmPassword)) {\n return config;\n }\n const { promise, resolve } = Promise.withResolvers();\n promptPassword(async (password) => {\n switch (config.confirmPassword) {\n case PwdConfirmationMode.Lax:\n await _confirmPassword(password);\n resolve(config);\n break;\n case PwdConfirmationMode.Strict:\n validatePromise = Promise.withResolvers();\n config.auth = {\n username: getCurrentUser()?.uid ?? \"\",\n password\n };\n logger.debug(\"Adding auth info to the request\", { config });\n resolve(config);\n return validatePromise.promise;\n }\n });\n return promise;\n });\n axios2.interceptors.response.use(\n (response) => {\n if (response.config.confirmPassword !== PwdConfirmationMode.Strict) {\n return response;\n }\n if (validatePromise === void 0) {\n logger.debug(\"Password confirmation not required\", { response });\n return response;\n }\n logger.debug(\"Password confirmation succeeded\", { response });\n window.nc_lastLogin = Date.now() / 1e3;\n validatePromise.resolve();\n return response;\n },\n (error) => {\n if (error.config?.confirmPassword !== PwdConfirmationMode.Strict) {\n throw error;\n }\n if (validatePromise === void 0) {\n logger.debug(\"Password confirmation not required\", { error });\n throw error;\n }\n logger.debug(\"Password confirmation failed\", { error });\n validatePromise.reject(error);\n logger.debug(\"Triggering new request\", { error });\n return axios2.request(error.config);\n }\n );\n}\nexport {\n PwdConfirmationMode,\n addPasswordConfirmationInterceptors,\n confirmPassword,\n isPasswordConfirmationRequired\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["PwdConfirmationMode","PwdConfirmationMode2","PAGE_LOAD_TIME","isPasswordConfirmationRequired","mode","serverTimeDiff","gtBuilder","getGettextBuilder","locale","translations","t2","gt","t","logger","getLoggerBuilder","_sfc_main","defineComponent","__props","__emit","props","emit","onMounted","focusPasswordField","passwordInput","useTemplateRef","password","ref","loading","hasError","buttons","callback","helperText","computed","error","isAxiosError","selectPasswordField","nextTick","_ctx","_cache","openBlock","createBlock","unref","NcDialog","$event","withCtx","createElementVNode","toDisplayString","createVNode","NcPasswordField","passwordDialog","style0","_export_sfc","sfc","target","key","val","cssModules","PasswordDialogVue","INTERCEPTOR_INITIALIZED","confirmPassword","promptPassword","_confirmPassword","url","generateUrl","data","axios","_passwordDialog","_dialogCallback","validate","spawnDialog","result","addPasswordConfirmationInterceptors","axios2","validatePromise","config","promise","resolve","getCurrentUser","response"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/index-DxnK_Coe.chunk.mjs.map.license b/dist/index-B8CmRwk1.chunk.mjs.map.license similarity index 92% rename from dist/index-DxnK_Coe.chunk.mjs.map.license rename to dist/index-B8CmRwk1.chunk.mjs.map.license index cdf6dd8de66b6..8451a921c2859 100644 --- a/dist/index-DxnK_Coe.chunk.mjs.map.license +++ b/dist/index-B8CmRwk1.chunk.mjs.map.license @@ -3,5 +3,5 @@ SPDX-FileCopyrightText: Nextcloud GmbH and Nextcloud contributors This file is generated from multiple sources. Included packages: - @nextcloud/password-confirmation - - version: 6.0.2 + - version: 6.0.3 - license: MIT diff --git a/dist/index-DxnK_Coe.chunk.mjs b/dist/index-DxnK_Coe.chunk.mjs deleted file mode 100644 index 3660bfc3f788f..0000000000000 --- a/dist/index-DxnK_Coe.chunk.mjs +++ /dev/null @@ -1,2 +0,0 @@ -import{g as T,a as q}from"./index-Bndk0DrU.chunk.mjs";import{i as W,c as z}from"./index-BCebL___.chunk.mjs";import{o as j,g as _}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{s as U,N as S}from"./index-CKn3f84a.chunk.mjs";import{N as V}from"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import{f as L,A as K,v as I,M as A,o as M,g as N,w as O,b as H,t as R,u as m,h as J,r as p,z as Z}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";var o=(s=>(s.Lax="lax",s.Strict="strict",s))(o||{});const G=Date.now();function x(s){if(!window.backendAllowsPasswordConfirmation)return!1;if(s===o.Strict)return!0;const r=G-window.nc_pageLoad*1e3;return Date.now()-(r+window.nc_lastLogin*1e3)>1800*1e3}const F=j().detectLanguage();[{locale:"ar",translations:[{msgid:"Checking password …",msgstr:["يتم التحقق من كلمة المرور..."]},{msgid:"Confirm",msgstr:["تأكيد"]},{msgid:"Confirm your password",msgstr:["تأكيد كلمة المرور"]},{msgid:"Password",msgstr:["كلمة المرور"]},{msgid:"Please enter your password",msgstr:["يرجى إدخال كلمة المرور الخاصة بك"]},{msgid:"This action needs authentication",msgstr:["هذا الإجراء يتطلب التحقق من الهوية"]},{msgid:"Wrong password",msgstr:["كلمة المرور غير صحيحة"]}]},{locale:"ast",translations:[{msgid:"Checking password …",msgstr:["Comprobando la contraseña…"]},{msgid:"Confirm",msgstr:["Confirmación"]},{msgid:"Confirm your password",msgstr:["Confirma la contraseña"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Introduz la contraseña"]},{msgid:"This action needs authentication",msgstr:["Esta aición precisa l'autenticación"]},{msgid:"Wrong password",msgstr:["La contraseña ye incorreuta"]}]},{locale:"az",translations:[{msgid:"Confirm",msgstr:["Təsdiq edin"]},{msgid:"Confirm your password",msgstr:["Parolunuzu təsdiq edin"]},{msgid:"Password",msgstr:["Parol"]},{msgid:"Password confirmation dialog already mounted",msgstr:["Parolun təsdiqi dialoqu artıq quraşdırılıb"]},{msgid:"This action needs authentication",msgstr:["Bu əməliyyat autentifikasiya tələb edir"]},{msgid:"Wrong password",msgstr:["Səhv parol"]}]},{locale:"be",translations:[{msgid:"Checking password …",msgstr:["Праверка пароля…"]},{msgid:"Confirm",msgstr:["Пацвердзіць"]},{msgid:"Confirm your password",msgstr:["Пацвердзіць пароль"]},{msgid:"Password",msgstr:["Пароль"]},{msgid:"Please enter your password",msgstr:["Калі ласка, увядзіце ваш пароль"]},{msgid:"This action needs authentication",msgstr:["Гэта дзеянне патрабуе аўтэнтыфікацыі"]},{msgid:"Wrong password",msgstr:["Памылковы пароль"]}]},{locale:"ca",translations:[{msgid:"Checking password …",msgstr:["S'està comprovant la contrasenya …"]},{msgid:"Confirm",msgstr:["Confirma"]},{msgid:"Confirm your password",msgstr:["Confirmeu la vostra contrasenya"]},{msgid:"Password",msgstr:["Contrasenya"]},{msgid:"Please enter your password",msgstr:["Introduïu la vostra contrasenya"]},{msgid:"This action needs authentication",msgstr:["Aquesta acció necessita autenticació"]},{msgid:"Wrong password",msgstr:["Contrasenya incorrecta"]}]},{locale:"cs_CZ",translations:[{msgid:"Authentication required",msgstr:["Vyžadováno ověření se"]},{msgid:"Checking password …",msgstr:["Ověřování hesla…"]},{msgid:"Confirm",msgstr:["Potvrdit"]},{msgid:"Password",msgstr:["Heslo"]},{msgid:"Please enter your password",msgstr:["Zadejte heslo"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tato akce vyžaduje ověření se – potvrďte ji zadáním svého hesla."]},{msgid:"Unknown error while checking password",msgstr:["Neznámá chyba při kontrolování hesla"]},{msgid:"Wrong password",msgstr:["Nesprávné heslo"]}]},{locale:"da",translations:[{msgid:"Authentication required",msgstr:["Bekræft din identitet"]},{msgid:"Checking password …",msgstr:["Kontrollerer adgangskode …"]},{msgid:"Confirm",msgstr:["Bekræft"]},{msgid:"Password",msgstr:["Adgangskode"]},{msgid:"Please enter your password",msgstr:["Indtast venligst dit kodeord"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Denne handling kræver godkendelse. Indtast din adgangskode for at bekræfte."]},{msgid:"Unknown error while checking password",msgstr:["Ukendt fejl under kontrol af adgangskode"]},{msgid:"Wrong password",msgstr:["forkert Adgangskode"]}]},{locale:"de",translations:[{msgid:"Authentication required",msgstr:["Authentifizierung erforderlich"]},{msgid:"Checking password …",msgstr:["Passwort prüfen  …"]},{msgid:"Confirm",msgstr:["Bestätigen"]},{msgid:"Password",msgstr:["Passwort"]},{msgid:"Please enter your password",msgstr:["Bitte gib dein Passwort ein"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätige diese durch Eingabe deines Passworts."]},{msgid:"Unknown error while checking password",msgstr:["Unbekannter Fehler beim Überprüfen des Passworts"]},{msgid:"Wrong password",msgstr:["Falsches Passwort"]}]},{locale:"de_DE",translations:[{msgid:"Authentication required",msgstr:["Authentifizierung erforderlich"]},{msgid:"Checking password …",msgstr:["Passwort prüfen …"]},{msgid:"Confirm",msgstr:["Bestätigen"]},{msgid:"Password",msgstr:["Passwort"]},{msgid:"Please enter your password",msgstr:["Bitte geben Sie Ihr Passwort ein"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätigen Sie diese durch Eingabe Ihres Passworts."]},{msgid:"Unknown error while checking password",msgstr:["Unbekannter Fehler beim Überprüfen des Passworts"]},{msgid:"Wrong password",msgstr:["Falsches Passwort"]}]},{locale:"el",translations:[{msgid:"Authentication required",msgstr:["Απαιτείται πιστοποίηση"]},{msgid:"Checking password …",msgstr:["Έλεγχος κωδικού πρόσβασης …"]},{msgid:"Confirm",msgstr:["Επιβεβαίωση"]},{msgid:"Password",msgstr:["Συνθηματικό"]},{msgid:"Please enter your password",msgstr:["Παρακαλώ εισάγετε το συνθηματικό σας"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Αυτή η ενέργεια απαιτεί πιστοποίηση. Επιβεβαιώστε την εισάγοντας τον κωδικό πρόσβασής σας."]},{msgid:"Unknown error while checking password",msgstr:["Άγνωστο σφάλμα κατά τον έλεγχο του κωδικού πρόσβασης"]},{msgid:"Wrong password",msgstr:["Λάθος συνθηματικό"]}]},{locale:"en_GB",translations:[{msgid:"Authentication required",msgstr:["Authentication required"]},{msgid:"Checking password …",msgstr:["Checking password …"]},{msgid:"Confirm",msgstr:["Confirm"]},{msgid:"Password",msgstr:["Password"]},{msgid:"Please enter your password",msgstr:["Please enter your password"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["This action needs authentication, please confirm it by entering your password."]},{msgid:"Unknown error while checking password",msgstr:["Unknown error while checking password"]},{msgid:"Wrong password",msgstr:["Wrong password"]}]},{locale:"es",translations:[{msgid:"Authentication required",msgstr:["Se requiere autenticación"]},{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor, Introduzca su contraseña"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta acción requiere autenticación, por favor, confírmela ingresado su contraseña."]},{msgid:"Wrong password",msgstr:["Contraseña errónea"]}]},{locale:"es_AR",translations:[{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Confirm your password",msgstr:["Confirme su contraseña"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor, introduzca su contraseña"]},{msgid:"This action needs authentication",msgstr:["Esta acción necesita autenticación"]},{msgid:"Wrong password",msgstr:["Contraseña incorrecta"]}]},{locale:"es_CO",translations:[{msgid:"Authentication required",msgstr:["Autenticación requerida"]},{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor introduzca su contraseña"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta acción necesita autentificación, por favor confírmela introduciendo su contraseña."]},{msgid:"Wrong password",msgstr:["Contraseña incorrecta"]}]},{locale:"es_MX",translations:[{msgid:"Checking password …",msgstr:["Verificando contraseña …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Confirm your password",msgstr:["Confirme su contraseña"]},{msgid:"Password",msgstr:["Contraseña"]},{msgid:"Please enter your password",msgstr:["Por favor introduzca su contraseña"]},{msgid:"This action needs authentication",msgstr:["Esta acción necesita autenticación"]},{msgid:"Wrong password",msgstr:["Contraseña incorrecta"]}]},{locale:"et_EE",translations:[{msgid:"Authentication required",msgstr:["Autentimine on vajalik"]},{msgid:"Checking password …",msgstr:["Kontrollin salasõna…"]},{msgid:"Confirm",msgstr:["Kinnita"]},{msgid:"Password",msgstr:["Salasõna"]},{msgid:"Please enter your password",msgstr:["Palun sisesta oma salasõna"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["See tegevus eeldab autentimist, palun tee seda sisestades oma salasõna."]},{msgid:"Unknown error while checking password",msgstr:["Tundmatu viga salasõna kontrollimisel"]},{msgid:"Wrong password",msgstr:["Vale salasõna"]}]},{locale:"fa",translations:[{msgid:"Authentication required",msgstr:["احراز هویت مورد نیاز است"]},{msgid:"Checking password …",msgstr:["در حال بررسی رمز عبور..."]},{msgid:"Confirm",msgstr:["تأیید"]},{msgid:"Password",msgstr:["رمز عبور"]},{msgid:"Please enter your password",msgstr:["لطفاً رمز عبور خود را وارد کنید"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["این عمل نیاز به احراز هویت دارد، لطفاً با وارد کردن رمز عبور خود آن را تأیید کنید."]},{msgid:"Wrong password",msgstr:["رمز عبور اشتباه است"]}]},{locale:"fi_FI",translations:[{msgid:"Authentication required",msgstr:["Tunnistautuminen vaaditaan"]},{msgid:"Checking password …",msgstr:["Tarkistetaan salasanaa …"]},{msgid:"Confirm",msgstr:["Vahvista"]},{msgid:"Password",msgstr:["Salasana"]},{msgid:"Please enter your password",msgstr:["Kirjoita salasanasi"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tämä toimenpide vaatii tunnistautumisen. Vahvista kirjoittamalla salasanasi."]},{msgid:"Wrong password",msgstr:["Väärä salasana"]}]},{locale:"fr",translations:[{msgid:"Authentication required",msgstr:["Authentification requise"]},{msgid:"Checking password …",msgstr:["Vérification du mot de passe ..."]},{msgid:"Confirm",msgstr:["Confirmer"]},{msgid:"Password",msgstr:["Mot de passe"]},{msgid:"Please enter your password",msgstr:["Veuillez saisir votre mot de passe"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Cette action nécessite une authentification, veuillez confirmer en saisissant votre mot de passe."]},{msgid:"Unknown error while checking password",msgstr:["Erreur inconnue lors de la vérification du mot de passe"]},{msgid:"Wrong password",msgstr:["Mot de passe incorrect"]}]},{locale:"ga",translations:[{msgid:"Authentication required",msgstr:["Fíordheimhniú ag teastáil"]},{msgid:"Checking password …",msgstr:["Ag seiceáil an focal faire …"]},{msgid:"Confirm",msgstr:["Deimhnigh"]},{msgid:"Password",msgstr:["Pasfhocal"]},{msgid:"Please enter your password",msgstr:["Cuir isteach do phasfhocal"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Teastaíonn fíordheimhniú don ghníomh seo, deimhnigh é trí do phasfhocal a iontráil."]},{msgid:"Unknown error while checking password",msgstr:["Earráid anaithnid agus an focal faire á sheiceáil"]},{msgid:"Wrong password",msgstr:["Pasfhocal mícheart"]}]},{locale:"gl",translations:[{msgid:"Authentication required",msgstr:["É necesaria a autenticación"]},{msgid:"Checking password …",msgstr:["Comprobando o contrasinal…"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Contrasinal"]},{msgid:"Please enter your password",msgstr:["Introduza o seu contrasinal"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta acción precisa de autenticación, confírmea introducindo o seu contrasinal."]},{msgid:"Unknown error while checking password",msgstr:["Produciuse un erro descoñecido ao comprobar o contrasinal"]},{msgid:"Wrong password",msgstr:["Contrasinal incorrecto"]}]},{locale:"hu_HU",translations:[{msgid:"Authentication required",msgstr:["Azonosítás szükséges"]},{msgid:"Checking password …",msgstr:["Jelszó ellenőrzése ..."]},{msgid:"Confirm",msgstr:["Jóváhagyás"]},{msgid:"Password",msgstr:["Jelszó"]},{msgid:"Please enter your password",msgstr:["Adja meg a jelszavát"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ehhez a tevékenységhez azonosítás szükséges. Kérlek hagyd jóvá a jelszavad megadásával."]},{msgid:"Wrong password",msgstr:["Hibás jelszó"]}]},{locale:"id",translations:[{msgid:"Authentication required",msgstr:["Autentikasi diperlukan"]},{msgid:"Checking password …",msgstr:["Memeriksa kata sandi ..."]},{msgid:"Confirm",msgstr:["Konfirmasi"]},{msgid:"Password",msgstr:["Kata sandi"]},{msgid:"Please enter your password",msgstr:["Silahkan masukan kata sandi Anda"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Aksi ini memerlukan autentikasi, silahkan konfirmasi dengan memasukan kata sandi Anda."]},{msgid:"Wrong password",msgstr:["Kata sandi salah"]}]},{locale:"is",translations:[{msgid:"Checking password …",msgstr:["Athuga lykilorð …"]},{msgid:"Confirm",msgstr:["Staðfesta"]},{msgid:"Confirm your password",msgstr:["Staðfestu lykilorðið þitt"]},{msgid:"Password",msgstr:["Lykilorð"]},{msgid:"Please enter your password",msgstr:["Settu inn lykilorðið þitt"]},{msgid:"This action needs authentication",msgstr:["Þessi aðgerð krefst auðkenningar"]},{msgid:"Wrong password",msgstr:["Rangt lykilorð"]}]},{locale:"it",translations:[{msgid:"Checking password …",msgstr:["Controllo della password…"]},{msgid:"Confirm",msgstr:["Conferma"]},{msgid:"Confirm your password",msgstr:["Conferma la tua password"]},{msgid:"Password",msgstr:["Password"]},{msgid:"Please enter your password",msgstr:["Inserisci la tua password"]},{msgid:"This action needs authentication",msgstr:["Questa azione richiede l'autenticazione"]},{msgid:"Wrong password",msgstr:["Password errata"]}]},{locale:"ja_JP",translations:[{msgid:"Authentication required",msgstr:["認証が必要です"]},{msgid:"Checking password …",msgstr:["パスワードの確認 …"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Password",msgstr:["パスワード"]},{msgid:"Please enter your password",msgstr:["パスワードを入力してください"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["この操作には認証が必要です。パスワードを入力して承認してください。"]},{msgid:"Unknown error while checking password",msgstr:["パスワードのチェック中に不明なエラーが発生しました"]},{msgid:"Wrong password",msgstr:["間違ったパスワード"]}]},{locale:"kab",translations:[{msgid:"Authentication required",msgstr:["Asesteb yettwasra"]},{msgid:"Checking password …",msgstr:["Asenqed n wawal n uɛeddi …"]},{msgid:"Confirm",msgstr:["Sentem"]},{msgid:"Password",msgstr:["Awal n uɛeddi"]},{msgid:"Please enter your password",msgstr:["Txil, sekcem-d awal-ik·im n uɛeddi"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tigawt-a tesra asesteb, ttxil-k·m, wekked-itt-id s usekcem n wawal-inek·inem n uɛeddi."]},{msgid:"Wrong password",msgstr:["Awal n uɛeddi d arameɣtu"]}]},{locale:"ko",translations:[{msgid:"Authentication required",msgstr:["인증 필요 "]},{msgid:"Checking password …",msgstr:["비밀번호 확인 중 ..."]},{msgid:"Confirm",msgstr:["확인"]},{msgid:"Password",msgstr:["비밀번호"]},{msgid:"Please enter your password",msgstr:["비밀번호를 입력하세요"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["이 작업은 인증이 필요합니다. 비밀번호를 입력하여 확인하십시오. "]},{msgid:"Wrong password",msgstr:["잘못된 비밀번호"]}]},{locale:"lv",translations:[{msgid:"Authentication required",msgstr:["Nepieciešama autentificēšanās"]},{msgid:"Checking password …",msgstr:["Pārbauda paroli..."]},{msgid:"Confirm",msgstr:["Apstiprināt"]},{msgid:"Password",msgstr:["Parole"]},{msgid:"Please enter your password",msgstr:["Lūgums ievadīt savu paroli"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Šai darbībai ir nepieciešama autentificēšanās. Lūgums to apstiprināt ar savas paroles ievadīšanu."]},{msgid:"Wrong password",msgstr:["Nepareiza parole"]}]},{locale:"mk",translations:[{msgid:"Authentication required",msgstr:["Потребна е автентификација"]},{msgid:"Checking password …",msgstr:["Проверка на лозинка …"]},{msgid:"Confirm",msgstr:["Потврди"]},{msgid:"Password",msgstr:["Лозинка"]},{msgid:"Please enter your password",msgstr:["Внесете ја вашата лозинка"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Оваа акција бара автентикација, потврдете ја со внесување на вашата лозинка."]},{msgid:"Unknown error while checking password",msgstr:["Непозната грешка додека се проверува лозинката"]},{msgid:"Wrong password",msgstr:["Погрешна лозинка"]}]},{locale:"ms_MY",translations:[{msgid:"Authentication required",msgstr:["Pengesahan diperlukan"]},{msgid:"Checking password …",msgstr:["Menyemak kata laluan …"]},{msgid:"Confirm",msgstr:["Mengesahkan"]},{msgid:"Password",msgstr:["Kata laluan"]},{msgid:"Please enter your password",msgstr:["Sila masukkan kata laluan anda"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Tindakan ini memerlukan pengesahan, sila sahkan dengan memasukkan kata laluan anda."]},{msgid:"Wrong password",msgstr:["Kata laluan salah"]}]},{locale:"nb_NO",translations:[{msgid:"Checking password …",msgstr:["Sjekker passord …"]},{msgid:"Confirm",msgstr:["Bekreft"]},{msgid:"Confirm your password",msgstr:["Bekreft passordet ditt"]},{msgid:"Password",msgstr:["Passord"]},{msgid:"Please enter your password",msgstr:["Vennligst skriv inn passordet ditt"]},{msgid:"This action needs authentication",msgstr:["Denne handlingen krever autentisering"]},{msgid:"Wrong password",msgstr:["Feil passord"]}]},{locale:"nl",translations:[{msgid:"Authentication required",msgstr:["Authenticatie vereist"]},{msgid:"Checking password …",msgstr:["Wachtwoord controleren…"]},{msgid:"Confirm",msgstr:["Bevestigen"]},{msgid:"Password",msgstr:["Wachtwoord"]},{msgid:"Please enter your password",msgstr:["Voer je wachtwoord in"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Deze actie vereist authenticatie, voer je wachtwoord in."]},{msgid:"Unknown error while checking password",msgstr:["Onbekende fout bij wachtwoord controleren"]},{msgid:"Wrong password",msgstr:["Incorrect wachtwoord"]}]},{locale:"pl",translations:[{msgid:"Checking password …",msgstr:["Sprawdzanie hasła…"]},{msgid:"Confirm",msgstr:["Potwierdź"]},{msgid:"Confirm your password",msgstr:["Potwierdź swoje hasło"]},{msgid:"Password",msgstr:["Hasło"]},{msgid:"Please enter your password",msgstr:["Wprowadź swoje hasło"]},{msgid:"This action needs authentication",msgstr:["Wykonanie tej czynności wymaga autoryzacji"]},{msgid:"Wrong password",msgstr:["Nieprawidłowe hasło"]}]},{locale:"pt_BR",translations:[{msgid:"Authentication required",msgstr:["Autenticação necessária"]},{msgid:"Checking password …",msgstr:["Verificando a senha …"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Senha"]},{msgid:"Please enter your password",msgstr:["Por favor, insira sua senha"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta ação precisa de autenticação. Por favor, confirme-a digitando sua senha."]},{msgid:"Unknown error while checking password",msgstr:["Erro desconhecido ao verificar a senha"]},{msgid:"Wrong password",msgstr:["Senha incorreta"]}]},{locale:"pt_PT",translations:[{msgid:"Authentication required",msgstr:["Autenticação necessária"]},{msgid:"Checking password …",msgstr:["A verificar palavra-passe…"]},{msgid:"Confirm",msgstr:["Confirmar"]},{msgid:"Password",msgstr:["Palavra-passe"]},{msgid:"Please enter your password",msgstr:["Introduza a sua palavra-passe, por favor"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Esta ação requer autenticação; confirme-a introduzindo a sua palavra-passe."]},{msgid:"Wrong password",msgstr:["Palavra-passe incorreta"]}]},{locale:"ro",translations:[{msgid:"Checking password …",msgstr:["Se verifică parola ..."]},{msgid:"Confirm",msgstr:["Confirmare"]},{msgid:"Confirm your password",msgstr:["Confirmare parolă"]},{msgid:"Password",msgstr:["Parolă"]},{msgid:"Please enter your password",msgstr:["Vă rugăm să introduceți parola"]},{msgid:"This action needs authentication",msgstr:["Această acțiune necesită autentificare"]},{msgid:"Wrong password",msgstr:["Parolă incorectă"]}]},{locale:"ru",translations:[{msgid:"Authentication required",msgstr:["Требуется аутентификация"]},{msgid:"Checking password …",msgstr:["Проверка пароля …"]},{msgid:"Confirm",msgstr:["Подтвердить"]},{msgid:"Password",msgstr:["Пароль"]},{msgid:"Please enter your password",msgstr:["Пожалуйста, введите свой пароль"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Это действие требует аутентификации, пожалуйста подтвердите его вводом вашего пароля."]},{msgid:"Unknown error while checking password",msgstr:["Неизвестная ошибка при проверке пароля"]},{msgid:"Wrong password",msgstr:["Неправильный пароль"]}]},{locale:"sk_SK",translations:[{msgid:"Checking password …",msgstr:["Kontrola hesla..."]},{msgid:"Confirm",msgstr:["Potvrdiť"]},{msgid:"Confirm your password",msgstr:["Potvrďte svoje heslo"]},{msgid:"Password",msgstr:["Heslo"]},{msgid:"Please enter your password",msgstr:["Zadajte prosím svoje heslo"]},{msgid:"This action needs authentication",msgstr:["Táto akcia vyžaduje overenie"]},{msgid:"Wrong password",msgstr:["Nesprávne heslo"]}]},{locale:"sl",translations:[{msgid:"Checking password …",msgstr:["Poteka preverjanje gesla ..."]},{msgid:"Confirm",msgstr:["Potrdi"]},{msgid:"Confirm your password",msgstr:["Potrdi geslo"]},{msgid:"Password",msgstr:["Geslo"]},{msgid:"Please enter your password",msgstr:["Vpisati je treba geslo"]},{msgid:"This action needs authentication",msgstr:["To dejanje zahteva overitev"]},{msgid:"Wrong password",msgstr:["Napačno geslo"]}]},{locale:"sr",translations:[{msgid:"Authentication required",msgstr:["Потребна је потврда идентитета"]},{msgid:"Checking password …",msgstr:["Проверава се лозинка…"]},{msgid:"Confirm",msgstr:["Потврда"]},{msgid:"Password",msgstr:["Лозинка"]},{msgid:"Please enter your password",msgstr:["Молимо вас да унесете своју лозинку"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["За ову акцију је потребна провера идентитета, молимо вас да га потврдите уносом своје лозинке."]},{msgid:"Unknown error while checking password",msgstr:["Непозната грешка током провере лозинке"]},{msgid:"Wrong password",msgstr:["Погрешна лозинка"]}]},{locale:"sv",translations:[{msgid:"Authentication required",msgstr:["Autentisering krävs"]},{msgid:"Checking password …",msgstr:["Kontrollerar lösenord …"]},{msgid:"Confirm",msgstr:["Bekräfta"]},{msgid:"Password",msgstr:["Lösenord"]},{msgid:"Please enter your password",msgstr:["Ange ditt lösenord"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Den här åtgärden kräver autentisering, bekräfta genom att ange ditt lösenord."]},{msgid:"Unknown error while checking password",msgstr:["Okänt fel vid kontroll av lösenord"]},{msgid:"Wrong password",msgstr:["Fel lösenord"]}]},{locale:"tr",translations:[{msgid:"Authentication required",msgstr:["Kimlik doğrulaması gerekli"]},{msgid:"Checking password …",msgstr:["Parola denetleniyor…"]},{msgid:"Confirm",msgstr:["Parola onayı"]},{msgid:"Password",msgstr:["Parola"]},{msgid:"Please enter your password",msgstr:["Lütfen parolanızı yazın"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Bu işlemi yapmak için kimliğinizi doğrulamalısınız. Lütfen parolanızı yazın."]},{msgid:"Unknown error while checking password",msgstr:["Parola denetlenirken bilinmeyen bir sorun çıktı"]},{msgid:"Wrong password",msgstr:["Parola geçersiz"]}]},{locale:"uk",translations:[{msgid:"Authentication required",msgstr:["Потрібна авторизація"]},{msgid:"Checking password …",msgstr:["Перевірка паролю ..."]},{msgid:"Confirm",msgstr:["Підтвердити"]},{msgid:"Password",msgstr:["Пароль"]},{msgid:"Please enter your password",msgstr:["Зазначте ваш пароль"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ця дія вимагає авторизацію, зазначте ваш пароль."]},{msgid:"Wrong password",msgstr:["Помилковий пароль"]}]},{locale:"ur_PK",translations:[{msgid:"Authentication required",msgstr:["تصدیق درکار ہے"]},{msgid:"Checking password …",msgstr:["پاس ورڈ چیک ہو رہا ہے …"]},{msgid:"Confirm",msgstr:["تصدیق کریں"]},{msgid:"Password",msgstr:["پاس ورڈ"]},{msgid:"Please enter your password",msgstr:["براہ کرم اپنا پاس ورڈ درج کریں"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["اس عمل کو تصدیق کی ضرورت ہے، براہ کرم پاس ورڈ درج کرکے اس کی تصدیق کریں۔"]},{msgid:"Unknown error while checking password",msgstr:["پاس ورڈ چیک کرنے میں نامعلوم خرابی"]},{msgid:"Wrong password",msgstr:["نادرست پاس ورڈ"]}]},{locale:"uz",translations:[{msgid:"Authentication required",msgstr:["Autentifikatsiya talab qilinadi"]},{msgid:"Checking password …",msgstr:["Parol tekshirilmoqda…"]},{msgid:"Confirm",msgstr:["Tasdiqlang"]},{msgid:"Password",msgstr:["Parol"]},{msgid:"Please enter your password",msgstr:["Iltimos, parolingizni kiriting"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Ushbu amaliyot autentifikatsiya talab etadi, parolingizni kiritish orqali buni tasdiqlang."]},{msgid:"Unknown error while checking password",msgstr:["Parolni tekshirishda noma'lum xatolik yuz berdi"]},{msgid:"Wrong password",msgstr:["Parol noto'g'ri "]}]},{locale:"vi",translations:[{msgid:"Authentication required",msgstr:["Yêu cầu xác thực"]},{msgid:"Checking password …",msgstr:["Đang kiểm tra mật khẩu ..."]},{msgid:"Confirm",msgstr:["Chấp nhận"]},{msgid:"Password",msgstr:["Mật khẩu"]},{msgid:"Please enter your password",msgstr:["Vui lòng nhập mật khẩu của bạn"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["Thao tác này cần xác thực, vui lòng xác nhận bằng cách nhập mật khẩu của bạn."]},{msgid:"Wrong password",msgstr:["Mật khẩu sai"]}]},{locale:"zh_CN",translations:[{msgid:"Authentication required",msgstr:["需要身份验证"]},{msgid:"Checking password …",msgstr:["正在检查密码 …"]},{msgid:"Confirm",msgstr:["确认"]},{msgid:"Password",msgstr:["密码"]},{msgid:"Please enter your password",msgstr:["请输入您的密码"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["此操作需要身份验证,请输入密码进行确认。"]},{msgid:"Unknown error while checking password",msgstr:["检查密码时出现未知错误"]},{msgid:"Wrong password",msgstr:["密码错误"]}]},{locale:"zh_HK",translations:[{msgid:"Authentication required",msgstr:["需要驗證"]},{msgid:"Checking password …",msgstr:["正在檢查密碼 …"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Password",msgstr:["密碼"]},{msgid:"Please enter your password",msgstr:["請輸入您的密碼"]},{msgid:"This action needs authentication, please confirm it by entering your password.",msgstr:["此操作需要身份驗證,請輸入您的密碼以進行確認。"]},{msgid:"Wrong password",msgstr:["密碼錯誤"]}]},{locale:"zh_TW",translations:[{msgid:"Checking password …",msgstr:["正在檢查密碼……"]},{msgid:"Confirm",msgstr:["確認"]},{msgid:"Confirm your password",msgstr:["確認您的密碼"]},{msgid:"Password",msgstr:["密碼"]},{msgid:"Please enter your password",msgstr:["請輸入您的密碼"]},{msgid:"This action needs authentication",msgstr:["此動作需要驗證"]},{msgid:"Wrong password",msgstr:["密碼錯誤"]}]}].map(({locale:s,translations:r})=>F.addTranslation(s,{headers:{},translations:{"":Object.fromEntries(r.map(u=>[u.msgid,u]))}}));const C=F.build();C.ngettext.bind(C);const e=C.gettext.bind(C),i=T().setApp("@nextcloud/password-confirmation").detectLogLevel().build(),Y=L({__name:"PasswordDialog",props:{validate:{type:Function}},emits:["close"],setup(s,{emit:r}){const u=s,g=r;K(v);const t=I("field"),a=p(""),w=p(!1),n=p(!1),y=[{label:e("Confirm"),type:"submit",variant:"primary",callback:D}],P=Z(()=>{if(n.value!==!1){if(a.value==="")return e("Please enter your password");switch(n.value){case!0:return e("Unknown error while checking password");case 403:return e("Wrong password")}}return w.value?e("Checking password …"):""});async function D(){if(n.value=!1,w.value=!0,a.value==="")return n.value=!0,!1;try{return await u.validate(a.value),g("close",!0),!0}catch(d){return W(d)&&d.response?.status===403?n.value=403:n.value=!0,i.error("Exception during password confirmation",{error:d}),b(),!1}finally{w.value=!1}}function v(){A(()=>{t.value.focus()})}function b(){A(()=>{t.value.select()})}return(d,c)=>(M(),N(m(S),{"is-form":"",buttons:y,name:m(e)("Authentication required"),"content-classes":d.$style.passwordDialog,"onUpdate:open":c[1]||(c[1]=h=>g("close",!1))},{default:O(()=>[H("p",null,R(m(e)("This action needs authentication, please confirm it by entering your password.")),1),J(m(V),{ref:"field",modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=h=>a.value=h),label:m(e)("Password"),"helper-text":P.value,error:n.value!==!1,required:""},null,8,["modelValue","label","helper-text","error"])]),_:1},8,["name","content-classes"]))}}),$="_passwordDialog_joix2_2",Q={passwordDialog:$},X=(s,r)=>{const u=s.__vccOpts||s;for(const[g,t]of r)u[g]=t;return u},uu={$style:Q},su=X(Y,[["__cssModules",uu]]);let B=!1;async function ou(){if(!x(o.Lax))return Promise.resolve();await k(async s=>{await f(s)})}async function f(s){i.debug("Confirming password");const r=_("/login/confirm"),{data:u}=await z.post(r,{password:s});window.nc_lastLogin=u.lastLogin,i.debug("Password confirmed")}let l,E;async function k(s){E=s,l||(l=U(su,{validate(u){return E(u)}}));const r=await l;if(l=void 0,!r)throw new Error("Dialog closed")}function gu(s){if(B)return;B=!0;let r;s.interceptors.request.use(async u=>{if(u.confirmPassword===void 0||!x(u.confirmPassword))return u;const{promise:g,resolve:t}=Promise.withResolvers();return k(async a=>{switch(u.confirmPassword){case o.Lax:await f(a),t(u);break;case o.Strict:return r=Promise.withResolvers(),u.auth={username:q()?.uid??"",password:a},i.debug("Adding auth info to the request",{config:u}),t(u),r.promise}}),g}),s.interceptors.response.use(u=>u.config.confirmPassword!==o.Strict?u:r===void 0?(i.debug("Password confirmation not required",{response:u}),u):(i.debug("Password confirmation succeeded",{response:u}),window.nc_lastLogin=Date.now()/1e3,r.resolve(),u),u=>{if(u.config?.confirmPassword!==o.Strict)throw u;if(r===void 0)throw i.debug("Password confirmation not required",{error:u}),u;return i.debug("Password confirmation failed",{error:u}),r.reject(u),i.debug("Triggering new request",{error:u}),s.request(u.config)})}export{o as P,gu as a,ou as c}; -//# sourceMappingURL=index-DxnK_Coe.chunk.mjs.map diff --git a/dist/index-DxnK_Coe.chunk.mjs.map b/dist/index-DxnK_Coe.chunk.mjs.map deleted file mode 100644 index 0440faed0cd28..0000000000000 --- a/dist/index-DxnK_Coe.chunk.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index-DxnK_Coe.chunk.mjs","sources":["../node_modules/@nextcloud/password-confirmation/dist/index.mjs"],"sourcesContent":["import { getCurrentUser } from \"@nextcloud/auth\";\nimport axios, { isAxiosError } from \"@nextcloud/axios\";\nimport { generateUrl } from \"@nextcloud/router\";\nimport { spawnDialog } from \"@nextcloud/vue/functions/dialog\";\nimport { defineComponent, onMounted, useTemplateRef, ref, computed, nextTick, createBlock, openBlock, unref, withCtx, createElementVNode, createVNode, toDisplayString } from \"vue\";\nimport NcDialog from \"@nextcloud/vue/components/NcDialog\";\nimport NcPasswordField from \"@nextcloud/vue/components/NcPasswordField\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nvar PwdConfirmationMode = /* @__PURE__ */ ((PwdConfirmationMode2) => {\n PwdConfirmationMode2[\"Lax\"] = \"lax\";\n PwdConfirmationMode2[\"Strict\"] = \"strict\";\n return PwdConfirmationMode2;\n})(PwdConfirmationMode || {});\n/*!\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nconst PAGE_LOAD_TIME = Date.now();\nfunction isPasswordConfirmationRequired(mode) {\n if (!window.backendAllowsPasswordConfirmation) {\n return false;\n }\n if (mode === PwdConfirmationMode.Strict) {\n return true;\n }\n const serverTimeDiff = PAGE_LOAD_TIME - window.nc_pageLoad * 1e3;\n const timeSinceLogin = Date.now() - (serverTimeDiff + window.nc_lastLogin * 1e3);\n return timeSinceLogin > 30 * 60 * 1e3;\n}\n/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nconst gtBuilder = getGettextBuilder().detectLanguage();\n[{ \"locale\": \"ar\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"يتم التحقق من كلمة المرور...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"تأكيد\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"تأكيد كلمة المرور\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"كلمة المرور\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"يرجى إدخال كلمة المرور الخاصة بك\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"هذا الإجراء يتطلب التحقق من الهوية\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"كلمة المرور غير صحيحة\"] }] }, { \"locale\": \"ast\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Comprobando la contraseña…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmación\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirma la contraseña\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduz la contraseña\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Esta aición precisa l'autenticación\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"La contraseña ye incorreuta\"] }] }, { \"locale\": \"az\", \"translations\": [{ \"msgid\": \"Confirm\", \"msgstr\": [\"Təsdiq edin\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Parolunuzu təsdiq edin\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parol\"] }, { \"msgid\": \"Password confirmation dialog already mounted\", \"msgstr\": [\"Parolun təsdiqi dialoqu artıq quraşdırılıb\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Bu əməliyyat autentifikasiya tələb edir\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Səhv parol\"] }] }, { \"locale\": \"be\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Праверка пароля…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Пацвердзіць\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Пацвердзіць пароль\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Пароль\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Калі ласка, увядзіце ваш пароль\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Гэта дзеянне патрабуе аўтэнтыфікацыі\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Памылковы пароль\"] }] }, { \"locale\": \"ca\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"S'està comprovant la contrasenya …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirma\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirmeu la vostra contrasenya\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contrasenya\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduïu la vostra contrasenya\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Aquesta acció necessita autenticació\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contrasenya incorrecta\"] }] }, { \"locale\": \"cs_CZ\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Vyžadováno ověření se\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Ověřování hesla…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potvrdit\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Heslo\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Zadejte heslo\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tato akce vyžaduje ověření se – potvrďte ji zadáním svého hesla.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Neznámá chyba při kontrolování hesla\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nesprávné heslo\"] }] }, { \"locale\": \"da\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Bekræft din identitet\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrollerer adgangskode …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bekræft\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Adgangskode\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Indtast venligst dit kodeord\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Denne handling kræver godkendelse. Indtast din adgangskode for at bekræfte.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Ukendt fejl under kontrol af adgangskode\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"forkert Adgangskode\"] }] }, { \"locale\": \"de\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentifizierung erforderlich\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Passwort prüfen  …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bestätigen\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Passwort\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Bitte gib dein Passwort ein\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätige diese durch Eingabe deines Passworts.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Unbekannter Fehler beim Überprüfen des Passworts\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Falsches Passwort\"] }] }, { \"locale\": \"de_DE\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentifizierung erforderlich\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Passwort prüfen …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bestätigen\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Passwort\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Bitte geben Sie Ihr Passwort ein\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Für diese Aktion ist eine Authentifizierung erforderlich. Bitte bestätigen Sie diese durch Eingabe Ihres Passworts.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Unbekannter Fehler beim Überprüfen des Passworts\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Falsches Passwort\"] }] }, { \"locale\": \"el\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Απαιτείται πιστοποίηση\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Έλεγχος κωδικού πρόσβασης …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Επιβεβαίωση\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Συνθηματικό\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Παρακαλώ εισάγετε το συνθηματικό σας\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Αυτή η ενέργεια απαιτεί πιστοποίηση. Επιβεβαιώστε την εισάγοντας τον κωδικό πρόσβασής σας.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Άγνωστο σφάλμα κατά τον έλεγχο του κωδικού πρόσβασης\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Λάθος συνθηματικό\"] }] }, { \"locale\": \"en_GB\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentication required\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Checking password …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirm\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Password\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Please enter your password\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"This action needs authentication, please confirm it by entering your password.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Unknown error while checking password\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Wrong password\"] }] }, { \"locale\": \"es\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Se requiere autenticación\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor, Introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta acción requiere autenticación, por favor, confírmela ingresado su contraseña.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña errónea\"] }] }, { \"locale\": \"es_AR\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirme su contraseña\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor, introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Esta acción necesita autenticación\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña incorrecta\"] }] }, { \"locale\": \"es_CO\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticación requerida\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta acción necesita autentificación, por favor confírmela introduciendo su contraseña.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña incorrecta\"] }] }, { \"locale\": \"es_MX\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando contraseña …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirme su contraseña\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contraseña\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor introduzca su contraseña\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Esta acción necesita autenticación\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contraseña incorrecta\"] }] }, { \"locale\": \"et_EE\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentimine on vajalik\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrollin salasõna…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Kinnita\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Salasõna\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Palun sisesta oma salasõna\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"See tegevus eeldab autentimist, palun tee seda sisestades oma salasõna.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Tundmatu viga salasõna kontrollimisel\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Vale salasõna\"] }] }, { \"locale\": \"fa\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"احراز هویت مورد نیاز است\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"در حال بررسی رمز عبور...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"تأیید\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"رمز عبور\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"لطفاً رمز عبور خود را وارد کنید\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"این عمل نیاز به احراز هویت دارد، لطفاً با وارد کردن رمز عبور خود آن را تأیید کنید.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"رمز عبور اشتباه است\"] }] }, { \"locale\": \"fi_FI\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Tunnistautuminen vaaditaan\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Tarkistetaan salasanaa …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Vahvista\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Salasana\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Kirjoita salasanasi\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tämä toimenpide vaatii tunnistautumisen. Vahvista kirjoittamalla salasanasi.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Väärä salasana\"] }] }, { \"locale\": \"fr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authentification requise\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Vérification du mot de passe ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmer\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Mot de passe\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Veuillez saisir votre mot de passe\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Cette action nécessite une authentification, veuillez confirmer en saisissant votre mot de passe.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Erreur inconnue lors de la vérification du mot de passe\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Mot de passe incorrect\"] }] }, { \"locale\": \"ga\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Fíordheimhniú ag teastáil\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Ag seiceáil an focal faire …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Deimhnigh\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Pasfhocal\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Cuir isteach do phasfhocal\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Teastaíonn fíordheimhniú don ghníomh seo, deimhnigh é trí do phasfhocal a iontráil.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Earráid anaithnid agus an focal faire á sheiceáil\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Pasfhocal mícheart\"] }] }, { \"locale\": \"gl\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"É necesaria a autenticación\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Comprobando o contrasinal…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Contrasinal\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduza o seu contrasinal\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta acción precisa de autenticación, confírmea introducindo o seu contrasinal.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Produciuse un erro descoñecido ao comprobar o contrasinal\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Contrasinal incorrecto\"] }] }, { \"locale\": \"hu_HU\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Azonosítás szükséges\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Jelszó ellenőrzése ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Jóváhagyás\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Jelszó\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Adja meg a jelszavát\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ehhez a tevékenységhez azonosítás szükséges. Kérlek hagyd jóvá a jelszavad megadásával.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Hibás jelszó\"] }] }, { \"locale\": \"id\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentikasi diperlukan\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Memeriksa kata sandi ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Konfirmasi\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Kata sandi\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Silahkan masukan kata sandi Anda\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Aksi ini memerlukan autentikasi, silahkan konfirmasi dengan memasukan kata sandi Anda.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Kata sandi salah\"] }] }, { \"locale\": \"is\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Athuga lykilorð …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Staðfesta\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Staðfestu lykilorðið þitt\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Lykilorð\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Settu inn lykilorðið þitt\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Þessi aðgerð krefst auðkenningar\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Rangt lykilorð\"] }] }, { \"locale\": \"it\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Controllo della password…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Conferma\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Conferma la tua password\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Password\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Inserisci la tua password\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Questa azione richiede l'autenticazione\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Password errata\"] }] }, { \"locale\": \"ja_JP\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"認証が必要です\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"パスワードの確認 …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"確認\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"パスワード\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"パスワードを入力してください\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"この操作には認証が必要です。パスワードを入力して承認してください。\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"パスワードのチェック中に不明なエラーが発生しました\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"間違ったパスワード\"] }] }, { \"locale\": \"kab\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Asesteb yettwasra\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Asenqed n wawal n uɛeddi …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Sentem\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Awal n uɛeddi\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Txil, sekcem-d awal-ik·im n uɛeddi\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tigawt-a tesra asesteb, ttxil-k·m, wekked-itt-id s usekcem n wawal-inek·inem n uɛeddi.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Awal n uɛeddi d arameɣtu\"] }] }, { \"locale\": \"ko\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"인증 필요 \"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"비밀번호 확인 중 ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"확인\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"비밀번호\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"비밀번호를 입력하세요\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"이 작업은 인증이 필요합니다. 비밀번호를 입력하여 확인하십시오. \"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"잘못된 비밀번호\"] }] }, { \"locale\": \"lv\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Nepieciešama autentificēšanās\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Pārbauda paroli...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Apstiprināt\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parole\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Lūgums ievadīt savu paroli\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Šai darbībai ir nepieciešama autentificēšanās. Lūgums to apstiprināt ar savas paroles ievadīšanu.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nepareiza parole\"] }] }, { \"locale\": \"mk\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Потребна е автентификација\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Проверка на лозинка …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Потврди\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Лозинка\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Внесете ја вашата лозинка\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Оваа акција бара автентикација, потврдете ја со внесување на вашата лозинка.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Непозната грешка додека се проверува лозинката\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Погрешна лозинка\"] }] }, { \"locale\": \"ms_MY\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Pengesahan diperlukan\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Menyemak kata laluan …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Mengesahkan\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Kata laluan\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Sila masukkan kata laluan anda\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Tindakan ini memerlukan pengesahan, sila sahkan dengan memasukkan kata laluan anda.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Kata laluan salah\"] }] }, { \"locale\": \"nb_NO\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Sjekker passord …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bekreft\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Bekreft passordet ditt\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Passord\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vennligst skriv inn passordet ditt\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Denne handlingen krever autentisering\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Feil passord\"] }] }, { \"locale\": \"nl\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Authenticatie vereist\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Wachtwoord controleren…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bevestigen\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Wachtwoord\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Voer je wachtwoord in\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Deze actie vereist authenticatie, voer je wachtwoord in.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Onbekende fout bij wachtwoord controleren\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Incorrect wachtwoord\"] }] }, { \"locale\": \"pl\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Sprawdzanie hasła…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potwierdź\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Potwierdź swoje hasło\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Hasło\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Wprowadź swoje hasło\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Wykonanie tej czynności wymaga autoryzacji\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nieprawidłowe hasło\"] }] }, { \"locale\": \"pt_BR\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticação necessária\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Verificando a senha …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Senha\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Por favor, insira sua senha\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta ação precisa de autenticação. Por favor, confirme-a digitando sua senha.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Erro desconhecido ao verificar a senha\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Senha incorreta\"] }] }, { \"locale\": \"pt_PT\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autenticação necessária\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"A verificar palavra-passe…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmar\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Palavra-passe\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Introduza a sua palavra-passe, por favor\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Esta ação requer autenticação; confirme-a introduzindo a sua palavra-passe.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Palavra-passe incorreta\"] }] }, { \"locale\": \"ro\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Se verifică parola ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Confirmare\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Confirmare parolă\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parolă\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vă rugăm să introduceți parola\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Această acțiune necesită autentificare\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Parolă incorectă\"] }] }, { \"locale\": \"ru\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Требуется аутентификация\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Проверка пароля …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Подтвердить\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Пароль\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Пожалуйста, введите свой пароль\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Это действие требует аутентификации, пожалуйста подтвердите его вводом вашего пароля.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Неизвестная ошибка при проверке пароля\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Неправильный пароль\"] }] }, { \"locale\": \"sk_SK\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrola hesla...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potvrdiť\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Potvrďte svoje heslo\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Heslo\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Zadajte prosím svoje heslo\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"Táto akcia vyžaduje overenie\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Nesprávne heslo\"] }] }, { \"locale\": \"sl\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"Poteka preverjanje gesla ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Potrdi\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"Potrdi geslo\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Geslo\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vpisati je treba geslo\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"To dejanje zahteva overitev\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Napačno geslo\"] }] }, { \"locale\": \"sr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Потребна је потврда идентитета\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Проверава се лозинка…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Потврда\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Лозинка\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Молимо вас да унесете своју лозинку\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"За ову акцију је потребна провера идентитета, молимо вас да га потврдите уносом своје лозинке.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Непозната грешка током провере лозинке\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Погрешна лозинка\"] }] }, { \"locale\": \"sv\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentisering krävs\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Kontrollerar lösenord …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Bekräfta\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Lösenord\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Ange ditt lösenord\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Den här åtgärden kräver autentisering, bekräfta genom att ange ditt lösenord.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Okänt fel vid kontroll av lösenord\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Fel lösenord\"] }] }, { \"locale\": \"tr\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Kimlik doğrulaması gerekli\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Parola denetleniyor…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Parola onayı\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parola\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Lütfen parolanızı yazın\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Bu işlemi yapmak için kimliğinizi doğrulamalısınız. Lütfen parolanızı yazın.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Parola denetlenirken bilinmeyen bir sorun çıktı\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Parola geçersiz\"] }] }, { \"locale\": \"uk\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Потрібна авторизація\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Перевірка паролю ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Підтвердити\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Пароль\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Зазначте ваш пароль\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ця дія вимагає авторизацію, зазначте ваш пароль.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Помилковий пароль\"] }] }, { \"locale\": \"ur_PK\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"تصدیق درکار ہے\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"پاس ورڈ چیک ہو رہا ہے …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"تصدیق کریں\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"پاس ورڈ\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"براہ کرم اپنا پاس ورڈ درج کریں\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"اس عمل کو تصدیق کی ضرورت ہے، براہ کرم پاس ورڈ درج کرکے اس کی تصدیق کریں۔\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"پاس ورڈ چیک کرنے میں نامعلوم خرابی\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"نادرست پاس ورڈ\"] }] }, { \"locale\": \"uz\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Autentifikatsiya talab qilinadi\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Parol tekshirilmoqda…\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Tasdiqlang\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Parol\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Iltimos, parolingizni kiriting\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Ushbu amaliyot autentifikatsiya talab etadi, parolingizni kiritish orqali buni tasdiqlang.\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"Parolni tekshirishda noma'lum xatolik yuz berdi\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Parol noto'g'ri \"] }] }, { \"locale\": \"vi\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"Yêu cầu xác thực\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"Đang kiểm tra mật khẩu ...\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"Chấp nhận\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"Mật khẩu\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"Vui lòng nhập mật khẩu của bạn\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"Thao tác này cần xác thực, vui lòng xác nhận bằng cách nhập mật khẩu của bạn.\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"Mật khẩu sai\"] }] }, { \"locale\": \"zh_CN\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"需要身份验证\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"正在检查密码 …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"确认\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"密码\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"请输入您的密码\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"此操作需要身份验证,请输入密码进行确认。\"] }, { \"msgid\": \"Unknown error while checking password\", \"msgstr\": [\"检查密码时出现未知错误\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"密码错误\"] }] }, { \"locale\": \"zh_HK\", \"translations\": [{ \"msgid\": \"Authentication required\", \"msgstr\": [\"需要驗證\"] }, { \"msgid\": \"Checking password …\", \"msgstr\": [\"正在檢查密碼 …\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"確認\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"密碼\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"請輸入您的密碼\"] }, { \"msgid\": \"This action needs authentication, please confirm it by entering your password.\", \"msgstr\": [\"此操作需要身份驗證,請輸入您的密碼以進行確認。\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"密碼錯誤\"] }] }, { \"locale\": \"zh_TW\", \"translations\": [{ \"msgid\": \"Checking password …\", \"msgstr\": [\"正在檢查密碼……\"] }, { \"msgid\": \"Confirm\", \"msgstr\": [\"確認\"] }, { \"msgid\": \"Confirm your password\", \"msgstr\": [\"確認您的密碼\"] }, { \"msgid\": \"Password\", \"msgstr\": [\"密碼\"] }, { \"msgid\": \"Please enter your password\", \"msgstr\": [\"請輸入您的密碼\"] }, { \"msgid\": \"This action needs authentication\", \"msgstr\": [\"此動作需要驗證\"] }, { \"msgid\": \"Wrong password\", \"msgstr\": [\"密碼錯誤\"] }] }].map(({ locale, translations }) => gtBuilder.addTranslation(locale, {\n headers: {},\n translations: {\n \"\": Object.fromEntries(translations.map((t2) => [t2.msgid, t2]))\n }\n}));\nconst gt = gtBuilder.build();\ngt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\n/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: CC0-1.0\n */\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/password-confirmation\").detectLogLevel().build();\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"PasswordDialog\",\n props: {\n validate: { type: Function }\n },\n emits: [\"close\"],\n setup(__props, { emit: __emit }) {\n const props = __props;\n const emit = __emit;\n onMounted(focusPasswordField);\n const passwordInput = useTemplateRef(\"field\");\n const password = ref(\"\");\n const loading = ref(false);\n const hasError = ref(false);\n const buttons = [{\n label: t(\"Confirm\"),\n type: \"submit\",\n variant: \"primary\",\n callback\n }];\n const helperText = computed(() => {\n if (hasError.value !== false) {\n if (password.value === \"\") {\n return t(\"Please enter your password\");\n }\n switch (hasError.value) {\n case true:\n return t(\"Unknown error while checking password\");\n case 403:\n return t(\"Wrong password\");\n }\n }\n if (loading.value) {\n return t(\"Checking password …\");\n }\n return \"\";\n });\n async function callback() {\n hasError.value = false;\n loading.value = true;\n if (password.value === \"\") {\n hasError.value = true;\n return false;\n }\n try {\n await props.validate(password.value);\n emit(\"close\", true);\n return true;\n } catch (error) {\n if (isAxiosError(error) && error.response?.status === 403) {\n hasError.value = 403;\n } else {\n hasError.value = true;\n }\n logger.error(\"Exception during password confirmation\", { error });\n selectPasswordField();\n return false;\n } finally {\n loading.value = false;\n }\n }\n function focusPasswordField() {\n nextTick(() => {\n passwordInput.value.focus();\n });\n }\n function selectPasswordField() {\n nextTick(() => {\n passwordInput.value.select();\n });\n }\n return (_ctx, _cache) => {\n return openBlock(), createBlock(unref(NcDialog), {\n \"is-form\": \"\",\n buttons,\n name: unref(t)(\"Authentication required\"),\n \"content-classes\": _ctx.$style.passwordDialog,\n \"onUpdate:open\": _cache[1] || (_cache[1] = ($event) => emit(\"close\", false))\n }, {\n default: withCtx(() => [\n createElementVNode(\"p\", null, toDisplayString(unref(t)(\"This action needs authentication, please confirm it by entering your password.\")), 1),\n createVNode(unref(NcPasswordField), {\n ref: \"field\",\n modelValue: password.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => password.value = $event),\n label: unref(t)(\"Password\"),\n \"helper-text\": helperText.value,\n error: hasError.value !== false,\n required: \"\"\n }, null, 8, [\"modelValue\", \"label\", \"helper-text\", \"error\"])\n ]),\n _: 1\n }, 8, [\"name\", \"content-classes\"]);\n };\n }\n});\nconst passwordDialog = \"_passwordDialog_joix2_2\";\nconst style0 = {\n passwordDialog\n};\nconst _export_sfc = (sfc, props) => {\n const target = sfc.__vccOpts || sfc;\n for (const [key, val] of props) {\n target[key] = val;\n }\n return target;\n};\nconst cssModules = {\n \"$style\": style0\n};\nconst PasswordDialogVue = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__cssModules\", cssModules]]);\n/*!\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: MIT\n */\nlet INTERCEPTOR_INITIALIZED = false;\nasync function confirmPassword() {\n if (!isPasswordConfirmationRequired(PwdConfirmationMode.Lax)) {\n return Promise.resolve();\n }\n await promptPassword(async (password) => {\n await _confirmPassword(password);\n });\n}\nasync function _confirmPassword(password) {\n logger.debug(\"Confirming password\");\n const url = generateUrl(\"/login/confirm\");\n const { data } = await axios.post(url, { password });\n window.nc_lastLogin = data.lastLogin;\n logger.debug(\"Password confirmed\");\n}\nlet _passwordDialog;\nlet _dialogCallback;\nasync function promptPassword(validate) {\n _dialogCallback = validate;\n if (!_passwordDialog) {\n _passwordDialog = spawnDialog(PasswordDialogVue, {\n validate(password) {\n return _dialogCallback(password);\n }\n });\n }\n const result = await _passwordDialog;\n _passwordDialog = void 0;\n if (!result) {\n throw new Error(\"Dialog closed\");\n }\n}\nfunction addPasswordConfirmationInterceptors(axios2) {\n if (INTERCEPTOR_INITIALIZED) {\n return;\n }\n INTERCEPTOR_INITIALIZED = true;\n let validatePromise;\n axios2.interceptors.request.use(async (config) => {\n if (config.confirmPassword === void 0) {\n return config;\n }\n if (!isPasswordConfirmationRequired(config.confirmPassword)) {\n return config;\n }\n const { promise, resolve } = Promise.withResolvers();\n promptPassword(async (password) => {\n switch (config.confirmPassword) {\n case PwdConfirmationMode.Lax:\n await _confirmPassword(password);\n resolve(config);\n break;\n case PwdConfirmationMode.Strict:\n validatePromise = Promise.withResolvers();\n config.auth = {\n username: getCurrentUser()?.uid ?? \"\",\n password\n };\n logger.debug(\"Adding auth info to the request\", { config });\n resolve(config);\n return validatePromise.promise;\n }\n });\n return promise;\n });\n axios2.interceptors.response.use(\n (response) => {\n if (response.config.confirmPassword !== PwdConfirmationMode.Strict) {\n return response;\n }\n if (validatePromise === void 0) {\n logger.debug(\"Password confirmation not required\", { response });\n return response;\n }\n logger.debug(\"Password confirmation succeeded\", { response });\n window.nc_lastLogin = Date.now() / 1e3;\n validatePromise.resolve();\n return response;\n },\n (error) => {\n if (error.config?.confirmPassword !== PwdConfirmationMode.Strict) {\n throw error;\n }\n if (validatePromise === void 0) {\n logger.debug(\"Password confirmation not required\", { error });\n throw error;\n }\n logger.debug(\"Password confirmation failed\", { error });\n validatePromise.reject(error);\n logger.debug(\"Triggering new request\", { error });\n return axios2.request(error.config);\n }\n );\n}\nexport {\n PwdConfirmationMode,\n addPasswordConfirmationInterceptors,\n confirmPassword,\n isPasswordConfirmationRequired\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["PwdConfirmationMode","PwdConfirmationMode2","PAGE_LOAD_TIME","isPasswordConfirmationRequired","mode","serverTimeDiff","gtBuilder","getGettextBuilder","locale","translations","t2","gt","t","logger","getLoggerBuilder","_sfc_main","defineComponent","__props","__emit","props","emit","onMounted","focusPasswordField","passwordInput","useTemplateRef","password","ref","loading","hasError","buttons","callback","helperText","computed","error","isAxiosError","selectPasswordField","nextTick","_ctx","_cache","openBlock","createBlock","unref","NcDialog","$event","withCtx","createElementVNode","toDisplayString","createVNode","NcPasswordField","passwordDialog","style0","_export_sfc","sfc","target","key","val","cssModules","PasswordDialogVue","INTERCEPTOR_INITIALIZED","confirmPassword","promptPassword","_confirmPassword","url","generateUrl","data","axios","_passwordDialog","_dialogCallback","validate","spawnDialog","result","addPasswordConfirmationInterceptors","axios2","validatePromise","config","promise","resolve","getCurrentUser","response"],"mappings":"kcAaG,IAACA,GAAwCC,IAC1CA,EAAqB,IAAS,MAC9BA,EAAqB,OAAY,SAC1BA,IACND,GAAuB,CAAA,CAAE,EAK5B,MAAME,EAAiB,KAAK,IAAG,EAC/B,SAASC,EAA+BC,EAAM,CAC5C,GAAI,CAAC,OAAO,kCACV,MAAO,GAET,GAAIA,IAASJ,EAAoB,OAC/B,MAAO,GAET,MAAMK,EAAiBH,EAAiB,OAAO,YAAc,IAE7D,OADuB,KAAK,IAAG,GAAMG,EAAiB,OAAO,aAAe,KACpD,KAAU,GACpC,CAKA,MAAMC,EAAYC,EAAiB,EAAG,eAAc,EACpD,CAAC,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,8BAA8B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,mBAAmB,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAkC,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAuB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,MAAO,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,cAAc,GAAK,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAqC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,6BAA6B,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,GAAK,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,+CAAgD,OAAU,CAAC,4CAA4C,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAAyC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,YAAY,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,kBAAkB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,oBAAoB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,iCAAiC,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,sCAAsC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,iCAAiC,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,iCAAiC,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,sCAAsC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAAwB,EAAG,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,kBAAkB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,eAAe,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,kEAAkE,GAAK,CAAE,MAAS,wCAAyC,OAAU,CAAC,sCAAsC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAiB,EAAG,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,4BAA4B,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,8BAA8B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,6EAA6E,GAAK,CAAE,MAAS,wCAAyC,OAAU,CAAC,0CAA0C,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAqB,EAAG,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,gCAAgC,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,oBAAoB,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,6BAA6B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,iHAAiH,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,kDAAkD,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAmB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,gCAAgC,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,mBAAmB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAkC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,qHAAqH,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,kDAAkD,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAmB,CAAC,CAAE,GAAK,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,6BAA6B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,sCAAsC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,4FAA4F,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,sDAAsD,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAmB,CAAC,CAAE,GAAK,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,qBAAqB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,SAAS,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,4BAA4B,GAAK,CAAE,MAAS,iFAAkF,OAAU,CAAC,gFAAgF,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAuC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAgB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,2BAA2B,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,qCAAqC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,oFAAoF,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAoB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,qCAAqC,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAuB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,yFAAyF,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAuB,CAAC,CAAE,GAAK,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAuB,EAAG,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,sBAAsB,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,yEAAyE,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAuC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,eAAe,EAAG,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,iCAAiC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,oFAAoF,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAqB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,qBAAqB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,8EAA8E,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAgB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,kCAAkC,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,cAAc,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,mGAAmG,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,yDAAyD,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAAwB,CAAC,CAAE,GAAK,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,2BAA2B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,8BAA8B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,qFAAqF,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,mDAAmD,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAoB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,6BAA6B,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,6BAA6B,GAAK,CAAE,MAAS,iFAAkF,OAAU,CAAC,iFAAiF,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,2DAA2D,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAAwB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,sBAAsB,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,yFAAyF,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,cAAc,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAkC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,wFAAwF,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,mBAAmB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,2BAA2B,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,2BAA2B,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,kCAAkC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAgB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,2BAA2B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,2BAA2B,GAAK,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAAyC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAiB,EAAG,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,YAAY,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,IAAI,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,gBAAgB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,mCAAmC,GAAK,CAAE,MAAS,wCAAyC,OAAU,CAAC,2BAA2B,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,WAAW,EAAG,CAAC,EAAI,CAAE,OAAU,MAAO,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,mBAAmB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,eAAe,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,wFAAwF,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA0B,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,QAAQ,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,eAAe,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,IAAI,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,MAAM,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,sCAAsC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,UAAU,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,+BAA+B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,oBAAoB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,mGAAmG,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,SAAS,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,2BAA2B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,8EAA8E,GAAK,CAAE,MAAS,wCAAyC,OAAU,CAAC,gDAAgD,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,EAAG,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,aAAa,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAgC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,qFAAqF,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAmB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,mBAAmB,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAuC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,cAAc,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,0DAA0D,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,2CAA2C,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAsB,CAAC,CAAE,GAAK,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,oBAAoB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,4CAA4C,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAqB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,6BAA6B,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,+EAA+E,GAAK,CAAE,MAAS,wCAAyC,OAAU,CAAC,wCAAwC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAiB,EAAG,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,4BAA4B,GAAK,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,eAAe,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA0C,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,6EAA6E,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAAyB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,mBAAmB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAgC,GAAK,CAAE,MAAS,mCAAoC,OAAU,CAAC,wCAAwC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,0BAA0B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,mBAAmB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,iCAAiC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,uFAAuF,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,wCAAwC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAqB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,mBAAmB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,wBAAyB,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,8BAA8B,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAiB,EAAG,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,8BAA8B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,QAAQ,GAAK,CAAE,MAAS,wBAAyB,OAAU,CAAC,cAAc,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,wBAAwB,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,6BAA6B,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,eAAe,CAAC,CAAE,GAAK,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,gCAAgC,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,SAAS,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,qCAAqC,GAAK,CAAE,MAAS,iFAAkF,OAAU,CAAC,gGAAgG,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,wCAAwC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,qBAAqB,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,UAAU,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,oBAAoB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,+EAA+E,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,oCAAoC,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,cAAc,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,cAAc,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,8EAA8E,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAiD,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAiB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,qBAAqB,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,kDAAkD,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAmB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,gBAAgB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAgC,GAAK,CAAE,MAAS,iFAAkF,OAAU,CAAC,0EAA0E,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,oCAAoC,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAgB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,iCAAiC,GAAK,CAAE,MAAS,sBAAuB,OAAU,CAAC,uBAAuB,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,YAAY,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,OAAO,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAgC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,4FAA4F,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAiD,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAkB,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,KAAM,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,kBAAkB,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,4BAA4B,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,WAAW,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAgC,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,+EAA+E,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,cAAc,CAAC,CAAE,GAAK,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,IAAI,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,IAAI,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,iFAAkF,OAAU,CAAC,sBAAsB,CAAC,EAAI,CAAE,MAAS,wCAAyC,OAAU,CAAC,aAAa,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,MAAM,CAAC,CAAE,GAAK,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,0BAA2B,OAAU,CAAC,MAAM,CAAC,EAAI,CAAE,MAAS,sBAAuB,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,IAAI,GAAK,CAAE,MAAS,WAAY,OAAU,CAAC,IAAI,CAAC,EAAI,CAAE,MAAS,6BAA8B,OAAU,CAAC,SAAS,GAAK,CAAE,MAAS,iFAAkF,OAAU,CAAC,yBAAyB,CAAC,EAAI,CAAE,MAAS,iBAAkB,OAAU,CAAC,MAAM,CAAC,CAAE,CAAC,EAAI,CAAE,OAAU,QAAS,aAAgB,CAAC,CAAE,MAAS,sBAAuB,OAAU,CAAC,UAAU,CAAC,EAAI,CAAE,MAAS,UAAW,OAAU,CAAC,IAAI,GAAK,CAAE,MAAS,wBAAyB,OAAU,CAAC,QAAQ,CAAC,EAAI,CAAE,MAAS,WAAY,OAAU,CAAC,IAAI,GAAK,CAAE,MAAS,6BAA8B,OAAU,CAAC,SAAS,CAAC,EAAI,CAAE,MAAS,mCAAoC,OAAU,CAAC,SAAS,GAAK,CAAE,MAAS,iBAAkB,OAAU,CAAC,MAAM,CAAC,CAAE,CAAC,CAAE,EAAE,IAAI,CAAC,CAAE,OAAAC,EAAQ,aAAAC,CAAY,IAAOH,EAAU,eAAeE,EAAQ,CAC3y+B,QAAS,CAAA,EACT,aAAc,CACZ,GAAI,OAAO,YAAYC,EAAa,IAAKC,GAAO,CAACA,EAAG,MAAOA,CAAE,CAAC,CAAC,CACnE,CACA,CAAC,CAAC,EACF,MAAMC,EAAKL,EAAU,MAAK,EAC1BK,EAAG,SAAS,KAAKA,CAAE,EACnB,MAAMC,EAAID,EAAG,QAAQ,KAAKA,CAAE,EAKtBE,EAASC,EAAgB,EAAG,OAAO,kCAAkC,EAAE,eAAc,EAAG,MAAK,EAC7FC,EAA4BC,EAAgB,CAChD,OAAQ,iBACR,MAAO,CACL,SAAU,CAAE,KAAM,QAAQ,CAC9B,EACE,MAAO,CAAC,OAAO,EACf,MAAMC,EAAS,CAAE,KAAMC,CAAM,EAAI,CAC/B,MAAMC,EAAQF,EACRG,EAAOF,EACbG,EAAUC,CAAkB,EAC5B,MAAMC,EAAgBC,EAAe,OAAO,EACtCC,EAAWC,EAAI,EAAE,EACjBC,EAAUD,EAAI,EAAK,EACnBE,EAAWF,EAAI,EAAK,EACpBG,EAAU,CAAC,CACf,MAAOjB,EAAE,SAAS,EAClB,KAAM,SACN,QAAS,UACT,SAAAkB,CACN,CAAK,EACKC,EAAaC,EAAS,IAAM,CAChC,GAAIJ,EAAS,QAAU,GAAO,CAC5B,GAAIH,EAAS,QAAU,GACrB,OAAOb,EAAE,4BAA4B,EAEvC,OAAQgB,EAAS,MAAK,CACpB,IAAK,GACH,OAAOhB,EAAE,uCAAuC,EAClD,IAAK,KACH,OAAOA,EAAE,gBAAgB,CACrC,CACM,CACA,OAAIe,EAAQ,MACHf,EAAE,qBAAqB,EAEzB,EACT,CAAC,EACD,eAAekB,GAAW,CAGxB,GAFAF,EAAS,MAAQ,GACjBD,EAAQ,MAAQ,GACZF,EAAS,QAAU,GACrB,OAAAG,EAAS,MAAQ,GACV,GAET,GAAI,CACF,OAAA,MAAMT,EAAM,SAASM,EAAS,KAAK,EACnCL,EAAK,QAAS,EAAI,EACX,EACT,OAASa,EAAO,CACd,OAAIC,EAAaD,CAAK,GAAKA,EAAM,UAAU,SAAW,IACpDL,EAAS,MAAQ,IAEjBA,EAAS,MAAQ,GAEnBf,EAAO,MAAM,yCAA0C,CAAE,MAAAoB,CAAK,CAAE,EAChEE,EAAmB,EACZ,EACT,QAAA,CACER,EAAQ,MAAQ,EAClB,CACF,CACA,SAASL,GAAqB,CAC5Bc,EAAS,IAAM,CACbb,EAAc,MAAM,MAAK,CAC3B,CAAC,CACH,CACA,SAASY,GAAsB,CAC7BC,EAAS,IAAM,CACbb,EAAc,MAAM,OAAM,CAC5B,CAAC,CACH,CACA,MAAO,CAACc,EAAMC,KACLC,EAAS,EAAIC,EAAYC,EAAMC,CAAQ,EAAG,CAC/C,UAAW,GACX,QAAAb,EACA,KAAMY,EAAM7B,CAAC,EAAE,yBAAyB,EACxC,kBAAmByB,EAAK,OAAO,eAC/B,gBAAiBC,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKK,GAAWvB,EAAK,QAAS,EAAK,EAClF,EAAS,CACD,QAASwB,EAAQ,IAAM,CACrBC,EAAmB,IAAK,KAAMC,EAAgBL,EAAM7B,CAAC,EAAE,gFAAgF,CAAC,EAAG,CAAC,EAC5ImC,EAAYN,EAAMO,CAAe,EAAG,CAClC,IAAK,QACL,WAAYvB,EAAS,MACrB,sBAAuBa,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKK,GAAWlB,EAAS,MAAQkB,GAC9E,MAAOF,EAAM7B,CAAC,EAAE,UAAU,EAC1B,cAAemB,EAAW,MAC1B,MAAOH,EAAS,QAAU,GAC1B,SAAU,EACtB,EAAa,KAAM,EAAG,CAAC,aAAc,QAAS,cAAe,OAAO,CAAC,CACrE,CAAS,EACD,EAAG,CACX,EAAS,EAAG,CAAC,OAAQ,iBAAiB,CAAC,EAErC,CACF,CAAC,EACKqB,EAAiB,0BACjBC,EAAS,CACb,eAAAD,CACF,EACME,EAAc,CAACC,EAAKjC,IAAU,CAClC,MAAMkC,EAASD,EAAI,WAAaA,EAChC,SAAW,CAACE,EAAKC,CAAG,IAAKpC,EACvBkC,EAAOC,CAAG,EAAIC,EAEhB,OAAOF,CACT,EACMG,GAAa,CACjB,OAAUN,CACZ,EACMO,GAAoCN,EAAYpC,EAAW,CAAC,CAAC,eAAgByC,EAAU,CAAC,CAAC,EAK/F,IAAIE,EAA0B,GAC9B,eAAeC,IAAkB,CAC/B,GAAI,CAACxD,EAA+BH,EAAoB,GAAG,EACzD,OAAO,QAAQ,QAAO,EAExB,MAAM4D,EAAe,MAAOnC,GAAa,CACvC,MAAMoC,EAAiBpC,CAAQ,CACjC,CAAC,CACH,CACA,eAAeoC,EAAiBpC,EAAU,CACxCZ,EAAO,MAAM,qBAAqB,EAClC,MAAMiD,EAAMC,EAAY,gBAAgB,EAClC,CAAE,KAAAC,CAAI,EAAK,MAAMC,EAAM,KAAKH,EAAK,CAAE,SAAArC,EAAU,EACnD,OAAO,aAAeuC,EAAK,UAC3BnD,EAAO,MAAM,oBAAoB,CACnC,CACA,IAAIqD,EACAC,EACJ,eAAeP,EAAeQ,EAAU,CACtCD,EAAkBC,EACbF,IACHA,EAAkBG,EAAYZ,GAAmB,CAC/C,SAAShC,EAAU,CACjB,OAAO0C,EAAgB1C,CAAQ,CACjC,CACN,CAAK,GAEH,MAAM6C,EAAS,MAAMJ,EAErB,GADAA,EAAkB,OACd,CAACI,EACH,MAAM,IAAI,MAAM,eAAe,CAEnC,CACA,SAASC,GAAoCC,EAAQ,CACnD,GAAId,EACF,OAEFA,EAA0B,GAC1B,IAAIe,EACJD,EAAO,aAAa,QAAQ,IAAI,MAAOE,GAAW,CAIhD,GAHIA,EAAO,kBAAoB,QAG3B,CAACvE,EAA+BuE,EAAO,eAAe,EACxD,OAAOA,EAET,KAAM,CAAE,QAAAC,EAAS,QAAAC,GAAY,QAAQ,cAAa,EAClD,OAAAhB,EAAe,MAAOnC,GAAa,CACjC,OAAQiD,EAAO,gBAAe,CAC5B,KAAK1E,EAAoB,IACvB,MAAM6D,EAAiBpC,CAAQ,EAC/BmD,EAAQF,CAAM,EACd,MACF,KAAK1E,EAAoB,OACvB,OAAAyE,EAAkB,QAAQ,cAAa,EACvCC,EAAO,KAAO,CACZ,SAAUG,KAAkB,KAAO,GACnC,SAAApD,CACZ,EACUZ,EAAO,MAAM,kCAAmC,CAAE,OAAA6D,CAAM,CAAE,EAC1DE,EAAQF,CAAM,EACPD,EAAgB,OACjC,CACI,CAAC,EACME,CACT,CAAC,EACDH,EAAO,aAAa,SAAS,IAC1BM,GACKA,EAAS,OAAO,kBAAoB9E,EAAoB,OACnD8E,EAELL,IAAoB,QACtB5D,EAAO,MAAM,qCAAsC,CAAE,SAAAiE,CAAQ,CAAE,EACxDA,IAETjE,EAAO,MAAM,kCAAmC,CAAE,SAAAiE,CAAQ,CAAE,EAC5D,OAAO,aAAe,KAAK,IAAG,EAAK,IACnCL,EAAgB,QAAO,EAChBK,GAER7C,GAAU,CACT,GAAIA,EAAM,QAAQ,kBAAoBjC,EAAoB,OACxD,MAAMiC,EAER,GAAIwC,IAAoB,OACtB,MAAA5D,EAAO,MAAM,qCAAsC,CAAE,MAAAoB,CAAK,CAAE,EACtDA,EAER,OAAApB,EAAO,MAAM,+BAAgC,CAAE,MAAAoB,CAAK,CAAE,EACtDwC,EAAgB,OAAOxC,CAAK,EAC5BpB,EAAO,MAAM,yBAA0B,CAAE,MAAAoB,CAAK,CAAE,EACzCuC,EAAO,QAAQvC,EAAM,MAAM,CACpC,CACJ,CACA","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/sharebymail-admin-settings.mjs b/dist/sharebymail-admin-settings.mjs index c40b75c442f92..1ebfe53a9f9e8 100644 --- a/dist/sharebymail-admin-settings.mjs +++ b/dist/sharebymail-admin-settings.mjs @@ -1,2 +1,2 @@ -import{i as p,o as u,g as b,w as i,h as l,j as m,t as d,k as f}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{c as w}from"./index-BCebL___.chunk.mjs";import{a as g}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{a as S,l as c}from"./index-Ma7sfat2.chunk.mjs";import{t as h}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as I}from"./index-DxnK_Coe.chunk.mjs";import{b as k}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{N as M}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{N}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{g as R}from"./index-Bndk0DrU.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";const T=R().detectLogLevel().setApp("sharebymail").build(),V={name:"AdminSettings",components:{NcCheckboxRadioSwitch:M,NcSettingsSection:N},setup(){return{t:h}},data(){return{sendPasswordMail:c("sharebymail","sendPasswordMail"),replyToInitiator:c("sharebymail","replyToInitiator")}},watch:{sendPasswordMail(e){this.update("sendpasswordmail",e)},replyToInitiator(e){this.update("replyToInitiator",e)}},methods:{async update(e,a){await I();const s=k("/apps/provisioning_api/api/v1/config/apps/{appId}/{key}",{appId:"sharebymail",key:e}),o=a?"yes":"no";try{const{data:t}=await w.post(s,{value:o});this.handleResponse({status:t.ocs?.meta?.status})}catch(t){this.handleResponse({errorMessage:h("sharebymail","Unable to update share by mail config"),error:t})}},async handleResponse({status:e,errorMessage:a,error:s}){e!=="ok"&&(g(a),T.error(a,{error:s}))}}};function v(e,a,s,o,t,x){const n=p("NcCheckboxRadioSwitch"),y=p("NcSettingsSection");return u(),b(y,{name:o.t("sharebymail","Share by mail"),description:o.t("sharebymail","Allows people to share a personalized link to a file or folder by putting in an email address.")},{default:i(()=>[l(n,{modelValue:t.sendPasswordMail,"onUpdate:modelValue":a[0]||(a[0]=r=>t.sendPasswordMail=r),type:"switch"},{default:i(()=>[m(d(o.t("sharebymail","Send password by mail")),1)]),_:1},8,["modelValue"]),l(n,{modelValue:t.replyToInitiator,"onUpdate:modelValue":a[1]||(a[1]=r=>t.replyToInitiator=r),type:"switch"},{default:i(()=>[m(d(o.t("sharebymail","Reply to initiator")),1)]),_:1},8,["modelValue"])]),_:1},8,["name","description"])}const P=S(V,[["render",v]]),_=f(P);_.mount("#vue-admin-sharebymail"); +import{i as p,o as u,g as b,w as i,h as l,j as m,t as d,k as f}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{c as w}from"./index-BCebL___.chunk.mjs";import{a as g}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{a as S,l as c}from"./index-Ma7sfat2.chunk.mjs";import{t as h}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as I}from"./index-B8CmRwk1.chunk.mjs";import{b as k}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import{N as M}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import{N}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{g as R}from"./index-Bndk0DrU.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";const T=R().detectLogLevel().setApp("sharebymail").build(),V={name:"AdminSettings",components:{NcCheckboxRadioSwitch:M,NcSettingsSection:N},setup(){return{t:h}},data(){return{sendPasswordMail:c("sharebymail","sendPasswordMail"),replyToInitiator:c("sharebymail","replyToInitiator")}},watch:{sendPasswordMail(e){this.update("sendpasswordmail",e)},replyToInitiator(e){this.update("replyToInitiator",e)}},methods:{async update(e,a){await I();const s=k("/apps/provisioning_api/api/v1/config/apps/{appId}/{key}",{appId:"sharebymail",key:e}),o=a?"yes":"no";try{const{data:t}=await w.post(s,{value:o});this.handleResponse({status:t.ocs?.meta?.status})}catch(t){this.handleResponse({errorMessage:h("sharebymail","Unable to update share by mail config"),error:t})}},async handleResponse({status:e,errorMessage:a,error:s}){e!=="ok"&&(g(a),T.error(a,{error:s}))}}};function v(e,a,s,o,t,x){const n=p("NcCheckboxRadioSwitch"),y=p("NcSettingsSection");return u(),b(y,{name:o.t("sharebymail","Share by mail"),description:o.t("sharebymail","Allows people to share a personalized link to a file or folder by putting in an email address.")},{default:i(()=>[l(n,{modelValue:t.sendPasswordMail,"onUpdate:modelValue":a[0]||(a[0]=r=>t.sendPasswordMail=r),type:"switch"},{default:i(()=>[m(d(o.t("sharebymail","Send password by mail")),1)]),_:1},8,["modelValue"]),l(n,{modelValue:t.replyToInitiator,"onUpdate:modelValue":a[1]||(a[1]=r=>t.replyToInitiator=r),type:"switch"},{default:i(()=>[m(d(o.t("sharebymail","Reply to initiator")),1)]),_:1},8,["modelValue"])]),_:1},8,["name","description"])}const P=S(V,[["render",v]]),_=f(P);_.mount("#vue-admin-sharebymail"); //# sourceMappingURL=sharebymail-admin-settings.mjs.map diff --git a/dist/systemtags-admin.mjs b/dist/systemtags-admin.mjs index 6eccaed087271..8988f895f3f67 100644 --- a/dist/systemtags-admin.mjs +++ b/dist/systemtags-admin.mjs @@ -1,2 +1,2 @@ -import{f as P,v as J,s as K,o as _,c as k,b as g,t as n,u as t,h as b,w as V,j as I,g as T,F as Q,e as W,H as X,r as f,z as h,N as Y,k as Z}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{d as R,a as U}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{t as e}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{N as j}from"./Web-BMpaLM07.chunk.mjs";import{N as $}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{N}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import{N as ee}from"./NcSelect-DLheQ2yp-DujwD-Lb.chunk.mjs";import{N as ae}from"./index-BS5_ykH2.chunk.mjs";import{_ as te}from"./TrashCanOutline-CIT5iIpm.chunk.mjs";import{c as se,d as le,u as ie,a as oe,b as ue,l as x,f as re}from"./api-CQ0gM7Uk.chunk.mjs";import{a as ne,l as de}from"./index-Ma7sfat2.chunk.mjs";import{N as me}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./index-Bndk0DrU.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./index-BCebL___.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./index-DxnK_Coe.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./dav-CL9HtPMq.chunk.mjs";import"./index-BiqRItaQ.chunk.mjs";import"./public-Dw51J06r.chunk.mjs";const ge=["disabled"],ce={id:"system-tag-form-heading"},ve={class:"system-tag-form__group"},ye={for:"system-tags-input"},pe={class:"system-tag-form__group"},be={for:"system-tag-name"},fe={class:"system-tag-form__group"},_e={for:"system-tag-level"},he={class:"system-tag-form__row"},Ve=P({__name:"SystemTagForm",props:{tags:{}},emits:["tag:created","tag:updated","tag:deleted"],setup(w,{emit:c}){const r=w,y=c,d=[{id:"Public",label:e("systemtags","Public")},{id:"Restricted",label:e("systemtags","Restricted")},{id:"Invisible",label:e("systemtags","Invisible")}],i=J("tagNameInput"),a=f(!1),o=f(""),u=f(""),p=f("Public"),l=f(null);K(l,s=>{u.value=s?s.displayName:"",p.value=s?F(s.userVisible,s.userAssignable):"Public"});const S=h(()=>l.value===null),D=h(()=>u.value===""),z=h(()=>u.value===""||l.value?.displayName===u.value&&F(l.value?.userVisible,l.value?.userAssignable)===p.value),O=h(()=>S.value?u.value===""&&p.value==="Public":l.value===null),L=h(()=>({Public:!0,Restricted:!0,Invisible:!1})[p.value]),M=h(()=>({Public:!0,Restricted:!1,Invisible:!1})[p.value]),A=h(()=>({displayName:u.value,userVisible:L.value,userAssignable:M.value}));function H(s){const m=r.tags.find(v=>v.id===s)||null;l.value=m}async function q(){if(S.value){await B();return}await E()}async function B(){const s={...le,...A.value};a.value=!0;try{const m=await se(s),v={...s,id:m};y("tag:created",v),R(e("systemtags","Created tag")),C()}catch{o.value=e("systemtags","Failed to create tag")}a.value=!1}async function E(){if(l.value===null)return;const s={...l.value,...A.value};a.value=!0;try{await ie(s),l.value=s,y("tag:updated",s),R(e("systemtags","Updated tag")),i.value?.focus()}catch{o.value=e("systemtags","Failed to update tag")}a.value=!1}async function G(){if(l.value!==null){a.value=!0;try{await oe(l.value),y("tag:deleted",l.value),R(e("systemtags","Deleted tag")),C()}catch{o.value=e("systemtags","Failed to delete tag")}a.value=!1}}function C(){l.value=null,o.value="",u.value="",p.value="Public",i.value?.focus()}function F(s,m){return{[[!0,!0].join(",")]:"Public",[[!0,!1].join(",")]:"Restricted",[[!1,!1].join(",")]:"Invisible"}[[s,m].join(",")]}return(s,m)=>(_(),k("form",{class:"system-tag-form",disabled:a.value,"aria-labelledby":"system-tag-form-heading",onSubmit:X(q,["prevent"]),onReset:C},[g("h4",ce,n(t(e)("systemtags","Create or edit tags")),1),g("div",ve,[g("label",ye,n(t(e)("systemtags","Search for a tag to edit")),1),b(t(ae),{modelValue:l.value,inputId:"system-tags-input",placeholder:t(e)("systemtags","Collaborative tags …"),fetchTags:!1,options:w.tags,multiple:!1,labelOutside:"","onUpdate:modelValue":H},{"no-options":V(()=>[I(n(t(e)("systemtags","No tags to select")),1)]),_:1},8,["modelValue","placeholder","options"])]),g("div",pe,[g("label",be,n(t(e)("systemtags","Tag name")),1),b(t(te),{id:"system-tag-name",ref:"tagNameInput",modelValue:u.value,"onUpdate:modelValue":m[0]||(m[0]=v=>u.value=v),error:!!o.value,helperText:o.value,labelOutside:""},null,8,["modelValue","error","helperText"])]),g("div",fe,[g("label",_e,n(t(e)("systemtags","Tag level")),1),b(t(ee),{modelValue:p.value,"onUpdate:modelValue":m[1]||(m[1]=v=>p.value=v),inputId:"system-tag-level",options:d,reduce:v=>v.id,clearable:!1,disabled:a.value,labelOutside:""},null,8,["modelValue","reduce","disabled"])]),g("div",he,[S.value?(_(),T(t(N),{key:0,type:"submit",disabled:D.value||a.value},{default:V(()=>[I(n(t(e)("systemtags","Create")),1)]),_:1},8,["disabled"])):(_(),k(Q,{key:1},[b(t(N),{type:"submit",disabled:z.value||a.value},{default:V(()=>[I(n(t(e)("systemtags","Update")),1)]),_:1},8,["disabled"]),b(t(N),{disabled:a.value,onClick:G},{default:V(()=>[I(n(t(e)("systemtags","Delete")),1)]),_:1},8,["disabled"])],64)),b(t(N),{type:"reset",disabled:O.value||a.value},{default:V(()=>[I(n(t(e)("systemtags","Reset")),1)]),_:1},8,["disabled"]),a.value?(_(),T(t(j),{key:2,name:t(e)("systemtags","Loading …"),size:32},null,8,["name"])):W("",!0)])],40,ge))}}),Ie=ne(Ve,[["__scopeId","data-v-88ba4be0"]]),Te={id:"system-tags-creation-control"},we={class:"inlineblock"},Ne={class:"settings-hint"},Re=P({__name:"SystemTagsCreationControl",setup(w){const c=f(de("systemtags","restrictSystemTagsCreationToAdmin",!1));async function r(d){try{const i=await ue(d);x.debug("updateSystemTagsDefault",{responseData:i}),y({isRestricted:d,status:i.ocs?.meta?.status})}catch(i){y({errorMessage:e("systemtags","Unable to update setting"),error:i})}}function y({isRestricted:d,status:i,errorMessage:a,error:o}){if(i==="ok"){c.value=!!d,R(d?e("systemtags","System tag creation is now restricted to administrators"):e("systemtags","System tag creation is now allowed for everybody"));return}a&&(U(a),x.error(a,{error:o}))}return(d,i)=>(_(),k("div",Te,[g("h4",we,n(t(e)("systemtags","System tag management")),1),g("p",Ne,n(t(e)("systemtags","If enabled, only administrators can create and edit tags. Accounts can still assign and remove them from files.")),1),b(t(me),{modelValue:c.value,"onUpdate:modelValue":[i[0]||(i[0]=a=>c.value=a),r],type:"switch"},{default:V(()=>[I(n(t(e)("systemtags","Restrict tag creation and editing to administrators")),1)]),_:1},8,["modelValue"])]))}}),Se=P({__name:"SystemTagsSection",setup(w){const c=f(!1),r=f([]);Y(async()=>{c.value=!0;try{r.value=await re()}catch(a){U(e("systemtags","Failed to load tags")),x.error("Failed to load tags",{error:a})}c.value=!1});function y(a){r.value.unshift(a)}function d(a){const o=r.value.findIndex(u=>u.id===a.id);r.value.splice(o,1),r.value.unshift(a)}function i(a){const o=r.value.findIndex(u=>u.id===a.id);r.value.splice(o,1)}return(a,o)=>(_(),T(t($),{name:t(e)("systemtags","Collaborative tags"),description:t(e)("systemtags","Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them.")},{default:V(()=>[b(Re),c.value?(_(),T(t(j),{key:0,name:t(e)("systemtags","Loading collaborative tags …"),size:32},null,8,["name"])):(_(),T(Ie,{key:1,tags:r.value,"onTag:created":y,"onTag:updated":d,"onTag:deleted":i},null,8,["tags"]))]),_:1},8,["name","description"]))}}),Ce=Z(Se);Ce.mount("#vue-admin-systemtags"); +import{f as P,v as J,s as K,o as _,c as k,b as g,t as n,u as t,h as b,w as V,j as I,g as T,F as Q,e as W,H as X,r as f,z as h,N as Y,k as Z}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{d as R,a as U}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{t as e}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{N as j}from"./Web-BMpaLM07.chunk.mjs";import{N as $}from"./ContentCopy-DcIrS3JP.chunk.mjs";import{N}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import{N as ee}from"./NcSelect-DLheQ2yp-DujwD-Lb.chunk.mjs";import{N as ae}from"./index-BS5_ykH2.chunk.mjs";import{_ as te}from"./TrashCanOutline-CIT5iIpm.chunk.mjs";import{c as se,d as le,u as ie,a as oe,b as ue,l as x,f as re}from"./api-DntTCVXB.chunk.mjs";import{a as ne,l as de}from"./index-Ma7sfat2.chunk.mjs";import{N as me}from"./NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./index-Bndk0DrU.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./index-BCebL___.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./index-B8CmRwk1.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./dav-CL9HtPMq.chunk.mjs";import"./index-BiqRItaQ.chunk.mjs";import"./public-Dw51J06r.chunk.mjs";const ge=["disabled"],ce={id:"system-tag-form-heading"},ve={class:"system-tag-form__group"},ye={for:"system-tags-input"},pe={class:"system-tag-form__group"},be={for:"system-tag-name"},fe={class:"system-tag-form__group"},_e={for:"system-tag-level"},he={class:"system-tag-form__row"},Ve=P({__name:"SystemTagForm",props:{tags:{}},emits:["tag:created","tag:updated","tag:deleted"],setup(w,{emit:c}){const r=w,y=c,d=[{id:"Public",label:e("systemtags","Public")},{id:"Restricted",label:e("systemtags","Restricted")},{id:"Invisible",label:e("systemtags","Invisible")}],i=J("tagNameInput"),a=f(!1),o=f(""),u=f(""),p=f("Public"),l=f(null);K(l,s=>{u.value=s?s.displayName:"",p.value=s?F(s.userVisible,s.userAssignable):"Public"});const S=h(()=>l.value===null),D=h(()=>u.value===""),z=h(()=>u.value===""||l.value?.displayName===u.value&&F(l.value?.userVisible,l.value?.userAssignable)===p.value),O=h(()=>S.value?u.value===""&&p.value==="Public":l.value===null),L=h(()=>({Public:!0,Restricted:!0,Invisible:!1})[p.value]),M=h(()=>({Public:!0,Restricted:!1,Invisible:!1})[p.value]),A=h(()=>({displayName:u.value,userVisible:L.value,userAssignable:M.value}));function H(s){const m=r.tags.find(v=>v.id===s)||null;l.value=m}async function q(){if(S.value){await B();return}await E()}async function B(){const s={...le,...A.value};a.value=!0;try{const m=await se(s),v={...s,id:m};y("tag:created",v),R(e("systemtags","Created tag")),C()}catch{o.value=e("systemtags","Failed to create tag")}a.value=!1}async function E(){if(l.value===null)return;const s={...l.value,...A.value};a.value=!0;try{await ie(s),l.value=s,y("tag:updated",s),R(e("systemtags","Updated tag")),i.value?.focus()}catch{o.value=e("systemtags","Failed to update tag")}a.value=!1}async function G(){if(l.value!==null){a.value=!0;try{await oe(l.value),y("tag:deleted",l.value),R(e("systemtags","Deleted tag")),C()}catch{o.value=e("systemtags","Failed to delete tag")}a.value=!1}}function C(){l.value=null,o.value="",u.value="",p.value="Public",i.value?.focus()}function F(s,m){return{[[!0,!0].join(",")]:"Public",[[!0,!1].join(",")]:"Restricted",[[!1,!1].join(",")]:"Invisible"}[[s,m].join(",")]}return(s,m)=>(_(),k("form",{class:"system-tag-form",disabled:a.value,"aria-labelledby":"system-tag-form-heading",onSubmit:X(q,["prevent"]),onReset:C},[g("h4",ce,n(t(e)("systemtags","Create or edit tags")),1),g("div",ve,[g("label",ye,n(t(e)("systemtags","Search for a tag to edit")),1),b(t(ae),{modelValue:l.value,inputId:"system-tags-input",placeholder:t(e)("systemtags","Collaborative tags …"),fetchTags:!1,options:w.tags,multiple:!1,labelOutside:"","onUpdate:modelValue":H},{"no-options":V(()=>[I(n(t(e)("systemtags","No tags to select")),1)]),_:1},8,["modelValue","placeholder","options"])]),g("div",pe,[g("label",be,n(t(e)("systemtags","Tag name")),1),b(t(te),{id:"system-tag-name",ref:"tagNameInput",modelValue:u.value,"onUpdate:modelValue":m[0]||(m[0]=v=>u.value=v),error:!!o.value,helperText:o.value,labelOutside:""},null,8,["modelValue","error","helperText"])]),g("div",fe,[g("label",_e,n(t(e)("systemtags","Tag level")),1),b(t(ee),{modelValue:p.value,"onUpdate:modelValue":m[1]||(m[1]=v=>p.value=v),inputId:"system-tag-level",options:d,reduce:v=>v.id,clearable:!1,disabled:a.value,labelOutside:""},null,8,["modelValue","reduce","disabled"])]),g("div",he,[S.value?(_(),T(t(N),{key:0,type:"submit",disabled:D.value||a.value},{default:V(()=>[I(n(t(e)("systemtags","Create")),1)]),_:1},8,["disabled"])):(_(),k(Q,{key:1},[b(t(N),{type:"submit",disabled:z.value||a.value},{default:V(()=>[I(n(t(e)("systemtags","Update")),1)]),_:1},8,["disabled"]),b(t(N),{disabled:a.value,onClick:G},{default:V(()=>[I(n(t(e)("systemtags","Delete")),1)]),_:1},8,["disabled"])],64)),b(t(N),{type:"reset",disabled:O.value||a.value},{default:V(()=>[I(n(t(e)("systemtags","Reset")),1)]),_:1},8,["disabled"]),a.value?(_(),T(t(j),{key:2,name:t(e)("systemtags","Loading …"),size:32},null,8,["name"])):W("",!0)])],40,ge))}}),Ie=ne(Ve,[["__scopeId","data-v-88ba4be0"]]),Te={id:"system-tags-creation-control"},we={class:"inlineblock"},Ne={class:"settings-hint"},Re=P({__name:"SystemTagsCreationControl",setup(w){const c=f(de("systemtags","restrictSystemTagsCreationToAdmin",!1));async function r(d){try{const i=await ue(d);x.debug("updateSystemTagsDefault",{responseData:i}),y({isRestricted:d,status:i.ocs?.meta?.status})}catch(i){y({errorMessage:e("systemtags","Unable to update setting"),error:i})}}function y({isRestricted:d,status:i,errorMessage:a,error:o}){if(i==="ok"){c.value=!!d,R(d?e("systemtags","System tag creation is now restricted to administrators"):e("systemtags","System tag creation is now allowed for everybody"));return}a&&(U(a),x.error(a,{error:o}))}return(d,i)=>(_(),k("div",Te,[g("h4",we,n(t(e)("systemtags","System tag management")),1),g("p",Ne,n(t(e)("systemtags","If enabled, only administrators can create and edit tags. Accounts can still assign and remove them from files.")),1),b(t(me),{modelValue:c.value,"onUpdate:modelValue":[i[0]||(i[0]=a=>c.value=a),r],type:"switch"},{default:V(()=>[I(n(t(e)("systemtags","Restrict tag creation and editing to administrators")),1)]),_:1},8,["modelValue"])]))}}),Se=P({__name:"SystemTagsSection",setup(w){const c=f(!1),r=f([]);Y(async()=>{c.value=!0;try{r.value=await re()}catch(a){U(e("systemtags","Failed to load tags")),x.error("Failed to load tags",{error:a})}c.value=!1});function y(a){r.value.unshift(a)}function d(a){const o=r.value.findIndex(u=>u.id===a.id);r.value.splice(o,1),r.value.unshift(a)}function i(a){const o=r.value.findIndex(u=>u.id===a.id);r.value.splice(o,1)}return(a,o)=>(_(),T(t($),{name:t(e)("systemtags","Collaborative tags"),description:t(e)("systemtags","Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them.")},{default:V(()=>[b(Re),c.value?(_(),T(t(j),{key:0,name:t(e)("systemtags","Loading collaborative tags …"),size:32},null,8,["name"])):(_(),T(Ie,{key:1,tags:r.value,"onTag:created":y,"onTag:updated":d,"onTag:deleted":i},null,8,["tags"]))]),_:1},8,["name","description"]))}}),Ce=Z(Se);Ce.mount("#vue-admin-systemtags"); //# sourceMappingURL=systemtags-admin.mjs.map diff --git a/dist/systemtags-init.mjs b/dist/systemtags-init.mjs index c5c14ae8c171c..f1ecd3aca03b3 100644 --- a/dist/systemtags-init.mjs +++ b/dist/systemtags-init.mjs @@ -1,5 +1,5 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('', '', 'dist/SystemTagPicker-m8yyirsH.chunk.mjs'),window.OC.filePath('', '', 'dist/index-Bndk0DrU.chunk.mjs'),window.OC.filePath('', '', 'dist/index-C1xmmKTZ-CGpLs37u.chunk.mjs'),window.OC.filePath('', '', 'dist/index-Ma7sfat2.chunk.mjs'),window.OC.filePath('', '', 'dist/index-CKn3f84a.chunk.mjs'),window.OC.filePath('', '', 'dist/NcModal-DHryP_87-Cy2jN0l1.chunk.mjs'),window.OC.filePath('', '', 'dist/runtime-dom.esm-bundler-DPEdZePn.chunk.mjs'),window.OC.filePath('', '', 'dist/autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs'),window.OC.filePath('', '', 'dist/createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs'),window.OC.filePath('', '', 'dist/translation-DoG5ZELJ-XUrtIRvk.chunk.mjs'),window.OC.filePath('', '', 'dist/createElementId-DhjFt1I9-C_oBIsvc.chunk.css'),window.OC.filePath('', '', 'dist/autolink-U5pBzLgI-R3us1MM8.chunk.css'),window.OC.filePath('', '', 'dist/NcModal-DHryP_87-CU2wYsLf.chunk.css'),window.OC.filePath('', '', 'dist/Web-BMpaLM07.chunk.mjs'),window.OC.filePath('', '', 'dist/Web-BYHcrfvW.chunk.css'),window.OC.filePath('', '', 'dist/index-DYA_tnKg.chunk.css'),window.OC.filePath('', '', 'dist/mdi-Cgau7A4L.chunk.mjs'),window.OC.filePath('', '', 'dist/mdi-Jq77EThs.chunk.css'),window.OC.filePath('', '', 'dist/NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs'),window.OC.filePath('', '', 'dist/NcCheckboxRadioSwitch-BMsPx74L-CQwJiKOs.chunk.css'),window.OC.filePath('', '', 'dist/Plus-2xII8VOW.chunk.mjs'),window.OC.filePath('', '', 'dist/PencilOutline-BEazDXA8.chunk.mjs'),window.OC.filePath('', '', 'dist/PencilOutline-DdQinVMt.chunk.css'),window.OC.filePath('', '', 'dist/Plus-Som-mR4B.chunk.css'),window.OC.filePath('', '', 'dist/NcColorPicker-DDHxR-iN-DPYQyC01.chunk.mjs'),window.OC.filePath('', '', 'dist/colors-BHGKZFDI-CR_0725C.chunk.mjs'),window.OC.filePath('', '', 'dist/NcColorPicker-DDHxR-iN-Bwe91UZ7.chunk.css'),window.OC.filePath('', '', 'dist/NcEmptyContent-B8-90BSI-BbZilwDO.chunk.mjs'),window.OC.filePath('', '', 'dist/NcEmptyContent-B8-90BSI-DoZPzs7J.chunk.css'),window.OC.filePath('', '', 'dist/TrashCanOutline-CIT5iIpm.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-o5OFv3z6-BYlw6Xsd.chunk.css'),window.OC.filePath('', '', 'dist/api-CQ0gM7Uk.chunk.mjs'),window.OC.filePath('', '', 'dist/index-BCebL___.chunk.mjs'),window.OC.filePath('', '', 'dist/index-sH3U_332.chunk.mjs'),window.OC.filePath('', '', 'dist/index-DxnK_Coe.chunk.mjs'),window.OC.filePath('', '', 'dist/NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs'),window.OC.filePath('', '', 'dist/NcPasswordField-uaMO2pdt-DxPSRxK-.chunk.css'),window.OC.filePath('', '', 'dist/dav-CL9HtPMq.chunk.mjs'),window.OC.filePath('', '', 'dist/index-BiqRItaQ.chunk.mjs'),window.OC.filePath('', '', 'dist/public-Dw51J06r.chunk.mjs'),window.OC.filePath('', '', 'dist/index-DdTMDjmV.chunk.mjs'),window.OC.filePath('', '', 'dist/systemtags-SystemTagPicker-r37hCiyq.chunk.css')])))=>i.map(i=>d[i]); -import{c as ne,g as te,V as oe,D as ae,b as E}from"./index-DdTMDjmV.chunk.mjs";import{g as se,e as R,f as le,r as ie,a as ce,b as ue,c as he}from"./dav-CL9HtPMq.chunk.mjs";import{_ as U}from"./index-Ma7sfat2.chunk.mjs";import{i as de,P,b as H,F as D}from"./public-Dw51J06r.chunk.mjs";import{t as w}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{s as B}from"./index-CKn3f84a.chunk.mjs";import{a as J}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{s as O,a as Z}from"./index-Bndk0DrU.chunk.mjs";import{e as ge,f as W,l as be}from"./api-CQ0gM7Uk.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./index-BiqRItaQ.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";import"./index-BCebL___.chunk.mjs";import"./index-DxnK_Coe.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";const Y='';async function T({nodes:e}){const r=await B(J(()=>U(()=>import("./SystemTagPicker-m8yyirsH.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42]),import.meta.url)),{nodes:e});return Array(e.length).fill(r)}const fe={id:"systemtags:bulk",displayName:()=>w("systemtags","Manage tags"),iconSvgInline:()=>Y,enabled({nodes:e}){return de()||e.length===0||e.some(r=>!r.isDavResource)?!1:!e.some(r=>(r.permissions&P.UPDATE)===0)},async exec(e){const[r]=await T(e);return r},execBatch:T,hotkey:{description:w("systemtags","Manage tags"),key:"t"}},me='';function pe(){ne({id:"systemtags",order:20,displayName(){return w("systemtags","Add tags")},enabled(){return!0},iconSvgInline(){return me},onClick({node:e}){return B(J(()=>U(()=>import("./SystemTagPicker-m8yyirsH.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42]),import.meta.url)),{nodes:[e]})}})}const S={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(const e in S)Object.freeze(S[e]);const N=Object.freeze(S),G=Object.create(null);for(const e in N)Object.hasOwn(N,e)&&(G[N[e]]=e);const b={to:{},get:{}};b.get=function(e){const r=e.slice(0,3).toLowerCase();let n,t;switch(r){case"hsl":{n=b.get.hsl(e),t="hsl";break}case"hwb":{n=b.get.hwb(e),t="hwb";break}default:{n=b.get.rgb(e),t="rgb";break}}return n?{model:t,value:n}:null},b.get.rgb=function(e){if(!e)return null;const r=/^#([a-f\d]{3,4})$/i,n=/^#([a-f\d]{6})([a-f\d]{2})?$/i,t=/^rgba?\(\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)\s*(?:[\s,|/]\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(%?)\s*)?\)$/i,o=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/i,a=/^(\w+)$/;let s=[0,0,0,1],l,i,u;if(l=e.match(n)){for(u=l[2],l=l[1],i=0;i<3;i++){const m=i*2;s[i]=Number.parseInt(l.slice(m,m+2),16)}u&&(s[3]=Number.parseInt(u,16)/255)}else if(l=e.match(r)){for(l=l[1],u=l[3],i=0;i<3;i++)s[i]=Number.parseInt(l[i]+l[i],16);u&&(s[3]=Number.parseInt(u+u,16)/255)}else if(l=e.match(t)){for(i=0;i<3;i++)s[i]=Number.parseFloat(l[i+1]);l[4]&&(s[3]=l[5]?Number.parseFloat(l[4])*.01:Number.parseFloat(l[4]))}else if(l=e.match(o)){for(i=0;i<3;i++)s[i]=Math.round(Number.parseFloat(l[i+1])*2.55);l[4]&&(s[3]=l[5]?Number.parseFloat(l[4])*.01:Number.parseFloat(l[4]))}else return(l=e.toLowerCase().match(a))?l[1]==="transparent"?[0,0,0,0]:Object.hasOwn(N,l[1])?(s=N[l[1]].slice(),s[3]=1,s):null:null;for(i=0;i<3;i++)s[i]=k(s[i],0,255);return s[3]=k(s[3],0,1),s},b.get.hsl=function(e){if(!e)return null;const r=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,n=e.match(r);if(n){const t=Number.parseFloat(n[4]),o=(Number.parseFloat(n[1])%360+360)%360,a=k(Number.parseFloat(n[2]),0,100),s=k(Number.parseFloat(n[3]),0,100),l=k(Number.isNaN(t)?1:t,0,1);return[o,a,s,l]}return null},b.get.hwb=function(e){if(!e)return null;const r=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*[\s,]\s*([+-]?[\d.]+)%\s*[\s,]\s*([+-]?[\d.]+)%\s*(?:[\s,]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,n=e.match(r);if(n){const t=Number.parseFloat(n[4]),o=(Number.parseFloat(n[1])%360+360)%360,a=k(Number.parseFloat(n[2]),0,100),s=k(Number.parseFloat(n[3]),0,100),l=k(Number.isNaN(t)?1:t,0,1);return[o,a,s,l]}return null},b.to.hex=function(...e){return"#"+j(e[0])+j(e[1])+j(e[2])+(e[3]<1?j(Math.round(e[3]*255)):"")},b.to.rgb=function(...e){return e.length<4||e[3]===1?"rgb("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+")":"rgba("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+", "+e[3]+")"},b.to.rgb.percent=function(...e){const r=Math.round(e[0]/255*100),n=Math.round(e[1]/255*100),t=Math.round(e[2]/255*100);return e.length<4||e[3]===1?"rgb("+r+"%, "+n+"%, "+t+"%)":"rgba("+r+"%, "+n+"%, "+t+"%, "+e[3]+")"},b.to.hsl=function(...e){return e.length<4||e[3]===1?"hsl("+e[0]+", "+e[1]+"%, "+e[2]+"%)":"hsla("+e[0]+", "+e[1]+"%, "+e[2]+"%, "+e[3]+")"},b.to.hwb=function(...e){let r="";return e.length>=4&&e[3]!==1&&(r=", "+e[3]),"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+r+")"},b.to.keyword=function(...e){return G[e.slice(0,3)]};function k(e,r,n){return Math.min(Math.max(r,e),n)}function j(e){const r=Math.round(e).toString(16).toUpperCase();return r.length<2?"0"+r:r}const q={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(const e in q)Object.freeze(q[e]);const A=Object.freeze(q),K={};for(const e of Object.keys(A))K[A[e]]=e;const c={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},oklab:{channels:3,labels:["okl","oka","okb"]},lch:{channels:3,labels:"lch"},oklch:{channels:3,labels:["okl","okc","okh"]},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}},y=(6/29)**3;function M(e){const r=e>.0031308?1.055*e**.4166666666666667-.055:e*12.92;return Math.min(Math.max(0,r),1)}function x(e){return e>.04045?((e+.055)/1.055)**2.4:e/12.92}for(const e of Object.keys(c)){if(!("channels"in c[e]))throw new Error("missing channels property: "+e);if(!("labels"in c[e]))throw new Error("missing channel labels property: "+e);if(c[e].labels.length!==c[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:r,labels:n}=c[e];delete c[e].channels,delete c[e].labels,Object.defineProperty(c[e],"channels",{value:r}),Object.defineProperty(c[e],"labels",{value:n})}c.rgb.hsl=function(e){const r=e[0]/255,n=e[1]/255,t=e[2]/255,o=Math.min(r,n,t),a=Math.max(r,n,t),s=a-o;let l,i;switch(a){case o:{l=0;break}case r:{l=(n-t)/s;break}case n:{l=2+(t-r)/s;break}case t:{l=4+(r-n)/s;break}}l=Math.min(l*60,360),l<0&&(l+=360);const u=(o+a)/2;return a===o?i=0:u<=.5?i=s/(a+o):i=s/(2-a-o),[l,i*100,u*100]},c.rgb.hsv=function(e){let r,n,t,o,a;const s=e[0]/255,l=e[1]/255,i=e[2]/255,u=Math.max(s,l,i),m=u-Math.min(s,l,i),p=function(re){return(u-re)/6/m+1/2};if(m===0)o=0,a=0;else{switch(a=m/u,r=p(s),n=p(l),t=p(i),u){case s:{o=t-n;break}case l:{o=1/3+r-t;break}case i:{o=2/3+n-r;break}}o<0?o+=1:o>1&&(o-=1)}return[o*360,a*100,u*100]},c.rgb.hwb=function(e){const r=e[0],n=e[1];let t=e[2];const o=c.rgb.hsl(e)[0],a=1/255*Math.min(r,Math.min(n,t));return t=1-1/255*Math.max(r,Math.max(n,t)),[o,a*100,t*100]},c.rgb.oklab=function(e){const r=x(e[0]/255),n=x(e[1]/255),t=x(e[2]/255),o=Math.cbrt(.4122214708*r+.5363325363*n+.0514459929*t),a=Math.cbrt(.2119034982*r+.6806995451*n+.1073969566*t),s=Math.cbrt(.0883024619*r+.2817188376*n+.6299787005*t),l=.2104542553*o+.793617785*a-.0040720468*s,i=1.9779984951*o-2.428592205*a+.4505937099*s,u=.0259040371*o+.7827717662*a-.808675766*s;return[l*100,i*100,u*100]},c.rgb.cmyk=function(e){const r=e[0]/255,n=e[1]/255,t=e[2]/255,o=Math.min(1-r,1-n,1-t),a=(1-r-o)/(1-o)||0,s=(1-n-o)/(1-o)||0,l=(1-t-o)/(1-o)||0;return[a*100,s*100,l*100,o*100]};function ye(e,r){return(e[0]-r[0])**2+(e[1]-r[1])**2+(e[2]-r[2])**2}c.rgb.keyword=function(e){const r=K[e];if(r)return r;let n=Number.POSITIVE_INFINITY,t;for(const o of Object.keys(A)){const a=A[o],s=ye(e,a);sy?n**(1/3):7.787*n+16/116,t=t>y?t**(1/3):7.787*t+16/116,o=o>y?o**(1/3):7.787*o+16/116;const a=116*t-16,s=500*(n-t),l=200*(t-o);return[a,s,l]},c.hsl.rgb=function(e){const r=e[0]/360,n=e[1]/100,t=e[2]/100;let o,a;if(n===0)return a=t*255,[a,a,a];const s=t<.5?t*(1+n):t+n-t*n,l=2*t-s,i=[0,0,0];for(let u=0;u<3;u++)o=r+1/3*-(u-1),o<0&&o++,o>1&&o--,6*o<1?a=l+(s-l)*6*o:2*o<1?a=s:3*o<2?a=l+(s-l)*(2/3-o)*6:a=l,i[u]=a*255;return i},c.hsl.hsv=function(e){const r=e[0];let n=e[1]/100,t=e[2]/100,o=n;const a=Math.max(t,.01);t*=2,n*=t<=1?t:2-t,o*=a<=1?a:2-a;const s=(t+n)/2,l=t===0?2*o/(a+o):2*n/(t+n);return[r,l*100,s*100]},c.hsv.rgb=function(e){const r=e[0]/60,n=e[1]/100;let t=e[2]/100;const o=Math.floor(r)%6,a=r-Math.floor(r),s=255*t*(1-n),l=255*t*(1-n*a),i=255*t*(1-n*(1-a));switch(t*=255,o){case 0:return[t,i,s];case 1:return[l,t,s];case 2:return[s,t,i];case 3:return[s,l,t];case 4:return[i,s,t];case 5:return[t,s,l]}},c.hsv.hsl=function(e){const r=e[0],n=e[1]/100,t=e[2]/100,o=Math.max(t,.01);let a,s;s=(2-n)*t;const l=(2-n)*o;return a=n*o,a/=l<=1?l:2-l,a=a||0,s/=2,[r,a*100,s*100]},c.hwb.rgb=function(e){const r=e[0]/360;let n=e[1]/100,t=e[2]/100;const o=n+t;let a;o>1&&(n/=o,t/=o);const s=Math.floor(6*r),l=1-t;a=6*r-s,(s&1)!==0&&(a=1-a);const i=n+a*(l-n);let u,m,p;switch(s){default:case 6:case 0:{u=l,m=i,p=n;break}case 1:{u=i,m=l,p=n;break}case 2:{u=n,m=l,p=i;break}case 3:{u=n,m=i,p=l;break}case 4:{u=i,m=n,p=l;break}case 5:{u=l,m=n,p=i;break}}return[u*255,m*255,p*255]},c.cmyk.rgb=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=e[3]/100,a=1-Math.min(1,r*(1-o)+o),s=1-Math.min(1,n*(1-o)+o),l=1-Math.min(1,t*(1-o)+o);return[a*255,s*255,l*255]},c.xyz.rgb=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100;let o,a,s;return o=r*3.2404542+n*-1.5371385+t*-.4985314,a=r*-.969266+n*1.8760108+t*.041556,s=r*.0556434+n*-.2040259+t*1.0572252,o=M(o),a=M(a),s=M(s),[o*255,a*255,s*255]},c.xyz.lab=function(e){let r=e[0],n=e[1],t=e[2];r/=95.047,n/=100,t/=108.883,r=r>y?r**(1/3):7.787*r+16/116,n=n>y?n**(1/3):7.787*n+16/116,t=t>y?t**(1/3):7.787*t+16/116;const o=116*n-16,a=500*(r-n),s=200*(n-t);return[o,a,s]},c.xyz.oklab=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=Math.cbrt(.8189330101*r+.3618667424*n-.1288597137*t),a=Math.cbrt(.0329845436*r+.9293118715*n+.0361456387*t),s=Math.cbrt(.0482003018*r+.2643662691*n+.633851707*t),l=.2104542553*o+.793617785*a-.0040720468*s,i=1.9779984951*o-2.428592205*a+.4505937099*s,u=.0259040371*o+.7827717662*a-.808675766*s;return[l*100,i*100,u*100]},c.oklab.oklch=function(e){return c.lab.lch(e)},c.oklab.xyz=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=(.999999998*r+.396337792*n+.215803758*t)**3,a=(1.000000008*r-.105561342*n-.063854175*t)**3,s=(1.000000055*r-.089484182*n-1.291485538*t)**3,l=1.227013851*o-.55779998*a+.281256149*s,i=-.040580178*o+1.11225687*a-.071676679*s,u=-.076381285*o-.421481978*a+1.58616322*s;return[l*100,i*100,u*100]},c.oklab.rgb=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=(r+.3963377774*n+.2158037573*t)**3,a=(r-.1055613458*n-.0638541728*t)**3,s=(r-.0894841775*n-1.291485548*t)**3,l=M(4.0767416621*o-3.3077115913*a+.2309699292*s),i=M(-1.2684380046*o+2.6097574011*a-.3413193965*s),u=M(-.0041960863*o-.7034186147*a+1.707614701*s);return[l*255,i*255,u*255]},c.oklch.oklab=function(e){return c.lch.lab(e)},c.lab.xyz=function(e){const r=e[0],n=e[1],t=e[2];let o,a,s;a=(r+16)/116,o=n/500+a,s=a-t/200;const l=a**3,i=o**3,u=s**3;return a=l>y?l:(a-16/116)/7.787,o=i>y?i:(o-16/116)/7.787,s=u>y?u:(s-16/116)/7.787,o*=95.047,a*=100,s*=108.883,[o,a,s]},c.lab.lch=function(e){const r=e[0],n=e[1],t=e[2];let o;o=Math.atan2(t,n)*360/2/Math.PI,o<0&&(o+=360);const a=Math.sqrt(n*n+t*t);return[r,a,o]},c.lch.lab=function(e){const r=e[0],n=e[1],t=e[2]/360*2*Math.PI,o=n*Math.cos(t),a=n*Math.sin(t);return[r,o,a]},c.rgb.ansi16=function(e,r=null){const[n,t,o]=e;let a=r===null?c.rgb.hsv(e)[2]:r;if(a=Math.round(a/50),a===0)return 30;let s=30+(Math.round(o/255)<<2|Math.round(t/255)<<1|Math.round(n/255));return a===2&&(s+=60),s},c.hsv.ansi16=function(e){return c.rgb.ansi16(c.hsv.rgb(e),e[2])},c.rgb.ansi256=function(e){const r=e[0],n=e[1],t=e[2];return r>>4===n>>4&&n>>4===t>>4?r<8?16:r>248?231:Math.round((r-8)/247*24)+232:16+36*Math.round(r/255*5)+6*Math.round(n/255*5)+Math.round(t/255*5)},c.ansi16.rgb=function(e){e=e[0];let r=e%10;if(r===0||r===7)return e>50&&(r+=3.5),r=r/10.5*255,[r,r,r];const n=(Math.trunc(e>50)+1)*.5,t=(r&1)*n*255,o=(r>>1&1)*n*255,a=(r>>2&1)*n*255;return[t,o,a]},c.ansi256.rgb=function(e){if(e=e[0],e>=232){const a=(e-232)*10+8;return[a,a,a]}e-=16;let r;const n=Math.floor(e/36)/5*255,t=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,t,o]},c.rgb.hex=function(e){const r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".slice(r.length)+r},c.hex.rgb=function(e){const r=e.toString(16).match(/[a-f\d]{6}|[a-f\d]{3}/i);if(!r)return[0,0,0];let n=r[0];r[0].length===3&&(n=[...n].map(l=>l+l).join(""));const t=Number.parseInt(n,16),o=t>>16&255,a=t>>8&255,s=t&255;return[o,a,s]},c.rgb.hcg=function(e){const r=e[0]/255,n=e[1]/255,t=e[2]/255,o=Math.max(Math.max(r,n),t),a=Math.min(Math.min(r,n),t),s=o-a;let l;const i=s<1?a/(1-s):0;return s<=0?l=0:o===r?l=(n-t)/s%6:o===n?l=2+(t-r)/s:l=4+(r-n)/s,l/=6,l%=1,[l*360,s*100,i*100]},c.hsl.hcg=function(e){const r=e[1]/100,n=e[2]/100,t=n<.5?2*r*n:2*r*(1-n);let o=0;return t<1&&(o=(n-.5*t)/(1-t)),[e[0],t*100,o*100]},c.hsv.hcg=function(e){const r=e[1]/100,n=e[2]/100,t=r*n;let o=0;return t<1&&(o=(n-t)/(1-t)),[e[0],t*100,o*100]},c.hcg.rgb=function(e){const r=e[0]/360,n=e[1]/100,t=e[2]/100;if(n===0)return[t*255,t*255,t*255];const o=[0,0,0],a=r%1*6,s=a%1,l=1-s;let i=0;switch(Math.floor(a)){case 0:{o[0]=1,o[1]=s,o[2]=0;break}case 1:{o[0]=l,o[1]=1,o[2]=0;break}case 2:{o[0]=0,o[1]=1,o[2]=s;break}case 3:{o[0]=0,o[1]=l,o[2]=1;break}case 4:{o[0]=s,o[1]=0,o[2]=1;break}default:o[0]=1,o[1]=0,o[2]=l}return i=(1-n)*t,[(n*o[0]+i)*255,(n*o[1]+i)*255,(n*o[2]+i)*255]},c.hcg.hsv=function(e){const r=e[1]/100,n=e[2]/100,t=r+n*(1-r);let o=0;return t>0&&(o=r/t),[e[0],o*100,t*100]},c.hcg.hsl=function(e){const r=e[1]/100,n=e[2]/100*(1-r)+.5*r;let t=0;return n>0&&n<.5?t=r/(2*n):n>=.5&&n<1&&(t=r/(2*(1-n))),[e[0],t*100,n*100]},c.hcg.hwb=function(e){const r=e[1]/100,n=e[2]/100,t=r+n*(1-r);return[e[0],(t-r)*100,(1-t)*100]},c.hwb.hcg=function(e){const r=e[1]/100,n=1-e[2]/100,t=n-r;let o=0;return t<1&&(o=(n-t)/(1-t)),[e[0],t*100,o*100]},c.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},c.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},c.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},c.gray.hsl=function(e){return[0,0,e[0]]},c.gray.hsv=c.gray.hsl,c.gray.hwb=function(e){return[0,100,e[0]]},c.gray.cmyk=function(e){return[0,0,0,e[0]]},c.gray.lab=function(e){return[e[0],0,0]},c.gray.hex=function(e){const r=Math.round(e[0]/100*255)&255,n=((r<<16)+(r<<8)+r).toString(16).toUpperCase();return"000000".slice(n.length)+n},c.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function we(){const e={},r=Object.keys(c);for(let{length:n}=r,t=0;t0;){const t=n.pop(),o=Object.keys(c[t]);for(let{length:a}=o,s=0;s1&&(n=t),e(n))};return"conversion"in e&&(r.conversion=e.conversion),r}function Oe(e){const r=function(...n){const t=n[0];if(t==null)return t;t.length>1&&(n=t);const o=e(n);if(typeof o=="object")for(let{length:a}=o,s=0;s0){this.model=r||"rgb",t=f[this.model].channels;const o=Array.prototype.slice.call(e,0,t);this.color=z(o,t),this.valpha=typeof e[t]=="number"?e[t]:1}else if(typeof e=="number")this.model="rgb",this.color=[e>>16&255,e>>8&255,e&255],this.valpha=1;else{this.valpha=1;const o=Object.keys(e);"alpha"in e&&(o.splice(o.indexOf("alpha"),1),this.valpha=typeof e.alpha=="number"?e.alpha:0);const a=o.sort().join("");if(!(a in C))throw new Error("Unable to parse color from object: "+JSON.stringify(e));this.model=C[a];const{labels:s}=f[this.model],l=[];for(n=0;n(e%360+360)%360),saturationl:h("hsl",1,g(100)),lightness:h("hsl",2,g(100)),saturationv:h("hsv",1,g(100)),value:h("hsv",2,g(100)),chroma:h("hcg",1,g(100)),gray:h("hcg",2,g(100)),white:h("hwb",1,g(100)),wblack:h("hwb",2,g(100)),cyan:h("cmyk",0,g(100)),magenta:h("cmyk",1,g(100)),yellow:h("cmyk",2,g(100)),black:h("cmyk",3,g(100)),x:h("xyz",0,g(95.047)),y:h("xyz",1,g(100)),z:h("xyz",2,g(108.833)),l:h("lab",0,g(100)),a:h("lab",1),b:h("lab",2),keyword(e){return e!==void 0?new d(e):f[this.model].keyword(this.color)},hex(e){return e!==void 0?new d(e):b.to.hex(...this.rgb().round().color)},hexa(e){if(e!==void 0)return new d(e);const r=this.rgb().round().color;let n=Math.round(this.valpha*255).toString(16).toUpperCase();return n.length===1&&(n="0"+n),b.to.hex(...r)+n},rgbNumber(){const e=this.rgb().color;return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255},luminosity(){const e=this.rgb().color,r=[];for(const[n,t]of e.entries()){const o=t/255;r[n]=o<=.04045?o/12.92:((o+.055)/1.055)**2.4}return .2126*r[0]+.7152*r[1]+.0722*r[2]},contrast(e){const r=this.luminosity(),n=e.luminosity();return r>n?(r+.05)/(n+.05):(n+.05)/(r+.05)},level(e){const r=this.contrast(e);return r>=7?"AAA":r>=4.5?"AA":""},isDark(){const e=this.rgb().color;return(e[0]*2126+e[1]*7152+e[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){const e=this.rgb();for(let r=0;r<3;r++)e.color[r]=255-e.color[r];return e},lighten(e){const r=this.hsl();return r.color[2]+=r.color[2]*e,r},darken(e){const r=this.hsl();return r.color[2]-=r.color[2]*e,r},saturate(e){const r=this.hsl();return r.color[1]+=r.color[1]*e,r},desaturate(e){const r=this.hsl();return r.color[1]-=r.color[1]*e,r},whiten(e){const r=this.hwb();return r.color[1]+=r.color[1]*e,r},blacken(e){const r=this.hwb();return r.color[2]+=r.color[2]*e,r},grayscale(){const e=this.rgb().color,r=e[0]*.3+e[1]*.59+e[2]*.11;return d.rgb(r,r,r)},fade(e){return this.alpha(this.valpha-this.valpha*e)},opaquer(e){return this.alpha(this.valpha+this.valpha*e)},rotate(e){const r=this.hsl();let n=r.color[0];return n=(n+e)%360,n=n<0?360+n:n,r.color[0]=n,r},mix(e,r){if(!e||!e.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);const n=e.rgb(),t=this.rgb(),o=r===void 0?.5:r,a=2*o-1,s=n.alpha()-t.alpha(),l=((a*s===-1?a:(a+s)/(1+a*s))+1)/2,i=1-l;return d.rgb(l*n.red()+i*t.red(),l*n.green()+i*t.green(),l*n.blue()+i*t.blue(),n.alpha()*o+t.alpha()*(1-o))}};for(const e of Object.keys(f)){if(Q.includes(e))continue;const{channels:r}=f[e];d.prototype[e]=function(...n){return this.model===e?new d(this):n.length>0?new d(n,e):new d([...Ie(f[this.model][e].raw(this.color)),this.valpha],e)},d[e]=function(...n){let t=n[0];return typeof t=="number"&&(t=z(n,r)),new d(t,e)}}function je(e,r){return Number(e.toFixed(r))}function Le(e){return function(r){return je(r,e)}}function h(e,r,n){e=Array.isArray(e)?e:[e];for(const t of e)(F[t]||=[])[r]=n;return e=e[0],function(t){let o;return t!==void 0?(n&&(t=n(t)),o=this[e](),o.color[r]=t,o):(o=this[e]().color[r],n&&(o=n(o)),o)}}function g(e){return function(r){return Math.max(0,Math.min(e,r))}}function Ie(e){return Array.isArray(e)?e:[e]}function z(e,r){for(let n=0;n.6}function Ce(e,r){const n=qe(r),t=Fe(r,n?e:"#ffffff",66);let o=_(e,t);const a=Se()?5.6:3.2;let s=0,l=e;const i=(n?-100:100)/255;for(;o(a/=255,a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4))),[n,t,o]=r;return .2126*n+.7152*t+.0722*o}function _(e,r){const n=$(e)+.05,t=$(r)+.05;return Math.max(n,t)/Math.min(n,t)}function ze(e){return new d(e).rgb().array()}function $e(e){const r=new d(e).hsl();return{h:r.color[0],s:r.color[1],l:r.color[2]}}function _e(e){return new d(e).hex()}const v=[],Pe={id:"system-tags",displayName:()=>"",iconSvgInline:()=>"",enabled({nodes:e}){return e.length===1},exec:async()=>null,renderInline:({nodes:e})=>e.length!==1||!e[0]?Promise.resolve(null):X(e[0]),order:0};O("systemtags:node:updated",De),O("systemtags:tag:created",Te),O("systemtags:tag:deleted",Ve),O("systemtags:tag:updated",Re);function De(e){X(e).then(r=>{document.querySelectorAll(`[data-systemtags-fileid="${e.fileid}"]`).forEach(n=>{n.replaceWith(r)})})}function Te(e){v.push(e)}function Ve(e){v.splice(v.findIndex(r=>r.id===e.id),1)}function Re(e){const r=v.findIndex(n=>n.id===e.id);r!==-1&&(v[r]=e),Ue(e)}function Ue(e){document.querySelectorAll(`[data-systemtag-name="${e.displayName}"]`).forEach(r=>{r.style.setProperty("--systemtag-color",`#${e.color}`)})}function L(e,r=!1){const n=document.createElement("li");n.classList.add("files-list__system-tag"),n.setAttribute("data-systemtag-name",e),n.textContent=e;const t=v.find(o=>o.displayName===e);if(t?.color){const o=getComputedStyle(document.body).getPropertyValue("--color-main-background").replace("#","")||(Ee()?"000000":"ffffff"),a=Ce(`#${t.color}`,`#${o}`);n.style.setProperty("--systemtag-color",a),n.setAttribute("data-systemtag-color","true")}return r&&n.classList.add("files-list__system-tag--more"),n}async function X(e){const r=ge(e),n=document.createElement("ul");if(n.classList.add("files-list__system-tags"),n.setAttribute("aria-label",w("files","Assigned collaborative tags")),n.setAttribute("data-systemtags-fileid",e.fileid?.toString()||""),r.length===0)return n;if(v.length===0)try{v.push(...await W())}catch(t){be.error("Failed to fetch tags",{error:t})}if(n.append(L(r[0])),r.length===2)n.append(L(r[1]));else if(r.length>1){const t=L("+"+(r.length-1),!0);t.setAttribute("title",r.slice(1).join(", ")),t.setAttribute("aria-hidden","true"),t.setAttribute("role","presentation"),n.append(t);for(const o of r.slice(1)){const a=L(o);a.classList.add("hidden-visually"),n.append(a)}}return n}const I="/systemtags",He=se();function Be(e){return` +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('', '', 'dist/SystemTagPicker-CAj-3F0_.chunk.mjs'),window.OC.filePath('', '', 'dist/index-Bndk0DrU.chunk.mjs'),window.OC.filePath('', '', 'dist/index-C1xmmKTZ-CGpLs37u.chunk.mjs'),window.OC.filePath('', '', 'dist/index-Ma7sfat2.chunk.mjs'),window.OC.filePath('', '', 'dist/index-CKn3f84a.chunk.mjs'),window.OC.filePath('', '', 'dist/NcModal-DHryP_87-Cy2jN0l1.chunk.mjs'),window.OC.filePath('', '', 'dist/runtime-dom.esm-bundler-DPEdZePn.chunk.mjs'),window.OC.filePath('', '', 'dist/autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs'),window.OC.filePath('', '', 'dist/createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs'),window.OC.filePath('', '', 'dist/translation-DoG5ZELJ-XUrtIRvk.chunk.mjs'),window.OC.filePath('', '', 'dist/createElementId-DhjFt1I9-C_oBIsvc.chunk.css'),window.OC.filePath('', '', 'dist/autolink-U5pBzLgI-R3us1MM8.chunk.css'),window.OC.filePath('', '', 'dist/NcModal-DHryP_87-CU2wYsLf.chunk.css'),window.OC.filePath('', '', 'dist/Web-BMpaLM07.chunk.mjs'),window.OC.filePath('', '', 'dist/Web-BYHcrfvW.chunk.css'),window.OC.filePath('', '', 'dist/index-DYA_tnKg.chunk.css'),window.OC.filePath('', '', 'dist/mdi-Cgau7A4L.chunk.mjs'),window.OC.filePath('', '', 'dist/mdi-Jq77EThs.chunk.css'),window.OC.filePath('', '', 'dist/NcCheckboxRadioSwitch-BMsPx74L-fxtySBP5.chunk.mjs'),window.OC.filePath('', '', 'dist/NcCheckboxRadioSwitch-BMsPx74L-CQwJiKOs.chunk.css'),window.OC.filePath('', '', 'dist/Plus-2xII8VOW.chunk.mjs'),window.OC.filePath('', '', 'dist/PencilOutline-BEazDXA8.chunk.mjs'),window.OC.filePath('', '', 'dist/PencilOutline-DdQinVMt.chunk.css'),window.OC.filePath('', '', 'dist/Plus-Som-mR4B.chunk.css'),window.OC.filePath('', '', 'dist/NcColorPicker-DDHxR-iN-DPYQyC01.chunk.mjs'),window.OC.filePath('', '', 'dist/colors-BHGKZFDI-CR_0725C.chunk.mjs'),window.OC.filePath('', '', 'dist/NcColorPicker-DDHxR-iN-Bwe91UZ7.chunk.css'),window.OC.filePath('', '', 'dist/NcEmptyContent-B8-90BSI-BbZilwDO.chunk.mjs'),window.OC.filePath('', '', 'dist/NcEmptyContent-B8-90BSI-DoZPzs7J.chunk.css'),window.OC.filePath('', '', 'dist/TrashCanOutline-CIT5iIpm.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-o5OFv3z6-BYlw6Xsd.chunk.css'),window.OC.filePath('', '', 'dist/api-DntTCVXB.chunk.mjs'),window.OC.filePath('', '', 'dist/index-BCebL___.chunk.mjs'),window.OC.filePath('', '', 'dist/index-sH3U_332.chunk.mjs'),window.OC.filePath('', '', 'dist/index-B8CmRwk1.chunk.mjs'),window.OC.filePath('', '', 'dist/NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs'),window.OC.filePath('', '', 'dist/NcPasswordField-uaMO2pdt-DxPSRxK-.chunk.css'),window.OC.filePath('', '', 'dist/dav-CL9HtPMq.chunk.mjs'),window.OC.filePath('', '', 'dist/index-BiqRItaQ.chunk.mjs'),window.OC.filePath('', '', 'dist/public-Dw51J06r.chunk.mjs'),window.OC.filePath('', '', 'dist/index-DdTMDjmV.chunk.mjs'),window.OC.filePath('', '', 'dist/systemtags-SystemTagPicker-r37hCiyq.chunk.css')])))=>i.map(i=>d[i]); +import{c as ne,g as te,V as oe,D as ae,b as E}from"./index-DdTMDjmV.chunk.mjs";import{g as se,e as R,f as le,r as ie,a as ce,b as ue,c as he}from"./dav-CL9HtPMq.chunk.mjs";import{_ as U}from"./index-Ma7sfat2.chunk.mjs";import{i as de,P,b as H,F as D}from"./public-Dw51J06r.chunk.mjs";import{t as w}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{s as B}from"./index-CKn3f84a.chunk.mjs";import{a as J}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{s as O,a as Z}from"./index-Bndk0DrU.chunk.mjs";import{e as ge,f as W,l as be}from"./api-DntTCVXB.chunk.mjs";import"./index-sH3U_332.chunk.mjs";import"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./index-BiqRItaQ.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import"./Web-BMpaLM07.chunk.mjs";import"./index-BCebL___.chunk.mjs";import"./index-B8CmRwk1.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";const Y='';async function T({nodes:e}){const r=await B(J(()=>U(()=>import("./SystemTagPicker-CAj-3F0_.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42]),import.meta.url)),{nodes:e});return Array(e.length).fill(r)}const fe={id:"systemtags:bulk",displayName:()=>w("systemtags","Manage tags"),iconSvgInline:()=>Y,enabled({nodes:e}){return de()||e.length===0||e.some(r=>!r.isDavResource)?!1:!e.some(r=>(r.permissions&P.UPDATE)===0)},async exec(e){const[r]=await T(e);return r},execBatch:T,hotkey:{description:w("systemtags","Manage tags"),key:"t"}},me='';function pe(){ne({id:"systemtags",order:20,displayName(){return w("systemtags","Add tags")},enabled(){return!0},iconSvgInline(){return me},onClick({node:e}){return B(J(()=>U(()=>import("./SystemTagPicker-CAj-3F0_.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42]),import.meta.url)),{nodes:[e]})}})}const S={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(const e in S)Object.freeze(S[e]);const N=Object.freeze(S),G=Object.create(null);for(const e in N)Object.hasOwn(N,e)&&(G[N[e]]=e);const b={to:{},get:{}};b.get=function(e){const r=e.slice(0,3).toLowerCase();let n,t;switch(r){case"hsl":{n=b.get.hsl(e),t="hsl";break}case"hwb":{n=b.get.hwb(e),t="hwb";break}default:{n=b.get.rgb(e),t="rgb";break}}return n?{model:t,value:n}:null},b.get.rgb=function(e){if(!e)return null;const r=/^#([a-f\d]{3,4})$/i,n=/^#([a-f\d]{6})([a-f\d]{2})?$/i,t=/^rgba?\(\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)\s*(?:[\s,|/]\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(%?)\s*)?\)$/i,o=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/i,a=/^(\w+)$/;let s=[0,0,0,1],l,i,u;if(l=e.match(n)){for(u=l[2],l=l[1],i=0;i<3;i++){const m=i*2;s[i]=Number.parseInt(l.slice(m,m+2),16)}u&&(s[3]=Number.parseInt(u,16)/255)}else if(l=e.match(r)){for(l=l[1],u=l[3],i=0;i<3;i++)s[i]=Number.parseInt(l[i]+l[i],16);u&&(s[3]=Number.parseInt(u+u,16)/255)}else if(l=e.match(t)){for(i=0;i<3;i++)s[i]=Number.parseFloat(l[i+1]);l[4]&&(s[3]=l[5]?Number.parseFloat(l[4])*.01:Number.parseFloat(l[4]))}else if(l=e.match(o)){for(i=0;i<3;i++)s[i]=Math.round(Number.parseFloat(l[i+1])*2.55);l[4]&&(s[3]=l[5]?Number.parseFloat(l[4])*.01:Number.parseFloat(l[4]))}else return(l=e.toLowerCase().match(a))?l[1]==="transparent"?[0,0,0,0]:Object.hasOwn(N,l[1])?(s=N[l[1]].slice(),s[3]=1,s):null:null;for(i=0;i<3;i++)s[i]=k(s[i],0,255);return s[3]=k(s[3],0,1),s},b.get.hsl=function(e){if(!e)return null;const r=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,n=e.match(r);if(n){const t=Number.parseFloat(n[4]),o=(Number.parseFloat(n[1])%360+360)%360,a=k(Number.parseFloat(n[2]),0,100),s=k(Number.parseFloat(n[3]),0,100),l=k(Number.isNaN(t)?1:t,0,1);return[o,a,s,l]}return null},b.get.hwb=function(e){if(!e)return null;const r=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*[\s,]\s*([+-]?[\d.]+)%\s*[\s,]\s*([+-]?[\d.]+)%\s*(?:[\s,]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,n=e.match(r);if(n){const t=Number.parseFloat(n[4]),o=(Number.parseFloat(n[1])%360+360)%360,a=k(Number.parseFloat(n[2]),0,100),s=k(Number.parseFloat(n[3]),0,100),l=k(Number.isNaN(t)?1:t,0,1);return[o,a,s,l]}return null},b.to.hex=function(...e){return"#"+j(e[0])+j(e[1])+j(e[2])+(e[3]<1?j(Math.round(e[3]*255)):"")},b.to.rgb=function(...e){return e.length<4||e[3]===1?"rgb("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+")":"rgba("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+", "+e[3]+")"},b.to.rgb.percent=function(...e){const r=Math.round(e[0]/255*100),n=Math.round(e[1]/255*100),t=Math.round(e[2]/255*100);return e.length<4||e[3]===1?"rgb("+r+"%, "+n+"%, "+t+"%)":"rgba("+r+"%, "+n+"%, "+t+"%, "+e[3]+")"},b.to.hsl=function(...e){return e.length<4||e[3]===1?"hsl("+e[0]+", "+e[1]+"%, "+e[2]+"%)":"hsla("+e[0]+", "+e[1]+"%, "+e[2]+"%, "+e[3]+")"},b.to.hwb=function(...e){let r="";return e.length>=4&&e[3]!==1&&(r=", "+e[3]),"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+r+")"},b.to.keyword=function(...e){return G[e.slice(0,3)]};function k(e,r,n){return Math.min(Math.max(r,e),n)}function j(e){const r=Math.round(e).toString(16).toUpperCase();return r.length<2?"0"+r:r}const q={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(const e in q)Object.freeze(q[e]);const A=Object.freeze(q),K={};for(const e of Object.keys(A))K[A[e]]=e;const c={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},oklab:{channels:3,labels:["okl","oka","okb"]},lch:{channels:3,labels:"lch"},oklch:{channels:3,labels:["okl","okc","okh"]},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}},y=(6/29)**3;function M(e){const r=e>.0031308?1.055*e**.4166666666666667-.055:e*12.92;return Math.min(Math.max(0,r),1)}function x(e){return e>.04045?((e+.055)/1.055)**2.4:e/12.92}for(const e of Object.keys(c)){if(!("channels"in c[e]))throw new Error("missing channels property: "+e);if(!("labels"in c[e]))throw new Error("missing channel labels property: "+e);if(c[e].labels.length!==c[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:r,labels:n}=c[e];delete c[e].channels,delete c[e].labels,Object.defineProperty(c[e],"channels",{value:r}),Object.defineProperty(c[e],"labels",{value:n})}c.rgb.hsl=function(e){const r=e[0]/255,n=e[1]/255,t=e[2]/255,o=Math.min(r,n,t),a=Math.max(r,n,t),s=a-o;let l,i;switch(a){case o:{l=0;break}case r:{l=(n-t)/s;break}case n:{l=2+(t-r)/s;break}case t:{l=4+(r-n)/s;break}}l=Math.min(l*60,360),l<0&&(l+=360);const u=(o+a)/2;return a===o?i=0:u<=.5?i=s/(a+o):i=s/(2-a-o),[l,i*100,u*100]},c.rgb.hsv=function(e){let r,n,t,o,a;const s=e[0]/255,l=e[1]/255,i=e[2]/255,u=Math.max(s,l,i),m=u-Math.min(s,l,i),p=function(re){return(u-re)/6/m+1/2};if(m===0)o=0,a=0;else{switch(a=m/u,r=p(s),n=p(l),t=p(i),u){case s:{o=t-n;break}case l:{o=1/3+r-t;break}case i:{o=2/3+n-r;break}}o<0?o+=1:o>1&&(o-=1)}return[o*360,a*100,u*100]},c.rgb.hwb=function(e){const r=e[0],n=e[1];let t=e[2];const o=c.rgb.hsl(e)[0],a=1/255*Math.min(r,Math.min(n,t));return t=1-1/255*Math.max(r,Math.max(n,t)),[o,a*100,t*100]},c.rgb.oklab=function(e){const r=x(e[0]/255),n=x(e[1]/255),t=x(e[2]/255),o=Math.cbrt(.4122214708*r+.5363325363*n+.0514459929*t),a=Math.cbrt(.2119034982*r+.6806995451*n+.1073969566*t),s=Math.cbrt(.0883024619*r+.2817188376*n+.6299787005*t),l=.2104542553*o+.793617785*a-.0040720468*s,i=1.9779984951*o-2.428592205*a+.4505937099*s,u=.0259040371*o+.7827717662*a-.808675766*s;return[l*100,i*100,u*100]},c.rgb.cmyk=function(e){const r=e[0]/255,n=e[1]/255,t=e[2]/255,o=Math.min(1-r,1-n,1-t),a=(1-r-o)/(1-o)||0,s=(1-n-o)/(1-o)||0,l=(1-t-o)/(1-o)||0;return[a*100,s*100,l*100,o*100]};function ye(e,r){return(e[0]-r[0])**2+(e[1]-r[1])**2+(e[2]-r[2])**2}c.rgb.keyword=function(e){const r=K[e];if(r)return r;let n=Number.POSITIVE_INFINITY,t;for(const o of Object.keys(A)){const a=A[o],s=ye(e,a);sy?n**(1/3):7.787*n+16/116,t=t>y?t**(1/3):7.787*t+16/116,o=o>y?o**(1/3):7.787*o+16/116;const a=116*t-16,s=500*(n-t),l=200*(t-o);return[a,s,l]},c.hsl.rgb=function(e){const r=e[0]/360,n=e[1]/100,t=e[2]/100;let o,a;if(n===0)return a=t*255,[a,a,a];const s=t<.5?t*(1+n):t+n-t*n,l=2*t-s,i=[0,0,0];for(let u=0;u<3;u++)o=r+1/3*-(u-1),o<0&&o++,o>1&&o--,6*o<1?a=l+(s-l)*6*o:2*o<1?a=s:3*o<2?a=l+(s-l)*(2/3-o)*6:a=l,i[u]=a*255;return i},c.hsl.hsv=function(e){const r=e[0];let n=e[1]/100,t=e[2]/100,o=n;const a=Math.max(t,.01);t*=2,n*=t<=1?t:2-t,o*=a<=1?a:2-a;const s=(t+n)/2,l=t===0?2*o/(a+o):2*n/(t+n);return[r,l*100,s*100]},c.hsv.rgb=function(e){const r=e[0]/60,n=e[1]/100;let t=e[2]/100;const o=Math.floor(r)%6,a=r-Math.floor(r),s=255*t*(1-n),l=255*t*(1-n*a),i=255*t*(1-n*(1-a));switch(t*=255,o){case 0:return[t,i,s];case 1:return[l,t,s];case 2:return[s,t,i];case 3:return[s,l,t];case 4:return[i,s,t];case 5:return[t,s,l]}},c.hsv.hsl=function(e){const r=e[0],n=e[1]/100,t=e[2]/100,o=Math.max(t,.01);let a,s;s=(2-n)*t;const l=(2-n)*o;return a=n*o,a/=l<=1?l:2-l,a=a||0,s/=2,[r,a*100,s*100]},c.hwb.rgb=function(e){const r=e[0]/360;let n=e[1]/100,t=e[2]/100;const o=n+t;let a;o>1&&(n/=o,t/=o);const s=Math.floor(6*r),l=1-t;a=6*r-s,(s&1)!==0&&(a=1-a);const i=n+a*(l-n);let u,m,p;switch(s){default:case 6:case 0:{u=l,m=i,p=n;break}case 1:{u=i,m=l,p=n;break}case 2:{u=n,m=l,p=i;break}case 3:{u=n,m=i,p=l;break}case 4:{u=i,m=n,p=l;break}case 5:{u=l,m=n,p=i;break}}return[u*255,m*255,p*255]},c.cmyk.rgb=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=e[3]/100,a=1-Math.min(1,r*(1-o)+o),s=1-Math.min(1,n*(1-o)+o),l=1-Math.min(1,t*(1-o)+o);return[a*255,s*255,l*255]},c.xyz.rgb=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100;let o,a,s;return o=r*3.2404542+n*-1.5371385+t*-.4985314,a=r*-.969266+n*1.8760108+t*.041556,s=r*.0556434+n*-.2040259+t*1.0572252,o=M(o),a=M(a),s=M(s),[o*255,a*255,s*255]},c.xyz.lab=function(e){let r=e[0],n=e[1],t=e[2];r/=95.047,n/=100,t/=108.883,r=r>y?r**(1/3):7.787*r+16/116,n=n>y?n**(1/3):7.787*n+16/116,t=t>y?t**(1/3):7.787*t+16/116;const o=116*n-16,a=500*(r-n),s=200*(n-t);return[o,a,s]},c.xyz.oklab=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=Math.cbrt(.8189330101*r+.3618667424*n-.1288597137*t),a=Math.cbrt(.0329845436*r+.9293118715*n+.0361456387*t),s=Math.cbrt(.0482003018*r+.2643662691*n+.633851707*t),l=.2104542553*o+.793617785*a-.0040720468*s,i=1.9779984951*o-2.428592205*a+.4505937099*s,u=.0259040371*o+.7827717662*a-.808675766*s;return[l*100,i*100,u*100]},c.oklab.oklch=function(e){return c.lab.lch(e)},c.oklab.xyz=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=(.999999998*r+.396337792*n+.215803758*t)**3,a=(1.000000008*r-.105561342*n-.063854175*t)**3,s=(1.000000055*r-.089484182*n-1.291485538*t)**3,l=1.227013851*o-.55779998*a+.281256149*s,i=-.040580178*o+1.11225687*a-.071676679*s,u=-.076381285*o-.421481978*a+1.58616322*s;return[l*100,i*100,u*100]},c.oklab.rgb=function(e){const r=e[0]/100,n=e[1]/100,t=e[2]/100,o=(r+.3963377774*n+.2158037573*t)**3,a=(r-.1055613458*n-.0638541728*t)**3,s=(r-.0894841775*n-1.291485548*t)**3,l=M(4.0767416621*o-3.3077115913*a+.2309699292*s),i=M(-1.2684380046*o+2.6097574011*a-.3413193965*s),u=M(-.0041960863*o-.7034186147*a+1.707614701*s);return[l*255,i*255,u*255]},c.oklch.oklab=function(e){return c.lch.lab(e)},c.lab.xyz=function(e){const r=e[0],n=e[1],t=e[2];let o,a,s;a=(r+16)/116,o=n/500+a,s=a-t/200;const l=a**3,i=o**3,u=s**3;return a=l>y?l:(a-16/116)/7.787,o=i>y?i:(o-16/116)/7.787,s=u>y?u:(s-16/116)/7.787,o*=95.047,a*=100,s*=108.883,[o,a,s]},c.lab.lch=function(e){const r=e[0],n=e[1],t=e[2];let o;o=Math.atan2(t,n)*360/2/Math.PI,o<0&&(o+=360);const a=Math.sqrt(n*n+t*t);return[r,a,o]},c.lch.lab=function(e){const r=e[0],n=e[1],t=e[2]/360*2*Math.PI,o=n*Math.cos(t),a=n*Math.sin(t);return[r,o,a]},c.rgb.ansi16=function(e,r=null){const[n,t,o]=e;let a=r===null?c.rgb.hsv(e)[2]:r;if(a=Math.round(a/50),a===0)return 30;let s=30+(Math.round(o/255)<<2|Math.round(t/255)<<1|Math.round(n/255));return a===2&&(s+=60),s},c.hsv.ansi16=function(e){return c.rgb.ansi16(c.hsv.rgb(e),e[2])},c.rgb.ansi256=function(e){const r=e[0],n=e[1],t=e[2];return r>>4===n>>4&&n>>4===t>>4?r<8?16:r>248?231:Math.round((r-8)/247*24)+232:16+36*Math.round(r/255*5)+6*Math.round(n/255*5)+Math.round(t/255*5)},c.ansi16.rgb=function(e){e=e[0];let r=e%10;if(r===0||r===7)return e>50&&(r+=3.5),r=r/10.5*255,[r,r,r];const n=(Math.trunc(e>50)+1)*.5,t=(r&1)*n*255,o=(r>>1&1)*n*255,a=(r>>2&1)*n*255;return[t,o,a]},c.ansi256.rgb=function(e){if(e=e[0],e>=232){const a=(e-232)*10+8;return[a,a,a]}e-=16;let r;const n=Math.floor(e/36)/5*255,t=Math.floor((r=e%36)/6)/5*255,o=r%6/5*255;return[n,t,o]},c.rgb.hex=function(e){const r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".slice(r.length)+r},c.hex.rgb=function(e){const r=e.toString(16).match(/[a-f\d]{6}|[a-f\d]{3}/i);if(!r)return[0,0,0];let n=r[0];r[0].length===3&&(n=[...n].map(l=>l+l).join(""));const t=Number.parseInt(n,16),o=t>>16&255,a=t>>8&255,s=t&255;return[o,a,s]},c.rgb.hcg=function(e){const r=e[0]/255,n=e[1]/255,t=e[2]/255,o=Math.max(Math.max(r,n),t),a=Math.min(Math.min(r,n),t),s=o-a;let l;const i=s<1?a/(1-s):0;return s<=0?l=0:o===r?l=(n-t)/s%6:o===n?l=2+(t-r)/s:l=4+(r-n)/s,l/=6,l%=1,[l*360,s*100,i*100]},c.hsl.hcg=function(e){const r=e[1]/100,n=e[2]/100,t=n<.5?2*r*n:2*r*(1-n);let o=0;return t<1&&(o=(n-.5*t)/(1-t)),[e[0],t*100,o*100]},c.hsv.hcg=function(e){const r=e[1]/100,n=e[2]/100,t=r*n;let o=0;return t<1&&(o=(n-t)/(1-t)),[e[0],t*100,o*100]},c.hcg.rgb=function(e){const r=e[0]/360,n=e[1]/100,t=e[2]/100;if(n===0)return[t*255,t*255,t*255];const o=[0,0,0],a=r%1*6,s=a%1,l=1-s;let i=0;switch(Math.floor(a)){case 0:{o[0]=1,o[1]=s,o[2]=0;break}case 1:{o[0]=l,o[1]=1,o[2]=0;break}case 2:{o[0]=0,o[1]=1,o[2]=s;break}case 3:{o[0]=0,o[1]=l,o[2]=1;break}case 4:{o[0]=s,o[1]=0,o[2]=1;break}default:o[0]=1,o[1]=0,o[2]=l}return i=(1-n)*t,[(n*o[0]+i)*255,(n*o[1]+i)*255,(n*o[2]+i)*255]},c.hcg.hsv=function(e){const r=e[1]/100,n=e[2]/100,t=r+n*(1-r);let o=0;return t>0&&(o=r/t),[e[0],o*100,t*100]},c.hcg.hsl=function(e){const r=e[1]/100,n=e[2]/100*(1-r)+.5*r;let t=0;return n>0&&n<.5?t=r/(2*n):n>=.5&&n<1&&(t=r/(2*(1-n))),[e[0],t*100,n*100]},c.hcg.hwb=function(e){const r=e[1]/100,n=e[2]/100,t=r+n*(1-r);return[e[0],(t-r)*100,(1-t)*100]},c.hwb.hcg=function(e){const r=e[1]/100,n=1-e[2]/100,t=n-r;let o=0;return t<1&&(o=(n-t)/(1-t)),[e[0],t*100,o*100]},c.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},c.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},c.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},c.gray.hsl=function(e){return[0,0,e[0]]},c.gray.hsv=c.gray.hsl,c.gray.hwb=function(e){return[0,100,e[0]]},c.gray.cmyk=function(e){return[0,0,0,e[0]]},c.gray.lab=function(e){return[e[0],0,0]},c.gray.hex=function(e){const r=Math.round(e[0]/100*255)&255,n=((r<<16)+(r<<8)+r).toString(16).toUpperCase();return"000000".slice(n.length)+n},c.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function we(){const e={},r=Object.keys(c);for(let{length:n}=r,t=0;t0;){const t=n.pop(),o=Object.keys(c[t]);for(let{length:a}=o,s=0;s1&&(n=t),e(n))};return"conversion"in e&&(r.conversion=e.conversion),r}function Oe(e){const r=function(...n){const t=n[0];if(t==null)return t;t.length>1&&(n=t);const o=e(n);if(typeof o=="object")for(let{length:a}=o,s=0;s0){this.model=r||"rgb",t=f[this.model].channels;const o=Array.prototype.slice.call(e,0,t);this.color=z(o,t),this.valpha=typeof e[t]=="number"?e[t]:1}else if(typeof e=="number")this.model="rgb",this.color=[e>>16&255,e>>8&255,e&255],this.valpha=1;else{this.valpha=1;const o=Object.keys(e);"alpha"in e&&(o.splice(o.indexOf("alpha"),1),this.valpha=typeof e.alpha=="number"?e.alpha:0);const a=o.sort().join("");if(!(a in C))throw new Error("Unable to parse color from object: "+JSON.stringify(e));this.model=C[a];const{labels:s}=f[this.model],l=[];for(n=0;n(e%360+360)%360),saturationl:h("hsl",1,g(100)),lightness:h("hsl",2,g(100)),saturationv:h("hsv",1,g(100)),value:h("hsv",2,g(100)),chroma:h("hcg",1,g(100)),gray:h("hcg",2,g(100)),white:h("hwb",1,g(100)),wblack:h("hwb",2,g(100)),cyan:h("cmyk",0,g(100)),magenta:h("cmyk",1,g(100)),yellow:h("cmyk",2,g(100)),black:h("cmyk",3,g(100)),x:h("xyz",0,g(95.047)),y:h("xyz",1,g(100)),z:h("xyz",2,g(108.833)),l:h("lab",0,g(100)),a:h("lab",1),b:h("lab",2),keyword(e){return e!==void 0?new d(e):f[this.model].keyword(this.color)},hex(e){return e!==void 0?new d(e):b.to.hex(...this.rgb().round().color)},hexa(e){if(e!==void 0)return new d(e);const r=this.rgb().round().color;let n=Math.round(this.valpha*255).toString(16).toUpperCase();return n.length===1&&(n="0"+n),b.to.hex(...r)+n},rgbNumber(){const e=this.rgb().color;return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255},luminosity(){const e=this.rgb().color,r=[];for(const[n,t]of e.entries()){const o=t/255;r[n]=o<=.04045?o/12.92:((o+.055)/1.055)**2.4}return .2126*r[0]+.7152*r[1]+.0722*r[2]},contrast(e){const r=this.luminosity(),n=e.luminosity();return r>n?(r+.05)/(n+.05):(n+.05)/(r+.05)},level(e){const r=this.contrast(e);return r>=7?"AAA":r>=4.5?"AA":""},isDark(){const e=this.rgb().color;return(e[0]*2126+e[1]*7152+e[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){const e=this.rgb();for(let r=0;r<3;r++)e.color[r]=255-e.color[r];return e},lighten(e){const r=this.hsl();return r.color[2]+=r.color[2]*e,r},darken(e){const r=this.hsl();return r.color[2]-=r.color[2]*e,r},saturate(e){const r=this.hsl();return r.color[1]+=r.color[1]*e,r},desaturate(e){const r=this.hsl();return r.color[1]-=r.color[1]*e,r},whiten(e){const r=this.hwb();return r.color[1]+=r.color[1]*e,r},blacken(e){const r=this.hwb();return r.color[2]+=r.color[2]*e,r},grayscale(){const e=this.rgb().color,r=e[0]*.3+e[1]*.59+e[2]*.11;return d.rgb(r,r,r)},fade(e){return this.alpha(this.valpha-this.valpha*e)},opaquer(e){return this.alpha(this.valpha+this.valpha*e)},rotate(e){const r=this.hsl();let n=r.color[0];return n=(n+e)%360,n=n<0?360+n:n,r.color[0]=n,r},mix(e,r){if(!e||!e.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);const n=e.rgb(),t=this.rgb(),o=r===void 0?.5:r,a=2*o-1,s=n.alpha()-t.alpha(),l=((a*s===-1?a:(a+s)/(1+a*s))+1)/2,i=1-l;return d.rgb(l*n.red()+i*t.red(),l*n.green()+i*t.green(),l*n.blue()+i*t.blue(),n.alpha()*o+t.alpha()*(1-o))}};for(const e of Object.keys(f)){if(Q.includes(e))continue;const{channels:r}=f[e];d.prototype[e]=function(...n){return this.model===e?new d(this):n.length>0?new d(n,e):new d([...Ie(f[this.model][e].raw(this.color)),this.valpha],e)},d[e]=function(...n){let t=n[0];return typeof t=="number"&&(t=z(n,r)),new d(t,e)}}function je(e,r){return Number(e.toFixed(r))}function Le(e){return function(r){return je(r,e)}}function h(e,r,n){e=Array.isArray(e)?e:[e];for(const t of e)(F[t]||=[])[r]=n;return e=e[0],function(t){let o;return t!==void 0?(n&&(t=n(t)),o=this[e](),o.color[r]=t,o):(o=this[e]().color[r],n&&(o=n(o)),o)}}function g(e){return function(r){return Math.max(0,Math.min(e,r))}}function Ie(e){return Array.isArray(e)?e:[e]}function z(e,r){for(let n=0;n.6}function Ce(e,r){const n=qe(r),t=Fe(r,n?e:"#ffffff",66);let o=_(e,t);const a=Se()?5.6:3.2;let s=0,l=e;const i=(n?-100:100)/255;for(;o(a/=255,a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4))),[n,t,o]=r;return .2126*n+.7152*t+.0722*o}function _(e,r){const n=$(e)+.05,t=$(r)+.05;return Math.max(n,t)/Math.min(n,t)}function ze(e){return new d(e).rgb().array()}function $e(e){const r=new d(e).hsl();return{h:r.color[0],s:r.color[1],l:r.color[2]}}function _e(e){return new d(e).hex()}const v=[],Pe={id:"system-tags",displayName:()=>"",iconSvgInline:()=>"",enabled({nodes:e}){return e.length===1},exec:async()=>null,renderInline:({nodes:e})=>e.length!==1||!e[0]?Promise.resolve(null):X(e[0]),order:0};O("systemtags:node:updated",De),O("systemtags:tag:created",Te),O("systemtags:tag:deleted",Ve),O("systemtags:tag:updated",Re);function De(e){X(e).then(r=>{document.querySelectorAll(`[data-systemtags-fileid="${e.fileid}"]`).forEach(n=>{n.replaceWith(r)})})}function Te(e){v.push(e)}function Ve(e){v.splice(v.findIndex(r=>r.id===e.id),1)}function Re(e){const r=v.findIndex(n=>n.id===e.id);r!==-1&&(v[r]=e),Ue(e)}function Ue(e){document.querySelectorAll(`[data-systemtag-name="${e.displayName}"]`).forEach(r=>{r.style.setProperty("--systemtag-color",`#${e.color}`)})}function L(e,r=!1){const n=document.createElement("li");n.classList.add("files-list__system-tag"),n.setAttribute("data-systemtag-name",e),n.textContent=e;const t=v.find(o=>o.displayName===e);if(t?.color){const o=getComputedStyle(document.body).getPropertyValue("--color-main-background").replace("#","")||(Ee()?"000000":"ffffff"),a=Ce(`#${t.color}`,`#${o}`);n.style.setProperty("--systemtag-color",a),n.setAttribute("data-systemtag-color","true")}return r&&n.classList.add("files-list__system-tag--more"),n}async function X(e){const r=ge(e),n=document.createElement("ul");if(n.classList.add("files-list__system-tags"),n.setAttribute("aria-label",w("files","Assigned collaborative tags")),n.setAttribute("data-systemtags-fileid",e.fileid?.toString()||""),r.length===0)return n;if(v.length===0)try{v.push(...await W())}catch(t){be.error("Failed to fetch tags",{error:t})}if(n.append(L(r[0])),r.length===2)n.append(L(r[1]));else if(r.length>1){const t=L("+"+(r.length-1),!0);t.setAttribute("title",r.slice(1).join(", ")),t.setAttribute("aria-hidden","true"),t.setAttribute("role","presentation"),n.append(t);for(const o of r.slice(1)){const a=L(o);a.classList.add("hidden-visually"),n.append(a)}}return n}const I="/systemtags",He=se();function Be(e){return` ${ue()} diff --git a/dist/twofactor_backupcodes-settings-personal.mjs b/dist/twofactor_backupcodes-settings-personal.mjs index ec9e2e9e0eb0a..309ab81225076 100644 --- a/dist/twofactor_backupcodes-settings-personal.mjs +++ b/dist/twofactor_backupcodes-settings-personal.mjs @@ -1,3 +1,3 @@ -import{d as U,c as A}from"./pinia-Bl16uMvU.chunk.mjs";import{r as _,f as I,o as n,c as l,u as a,g as x,w as k,j as p,t as d,e as E,F as m,b as f,C as M,p as w,h as y,z as N,k as R}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{g as $,l as j,a as z}from"./index-Ma7sfat2.chunk.mjs";import{a as P}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{t as o}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as B}from"./index-DxnK_Coe.chunk.mjs";import{N as g}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import{N as F}from"./Web-BMpaLM07.chunk.mjs";import{g as G}from"./index-Bndk0DrU.chunk.mjs";import{c as H}from"./index-BCebL___.chunk.mjs";import{g as q}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./index-sH3U_332.chunk.mjs";const D=G().detectLogLevel().setApp("twofactor_backupcodes").build();function J(r){const c=$().theming.name||"Nextcloud",e=window.open("",o("twofactor_backupcodes","{name} backup codes",{name:c}));if(!e)throw P(o("twofactor_backupcodes","Unable to open a new tab for printing")),new Error("Unable to open a new tab for printing");const t=e.document.createElement("h1");t.textContent=o("twofactor_backupcodes","{name} backup codes",{name:c});const s=e.document.createElement("pre");for(const b of r){const u=e.document.createTextNode(b);s.appendChild(u),s.appendChild(e.document.createElement("br"))}e.document.body.innerHTML="",e.document.body.appendChild(t),e.document.body.appendChild(s),e.print(),e.close()}async function K(){const r=q("/apps/twofactor_backupcodes/settings/create"),{data:c}=await H.post(r);return c}const v=j("twofactor_backupcodes","state"),O=U("twofactor_backupcodes",()=>{const r=_(v.enabled),c=_(v.total),e=_(v.used),t=_([]);async function s(){r.value=!1;const{codes:b,state:u}=await K();r.value=u.enabled,c.value=u.total,e.value=u.used,t.value=b}return{enabled:r,total:c,used:e,codes:t,generate:s}}),Q=["aria-label"],V=I({__name:"PersonalSettings",setup(r){const c=$().theming.name??"Nextcloud",e=O(),t=_(!1),s=N(()=>e.codes&&e.codes.length>0),b=c+"-backup-codes.txt",u=N(()=>s.value?"data:text/plain,"+encodeURIComponent(e.codes.reduce((i,C)=>i+C+` +import{d as U,c as A}from"./pinia-Bl16uMvU.chunk.mjs";import{r as _,f as I,o as n,c as l,u as a,g as x,w as k,j as p,t as d,e as E,F as m,b as f,C as M,p as w,h as y,z as N,k as R}from"./runtime-dom.esm-bundler-DPEdZePn.chunk.mjs";import{g as $,l as j,a as z}from"./index-Ma7sfat2.chunk.mjs";import{a as P}from"./index-C1xmmKTZ-CGpLs37u.chunk.mjs";import{t as o}from"./translation-DoG5ZELJ-XUrtIRvk.chunk.mjs";import{c as B}from"./index-B8CmRwk1.chunk.mjs";import{N as g}from"./autolink-U5pBzLgI-Bpd-_ISJ.chunk.mjs";import{N as F}from"./Web-BMpaLM07.chunk.mjs";import{g as G}from"./index-Bndk0DrU.chunk.mjs";import{c as H}from"./index-BCebL___.chunk.mjs";import{g as q}from"./createElementId-DhjFt1I9-Bh_4C_f2.chunk.mjs";import"./index-CKn3f84a.chunk.mjs";import"./NcModal-DHryP_87-Cy2jN0l1.chunk.mjs";import"./mdi-Cgau7A4L.chunk.mjs";import"./NcPasswordField-uaMO2pdt-Y_frnjqT.chunk.mjs";import"./NcInputField-o5OFv3z6-CZbWqg6Y.chunk.mjs";import"./index-sH3U_332.chunk.mjs";const D=G().detectLogLevel().setApp("twofactor_backupcodes").build();function J(r){const c=$().theming.name||"Nextcloud",e=window.open("",o("twofactor_backupcodes","{name} backup codes",{name:c}));if(!e)throw P(o("twofactor_backupcodes","Unable to open a new tab for printing")),new Error("Unable to open a new tab for printing");const t=e.document.createElement("h1");t.textContent=o("twofactor_backupcodes","{name} backup codes",{name:c});const s=e.document.createElement("pre");for(const b of r){const u=e.document.createTextNode(b);s.appendChild(u),s.appendChild(e.document.createElement("br"))}e.document.body.innerHTML="",e.document.body.appendChild(t),e.document.body.appendChild(s),e.print(),e.close()}async function K(){const r=q("/apps/twofactor_backupcodes/settings/create"),{data:c}=await H.post(r);return c}const v=j("twofactor_backupcodes","state"),O=U("twofactor_backupcodes",()=>{const r=_(v.enabled),c=_(v.total),e=_(v.used),t=_([]);async function s(){r.value=!1;const{codes:b,state:u}=await K();r.value=u.enabled,c.value=u.total,e.value=u.used,t.value=b}return{enabled:r,total:c,used:e,codes:t,generate:s}}),Q=["aria-label"],V=I({__name:"PersonalSettings",setup(r){const c=$().theming.name??"Nextcloud",e=O(),t=_(!1),s=N(()=>e.codes&&e.codes.length>0),b=c+"-backup-codes.txt",u=N(()=>s.value?"data:text/plain,"+encodeURIComponent(e.codes.reduce((i,C)=>i+C+` `,"")):"");async function h(){await B(),t.value=!0;try{await e.generate()}catch(i){D.error("Error generating backup codes",{error:i}),P(o("twofactor_backupcodes","An error occurred while generating your backup codes"))}finally{t.value=!1}}function T(){J(!e.codes||e.codes.length===0?[]:e.codes)}return(i,C)=>(n(),l("div",{class:w(i.$style.backupcodesSettings)},[a(e).enabled?(n(),l(m,{key:1},[f("p",null,[s.value?(n(),l(m,{key:1},[p(d(a(o)("twofactor_backupcodes","These are your backup codes. Please save and/or print them as you will not be able to read the codes again later."))+" ",1),f("ul",{"aria-label":a(o)("twofactor_backupcodes","List of backup codes")},[(n(!0),l(m,null,M(a(e).codes,S=>(n(),l("li",{key:S,class:w(i.$style.backupcodesSettings__code)},d(S),3))),128))],8,Q)],64)):(n(),l(m,{key:0},[p(d(a(o)("twofactor_backupcodes","Backup codes have been generated. {used} of {total} codes have been used.",{used:a(e).used,total:a(e).total})),1)],64))]),f("p",{class:w(i.$style.backupcodesSettings__actions)},[y(a(g),{id:"generate-backup-codes",variant:"error",onClick:h},{default:k(()=>[p(d(a(o)("twofactor_backupcodes","Regenerate backup codes")),1)]),_:1}),s.value?(n(),l(m,{key:0},[y(a(g),{onClick:T},{default:k(()=>[p(d(a(o)("twofactor_backupcodes","Print backup codes")),1)]),_:1}),y(a(g),{href:u.value,download:b,variant:"primary"},{default:k(()=>[p(d(a(o)("twofactor_backupcodes","Save backup codes")),1)]),_:1},8,["href"])],64)):E("",!0)],2),f("p",null,[f("em",null,d(a(o)("twofactor_backupcodes","If you regenerate backup codes, you automatically invalidate old codes.")),1)])],64)):(n(),x(a(g),{key:0,disabled:t.value,variant:"primary",onClick:h},{icon:k(()=>[t.value?(n(),x(a(F),{key:0})):E("",!0)]),default:k(()=>[p(" "+d(a(o)("twofactor_backupcodes","Generate backup codes")),1)]),_:1},8,["disabled"]))],2))}}),W="_backupcodesSettings_bnkw8_2",X="_backupcodesSettings__code_bnkw8_7",Y="_backupcodesSettings__actions_bnkw8_13",Z={backupcodesSettings:W,backupcodesSettings__code:X,backupcodesSettings__actions:Y},ee={$style:Z},ae=z(V,[["__cssModules",ee]]),oe=A(),L=R(ae);L.use(oe),L.mount("#twofactor-backupcodes-settings"); //# sourceMappingURL=twofactor_backupcodes-settings-personal.mjs.map diff --git a/package-lock.json b/package-lock.json index 78bc10d389ea4..854d51edeb5a9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,7 +22,7 @@ "@nextcloud/initial-state": "^3.0.0", "@nextcloud/l10n": "^3.4.1", "@nextcloud/logger": "^3.0.3", - "@nextcloud/password-confirmation": "^6.0.2", + "@nextcloud/password-confirmation": "^6.0.3", "@nextcloud/paths": "^3.1.0", "@nextcloud/router": "^3.1.0", "@nextcloud/sharing": "^0.4.0", @@ -2522,18 +2522,18 @@ } }, "node_modules/@nextcloud/password-confirmation": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@nextcloud/password-confirmation/-/password-confirmation-6.0.2.tgz", - "integrity": "sha512-EQbGiQl8lBZrFUNE6Xp9NeQEVtQdb/mtxk3VfwTnoVzAxghsI5yTWr9xcS5EKANoNjvVlIKtREN+LG2WWxft5A==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@nextcloud/password-confirmation/-/password-confirmation-6.0.3.tgz", + "integrity": "sha512-tgbzwfhlXXd9Eq8ZnYrTeH8bEkdyIgybN45Tkip01b3xABUlr0tMGGj8+ZNp2pozytcK+k1l6fyvRPc09g0rIw==", "license": "MIT", "dependencies": { "@nextcloud/auth": "^2.5.3", "@nextcloud/axios": "^2.5.2", - "@nextcloud/l10n": "^3.4.0", - "@nextcloud/logger": "^3.0.2", - "@nextcloud/router": "^3.0.1", - "@nextcloud/vue": "^9.1.0", - "vue": "^3.5.22" + "@nextcloud/l10n": "^3.4.1", + "@nextcloud/logger": "^3.0.3", + "@nextcloud/router": "^3.1.0", + "@nextcloud/vue": "^9.5.0", + "vue": "^3.5.29" }, "engines": { "node": "^20.0.0 || ^22.0.0 || ^24.0.0" diff --git a/package.json b/package.json index c0e9a3e6c2f55..4464f5795772f 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "@nextcloud/initial-state": "^3.0.0", "@nextcloud/l10n": "^3.4.1", "@nextcloud/logger": "^3.0.3", - "@nextcloud/password-confirmation": "^6.0.2", + "@nextcloud/password-confirmation": "^6.0.3", "@nextcloud/paths": "^3.1.0", "@nextcloud/router": "^3.1.0", "@nextcloud/sharing": "^0.4.0",