You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nextcloud-server/dist/settings-declarative-settin...

2 lines
12 KiB

(()=>{"use strict";var e={83419(e,a,i){var l=i(81222),r=i(53334),o=i(85471),n=i(44368),s=i(85168),d=i(34300),c=i(63814),p=i(46855),u=i(32073),f=i(16879),m=i(67607),v=i(88837);const A=(0,i(35947).YK)().setApp("settings").detectUser().build(),h={name:"DeclarativeSection",components:{NcSettingsSection:v.A,NcInputField:f.A,NcSelect:m.default,NcCheckboxRadioSwitch:u.A},props:{form:{type:Object,required:!0}},data:()=>({formFieldsData:{}}),computed:{formApp(){return this.form.app||""},formFields(){return this.form.fields||[]}},beforeMount(){this.initFormFieldsData()},methods:{initFormFieldsData(){this.form.fields.forEach(e=>{"checkbox"===e.type&&this.$set(e,"value",+e.value),"multi-checkbox"===e.type&&(""===e.value?(this.$set(e,"value",{}),e.options.forEach(t=>{this.$set(e.value,t.value,!1)})):(this.$set(e,"value",JSON.parse(e.value)),e.options.forEach(t=>{Object.hasOwn(e.value,t.value)||this.$set(e.value,t.value,!1)}),Object.keys(e.value).forEach(t=>{e.options.find(e=>e.value===t)||delete e.value[t]}))),"multi-select"===e.type&&(""===e.value?this.$set(e,"value",[]):this.$set(e,"value",JSON.parse(e.value))),this.$set(this.formFieldsData,e.id,{value:e.value})})},updateFormFieldDataValue(e,t,a=!1){this.formFieldsData[t.id].value=e,a&&this.updateDeclarativeSettingsValue(t)},async updateDeclarativeSettingsValue(e,a=null){try{let i=(0,c.KT)("settings/api/declarative/value");if(!0===e?.sensitive){i=(0,c.KT)("settings/api/declarative/value-sensitive");try{await(0,d.C5)()}catch{return void(0,s.Qg)(t("settings","Password confirmation is required"))}}return n.Ay.post(i,{app:this.formApp,formId:this.form.id.replace(this.formApp+"_",""),fieldId:e.id,value:null===a?this.formFieldsData[e.id].value:a})}catch(e){A.debug(e),(0,s.Qg)(t("settings","Failed to save setting"))}},onChangeDebounced:(0,p.A)(function(e){this.updateDeclarativeSettingsValue(e)},1e3),isTextFormField:e=>["text","password","email","tel","url","number"].includes(e.type)}};var b=i(85072),_=i.n(b),g=i(97825),y=i.n(g),C=i(77659),x=i.n(C),D=i(55056),F=i.n(D),k=i(10540),w=i.n(k),S=i(41113),O=i.n(S),N=i(56335),j={};j.styleTagTransform=O(),j.setAttributes=F(),j.insert=x().bind(null,"head"),j.domAPI=y(),j.insertStyleElement=w(),_()(N.A,j),N.A&&N.A.locals&&N.A.locals;const T=(0,i(14486).A)(h,function(){var e=this,t=e._self._c;return t("NcSettingsSection",{staticClass:"declarative-settings-section",attrs:{name:e.t(e.formApp,e.form.title),description:e.t(e.formApp,e.form.description),"doc-url":e.form.doc_url||""}},e._l(e.formFields,function(a){return t("div",{key:a.id,staticClass:"declarative-form-field",class:{"declarative-form-field-text":e.isTextFormField(a),"declarative-form-field-select":"select"===a.type,"declarative-form-field-multi-select":"multi-select"===a.type,"declarative-form-field-checkbox":"checkbox"===a.type,"declarative-form-field-multi_checkbox":"multi-checkbox"===a.type,"declarative-form-field-radio":"radio"===a.type},attrs:{"aria-label":e.t("settings","{app}'s declarative setting field: {name}",{app:e.formApp,name:e.t(e.formApp,a.title)})}},[e.isTextFormField(a)?[t("div",{staticClass:"input-wrapper"},[t("NcInputField",{attrs:{type:a.type,label:e.t(e.formApp,a.title),placeholder:e.t(e.formApp,a.placeholder)},on:{"update:value":function(t){return e.onChangeDebounced(a)},submit:function(t){return e.updateDeclarativeSettingsValue(a)}},model:{value:e.formFieldsData[a.id].value,callback:function(t){e.$set(e.formFieldsData[a.id],"value",t)},expression:"formFieldsData[formField.id].value"}})],1),e._v(" "),a.description?t("span",{staticClass:"hint"},[e._v(e._s(e.t(e.formApp,a.description)))]):e._e()]:e._e(),e._v(" "),"select"===a.type?[t("label",{attrs:{for:a.id+"_field"}},[e._v(e._s(e.t(e.formApp,a.title)))]),e._v(" "),t("div",{staticClass:"input-wrapper"},[t("NcSelect",{attrs:{id:a.id+"_field",options:a.options,placeholder:e.t(e.formApp,a.placeholder),"label-outside":!0,"model-value":e.formFieldsData[a.id].value},on:{input:t=>e.updateFormFieldDataValue(t,a,!0)}})],1),e._v(" "),a.description?t("span",{staticClass:"hint"},[e._v(e._s(e.t(e.formApp,a.description)))]):e._e()]:e._e(),e._v(" "),"multi-select"===a.type?[t("label",{attrs:{for:a.id+"_field"}},[e._v(e._s(e.t(e.formApp,a.title)))]),e._v(" "),t("div",{staticClass:"input-wrapper"},[t("NcSelect",{attrs:{id:a.id+"_field",options:a.options,placeholder:e.t(e.formApp,a.placeholder),multiple:!0,"label-outside":!0,"model-value":e.formFieldsData[a.id].value},on:{input:t=>{e.formFieldsData[a.id].value=t,e.updateDeclarativeSettingsValue(a,JSON.stringify(e.formFieldsData[a.id].value))}}})],1),e._v(" "),a.description?t("span",{staticClass:"hint"},[e._v(e._s(e.t(e.formApp,a.description)))]):e._e()]:e._e(),e._v(" "),"checkbox"===a.type?[a.label?t("label",{attrs:{for:a.id+"_field"}},[e._v(e._s(e.t(e.formApp,a.title)))]):e._e(),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{id:a.id+"_field","model-value":Boolean(e.formFieldsData[a.id].value),type:"switch"},on:{"update:modelValue":t=>{a.value=t,e.updateFormFieldDataValue(+t,a,!0)}}},[e._v("\n\t\t\t\t"+e._s(e.t(e.formApp,a.label??a.title))+"\n\t\t\t")]),e._v(" "),a.description?t("span",{staticClass:"hint"},[e._v(e._s(e.t(e.formApp,a.description)))]):e._e()]:e._e(),e._v(" "),"multi-checkbox"===a.type?[t("label",{attrs:{for:a.id+"_field"}},[e._v(e._s(e.t(e.formApp,a.title)))]),e._v(" "),e._l(a.options,function(i){return t("NcCheckboxRadioSwitch",{key:i.value,attrs:{id:a.id+"_field_"+i.value,"model-value":e.formFieldsData[a.id].value[i.value]},on:{"update:modelValue":t=>{e.formFieldsData[a.id].value[i.value]=t,e.updateDeclarativeSettingsValue(a,JSON.stringify(e.formFieldsData[a.id].value))}}},[e._v("\n\t\t\t\t"+e._s(e.t(e.formApp,i.name))+"\n\t\t\t")])}),e._v(" "),a.description?t("span",{staticClass:"hint"},[e._v(e._s(e.t(e.formApp,a.description)))]):e._e()]:e._e(),e._v(" "),"radio"===a.type?[t("label",{attrs:{for:a.id+"_field"}},[e._v(e._s(e.t(e.formApp,a.title)))]),e._v(" "),e._l(a.options,function(i){return t("NcCheckboxRadioSwitch",{key:i.value,attrs:{value:i.value,type:"radio","model-value":e.formFieldsData[a.id].value},on:{"update:modelValue":t=>e.updateFormFieldDataValue(t,a,!0)}},[e._v("\n\t\t\t\t"+e._s(e.t(e.formApp,i.name))+"\n\t\t\t")])}),e._v(" "),a.description?t("span",{staticClass:"hint"},[e._v(e._s(e.t(e.formApp,a.description)))]):e._e()]:e._e()],2)}),0)},[],!1,null,"f8477a3e",null).exports,E=(0,l.C)("settings","declarative-settings-forms",[]);document.addEventListener("DOMContentLoaded",()=>{A.debug("Loaded declarative forms",{forms:E}),function(e){o.Ay.mixin({methods:{t:r.t,n:r.n}});const t=o.Ay.extend(T);e.map(e=>{const a=`#${e.app}_${e.id}`;return new t({el:a,propsData:{form:e}})})}(E)})},56335(e,t,a){var i=a(71354),l=a.n(i),r=a(76314),o=a.n(r)()(l());o.push([e.id,".declarative-form-field[data-v-f8477a3e]{padding:10px 0}.declarative-form-field .input-wrapper[data-v-f8477a3e]{width:100%;max-width:400px}.declarative-form-field[data-v-f8477a3e]:last-child{border-bottom:none}.declarative-form-field .hint[data-v-f8477a3e]{display:inline-block;color:var(--color-text-maxcontrast);margin-inline-start:8px;padding-block-start:5px}.declarative-form-field-radio[data-v-f8477a3e],.declarative-form-field-multi_checkbox[data-v-f8477a3e]{max-height:250px;overflow-y:auto}.declarative-form-field-multi-select[data-v-f8477a3e],.declarative-form-field-select[data-v-f8477a3e]{display:flex;flex-direction:column}.declarative-form-field-multi-select label[data-v-f8477a3e],.declarative-form-field-select label[data-v-f8477a3e]{margin-bottom:5px}","",{version:3,sources:["webpack://./apps/settings/src/components/DeclarativeSettings/DeclarativeSection.vue"],names:[],mappings:"AACA,yCACC,cAAA,CAEA,wDACC,UAAA,CACA,eAAA,CAGD,oDACC,kBAAA,CAGD,+CACC,oBAAA,CACA,mCAAA,CACA,uBAAA,CACA,uBAAA,CAGD,uGACC,gBAAA,CACA,eAAA,CAGD,sGACC,YAAA,CACA,qBAAA,CAEA,kHACC,iBAAA",sourcesContent:["\n.declarative-form-field {\n\tpadding: 10px 0;\n\n\t.input-wrapper {\n\t\twidth: 100%;\n\t\tmax-width: 400px;\n\t}\n\n\t&:last-child {\n\t\tborder-bottom: none;\n\t}\n\n\t.hint {\n\t\tdisplay: inline-block;\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin-inline-start: 8px;\n\t\tpadding-block-start: 5px;\n\t}\n\n\t&-radio, &-multi_checkbox {\n\t\tmax-height: 250px;\n\t\toverflow-y: auto;\n\t}\n\n\t&-multi-select, &-select {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\tlabel {\n\t\t\tmargin-bottom: 5px;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const n=o;a.d(t,["A",0,n])}};const a={};function i(t){const l=a[t];if(void 0!==l)return l.exports;const r=a[t]={id:t,loaded:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.loaded=!0,r.exports}i.m=e,(()=>{const e=[];i.O=(t,a,l,r)=>{if(a){r=r||0;for(var o=e.length;o>0&&e[o-1][2]>r;o--)e[o]=e[o-1];return void(e[o]=[a,l,r])}let n=1/0;for(o=0;o<e.length;o++){let[a,l,r]=e[o],d=!0;for(var s=0;s<a.length;s++)(!1&r||n>=r)&&Object.keys(i.O).every(e=>i.O[e](a[s]))?a.splice(s--,1):(d=!1,r<n&&(n=r));if(d){e.splice(o--,1);const a=l();void 0!==a&&(t=a)}}return t}})(),i.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{if(Array.isArray(t))for(var a=0;a<t.length;){var l=t[a++],r=t[a++];i.o(e,l)?0===r&&a++:0===r?Object.defineProperty(e,l,{enumerable:!0,value:t[a++]}):Object.defineProperty(e,l,{enumerable:!0,get:r})}else for(var l in t)i.o(t,l)&&!i.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:t[l]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((t,a)=>(i.f[a](e,t),t),[])),i.u=e=>e+"-"+e+".js?v="+{4005:"4b3dad6afbff5677b20b",4017:"a703785212051935cebe",5236:"60f50adafd6da836b663",7859:"14c2bc9e9c3e71f7c9fe",8259:"01c4c15639039d74785f",8374:"fe6d51c7051cdb5e2df3",8689:"46b7672ccc9fa22cee44"}[e],i.o=(e,t)=>Object.hasOwn(e,t),(()=>{const e={},t="nextcloud-ui-legacy:";i.l=(a,l,r,o)=>{if(e[a])return void e[a].push(l);let n,s;if(void 0!==r){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const i=e[d];if(i.getAttribute("src")==a||i.getAttribute("data-webpack")==t+r){n=i;break}}}n||(s=!0,n=document.createElement("script"),n.charset="utf-8",i.nc&&n.setAttribute("nonce",i.nc),n.setAttribute("data-webpack",t+r),n.src=a),e[a]=[l];const c=(t,i)=>{n.onerror=n.onload=null,clearTimeout(p);const l=e[a];if(delete e[a],n.parentNode?.removeChild(n),l?.forEach(e=>e(i)),t)return t(i)},p=setTimeout(c.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=c.bind(null,n.onerror),n.onload=c.bind(null,n.onload),s&&document.head.appendChild(n)}})(),i.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=6085,i.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},i.cjs=e=>{const t={exports:{}};return e.call(t.exports,t,t.exports),t.exports},(()=>{let e;globalThis.importScripts&&(e=globalThis.location+"");const t=globalThis.document;if(!e&&t&&("SCRIPT"===t.currentScript?.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){const a=t.getElementsByTagName("script");if(a.length){let t=a.length-1;for(;t>-1&&(!e||!/^http(s?):/.test(e));)e=a[t--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={6085:0};i.f.j=(t,a)=>{let l=i.o(e,t)?e[t]:void 0;if(0!==l)if(l)a.push(l[2]);else{const r=new Promise((a,i)=>l=e[t]=[a,i]);a.push(l[2]=r);const o=i.p+i.u(t),n=new Error,s=a=>{if(i.o(e,t)&&(l=e[t],0!==l&&(e[t]=void 0),l)){const e=a&&("load"===a.type?"missing":a.type),i=a&&a.target&&a.target.src;n.message="Loading chunk "+t+" failed.\n("+e+": "+i+")",n.name="ChunkLoadError",n.type=e,n.request=i,n.event=a,l[1](n)}};i.l(o,s,"chunk-"+t,t)}},i.O.j=t=>0===e[t];const t=(t,a)=>{let[l,r,o]=a;var n,s,d=0;if(l.some(t=>0!==e[t])){for(n in r)i.o(r,n)&&(i.m[n]=r[n]);if(o)var c=o(i)}for(t&&t(a);d<l.length;d++)s=l[d],i.o(e,s)&&e[s]&&e[s][0](),e[s]=0;return i.O(c)},a=globalThis.webpackChunknextcloud_ui_legacy||=[];a.forEach(t.bind(null,0)),a.push=t.bind(null,a.push.bind(a))})(),i.nc=void 0;let l=i.O(void 0,[4208],()=>i(83419));l=i.O(l)})();
//# sourceMappingURL=settings-declarative-settings-forms.js.map?v=9ad50e6e253d7b9a2bb7