server/dist/theming-admin-theming.js.map

1 line
91 KiB
Plaintext

{"version":3,"file":"theming-admin-theming.js?v=32b1b81d6863b93c7294","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/theming/src/mixins/admin/FieldMixin.js","webpack:///nextcloud/apps/theming/src/mixins/admin/TextValueMixin.js","webpack:///nextcloud/apps/theming/src/components/admin/CheckboxField.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/theming/src/components/admin/CheckboxField.vue","webpack://nextcloud/./apps/theming/src/components/admin/CheckboxField.vue?4277","webpack://nextcloud/./apps/theming/src/components/admin/CheckboxField.vue?8981","webpack:///nextcloud/apps/theming/src/components/admin/CheckboxField.vue?vue&type=template&id=17145f08&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/ColorPickerField.vue","webpack:///nextcloud/apps/theming/src/components/admin/ColorPickerField.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/theming/src/components/admin/ColorPickerField.vue?e0c8","webpack://nextcloud/./apps/theming/src/components/admin/ColorPickerField.vue?977d","webpack:///nextcloud/apps/theming/src/components/admin/ColorPickerField.vue?vue&type=template&id=6b238a3e&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/FileInputField.vue","webpack:///nextcloud/apps/theming/src/components/admin/FileInputField.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/theming/src/components/admin/FileInputField.vue?5358","webpack://nextcloud/./apps/theming/src/components/admin/FileInputField.vue?4d24","webpack:///nextcloud/apps/theming/src/components/admin/FileInputField.vue?vue&type=template&id=137dd337&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/TextField.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/theming/src/components/admin/TextField.vue","webpack://nextcloud/./apps/theming/src/components/admin/TextField.vue?91e3","webpack://nextcloud/./apps/theming/src/components/admin/TextField.vue?c7b6","webpack:///nextcloud/apps/theming/src/components/admin/TextField.vue?vue&type=template&id=21244e1d&scoped=true&","webpack:///nextcloud/apps/theming/src/AdminTheming.vue","webpack:///nextcloud/apps/theming/src/AdminTheming.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/theming/src/AdminTheming.vue?5704","webpack://nextcloud/./apps/theming/src/AdminTheming.vue?6138","webpack:///nextcloud/apps/theming/src/AdminTheming.vue?vue&type=template&id=6dcac59d&scoped=true&","webpack:///nextcloud/apps/theming/src/admin-settings.js","webpack:///nextcloud/apps/theming/src/helpers/refreshStyles.js","webpack:///nextcloud/apps/theming/src/AdminTheming.vue?vue&type=style&index=0&id=6dcac59d&lang=scss&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/CheckboxField.vue?vue&type=style&index=0&id=17145f08&lang=scss&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/ColorPickerField.vue?vue&type=style&index=0&id=6b238a3e&lang=scss&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/FileInputField.vue?vue&type=style&index=0&id=137dd337&lang=scss&scoped=true&","webpack:///nextcloud/apps/theming/src/components/admin/TextField.vue?vue&type=style&index=0&id=21244e1d&lang=scss&scoped=true&","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nconst styleRefreshFields = [\n\t'color',\n\t'logo',\n\t'background',\n\t'logoheader',\n\t'favicon',\n\t'disable-user-theming',\n]\n\nexport default {\n\temits: [\n\t\t'update:theming',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tshowSuccess: false,\n\t\t\terrorMessage: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tid() {\n\t\t\treturn `admin-theming-${this.name}`\n\t\t},\n\t},\n\n\tmethods: {\n\t\treset() {\n\t\t\tthis.showSuccess = false\n\t\t\tthis.errorMessage = ''\n\t\t},\n\n\t\thandleSuccess() {\n\t\t\tthis.showSuccess = true\n\t\t\tsetTimeout(() => { this.showSuccess = false }, 2000)\n\t\t\tif (styleRefreshFields.includes(this.name)) {\n\t\t\t\tthis.$emit('update:theming')\n\t\t\t}\n\t\t},\n\t},\n}\n","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\n\nimport FieldMixin from './FieldMixin.js'\n\nexport default {\n\tmixins: [\n\t\tFieldMixin,\n\t],\n\n\twatch: {\n\t\tvalue(value) {\n\t\t\tthis.localValue = value\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tlocalValue: this.value,\n\t\t}\n\t},\n\n\tmethods: {\n\t\tasync save() {\n\t\t\tthis.reset()\n\t\t\tconst url = generateUrl('/apps/theming/ajax/updateStylesheet')\n\t\t\t// Convert boolean to string as server expects string value\n\t\t\tconst valueToPost = this.localValue === true ? 'yes' : this.localValue === false ? 'no' : this.localValue\n\t\t\ttry {\n\t\t\t\tawait axios.post(url, {\n\t\t\t\t\tsetting: this.name,\n\t\t\t\t\tvalue: valueToPost,\n\t\t\t\t})\n\t\t\t\tthis.$emit('update:value', this.localValue)\n\t\t\t\tthis.handleSuccess()\n\t\t\t} catch (e) {\n\t\t\t\tthis.errorMessage = e.response.data.data?.message\n\t\t\t}\n\t\t},\n\n\t\tasync undo() {\n\t\t\tthis.reset()\n\t\t\tconst url = generateUrl('/apps/theming/ajax/undoChanges')\n\t\t\ttry {\n\t\t\t\tawait axios.post(url, {\n\t\t\t\t\tsetting: this.name,\n\t\t\t\t})\n\t\t\t\tthis.$emit('update:value', this.defaultValue)\n\t\t\t\tthis.handleSuccess()\n\t\t\t} catch (e) {\n\t\t\t\tthis.errorMessage = e.response.data.data?.message\n\t\t\t}\n\t\t},\n\t},\n}\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckboxField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckboxField.vue?vue&type=script&lang=js&\"","<!--\n - @copyright 2022 Christopher Ng <chrng8@gmail.com>\n -\n - @author Christopher Ng <chrng8@gmail.com>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n-->\n\n<template>\n\t<div class=\"field\">\n\t\t<label :for=\"id\">{{ displayName }}</label>\n\t\t<div class=\"field__row\">\n\t\t\t<NcCheckboxRadioSwitch type=\"switch\"\n\t\t\t\t:id=\"id\"\n\t\t\t\t:checked.sync=\"localValue\"\n\t\t\t\t@update:checked=\"save\">\n\t\t\t\t{{ label }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</div>\n\n\t\t<p class=\"field__description\">{{ description }}</p>\n\n\t\t<NcNoteCard v-if=\"errorMessage\"\n\t\t\ttype=\"error\"\n\t\t\t:show-alert=\"true\">\n\t\t\t<p>{{ errorMessage }}</p>\n\t\t</NcNoteCard>\n\t</div>\n</template>\n\n<script>\nimport {\n\tNcCheckboxRadioSwitch,\n\tNcNoteCard,\n} from '@nextcloud/vue'\n\nimport TextValueMixin from '../../mixins/admin/TextValueMixin.js'\n\nexport default {\n\tname: 'CheckboxField',\n\n\tcomponents: {\n\t\tNcCheckboxRadioSwitch,\n\t\tNcNoteCard,\n\t},\n\n\tmixins: [\n\t\tTextValueMixin,\n\t],\n\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tvalue: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\tdisplayName: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import './shared/field.scss';\n\n.field {\n\t&__description {\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n}\n</style>\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckboxField.vue?vue&type=style&index=0&id=17145f08&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckboxField.vue?vue&type=style&index=0&id=17145f08&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CheckboxField.vue?vue&type=template&id=17145f08&scoped=true&\"\nimport script from \"./CheckboxField.vue?vue&type=script&lang=js&\"\nexport * from \"./CheckboxField.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CheckboxField.vue?vue&type=style&index=0&id=17145f08&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17145f08\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"field\"},[_c('label',{attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.displayName))]),_vm._v(\" \"),_c('div',{staticClass:\"field__row\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"type\":\"switch\",\"id\":_vm.id,\"checked\":_vm.localValue},on:{\"update:checked\":[function($event){_vm.localValue=$event},_vm.save]}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.label)+\"\\n\\t\\t\")])],1),_vm._v(\" \"),_c('p',{staticClass:\"field__description\"},[_vm._v(_vm._s(_vm.description))]),_vm._v(\" \"),(_vm.errorMessage)?_c('NcNoteCard',{attrs:{\"type\":\"error\",\"show-alert\":true}},[_c('p',[_vm._v(_vm._s(_vm.errorMessage))])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright 2022 Christopher Ng <chrng8@gmail.com>\n -\n - @author Christopher Ng <chrng8@gmail.com>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n-->\n\n<template>\n\t<div class=\"field\">\n\t\t<label :for=\"id\">{{ displayName }}</label>\n\t\t<div class=\"field__row\">\n\t\t\t<NcColorPicker :value.sync=\"localValue\"\n\t\t\t\t:advanced-fields=\"true\"\n\t\t\t\t@update:value=\"debounceSave\">\n\t\t\t\t<NcButton class=\"field__button\"\n\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\t:id=\"id\"\n\t\t\t\t\t:aria-label=\"t('theming', 'Select a custom color')\">\n\t\t\t\t\t{{ value }}\n\t\t\t\t</NcButton>\n\t\t\t</NcColorPicker>\n\t\t\t<NcButton v-if=\"value !== defaultValue\"\n\t\t\t\ttype=\"tertiary\"\n\t\t\t\t:aria-label=\"t('theming', 'Reset to default')\"\n\t\t\t\t@click=\"undo\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Undo :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t</div>\n\n\t\t<NcNoteCard v-if=\"errorMessage\"\n\t\t\ttype=\"error\"\n\t\t\t:show-alert=\"true\">\n\t\t\t<p>{{ errorMessage }}</p>\n\t\t</NcNoteCard>\n\t</div>\n</template>\n\n<script>\nimport { debounce } from 'debounce'\nimport {\n\tNcButton,\n\tNcColorPicker,\n\tNcNoteCard,\n} from '@nextcloud/vue'\nimport Undo from 'vue-material-design-icons/UndoVariant.vue'\n\nimport TextValueMixin from '../../mixins/admin/TextValueMixin.js'\n\nexport default {\n\tname: 'ColorPickerField',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcColorPicker,\n\t\tNcNoteCard,\n\t\tUndo,\n\t},\n\n\tmixins: [\n\t\tTextValueMixin,\n\t],\n\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdisplayName: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tmethods: {\n\t\tdebounceSave: debounce(async function() {\n\t\t\tawait this.save()\n\t\t}, 200),\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import './shared/field.scss';\n\n.field {\n\t// Override default NcButton styles\n\t&__button {\n\t\twidth: 230px !important;\n\t\tborder-radius: var(--border-radius-large) !important;\n\t\tbackground-color: var(--color-primary-default) !important;\n\t\t&:hover {\n\t\t\tbackground-color: var(--color-primary-element-default-hover) !important;\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ColorPickerField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ColorPickerField.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ColorPickerField.vue?vue&type=style&index=0&id=6b238a3e&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ColorPickerField.vue?vue&type=style&index=0&id=6b238a3e&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ColorPickerField.vue?vue&type=template&id=6b238a3e&scoped=true&\"\nimport script from \"./ColorPickerField.vue?vue&type=script&lang=js&\"\nexport * from \"./ColorPickerField.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ColorPickerField.vue?vue&type=style&index=0&id=6b238a3e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b238a3e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"field\"},[_c('label',{attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.displayName))]),_vm._v(\" \"),_c('div',{staticClass:\"field__row\"},[_c('NcColorPicker',{attrs:{\"value\":_vm.localValue,\"advanced-fields\":true},on:{\"update:value\":[function($event){_vm.localValue=$event},_vm.debounceSave]}},[_c('NcButton',{staticClass:\"field__button\",attrs:{\"type\":\"primary\",\"id\":_vm.id,\"aria-label\":_vm.t('theming', 'Select a custom color')}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.value)+\"\\n\\t\\t\\t\")])],1),_vm._v(\" \"),(_vm.value !== _vm.defaultValue)?_c('NcButton',{attrs:{\"type\":\"tertiary\",\"aria-label\":_vm.t('theming', 'Reset to default')},on:{\"click\":_vm.undo},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Undo',{attrs:{\"size\":20}})]},proxy:true}],null,false,33666776)}):_vm._e()],1),_vm._v(\" \"),(_vm.errorMessage)?_c('NcNoteCard',{attrs:{\"type\":\"error\",\"show-alert\":true}},[_c('p',[_vm._v(_vm._s(_vm.errorMessage))])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright 2022 Christopher Ng <chrng8@gmail.com>\n -\n - @author Christopher Ng <chrng8@gmail.com>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n-->\n\n<template>\n\t<div class=\"field\">\n\t\t<label :for=\"id\">{{ displayName }}</label>\n\t\t<div class=\"field__row\">\n\t\t\t<NcButton type=\"secondary\"\n\t\t\t\t:id=\"id\"\n\t\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t\t@click=\"activateLocalFilePicker\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Upload :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ t('theming', 'Upload') }}\n\t\t\t</NcButton>\n\t\t\t<NcButton v-if=\"showReset\"\n\t\t\t\ttype=\"tertiary\"\n\t\t\t\t:aria-label=\"t('theming', 'Reset to default')\"\n\t\t\t\t@click=\"undo\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Undo :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton v-if=\"showRemove\"\n\t\t\t\ttype=\"tertiary\"\n\t\t\t\t:aria-label=\"t('theming', 'Remove background image')\"\n\t\t\t\t@click=\"removeBackground\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcLoadingIcon v-if=\"showLoading\"\n\t\t\t\tclass=\"field__loading-icon\"\n\t\t\t\t:size=\"20\" />\n\t\t</div>\n\n\t\t<div v-if=\"(name === 'logoheader' || name === 'favicon') && mimeValue !== defaultMimeValue\"\n\t\t\tclass=\"field__preview\"\n\t\t\t:class=\"{\n\t\t\t\t'field__preview--logoheader': name === 'logoheader',\n\t\t\t\t'field__preview--favicon': name === 'favicon',\n\t\t\t}\" />\n\n\t\t<NcNoteCard v-if=\"errorMessage\"\n\t\t\ttype=\"error\"\n\t\t\t:show-alert=\"true\">\n\t\t\t<p>{{ errorMessage }}</p>\n\t\t</NcNoteCard>\n\n\t\t<input ref=\"input\"\n\t\t\ttype=\"file\"\n\t\t\t@change=\"onChange\">\n\t</div>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\n\nimport {\n\tNcButton,\n\tNcLoadingIcon,\n\tNcNoteCard,\n} from '@nextcloud/vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Undo from 'vue-material-design-icons/UndoVariant.vue'\nimport Upload from 'vue-material-design-icons/Upload.vue'\n\nimport FieldMixin from '../../mixins/admin/FieldMixin.js'\n\nexport default {\n\tname: 'FileInputField',\n\n\tcomponents: {\n\t\tDelete,\n\t\tNcButton,\n\t\tNcLoadingIcon,\n\t\tNcNoteCard,\n\t\tUndo,\n\t\tUpload,\n\t},\n\n\tmixins: [\n\t\tFieldMixin,\n\t],\n\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tmimeName: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tmimeValue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdefaultMimeValue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdisplayName: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowLoading: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tshowReset() {\n\t\t\treturn this.mimeValue !== this.defaultMimeValue\n\t\t},\n\n\t\tshowRemove() {\n\t\t\tif (this.name === 'background') {\n\t\t\t\tif (this.mimeValue.startsWith('image/')) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tif (this.mimeValue === this.defaultMimeValue) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t},\n\n\tmethods: {\n\t\tactivateLocalFilePicker() {\n\t\t\tthis.reset()\n\t\t\t// Set to null so that selecting the same file will trigger the change event\n\t\t\tthis.$refs.input.value = null\n\t\t\tthis.$refs.input.click()\n\t\t},\n\n\t\tasync onChange(e) {\n\t\t\tconst file = e.target.files[0]\n\n\t\t\tconst formData = new FormData()\n\t\t\tformData.append('key', this.name)\n\t\t\tformData.append('image', file)\n\n\t\t\tconst url = generateUrl('/apps/theming/ajax/uploadImage')\n\t\t\ttry {\n\t\t\t\tthis.showLoading = true\n\t\t\t\tawait axios.post(url, formData)\n\t\t\t\tthis.showLoading = false\n\t\t\t\tthis.$emit('update:mime-value', file.type)\n\t\t\t\tthis.handleSuccess()\n\t\t\t} catch (e) {\n\t\t\t\tthis.showLoading = false\n\t\t\t\tthis.errorMessage = e.response.data.data?.message\n\t\t\t}\n\t\t},\n\n\t\tasync undo() {\n\t\t\tthis.reset()\n\t\t\tconst url = generateUrl('/apps/theming/ajax/undoChanges')\n\t\t\ttry {\n\t\t\t\tawait axios.post(url, {\n\t\t\t\t\tsetting: this.mimeName,\n\t\t\t\t})\n\t\t\t\tthis.$emit('update:mime-value', this.defaultMimeValue)\n\t\t\t\tthis.handleSuccess()\n\t\t\t} catch (e) {\n\t\t\t\tthis.errorMessage = e.response.data.data?.message\n\t\t\t}\n\t\t},\n\n\t\tasync removeBackground() {\n\t\t\tthis.reset()\n\t\t\tconst url = generateUrl('/apps/theming/ajax/updateStylesheet')\n\t\t\ttry {\n\t\t\t\tawait axios.post(url, {\n\t\t\t\t\tsetting: this.mimeName,\n\t\t\t\t\tvalue: 'backgroundColor',\n\t\t\t\t})\n\t\t\t\tthis.$emit('update:mime-value', 'backgroundColor')\n\t\t\t\tthis.handleSuccess()\n\t\t\t} catch (e) {\n\t\t\t\tthis.errorMessage = e.response.data.data?.message\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import './shared/field.scss';\n\n.field {\n\t&__loading-icon {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t}\n\n\t&__preview {\n\t\twidth: 70px;\n\t\theight: 70px;\n\t\tbackground-size: contain;\n\t\tbackground-position: center;\n\t\tbackground-repeat: no-repeat;\n\t\tmargin: 10px 0;\n\n\t\t&--logoheader {\n\t\t\tbackground-image: var(--image-logoheader);\n\t\t}\n\n\t\t&--favicon {\n\t\t\tbackground-image: var(--image-favicon);\n\t\t}\n\t}\n}\n\ninput[type=\"file\"] {\n\tdisplay: none;\n}\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileInputField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileInputField.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileInputField.vue?vue&type=style&index=0&id=137dd337&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileInputField.vue?vue&type=style&index=0&id=137dd337&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileInputField.vue?vue&type=template&id=137dd337&scoped=true&\"\nimport script from \"./FileInputField.vue?vue&type=script&lang=js&\"\nexport * from \"./FileInputField.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FileInputField.vue?vue&type=style&index=0&id=137dd337&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"137dd337\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"field\"},[_c('label',{attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.displayName))]),_vm._v(\" \"),_c('div',{staticClass:\"field__row\"},[_c('NcButton',{attrs:{\"type\":\"secondary\",\"id\":_vm.id,\"aria-label\":_vm.ariaLabel},on:{\"click\":_vm.activateLocalFilePicker},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Upload',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('theming', 'Upload'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.showReset)?_c('NcButton',{attrs:{\"type\":\"tertiary\",\"aria-label\":_vm.t('theming', 'Reset to default')},on:{\"click\":_vm.undo},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Undo',{attrs:{\"size\":20}})]},proxy:true}],null,false,33666776)}):_vm._e(),_vm._v(\" \"),(_vm.showRemove)?_c('NcButton',{attrs:{\"type\":\"tertiary\",\"aria-label\":_vm.t('theming', 'Remove background image')},on:{\"click\":_vm.removeBackground},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Delete',{attrs:{\"size\":20}})]},proxy:true}],null,false,2705356561)}):_vm._e(),_vm._v(\" \"),(_vm.showLoading)?_c('NcLoadingIcon',{staticClass:\"field__loading-icon\",attrs:{\"size\":20}}):_vm._e()],1),_vm._v(\" \"),((_vm.name === 'logoheader' || _vm.name === 'favicon') && _vm.mimeValue !== _vm.defaultMimeValue)?_c('div',{staticClass:\"field__preview\",class:{\n\t\t\t'field__preview--logoheader': _vm.name === 'logoheader',\n\t\t\t'field__preview--favicon': _vm.name === 'favicon',\n\t\t}}):_vm._e(),_vm._v(\" \"),(_vm.errorMessage)?_c('NcNoteCard',{attrs:{\"type\":\"error\",\"show-alert\":true}},[_c('p',[_vm._v(_vm._s(_vm.errorMessage))])]):_vm._e(),_vm._v(\" \"),_c('input',{ref:\"input\",attrs:{\"type\":\"file\"},on:{\"change\":_vm.onChange}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=script&lang=js&\"","<!--\n - @copyright 2022 Christopher Ng <chrng8@gmail.com>\n -\n - @author Christopher Ng <chrng8@gmail.com>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n-->\n\n<template>\n\t<div class=\"field\">\n\t\t<NcTextField :value.sync=\"localValue\"\n\t\t\t:label=\"displayName\"\n\t\t\t:label-visible=\"true\"\n\t\t\t:placeholder=\"placeholder\"\n\t\t\t:type=\"type\"\n\t\t\t:maxlength=\"maxlength\"\n\t\t\t:spellcheck=\"false\"\n\t\t\t:success=\"showSuccess\"\n\t\t\t:error=\"Boolean(errorMessage)\"\n\t\t\t:helper-text=\"errorMessage\"\n\t\t\t:show-trailing-button=\"value !== defaultValue\"\n\t\t\ttrailing-button-icon=\"undo\"\n\t\t\t@trailing-button-click=\"undo\"\n\t\t\t@keydown.enter=\"save\"\n\t\t\t@blur=\"save\" />\n\t</div>\n</template>\n\n<script>\nimport { NcTextField } from '@nextcloud/vue'\n\nimport TextValueMixin from '../../mixins/admin/TextValueMixin.js'\n\nexport default {\n\tname: 'TextField',\n\n\tcomponents: {\n\t\tNcTextField,\n\t},\n\n\tmixins: [\n\t\tTextValueMixin,\n\t],\n\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tdisplayName: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tmaxlength: {\n\t\t\ttype: Number,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.field {\n\tmax-width: 400px;\n}\n</style>\n","\n import API from \"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=style&index=0&id=21244e1d&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=style&index=0&id=21244e1d&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./TextField.vue?vue&type=template&id=21244e1d&scoped=true&\"\nimport script from \"./TextField.vue?vue&type=script&lang=js&\"\nexport * from \"./TextField.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TextField.vue?vue&type=style&index=0&id=21244e1d&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21244e1d\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"field\"},[_c('NcTextField',{attrs:{\"value\":_vm.localValue,\"label\":_vm.displayName,\"label-visible\":true,\"placeholder\":_vm.placeholder,\"type\":_vm.type,\"maxlength\":_vm.maxlength,\"spellcheck\":false,\"success\":_vm.showSuccess,\"error\":Boolean(_vm.errorMessage),\"helper-text\":_vm.errorMessage,\"show-trailing-button\":_vm.value !== _vm.defaultValue,\"trailing-button-icon\":\"undo\"},on:{\"update:value\":function($event){_vm.localValue=$event},\"trailing-button-click\":_vm.undo,\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.save.apply(null, arguments)},\"blur\":_vm.save}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright 2022 Christopher Ng <chrng8@gmail.com>\n -\n - @author Christopher Ng <chrng8@gmail.com>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n-->\n\n<template>\n\t<section>\n\t\t<NcSettingsSection :title=\"t('theming', 'Theming')\"\n\t\t\t:description=\"t('theming', 'Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users.')\"\n\t\t\t:doc-url=\"docUrl\">\n\t\t\t<div class=\"admin-theming\">\n\t\t\t\t<NcNoteCard v-if=\"!isThemable\"\n\t\t\t\t\ttype=\"error\"\n\t\t\t\t\t:show-alert=\"true\">\n\t\t\t\t\t<p>{{ notThemableErrorMessage }}</p>\n\t\t\t\t</NcNoteCard>\n\t\t\t\t<TextField v-for=\"field in textFields\"\n\t\t\t\t\t:key=\"field.name\"\n\t\t\t\t\t:name=\"field.name\"\n\t\t\t\t\t:value.sync=\"field.value\"\n\t\t\t\t\t:default-value=\"field.defaultValue\"\n\t\t\t\t\t:type=\"field.type\"\n\t\t\t\t\t:display-name=\"field.displayName\"\n\t\t\t\t\t:placeholder=\"field.placeholder\"\n\t\t\t\t\t:maxlength=\"field.maxlength\"\n\t\t\t\t\t@update:theming=\"$emit('update:theming')\" />\n\t\t\t\t<ColorPickerField :name=\"colorPickerField.name\"\n\t\t\t\t\t:value.sync=\"colorPickerField.value\"\n\t\t\t\t\t:default-value=\"colorPickerField.defaultValue\"\n\t\t\t\t\t:display-name=\"colorPickerField.displayName\"\n\t\t\t\t\t@update:theming=\"$emit('update:theming')\" />\n\t\t\t\t<FileInputField v-for=\"field in fileInputFields\"\n\t\t\t\t\t:key=\"field.name\"\n\t\t\t\t\t:name=\"field.name\"\n\t\t\t\t\t:mime-name=\"field.mimeName\"\n\t\t\t\t\t:mime-value.sync=\"field.mimeValue\"\n\t\t\t\t\t:default-mime-value=\"field.defaultMimeValue\"\n\t\t\t\t\t:display-name=\"field.displayName\"\n\t\t\t\t\t:aria-label=\"field.ariaLabel\"\n\t\t\t\t\t@update:theming=\"$emit('update:theming')\" />\n\t\t\t\t<div class=\"admin-theming__preview\">\n\t\t\t\t\t<div class=\"admin-theming__preview-logo\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</NcSettingsSection>\n\t\t<NcSettingsSection :title=\"t('theming', 'Advanced options')\">\n\t\t\t<div class=\"admin-theming-advanced\">\n\t\t\t\t<TextField v-for=\"field in advancedTextFields\"\n\t\t\t\t\t:key=\"field.name\"\n\t\t\t\t\t:name=\"field.name\"\n\t\t\t\t\t:value.sync=\"field.value\"\n\t\t\t\t\t:default-value=\"field.defaultValue\"\n\t\t\t\t\t:type=\"field.type\"\n\t\t\t\t\t:display-name=\"field.displayName\"\n\t\t\t\t\t:placeholder=\"field.placeholder\"\n\t\t\t\t\t:maxlength=\"field.maxlength\"\n\t\t\t\t\t@update:theming=\"$emit('update:theming')\" />\n\t\t\t\t<FileInputField v-for=\"field in advancedFileInputFields\"\n\t\t\t\t\t:key=\"field.name\"\n\t\t\t\t\t:name=\"field.name\"\n\t\t\t\t\t:mime-name=\"field.mimeName\"\n\t\t\t\t\t:mime-value.sync=\"field.mimeValue\"\n\t\t\t\t\t:default-mime-value=\"field.defaultMimeValue\"\n\t\t\t\t\t:display-name=\"field.displayName\"\n\t\t\t\t\t:aria-label=\"field.ariaLabel\"\n\t\t\t\t\t@update:theming=\"$emit('update:theming')\" />\n\t\t\t\t<CheckboxField :name=\"userThemingField.name\"\n\t\t\t\t\t:value=\"userThemingField.value\"\n\t\t\t\t\t:default-value=\"userThemingField.defaultValue\"\n\t\t\t\t\t:display-name=\"userThemingField.displayName\"\n\t\t\t\t\t:label=\"userThemingField.label\"\n\t\t\t\t\t:description=\"userThemingField.description\"\n\t\t\t\t\t@update:theming=\"$emit('update:theming')\" />\n\t\t\t\t<a v-if=\"!canThemeIcons\"\n\t\t\t\t\t:href=\"docUrlIcons\"\n\t\t\t\t\trel=\"noreferrer noopener\">\n\t\t\t\t\t<em>{{ t('theming', 'Install the ImageMagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color.') }}</em>\n\t\t\t\t</a>\n\t\t\t</div>\n\t\t</NcSettingsSection>\n\t</section>\n</template>\n\n<script>\nimport { loadState } from '@nextcloud/initial-state'\n\nimport {\n\tNcNoteCard,\n\tNcSettingsSection,\n} from '@nextcloud/vue'\nimport CheckboxField from './components/admin/CheckboxField.vue'\nimport ColorPickerField from './components/admin/ColorPickerField.vue'\nimport FileInputField from './components/admin/FileInputField.vue'\nimport TextField from './components/admin/TextField.vue'\n\nconst {\n\tbackgroundMime,\n\tcanThemeIcons,\n\tcolor,\n\tdocUrl,\n\tdocUrlIcons,\n\tfaviconMime,\n\tisThemable,\n\tlegalNoticeUrl,\n\tlogoheaderMime,\n\tlogoMime,\n\tname,\n\tnotThemableErrorMessage,\n\tprivacyPolicyUrl,\n\tslogan,\n\turl,\n\tuserThemingDisabled,\n} = loadState('theming', 'adminThemingParameters')\n\nconst textFields = [\n\t{\n\t\tname: 'name',\n\t\tvalue: name,\n\t\tdefaultValue: 'Nextcloud',\n\t\ttype: 'text',\n\t\tdisplayName: t('theming', 'Name'),\n\t\tplaceholder: t('theming', 'Name'),\n\t\tmaxlength: 250,\n\t},\n\t{\n\t\tname: 'url',\n\t\tvalue: url,\n\t\tdefaultValue: 'https://nextcloud.com',\n\t\ttype: 'url',\n\t\tdisplayName: t('theming', 'Web link'),\n\t\tplaceholder: 'https://…',\n\t\tmaxlength: 500,\n\t},\n\t{\n\t\tname: 'slogan',\n\t\tvalue: slogan,\n\t\tdefaultValue: t('theming', 'a safe home for all your data'),\n\t\ttype: 'text',\n\t\tdisplayName: t('theming', 'Slogan'),\n\t\tplaceholder: t('theming', 'Slogan'),\n\t\tmaxlength: 500,\n\t},\n]\n\nconst colorPickerField = {\n\tname: 'color',\n\tvalue: color,\n\tdefaultValue: '#0082c9',\n\tdisplayName: t('theming', 'Color'),\n}\n\nconst fileInputFields = [\n\t{\n\t\tname: 'logo',\n\t\tmimeName: 'logoMime',\n\t\tmimeValue: logoMime,\n\t\tdefaultMimeValue: '',\n\t\tdisplayName: t('theming', 'Logo'),\n\t\tariaLabel: t('theming', 'Upload new logo'),\n\t},\n\t{\n\t\tname: 'background',\n\t\tmimeName: 'backgroundMime',\n\t\tmimeValue: backgroundMime,\n\t\tdefaultMimeValue: '',\n\t\tdisplayName: t('theming', 'Background and login image'),\n\t\tariaLabel: t('theming', 'Upload new background and login image'),\n\t},\n]\n\nconst advancedTextFields = [\n\t{\n\t\tname: 'imprintUrl',\n\t\tvalue: legalNoticeUrl,\n\t\tdefaultValue: '',\n\t\ttype: 'url',\n\t\tdisplayName: t('theming', 'Legal notice link'),\n\t\tplaceholder: 'https://…',\n\t\tmaxlength: 500,\n\t},\n\t{\n\t\tname: 'privacyUrl',\n\t\tvalue: privacyPolicyUrl,\n\t\tdefaultValue: '',\n\t\ttype: 'url',\n\t\tdisplayName: t('theming', 'Privacy policy link'),\n\t\tplaceholder: 'https://…',\n\t\tmaxlength: 500,\n\t},\n]\n\nconst advancedFileInputFields = [\n\t{\n\t\tname: 'logoheader',\n\t\tmimeName: 'logoheaderMime',\n\t\tmimeValue: logoheaderMime,\n\t\tdefaultMimeValue: '',\n\t\tdisplayName: t('theming', 'Header logo'),\n\t\tariaLabel: t('theming', 'Upload new header logo'),\n\t},\n\t{\n\t\tname: 'favicon',\n\t\tmimeName: 'faviconMime',\n\t\tmimeValue: faviconMime,\n\t\tdefaultMimeValue: '',\n\t\tdisplayName: t('theming', 'Favicon'),\n\t\tariaLabel: t('theming', 'Upload new favicon'),\n\t},\n]\n\nconst userThemingField = {\n\tname: 'disable-user-theming',\n\tvalue: userThemingDisabled,\n\tdefaultValue: false,\n\tdisplayName: t('theming', 'User settings'),\n\tlabel: t('theming', 'Disable user theming'),\n\tdescription: t('theming', 'Although you can select and customize your instance, users can change their background and colors. If you want to enforce your customization, you can toggle this on.'),\n}\n\nexport default {\n\tname: 'AdminTheming',\n\n\tcomponents: {\n\t\tCheckboxField,\n\t\tColorPickerField,\n\t\tFileInputField,\n\t\tNcNoteCard,\n\t\tNcSettingsSection,\n\t\tTextField,\n\t},\n\n\temits: [\n\t\t'update:theming',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\ttextFields,\n\t\t\tcolorPickerField,\n\t\t\tfileInputFields,\n\t\t\tadvancedTextFields,\n\t\t\tadvancedFileInputFields,\n\t\t\tuserThemingField,\n\n\t\t\tcanThemeIcons,\n\t\t\tdocUrl,\n\t\t\tdocUrlIcons,\n\t\t\tisThemable,\n\t\t\tnotThemableErrorMessage,\n\t\t}\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.admin-theming,\n.admin-theming-advanced {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px 0;\n}\n\n.admin-theming {\n\t&__preview {\n\t\twidth: 230px;\n\t\theight: 140px;\n\t\tbackground-size: cover;\n\t\tbackground-position: center;\n\t\ttext-align: center;\n\t\tmargin-top: 10px;\n\t\t/* This is basically https://github.com/nextcloud/server/blob/master/core/css/guest.css\n\t\t But without the user variables. That way the admin can preview the render as guest*/\n\t\t/* As guest, there is no user color color-background-plain */\n\t\tbackground-color: var(--color-primary-default, #0082c9);\n\t\t/* As guest, there is no user background (--image-background)\n\t\t1. Empty background if defined\n\t\t2. Else default background\n\t\t3. Finally default gradient (should not happened, the background is always defined anyway) */\n\t\tbackground-image: var(--image-background-plain, var(--image-background-default, linear-gradient(40deg, #0082c9 0%, #30b6ff 100%)));\n\n\t\t&-logo {\n\t\t\twidth: 20%;\n\t\t\theight: 20%;\n\t\t\tmargin-top: 20px;\n\t\t\tdisplay: inline-block;\n\t\t\tbackground-size: contain;\n\t\t\tbackground-position: center;\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-image: var(--image-logo, url('../../../core/img/logo/logo.svg'));\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTheming.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTheming.vue?vue&type=script&lang=js&\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTheming.vue?vue&type=style&index=0&id=6dcac59d&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTheming.vue?vue&type=style&index=0&id=6dcac59d&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AdminTheming.vue?vue&type=template&id=6dcac59d&scoped=true&\"\nimport script from \"./AdminTheming.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTheming.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTheming.vue?vue&type=style&index=0&id=6dcac59d&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6dcac59d\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('NcSettingsSection',{attrs:{\"title\":_vm.t('theming', 'Theming'),\"description\":_vm.t('theming', 'Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users.'),\"doc-url\":_vm.docUrl}},[_c('div',{staticClass:\"admin-theming\"},[(!_vm.isThemable)?_c('NcNoteCard',{attrs:{\"type\":\"error\",\"show-alert\":true}},[_c('p',[_vm._v(_vm._s(_vm.notThemableErrorMessage))])]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.textFields),function(field){return _c('TextField',{key:field.name,attrs:{\"name\":field.name,\"value\":field.value,\"default-value\":field.defaultValue,\"type\":field.type,\"display-name\":field.displayName,\"placeholder\":field.placeholder,\"maxlength\":field.maxlength},on:{\"update:value\":function($event){return _vm.$set(field, \"value\", $event)},\"update:theming\":function($event){return _vm.$emit('update:theming')}}})}),_vm._v(\" \"),_c('ColorPickerField',{attrs:{\"name\":_vm.colorPickerField.name,\"value\":_vm.colorPickerField.value,\"default-value\":_vm.colorPickerField.defaultValue,\"display-name\":_vm.colorPickerField.displayName},on:{\"update:value\":function($event){return _vm.$set(_vm.colorPickerField, \"value\", $event)},\"update:theming\":function($event){return _vm.$emit('update:theming')}}}),_vm._v(\" \"),_vm._l((_vm.fileInputFields),function(field){return _c('FileInputField',{key:field.name,attrs:{\"name\":field.name,\"mime-name\":field.mimeName,\"mime-value\":field.mimeValue,\"default-mime-value\":field.defaultMimeValue,\"display-name\":field.displayName,\"aria-label\":field.ariaLabel},on:{\"update:mimeValue\":function($event){return _vm.$set(field, \"mimeValue\", $event)},\"update:mime-value\":function($event){return _vm.$set(field, \"mimeValue\", $event)},\"update:theming\":function($event){return _vm.$emit('update:theming')}}})}),_vm._v(\" \"),_c('div',{staticClass:\"admin-theming__preview\"},[_c('div',{staticClass:\"admin-theming__preview-logo\"})])],2)]),_vm._v(\" \"),_c('NcSettingsSection',{attrs:{\"title\":_vm.t('theming', 'Advanced options')}},[_c('div',{staticClass:\"admin-theming-advanced\"},[_vm._l((_vm.advancedTextFields),function(field){return _c('TextField',{key:field.name,attrs:{\"name\":field.name,\"value\":field.value,\"default-value\":field.defaultValue,\"type\":field.type,\"display-name\":field.displayName,\"placeholder\":field.placeholder,\"maxlength\":field.maxlength},on:{\"update:value\":function($event){return _vm.$set(field, \"value\", $event)},\"update:theming\":function($event){return _vm.$emit('update:theming')}}})}),_vm._v(\" \"),_vm._l((_vm.advancedFileInputFields),function(field){return _c('FileInputField',{key:field.name,attrs:{\"name\":field.name,\"mime-name\":field.mimeName,\"mime-value\":field.mimeValue,\"default-mime-value\":field.defaultMimeValue,\"display-name\":field.displayName,\"aria-label\":field.ariaLabel},on:{\"update:mimeValue\":function($event){return _vm.$set(field, \"mimeValue\", $event)},\"update:mime-value\":function($event){return _vm.$set(field, \"mimeValue\", $event)},\"update:theming\":function($event){return _vm.$emit('update:theming')}}})}),_vm._v(\" \"),_c('CheckboxField',{attrs:{\"name\":_vm.userThemingField.name,\"value\":_vm.userThemingField.value,\"default-value\":_vm.userThemingField.defaultValue,\"display-name\":_vm.userThemingField.displayName,\"label\":_vm.userThemingField.label,\"description\":_vm.userThemingField.description},on:{\"update:theming\":function($event){return _vm.$emit('update:theming')}}}),_vm._v(\" \"),(!_vm.canThemeIcons)?_c('a',{attrs:{\"href\":_vm.docUrlIcons,\"rel\":\"noreferrer noopener\"}},[_c('em',[_vm._v(_vm._s(_vm.t('theming', 'Install the ImageMagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color.')))])]):_vm._e()],2)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport App from './AdminTheming.vue'\nimport { refreshStyles } from './helpers/refreshStyles.js'\n\nVue.prototype.OC = OC\nVue.prototype.t = t\n\nconst View = Vue.extend(App)\nconst theming = new View()\ntheming.$mount('#admin-theming')\ntheming.$on('update:theming', refreshStyles)\n","/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport const refreshStyles = () => {\n\t// Refresh server-side generated theming CSS\n\t[...document.head.querySelectorAll('link.theme')].forEach(theme => {\n\t\tconst url = new URL(theme.href)\n\t\turl.searchParams.set('v', Date.now())\n\t\tconst newTheme = theme.cloneNode()\n\t\tnewTheme.href = url.toString()\n\t\tnewTheme.onload = () => theme.remove()\n\t\tdocument.head.append(newTheme)\n\t})\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"../../../core/img/logo/logo.svg\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".admin-theming[data-v-6dcac59d],.admin-theming-advanced[data-v-6dcac59d]{display:flex;flex-direction:column;gap:8px 0}.admin-theming__preview[data-v-6dcac59d]{width:230px;height:140px;background-size:cover;background-position:center;text-align:center;margin-top:10px;background-color:var(--color-primary-default, #0082c9);background-image:var(--image-background-plain, var(--image-background-default, linear-gradient(40deg, #0082c9 0%, #30b6ff 100%)))}.admin-theming__preview-logo[data-v-6dcac59d]{width:20%;height:20%;margin-top:20px;display:inline-block;background-size:contain;background-position:center;background-repeat:no-repeat;background-image:var(--image-logo, url(\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \"))}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/AdminTheming.vue\"],\"names\":[],\"mappings\":\"AAgRA,yEAEC,YAAA,CACA,qBAAA,CACA,SAAA,CAIA,yCACC,WAAA,CACA,YAAA,CACA,qBAAA,CACA,0BAAA,CACA,iBAAA,CACA,eAAA,CAIA,sDAAA,CAKA,iIAAA,CAEA,8CACC,SAAA,CACA,UAAA,CACA,eAAA,CACA,oBAAA,CACA,uBAAA,CACA,0BAAA,CACA,2BAAA,CACA,2EAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.admin-theming,\\n.admin-theming-advanced {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 8px 0;\\n}\\n\\n.admin-theming {\\n\\t&__preview {\\n\\t\\twidth: 230px;\\n\\t\\theight: 140px;\\n\\t\\tbackground-size: cover;\\n\\t\\tbackground-position: center;\\n\\t\\ttext-align: center;\\n\\t\\tmargin-top: 10px;\\n\\t\\t/* This is basically https://github.com/nextcloud/server/blob/master/core/css/guest.css\\n\\t\\t But without the user variables. That way the admin can preview the render as guest*/\\n\\t\\t/* As guest, there is no user color color-background-plain */\\n\\t\\tbackground-color: var(--color-primary-default, #0082c9);\\n\\t\\t/* As guest, there is no user background (--image-background)\\n\\t\\t1. Empty background if defined\\n\\t\\t2. Else default background\\n\\t\\t3. Finally default gradient (should not happened, the background is always defined anyway) */\\n\\t\\tbackground-image: var(--image-background-plain, var(--image-background-default, linear-gradient(40deg, #0082c9 0%, #30b6ff 100%)));\\n\\n\\t\\t&-logo {\\n\\t\\t\\twidth: 20%;\\n\\t\\t\\theight: 20%;\\n\\t\\t\\tmargin-top: 20px;\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\tbackground-size: contain;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t\\tbackground-image: var(--image-logo, url('../../../core/img/logo/logo.svg'));\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".field[data-v-17145f08]{display:flex;flex-direction:column;gap:4px 0}.field__row[data-v-17145f08]{display:flex;gap:0 4px}.field__description[data-v-17145f08]{color:var(--color-text-maxcontrast)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/components/admin/shared/field.scss\",\"webpack://./apps/theming/src/components/admin/CheckboxField.vue\"],\"names\":[],\"mappings\":\"AAsBA,wBACC,YAAA,CACA,qBAAA,CACA,SAAA,CAEA,6BACC,YAAA,CACA,SAAA,CCoED,qCACC,mCAAA\",\"sourcesContent\":[\"/**\\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\\n *\\n * @author Christopher Ng <chrng8@gmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n\\n.field {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 4px 0;\\n\\n\\t&__row {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 4px;\\n\\t}\\n}\\n\",\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import './shared/field.scss';\\n\\n.field {\\n\\t&__description {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".field[data-v-6b238a3e]{display:flex;flex-direction:column;gap:4px 0}.field__row[data-v-6b238a3e]{display:flex;gap:0 4px}.field__button[data-v-6b238a3e]{width:230px !important;border-radius:var(--border-radius-large) !important;background-color:var(--color-primary-default) !important}.field__button[data-v-6b238a3e]:hover{background-color:var(--color-primary-element-default-hover) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/components/admin/shared/field.scss\",\"webpack://./apps/theming/src/components/admin/ColorPickerField.vue\"],\"names\":[],\"mappings\":\"AAsBA,wBACC,YAAA,CACA,qBAAA,CACA,SAAA,CAEA,6BACC,YAAA,CACA,SAAA,CCkFD,gCACC,sBAAA,CACA,mDAAA,CACA,wDAAA,CACA,sCACC,sEAAA\",\"sourcesContent\":[\"/**\\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\\n *\\n * @author Christopher Ng <chrng8@gmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n\\n.field {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 4px 0;\\n\\n\\t&__row {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 4px;\\n\\t}\\n}\\n\",\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import './shared/field.scss';\\n\\n.field {\\n\\t// Override default NcButton styles\\n\\t&__button {\\n\\t\\twidth: 230px !important;\\n\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\t\\tbackground-color: var(--color-primary-default) !important;\\n\\t\\t&:hover {\\n\\t\\t\\tbackground-color: var(--color-primary-element-default-hover) !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".field[data-v-137dd337]{display:flex;flex-direction:column;gap:4px 0}.field__row[data-v-137dd337]{display:flex;gap:0 4px}.field__loading-icon[data-v-137dd337]{width:44px;height:44px}.field__preview[data-v-137dd337]{width:70px;height:70px;background-size:contain;background-position:center;background-repeat:no-repeat;margin:10px 0}.field__preview--logoheader[data-v-137dd337]{background-image:var(--image-logoheader)}.field__preview--favicon[data-v-137dd337]{background-image:var(--image-favicon)}input[type=file][data-v-137dd337]{display:none}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/components/admin/shared/field.scss\",\"webpack://./apps/theming/src/components/admin/FileInputField.vue\"],\"names\":[],\"mappings\":\"AAsBA,wBACC,YAAA,CACA,qBAAA,CACA,SAAA,CAEA,6BACC,YAAA,CACA,SAAA,CCgMD,sCACC,UAAA,CACA,WAAA,CAGD,iCACC,UAAA,CACA,WAAA,CACA,uBAAA,CACA,0BAAA,CACA,2BAAA,CACA,aAAA,CAEA,6CACC,wCAAA,CAGD,0CACC,qCAAA,CAKH,kCACC,YAAA\",\"sourcesContent\":[\"/**\\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\\n *\\n * @author Christopher Ng <chrng8@gmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n\\n.field {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 4px 0;\\n\\n\\t&__row {\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 4px;\\n\\t}\\n}\\n\",\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import './shared/field.scss';\\n\\n.field {\\n\\t&__loading-icon {\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\n\\n\\t&__preview {\\n\\t\\twidth: 70px;\\n\\t\\theight: 70px;\\n\\t\\tbackground-size: contain;\\n\\t\\tbackground-position: center;\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tmargin: 10px 0;\\n\\n\\t\\t&--logoheader {\\n\\t\\t\\tbackground-image: var(--image-logoheader);\\n\\t\\t}\\n\\n\\t\\t&--favicon {\\n\\t\\t\\tbackground-image: var(--image-favicon);\\n\\t\\t}\\n\\t}\\n}\\n\\ninput[type=\\\"file\\\"] {\\n\\tdisplay: none;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".field[data-v-21244e1d]{max-width:400px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/components/admin/TextField.vue\"],\"names\":[],\"mappings\":\"AA4FA,wBACC,eAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.field {\\n\\tmax-width: 400px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 5544;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t5544: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(31901); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","styleRefreshFields","emits","data","showSuccess","errorMessage","computed","id","this","name","methods","reset","handleSuccess","setTimeout","includes","$emit","mixins","FieldMixin","watch","value","localValue","save","url","generateUrl","valueToPost","axios","setting","response","message","undo","defaultValue","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","_h","$createElement","_c","_self","staticClass","attrs","_v","_s","displayName","on","$event","label","description","_e","debounceSave","t","scopedSlots","_u","key","fn","proxy","ariaLabel","activateLocalFilePicker","removeBackground","mimeValue","defaultMimeValue","class","ref","onChange","placeholder","type","maxlength","Boolean","indexOf","_k","keyCode","apply","arguments","docUrl","isThemable","notThemableErrorMessage","_l","field","$set","colorPickerField","mimeName","userThemingField","canThemeIcons","docUrlIcons","Vue","OC","theming","App","$mount","$on","document","head","querySelectorAll","forEach","theme","URL","href","searchParams","set","Date","now","newTheme","cloneNode","toString","onload","remove","append","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","result","chunkIds","priority","notFulfilled","Infinity","i","length","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","baseURI","self","location","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","bind","nc","__webpack_exports__"],"sourceRoot":""}