Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

theming-personal-theming.js.map 196KB

1
  1. {"version":3,"file":"theming-personal-theming.js?v=618efccae579905b9d61","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/theming/src/helpers/refreshStyles.js","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageEdit.vue?vue&type=script&lang=js&","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageEdit.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ImageEdit.vue?e9bd","webpack:///nextcloud/node_modules/vue-material-design-icons/ImageEdit.vue?vue&type=template&id=7bb2aa9c&","webpack:///nextcloud/apps/theming/src/components/BackgroundSettings.vue","webpack:///nextcloud/apps/theming/src/components/BackgroundSettings.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/theming/src/components/BackgroundSettings.vue?e243","webpack://nextcloud/./apps/theming/src/components/BackgroundSettings.vue?65db","webpack://nextcloud/./apps/theming/src/components/BackgroundSettings.vue?da76","webpack:///nextcloud/apps/theming/src/components/ItemPreview.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/theming/src/components/ItemPreview.vue","webpack://nextcloud/./apps/theming/src/components/ItemPreview.vue?8b6f","webpack://nextcloud/./apps/theming/src/components/ItemPreview.vue?8797","webpack://nextcloud/./apps/theming/src/components/ItemPreview.vue?7631","webpack:///nextcloud/apps/theming/src/UserThemes.vue","webpack:///nextcloud/apps/theming/src/UserThemes.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/theming/src/UserThemes.vue?3613","webpack://nextcloud/./apps/theming/src/UserThemes.vue?7eb2","webpack://nextcloud/./apps/theming/src/UserThemes.vue?b683","webpack:///nextcloud/apps/theming/src/personal-settings.js","webpack:///nextcloud/apps/theming/src/UserThemes.vue?vue&type=style&index=0&id=8a8d5388&prod&lang=scss&scoped=true&","webpack:///nextcloud/apps/theming/src/components/BackgroundSettings.vue?vue&type=style&index=0&id=4e3fc802&prod&scoped=true&lang=scss&","webpack:///nextcloud/apps/theming/src/components/ItemPreview.vue?vue&type=style&index=0&id=1a08e35a&prod&lang=scss&scoped=true&","webpack:///nextcloud/node_modules/lodash/_baseEach.js","webpack:///nextcloud/node_modules/lodash/_baseFilter.js","webpack:///nextcloud/node_modules/lodash/_baseForOwn.js","webpack:///nextcloud/node_modules/lodash/_createBaseEach.js","webpack:///nextcloud/node_modules/lodash/defaults.js","webpack:///nextcloud/node_modules/lodash/filter.js","webpack:///nextcloud/node_modules/node-vibrant/lib/browser.js","webpack:///nextcloud/node_modules/node-vibrant/lib/builder.js","webpack:///nextcloud/node_modules/node-vibrant/lib/color.js","webpack:///nextcloud/node_modules/node-vibrant/lib/filter/default.js","webpack:///nextcloud/node_modules/node-vibrant/lib/filter/index.js","webpack:///nextcloud/node_modules/node-vibrant/lib/generator/default.js","webpack:///nextcloud/node_modules/node-vibrant/lib/generator/index.js","webpack:///nextcloud/node_modules/node-vibrant/lib/image/base.js","webpack:///nextcloud/node_modules/node-vibrant/lib/image/browser.js","webpack:///nextcloud/node_modules/node-vibrant/lib/quantizer/index.js","webpack:///nextcloud/node_modules/node-vibrant/lib/quantizer/mmcq.js","webpack:///nextcloud/node_modules/node-vibrant/lib/quantizer/pqueue.js","webpack:///nextcloud/node_modules/node-vibrant/lib/quantizer/vbox.js","webpack:///nextcloud/node_modules/node-vibrant/lib/util.js","webpack:///nextcloud/node_modules/node-vibrant/lib/vibrant.js","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","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/publicPath","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};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\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","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageEdit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ImageEdit.vue?vue&type=script&lang=js&\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon image-edit-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M22.7 14.3L21.7 15.3L19.7 13.3L20.7 12.3C20.8 12.2 20.9 12.1 21.1 12.1C21.2 12.1 21.4 12.2 21.5 12.3L22.8 13.6C22.9 13.8 22.9 14.1 22.7 14.3M13 19.9V22H15.1L21.2 15.9L19.2 13.9L13 19.9M21 5C21 3.9 20.1 3 19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H11V19.1L12.1 18H5L8.5 13.5L11 16.5L14.5 12L16.1 14.1L21 9.1V5Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ImageEditIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./ImageEdit.vue?vue&type=template&id=7bb2aa9c&\"\nimport script from \"./ImageEdit.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageEdit.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon image-edit-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M22.7 14.3L21.7 15.3L19.7 13.3L20.7 12.3C20.8 12.2 20.9 12.1 21.1 12.1C21.2 12.1 21.4 12.2 21.5 12.3L22.8 13.6C22.9 13.8 22.9 14.1 22.7 14.3M13 19.9V22H15.1L21.2 15.9L19.2 13.9L13 19.9M21 5C21 3.9 20.1 3 19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H11V19.1L12.1 18H5L8.5 13.5L11 16.5L14.5 12L16.1 14.1L21 9.1V5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\n -\n - @author Christopher Ng <chrng8@gmail.com>\n - @author Greta Doci <gretadoci@gmail.com>\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\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=\"background-selector\" data-user-theming-background-settings>\n\t\t<!-- Custom background -->\n\t\t<button class=\"background background__filepicker\"\n\t\t\t:class=\"{ 'icon-loading': loading === 'custom', 'background--active': backgroundImage === 'custom' }\"\n\t\t\t:data-color-bright=\"invertTextColor(Theming.color)\"\n\t\t\tdata-user-theming-background-custom\n\t\t\ttabindex=\"0\"\n\t\t\t@click=\"pickFile\">\n\t\t\t{{ t('theming', 'Custom background') }}\n\t\t\t<ImageEdit v-if=\"backgroundImage !== 'custom'\" :size=\"26\" />\n\t\t\t<Check :size=\"44\" />\n\t\t</button>\n\n\t\t<!-- Default background -->\n\t\t<button class=\"background background__default\"\n\t\t\t:class=\"{ 'icon-loading': loading === 'default', 'background--active': backgroundImage === 'default' }\"\n\t\t\t:data-color-bright=\"invertTextColor(Theming.defaultColor)\"\n\t\t\t:style=\"{ '--border-color': Theming.defaultColor }\"\n\t\t\tdata-user-theming-background-default\n\t\t\ttabindex=\"0\"\n\t\t\t@click=\"setDefault\">\n\t\t\t{{ t('theming', 'Default background') }}\n\t\t\t<Check :size=\"44\" />\n\t\t</button>\n\n\t\t<!-- Custom color picker -->\n\t\t<NcColorPicker v-model=\"Theming.color\" @input=\"debouncePickColor\">\n\t\t\t<button class=\"background background__color\"\n\t\t\t\t:data-color=\"Theming.color\"\n\t\t\t\t:data-color-bright=\"invertTextColor(Theming.color)\"\n\t\t\t\t:style=\"{ backgroundColor: Theming.color, '--border-color': Theming.color}\"\n\t\t\t\tdata-user-theming-background-color\n\t\t\t\ttabindex=\"0\">\n\t\t\t\t{{ t('theming', 'Change color') }}\n\t\t\t</button>\n\t\t</NcColorPicker>\n\n\t\t<!-- Remove background -->\n\t\t<button class=\"background background__delete\"\n\t\t\t:class=\"{ 'background--active': isBackgroundDisabled }\"\n\t\t\tdata-user-theming-background-clear\n\t\t\ttabindex=\"0\"\n\t\t\t@click=\"removeBackground\">\n\t\t\t{{ t('theming', 'No background') }}\n\t\t\t<Close v-if=\"!isBackgroundDisabled\" :size=\"32\" />\n\t\t\t<Check :size=\"44\" />\n\t\t</button>\n\n\t\t<!-- Background set selection -->\n\t\t<button v-for=\"shippedBackground in shippedBackgrounds\"\n\t\t\t:key=\"shippedBackground.name\"\n\t\t\t:title=\"shippedBackground.details.attribution\"\n\t\t\t:aria-label=\"shippedBackground.details.attribution\"\n\t\t\t:class=\"{ 'icon-loading': loading === shippedBackground.name, 'background--active': backgroundImage === shippedBackground.name }\"\n\t\t\t:data-color-bright=\"shippedBackground.details.theming === 'dark'\"\n\t\t\t:data-user-theming-background-shipped=\"shippedBackground.name\"\n\t\t\t:style=\"{ backgroundImage: 'url(' + shippedBackground.preview + ')', '--border-color': shippedBackground.details.primary_color }\"\n\t\t\tclass=\"background background__shipped\"\n\t\t\ttabindex=\"0\"\n\t\t\t@click=\"setShipped(shippedBackground.name)\">\n\t\t\t<Check :size=\"44\" />\n\t\t</button>\n\t</div>\n</template>\n\n<script>\nimport { generateFilePath, generateRemoteUrl, generateUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getFilePickerBuilder, showError } from '@nextcloud/dialogs'\nimport { loadState } from '@nextcloud/initial-state'\nimport { Palette } from 'node-vibrant/lib/color.js'\nimport axios from '@nextcloud/axios'\nimport debounce from 'debounce'\nimport NcColorPicker from '@nextcloud/vue/dist/Components/NcColorPicker.js'\nimport Vibrant from 'node-vibrant'\n\nimport Check from 'vue-material-design-icons/Check.vue'\nimport Close from 'vue-material-design-icons/Close.vue'\nimport ImageEdit from 'vue-material-design-icons/ImageEdit.vue'\n\nconst backgroundImage = loadState('theming', 'backgroundImage')\nconst shippedBackgroundList = loadState('theming', 'shippedBackgrounds')\nconst themingDefaultBackground = loadState('theming', 'themingDefaultBackground')\nconst defaultShippedBackground = loadState('theming', 'defaultShippedBackground')\n\nconst prefixWithBaseUrl = (url) => generateFilePath('theming', '', 'img/background/') + url\n\nexport default {\n\tname: 'BackgroundSettings',\n\n\tcomponents: {\n\t\tCheck,\n\t\tClose,\n\t\tImageEdit,\n\t\tNcColorPicker,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloading: false,\n\t\t\tTheming: loadState('theming', 'data', {}),\n\n\t\t\t// User background image and color settings\n\t\t\tbackgroundImage,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tshippedBackgrounds() {\n\t\t\treturn Object.keys(shippedBackgroundList)\n\t\t\t\t.map(fileName => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tname: fileName,\n\t\t\t\t\t\turl: prefixWithBaseUrl(fileName),\n\t\t\t\t\t\tpreview: prefixWithBaseUrl('preview/' + fileName),\n\t\t\t\t\t\tdetails: shippedBackgroundList[fileName],\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.filter(background => {\n\t\t\t\t\t// If the admin did not changed the global background\n\t\t\t\t\t// let's hide the default background to not show it twice\n\t\t\t\t\tif (!this.isGlobalBackgroundDeleted && !this.isGlobalBackgroundDefault) {\n\t\t\t\t\t\treturn background.name !== defaultShippedBackground\n\t\t\t\t\t}\n\t\t\t\t\treturn true\n\t\t\t\t})\n\t\t},\n\n\t\tisGlobalBackgroundDefault() {\n\t\t\treturn !!themingDefaultBackground\n\t\t},\n\n\t\tisGlobalBackgroundDeleted() {\n\t\t\treturn themingDefaultBackground === 'backgroundColor'\n\t\t},\n\n\t\tisBackgroundDisabled() {\n\t\t\treturn this.backgroundImage === 'disabled'\n\t\t\t|| !this.backgroundImage\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Do we need to invert the text if color is too bright?\n\t\t *\n\t\t * @param {string} color the hex color\n\t\t */\n\t\tinvertTextColor(color) {\n\t\t\treturn this.calculateLuma(color) > 0.6\n\t\t},\n\n\t\t/**\n\t\t * Calculate luminance of provided hex color\n\t\t *\n\t\t * @param {string} color the hex color\n\t\t */\n\t\tcalculateLuma(color) {\n\t\t\tconst [red, green, blue] = this.hexToRGB(color)\n\t\t\treturn (0.2126 * red + 0.7152 * green + 0.0722 * blue) / 255\n\t\t},\n\n\t\t/**\n\t\t * Convert hex color to RGB\n\t\t *\n\t\t * @param {string} hex the hex color\n\t\t */\n\t\thexToRGB(hex) {\n\t\t\tconst result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex)\n\t\t\treturn result\n\t\t\t\t? [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)]\n\t\t\t\t: null\n\t\t},\n\n\t\t/**\n\t\t * Update local state\n\t\t *\n\t\t * @param {object} data destructuring object\n\t\t * @param {string} data.backgroundColor background color value\n\t\t * @param {string} data.backgroundImage background image value\n\t\t * @param {string} data.version cache buster number\n\t\t * @see https://github.com/nextcloud/server/blob/c78bd45c64d9695724fc44fe8453a88824b85f2f/apps/theming/lib/Controller/UserThemeController.php#L187-L191\n\t\t */\n\t\tasync update(data) {\n\t\t\t// Update state\n\t\t\tthis.backgroundImage = data.backgroundImage\n\t\t\tthis.Theming.color = data.backgroundColor\n\n\t\t\t// Notify parent and reload style\n\t\t\tthis.$emit('update:background')\n\t\t\tthis.loading = false\n\t\t},\n\n\t\tasync setDefault() {\n\t\t\tthis.loading = 'default'\n\t\t\tconst result = await axios.post(generateUrl('/apps/theming/background/default'))\n\t\t\tthis.update(result.data)\n\t\t},\n\n\t\tasync setShipped(shipped) {\n\t\t\tthis.loading = shipped\n\t\t\tconst result = await axios.post(generateUrl('/apps/theming/background/shipped'), { value: shipped })\n\t\t\tthis.update(result.data)\n\t\t},\n\n\t\tasync setFile(path, color = null) {\n\t\t\tthis.loading = 'custom'\n\t\t\tconst result = await axios.post(generateUrl('/apps/theming/background/custom'), { value: path, color })\n\t\t\tthis.update(result.data)\n\t\t},\n\n\t\tasync removeBackground() {\n\t\t\tthis.loading = 'remove'\n\t\t\tconst result = await axios.delete(generateUrl('/apps/theming/background/custom'))\n\t\t\tthis.update(result.data)\n\t\t},\n\n\t\tasync pickColor(event) {\n\t\t\tthis.loading = 'color'\n\t\t\tconst color = event?.target?.dataset?.color || this.Theming?.color || '#0082c9'\n\t\t\tconst result = await axios.post(generateUrl('/apps/theming/background/color'), { color })\n\t\t\tthis.update(result.data)\n\t\t},\n\t\tdebouncePickColor: debounce(function(...args) {\n\t\t\tthis.pickColor(...args)\n\t\t}, 200),\n\n\t\tpickFile() {\n\t\t\tconst picker = getFilePickerBuilder(t('theming', 'Select a background from your files'))\n\t\t\t\t.allowDirectories(false)\n\t\t\t\t.setMimeTypeFilter(['image/png', 'image/gif', 'image/jpeg', 'image/svg+xml', 'image/svg'])\n\t\t\t\t.setMultiSelect(false)\n\t\t\t\t.addButton({\n\t\t\t\t\tid: 'select',\n\t\t\t\t\tlabel: t('theming', 'Select background'),\n\t\t\t\t\tcallback: (nodes) => {\n\t\t\t\t\t\tthis.applyFile(nodes[0]?.path)\n\t\t\t\t\t},\n\t\t\t\t\ttype: 'primary',\n\t\t\t\t})\n\t\t\t\t.build()\n\t\t\tpicker.pick()\n\t\t},\n\n\t\tasync applyFile(path) {\n\t\t\tif (!path || typeof path !== 'string' || path.trim().length === 0 || path === '/') {\n\t\t\t\tconsole.error('No valid background have been selected', { path })\n\t\t\t\tshowError(t('theming', 'No background has been selected'))\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.loading = 'custom'\n\n\t\t\t// Extract primary color from image\n\t\t\tlet response = null\n\t\t\tlet color = null\n\t\t\ttry {\n\t\t\t\tconst fileUrl = generateRemoteUrl('dav/files/' + getCurrentUser().uid + path)\n\t\t\t\tresponse = await axios.get(fileUrl, { responseType: 'blob' })\n\t\t\t\tconst blobUrl = URL.createObjectURL(response.data)\n\t\t\t\tconst palette = await this.getColorPaletteFromBlob(blobUrl)\n\n\t\t\t\t// DarkVibrant is accessible AND visually pleasing\n\t\t\t\t// Vibrant is not accessible enough and others are boring\n\t\t\t\tcolor = palette?.DarkVibrant?.hex\n\t\t\t\tthis.setFile(path, color)\n\n\t\t\t\t// Log data\n\t\t\t\tconsole.debug('Extracted colour', color, 'from custom image', path, palette)\n\t\t\t} catch (error) {\n\t\t\t\tthis.setFile(path)\n\t\t\t\tconsole.error('Unable to extract colour from custom image', { error, path, response, color })\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Extract a Vibrant color palette from a blob URL\n\t\t *\n\t\t * @param {string} blobUrl the blob URL\n\t\t * @return {Promise<Palette>}\n\t\t */\n\t\tgetColorPaletteFromBlob(blobUrl) {\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\tconst vibrant = new Vibrant(blobUrl)\n\t\t\t\tvibrant.getPalette((error, palette) => {\n\t\t\t\t\tif (error) {\n\t\t\t\t\t\treject(error)\n\t\t\t\t\t}\n\t\t\t\t\tresolve(palette)\n\t\t\t\t})\n\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.background-selector {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: center;\n\n\t.background {\n\t\toverflow: hidden;\n\t\twidth: 176px;\n\t\theight: 96px;\n\t\tmargin: 8px;\n\t\ttext-align: center;\n\t\tborder: 2px solid var(--color-main-background);\n\t\tborder-radius: var(--border-radius-large);\n\t\tbackground-position: center center;\n\t\tbackground-size: cover;\n\n\t\t&__filepicker {\n\t\t\t&.background--active {\n\t\t\t\tcolor: white;\n\t\t\t\tbackground-image: var(--image-background);\n\t\t\t}\n\t\t}\n\n\t\t&__default {\n\t\t\tbackground-color: var(--color-primary-default);\n\t\t\tbackground-image: linear-gradient(to bottom, rgba(23, 23, 23, 0.5), rgba(23, 23, 23, 0.5)), var(--image-background-plain, var(--image-background-default));\n\t\t}\n\n\t\t&__filepicker, &__default, &__color {\n\t\t\tborder-color: var(--color-border);\n\t\t}\n\n\t\t&__color {\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tbackground-color: var(--color-primary-default);\n\t\t}\n\n\t\t// Over a background image\n\t\t&__default,\n\t\t&__shipped {\n\t\t\tcolor: white;\n\t\t}\n\n\t\t// Text and svg icon dark on bright background\n\t\t&[data-color-bright] {\n\t\t\tcolor: black;\n\t\t}\n\n\t\t&--active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\t// Use theme color primary, see inline css variable in template\n\t\t\tborder: 2px solid var(--border-color, var(--color-primary-element)) !important;\n\t\t}\n\n\t\t// Icon\n\t\tspan {\n\t\t\tmargin: 4px;\n\t\t}\n\n\t\t.check-icon {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t&--active:not(.icon-loading) {\n\t\t\t.check-icon {\n\t\t\t\t// Show checkmark\n\t\t\t\tdisplay: block !important;\n\t\t\t}\n\t\t}\n\t}\n}\n\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BackgroundSettings.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!./BackgroundSettings.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!./BackgroundSettings.vue?vue&type=style&index=0&id=4e3fc802&prod&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BackgroundSettings.vue?vue&type=style&index=0&id=4e3fc802&prod&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BackgroundSettings.vue?vue&type=template&id=4e3fc802&scoped=true&\"\nimport script from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./BackgroundSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BackgroundSettings.vue?vue&type=style&index=0&id=4e3fc802&prod&scoped=true&lang=scss&\"\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 \"4e3fc802\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"background-selector\",attrs:{\"data-user-theming-background-settings\":\"\"}},[_c('button',{staticClass:\"background background__filepicker\",class:{ 'icon-loading': _vm.loading === 'custom', 'background--active': _vm.backgroundImage === 'custom' },attrs:{\"data-color-bright\":_vm.invertTextColor(_vm.Theming.color),\"data-user-theming-background-custom\":\"\",\"tabindex\":\"0\"},on:{\"click\":_vm.pickFile}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('theming', 'Custom background'))+\"\\n\\t\\t\"),(_vm.backgroundImage !== 'custom')?_c('ImageEdit',{attrs:{\"size\":26}}):_vm._e(),_vm._v(\" \"),_c('Check',{attrs:{\"size\":44}})],1),_vm._v(\" \"),_c('button',{staticClass:\"background background__default\",class:{ 'icon-loading': _vm.loading === 'default', 'background--active': _vm.backgroundImage === 'default' },style:({ '--border-color': _vm.Theming.defaultColor }),attrs:{\"data-color-bright\":_vm.invertTextColor(_vm.Theming.defaultColor),\"data-user-theming-background-default\":\"\",\"tabindex\":\"0\"},on:{\"click\":_vm.setDefault}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('theming', 'Default background'))+\"\\n\\t\\t\"),_c('Check',{attrs:{\"size\":44}})],1),_vm._v(\" \"),_c('NcColorPicker',{on:{\"input\":_vm.debouncePickColor},model:{value:(_vm.Theming.color),callback:function ($$v) {_vm.$set(_vm.Theming, \"color\", $$v)},expression:\"Theming.color\"}},[_c('button',{staticClass:\"background background__color\",style:({ backgroundColor: _vm.Theming.color, '--border-color': _vm.Theming.color}),attrs:{\"data-color\":_vm.Theming.color,\"data-color-bright\":_vm.invertTextColor(_vm.Theming.color),\"data-user-theming-background-color\":\"\",\"tabindex\":\"0\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('theming', 'Change color'))+\"\\n\\t\\t\")])]),_vm._v(\" \"),_c('button',{staticClass:\"background background__delete\",class:{ 'background--active': _vm.isBackgroundDisabled },attrs:{\"data-user-theming-background-clear\":\"\",\"tabindex\":\"0\"},on:{\"click\":_vm.removeBackground}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('theming', 'No background'))+\"\\n\\t\\t\"),(!_vm.isBackgroundDisabled)?_c('Close',{attrs:{\"size\":32}}):_vm._e(),_vm._v(\" \"),_c('Check',{attrs:{\"size\":44}})],1),_vm._v(\" \"),_vm._l((_vm.shippedBackgrounds),function(shippedBackground){return _c('button',{key:shippedBackground.name,staticClass:\"background background__shipped\",class:{ 'icon-loading': _vm.loading === shippedBackground.name, 'background--active': _vm.backgroundImage === shippedBackground.name },style:({ backgroundImage: 'url(' + shippedBackground.preview + ')', '--border-color': shippedBackground.details.primary_color }),attrs:{\"title\":shippedBackground.details.attribution,\"aria-label\":shippedBackground.details.attribution,\"data-color-bright\":shippedBackground.details.theming === 'dark',\"data-user-theming-background-shipped\":shippedBackground.name,\"tabindex\":\"0\"},on:{\"click\":function($event){return _vm.setShipped(shippedBackground.name)}}},[_c('Check',{attrs:{\"size\":44}})],1)})],2)\n}\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!./ItemPreview.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!./ItemPreview.vue?vue&type=script&lang=js&\"","<template>\n\t<div :class=\"'theming__preview--' + theme.id\" class=\"theming__preview\">\n\t\t<div class=\"theming__preview-image\" :style=\"{ backgroundImage: 'url(' + img + ')' }\" @click=\"onToggle\" />\n\t\t<div class=\"theming__preview-description\">\n\t\t\t<h3>{{ theme.title }}</h3>\n\t\t\t<p class=\"theming__preview-explanation\">{{ theme.description }}</p>\n\t\t\t<span v-if=\"enforced\" class=\"theming__preview-warning\" role=\"note\">\n\t\t\t\t{{ t('theming', 'Theme selection is enforced') }}\n\t\t\t</span>\n\t\t\t<NcCheckboxRadioSwitch class=\"theming__preview-toggle\"\n\t\t\t\t:checked.sync=\"checked\"\n\t\t\t\t:disabled=\"enforced\"\n\t\t\t\t:name=\"name\"\n\t\t\t\t:type=\"switchType\">\n\t\t\t\t{{ theme.enableLabel }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport { generateFilePath } from '@nextcloud/router'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\n\nexport default {\n\tname: 'ItemPreview',\n\tcomponents: {\n\t\tNcCheckboxRadioSwitch,\n\t},\n\tprops: {\n\t\tenforced: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tselected: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\ttheme: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tunique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tcomputed: {\n\t\tswitchType() {\n\t\t\treturn this.unique ? 'switch' : 'radio'\n\t\t},\n\n\t\tname() {\n\t\t\treturn !this.unique ? this.type : null\n\t\t},\n\n\t\timg() {\n\t\t\treturn generateFilePath('theming', 'img', this.theme.id + '.jpg')\n\t\t},\n\n\t\tchecked: {\n\t\t\tget() {\n\t\t\t\treturn this.selected\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tconsole.debug('Changed theme', this.theme.id, checked)\n\n\t\t\t\t// If this is a radio, we can only enable\n\t\t\t\tif (!this.unique) {\n\t\t\t\t\tthis.$emit('change', { enabled: true, id: this.theme.id })\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\t// If this is a switch, we can disable the theme\n\t\t\t\tthis.$emit('change', { enabled: checked === true, id: this.theme.id })\n\t\t\t},\n\t\t},\n\t},\n\n\tmethods: {\n\t\tonToggle() {\n\t\t\tif (this.switchType === 'radio') {\n\t\t\t\tthis.checked = true\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Invert state\n\t\t\tthis.checked = !this.checked\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\n@use 'sass:math';\n\n.theming__preview {\n\t// We make previews on 16/10 screens\n\t--ratio: 16;\n\n\tposition: relative;\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\tmax-width: 800px;\n\n\t&,\n\t* {\n\t\tuser-select: none;\n\t}\n\n\t&-image {\n\t\tflex-basis: calc(16px * var(--ratio));\n\t\tflex-shrink: 0;\n\t\theight: calc(10px * var(--ratio));\n\t\tmargin-right: var(--gap);\n\t\tcursor: pointer;\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: top left;\n\t\tbackground-size: cover;\n\t}\n\n\t&-explanation {\n\t\tmargin-bottom: 10px;\n\t}\n\n\t&-description {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\th3 {\n\t\t\tfont-weight: bold;\n\t\t\tmargin-bottom: 0;\n\t\t}\n\n\t\tlabel {\n\t\t\tpadding: 12px 0;\n\t\t}\n\t}\n\n\t&--default {\n\t\tgrid-column: span 2;\n\t}\n\n\t&-warning {\n\t\tcolor: var(--color-warning);\n\t}\n}\n\n@media (max-width: math.div(1024px, 1.5)) {\n\t.theming__preview {\n\t\tflex-direction: column;\n\n\t\t&-image {\n\t\t\tmargin: 0;\n\t\t}\n\t}\n}\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!./ItemPreview.vue?vue&type=style&index=0&id=1a08e35a&prod&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!./ItemPreview.vue?vue&type=style&index=0&id=1a08e35a&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ItemPreview.vue?vue&type=template&id=1a08e35a&scoped=true&\"\nimport script from \"./ItemPreview.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemPreview.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ItemPreview.vue?vue&type=style&index=0&id=1a08e35a&prod&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 \"1a08e35a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"theming__preview\",class:'theming__preview--' + _vm.theme.id},[_c('div',{staticClass:\"theming__preview-image\",style:({ backgroundImage: 'url(' + _vm.img + ')' }),on:{\"click\":_vm.onToggle}}),_vm._v(\" \"),_c('div',{staticClass:\"theming__preview-description\"},[_c('h3',[_vm._v(_vm._s(_vm.theme.title))]),_vm._v(\" \"),_c('p',{staticClass:\"theming__preview-explanation\"},[_vm._v(_vm._s(_vm.theme.description))]),_vm._v(\" \"),(_vm.enforced)?_c('span',{staticClass:\"theming__preview-warning\",attrs:{\"role\":\"note\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('theming', 'Theme selection is enforced'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{staticClass:\"theming__preview-toggle\",attrs:{\"checked\":_vm.checked,\"disabled\":_vm.enforced,\"name\":_vm.name,\"type\":_vm.switchType},on:{\"update:checked\":function($event){_vm.checked=$event}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.theme.enableLabel)+\"\\n\\t\\t\")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>\n - @copyright Copyright (c) 2022 Greta Doci <gretadoci@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 :name=\"t('theming', 'Appearance and accessibility')\"\n\t\t\t:limit-width=\"false\"\n\t\t\tclass=\"theming\">\n\t\t\t<p v-html=\"description\" />\n\t\t\t<p v-html=\"descriptionDetail\" />\n\n\t\t\t<div class=\"theming__preview-list\">\n\t\t\t\t<ItemPreview v-for=\"theme in themes\"\n\t\t\t\t\t:key=\"theme.id\"\n\t\t\t\t\t:enforced=\"theme.id === enforceTheme\"\n\t\t\t\t\t:selected=\"selectedTheme.id === theme.id\"\n\t\t\t\t\t:theme=\"theme\"\n\t\t\t\t\t:unique=\"themes.length === 1\"\n\t\t\t\t\ttype=\"theme\"\n\t\t\t\t\t@change=\"changeTheme\" />\n\t\t\t</div>\n\n\t\t\t<div class=\"theming__preview-list\">\n\t\t\t\t<ItemPreview v-for=\"theme in fonts\"\n\t\t\t\t\t:key=\"theme.id\"\n\t\t\t\t\t:selected=\"theme.enabled\"\n\t\t\t\t\t:theme=\"theme\"\n\t\t\t\t\t:unique=\"fonts.length === 1\"\n\t\t\t\t\ttype=\"font\"\n\t\t\t\t\t@change=\"changeFont\" />\n\t\t\t</div>\n\t\t</NcSettingsSection>\n\n\t\t<NcSettingsSection :name=\"t('theming', 'Background')\"\n\t\t\tclass=\"background\"\n\t\t\tdata-user-theming-background-disabled>\n\t\t\t<template v-if=\"isUserThemingDisabled\">\n\t\t\t\t<p>{{ t('theming', 'Customization has been disabled by your administrator') }}</p>\n\t\t\t</template>\n\t\t\t<template v-else>\n\t\t\t\t<p>{{ t('theming', 'Set a custom background') }}</p>\n\t\t\t\t<BackgroundSettings class=\"background__grid\" @update:background=\"refreshGlobalStyles\" />\n\t\t\t</template>\n\t\t</NcSettingsSection>\n\n\t\t<NcSettingsSection :name=\"t('theming', 'Keyboard shortcuts')\">\n\t\t\t<p>{{ t('theming', 'In some cases keyboard shortcuts can interfere with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps.') }}</p>\n\t\t\t<NcCheckboxRadioSwitch class=\"theming__preview-toggle\"\n\t\t\t\t:checked.sync=\"shortcutsDisabled\"\n\t\t\t\tname=\"shortcuts_disabled\"\n\t\t\t\ttype=\"switch\"\n\t\t\t\t@change=\"changeShortcutsDisabled\">\n\t\t\t\t{{ t('theming', 'Disable all keyboard shortcuts') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</NcSettingsSection>\n\t</section>\n</template>\n\n<script>\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport axios from '@nextcloud/axios'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport NcSettingsSection from '@nextcloud/vue/dist/Components/NcSettingsSection.js'\n\nimport BackgroundSettings from './components/BackgroundSettings.vue'\nimport ItemPreview from './components/ItemPreview.vue'\n\nconst availableThemes = loadState('theming', 'themes', [])\nconst enforceTheme = loadState('theming', 'enforceTheme', '')\nconst shortcutsDisabled = loadState('theming', 'shortcutsDisabled', false)\n\nconst isUserThemingDisabled = loadState('theming', 'isUserThemingDisabled')\n\nconsole.debug('Available themes', availableThemes)\n\nexport default {\n\tname: 'UserThemes',\n\n\tcomponents: {\n\t\tItemPreview,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcSettingsSection,\n\t\tBackgroundSettings,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tavailableThemes,\n\n\t\t\t// Admin defined configs\n\t\t\tenforceTheme,\n\t\t\tshortcutsDisabled,\n\t\t\tisUserThemingDisabled,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tthemes() {\n\t\t\treturn this.availableThemes.filter(theme => theme.type === 1)\n\t\t},\n\n\t\tfonts() {\n\t\t\treturn this.availableThemes.filter(theme => theme.type === 2)\n\t\t},\n\n\t\t// Selected theme, fallback on first (default) if none\n\t\tselectedTheme() {\n\t\t\treturn this.themes.find(theme => theme.enabled === true) || this.themes[0]\n\t\t},\n\n\t\tdescription() {\n\t\t\t// using the `t` replace method escape html, we have to do it manually :/\n\t\t\treturn t(\n\t\t\t\t'theming',\n\t\t\t\t'Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level.'\n\t\t\t)\n\t\t\t\t.replace('{guidelines}', this.guidelinesLink)\n\t\t\t\t.replace('{linkend}', '</a>')\n\t\t},\n\n\t\tguidelinesLink() {\n\t\t\treturn '<a target=\"_blank\" href=\"https://www.w3.org/WAI/standards-guidelines/wcag/\" rel=\"noreferrer nofollow\">'\n\t\t},\n\n\t\tdescriptionDetail() {\n\t\t\treturn t(\n\t\t\t\t'theming',\n\t\t\t\t'If you find any issues, do not hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!'\n\t\t\t)\n\t\t\t\t.replace('{issuetracker}', this.issuetrackerLink)\n\t\t\t\t.replace('{designteam}', this.designteamLink)\n\t\t\t\t.replace(/\\{linkend\\}/g, '</a>')\n\t\t},\n\n\t\tissuetrackerLink() {\n\t\t\treturn '<a target=\"_blank\" href=\"https://github.com/nextcloud/server/issues/\" rel=\"noreferrer nofollow\">'\n\t\t},\n\n\t\tdesignteamLink() {\n\t\t\treturn '<a target=\"_blank\" href=\"https://nextcloud.com/design\" rel=\"noreferrer nofollow\">'\n\t\t},\n\t},\n\n\twatch: {\n\t\tshortcutsDisabled(newState) {\n\t\t\tthis.changeShortcutsDisabled(newState)\n\t\t},\n\t},\n\n\tmethods: {\n\t\t// Refresh server-side generated theming CSS\n\t\trefreshGlobalStyles() {\n\t\t\t[...document.head.querySelectorAll('link.theme')].forEach(theme => {\n\t\t\t\tconst url = new URL(theme.href)\n\t\t\t\turl.searchParams.set('v', Date.now())\n\t\t\t\tconst newTheme = theme.cloneNode()\n\t\t\t\tnewTheme.href = url.toString()\n\t\t\t\tnewTheme.onload = () => theme.remove()\n\t\t\t\tdocument.head.append(newTheme)\n\t\t\t})\n\t\t},\n\n\t\tupdateBackground(data) {\n\t\t\tthis.background = (data.type === 'custom' || data.type === 'default') ? data.type : data.value\n\t\t\tthis.refreshGlobalStyles()\n\t\t},\n\n\t\tchangeTheme({ enabled, id }) {\n\t\t\t// Reset selected and select new one\n\t\t\tthis.themes.forEach(theme => {\n\t\t\t\tif (theme.id === id && enabled) {\n\t\t\t\t\ttheme.enabled = true\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\ttheme.enabled = false\n\t\t\t})\n\n\t\t\tthis.updateBodyAttributes()\n\t\t\tthis.selectItem(enabled, id)\n\t\t},\n\n\t\tchangeFont({ enabled, id }) {\n\t\t\t// Reset selected and select new one\n\t\t\tthis.fonts.forEach(font => {\n\t\t\t\tif (font.id === id && enabled) {\n\t\t\t\t\tfont.enabled = true\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tfont.enabled = false\n\t\t\t})\n\n\t\t\tthis.updateBodyAttributes()\n\t\t\tthis.selectItem(enabled, id)\n\t\t},\n\n\t\tasync changeShortcutsDisabled(newState) {\n\t\t\tif (newState) {\n\t\t\t\tawait axios({\n\t\t\t\t\turl: generateOcsUrl('apps/provisioning_api/api/v1/config/users/{appId}/{configKey}', {\n\t\t\t\t\t\tappId: 'theming',\n\t\t\t\t\t\tconfigKey: 'shortcuts_disabled',\n\t\t\t\t\t}),\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tconfigValue: 'yes',\n\t\t\t\t\t},\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\tawait axios({\n\t\t\t\t\turl: generateOcsUrl('apps/provisioning_api/api/v1/config/users/{appId}/{configKey}', {\n\t\t\t\t\t\tappId: 'theming',\n\t\t\t\t\t\tconfigKey: 'shortcuts_disabled',\n\t\t\t\t\t}),\n\t\t\t\t\tmethod: 'DELETE',\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\n\t\tupdateBodyAttributes() {\n\t\t\tconst enabledThemesIDs = this.themes.filter(theme => theme.enabled === true).map(theme => theme.id)\n\t\t\tconst enabledFontsIDs = this.fonts.filter(font => font.enabled === true).map(font => font.id)\n\n\t\t\tthis.themes.forEach(theme => {\n\t\t\t\tdocument.body.toggleAttribute(`data-theme-${theme.id}`, theme.enabled)\n\t\t\t})\n\t\t\tthis.fonts.forEach(font => {\n\t\t\t\tdocument.body.toggleAttribute(`data-theme-${font.id}`, font.enabled)\n\t\t\t})\n\n\t\t\tdocument.body.setAttribute('data-themes', [...enabledThemesIDs, ...enabledFontsIDs].join(','))\n\t\t},\n\n\t\t/**\n\t\t * Commit a change and force reload css\n\t\t * Fetching the file again will trigger the server update\n\t\t *\n\t\t * @param {boolean} enabled the theme state\n\t\t * @param {string} themeId the theme ID to change\n\t\t */\n\t\tasync selectItem(enabled, themeId) {\n\t\t\ttry {\n\t\t\t\tif (enabled) {\n\t\t\t\t\tawait axios({\n\t\t\t\t\t\turl: generateOcsUrl('apps/theming/api/v1/theme/{themeId}/enable', { themeId }),\n\t\t\t\t\t\tmethod: 'PUT',\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tawait axios({\n\t\t\t\t\t\turl: generateOcsUrl('apps/theming/api/v1/theme/{themeId}', { themeId }),\n\t\t\t\t\t\tmethod: 'DELETE',\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t} catch (err) {\n\t\t\t\tconsole.error(err, err.response)\n\t\t\t\tOC.Notification.showTemporary(t('theming', err.response.data.ocs.meta.message + '. Unable to apply the setting.'))\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.theming {\n\t// Limit width of settings sections for readability\n\tp {\n\t\tmax-width: 800px;\n\t}\n\n\t// Proper highlight for links and focus feedback\n\t&::v-deep a {\n\t\tfont-weight: bold;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\ttext-decoration: underline;\n\t\t}\n\t}\n\n\t&__preview-list {\n\t\t--gap: 30px;\n\n\t\tdisplay: grid;\n\t\tmargin-top: var(--gap);\n\t\tcolumn-gap: var(--gap);\n\t\trow-gap: var(--gap);\n\t\tgrid-template-columns: 1fr 1fr;\n\t}\n}\n\n.background {\n\t&__grid {\n\t\tmargin-top: 30px;\n\t}\n}\n\n@media (max-width: 1440px) {\n\t.theming__preview-list {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\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!./UserThemes.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!./UserThemes.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!./UserThemes.vue?vue&type=style&index=0&id=8a8d5388&prod&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!./UserThemes.vue?vue&type=style&index=0&id=8a8d5388&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UserThemes.vue?vue&type=template&id=8a8d5388&scoped=true&\"\nimport script from \"./UserThemes.vue?vue&type=script&lang=js&\"\nexport * from \"./UserThemes.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UserThemes.vue?vue&type=style&index=0&id=8a8d5388&prod&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 \"8a8d5388\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('section',[_c('NcSettingsSection',{staticClass:\"theming\",attrs:{\"name\":_vm.t('theming', 'Appearance and accessibility'),\"limit-width\":false}},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.description)}}),_vm._v(\" \"),_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.descriptionDetail)}}),_vm._v(\" \"),_c('div',{staticClass:\"theming__preview-list\"},_vm._l((_vm.themes),function(theme){return _c('ItemPreview',{key:theme.id,attrs:{\"enforced\":theme.id === _vm.enforceTheme,\"selected\":_vm.selectedTheme.id === theme.id,\"theme\":theme,\"unique\":_vm.themes.length === 1,\"type\":\"theme\"},on:{\"change\":_vm.changeTheme}})}),1),_vm._v(\" \"),_c('div',{staticClass:\"theming__preview-list\"},_vm._l((_vm.fonts),function(theme){return _c('ItemPreview',{key:theme.id,attrs:{\"selected\":theme.enabled,\"theme\":theme,\"unique\":_vm.fonts.length === 1,\"type\":\"font\"},on:{\"change\":_vm.changeFont}})}),1)]),_vm._v(\" \"),_c('NcSettingsSection',{staticClass:\"background\",attrs:{\"name\":_vm.t('theming', 'Background'),\"data-user-theming-background-disabled\":\"\"}},[(_vm.isUserThemingDisabled)?[_c('p',[_vm._v(_vm._s(_vm.t('theming', 'Customization has been disabled by your administrator')))])]:[_c('p',[_vm._v(_vm._s(_vm.t('theming', 'Set a custom background')))]),_vm._v(\" \"),_c('BackgroundSettings',{staticClass:\"background__grid\",on:{\"update:background\":_vm.refreshGlobalStyles}})]],2),_vm._v(\" \"),_c('NcSettingsSection',{attrs:{\"name\":_vm.t('theming', 'Keyboard shortcuts')}},[_c('p',[_vm._v(_vm._s(_vm.t('theming', 'In some cases keyboard shortcuts can interfere with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps.')))]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{staticClass:\"theming__preview-toggle\",attrs:{\"checked\":_vm.shortcutsDisabled,\"name\":\"shortcuts_disabled\",\"type\":\"switch\"},on:{\"update:checked\":function($event){_vm.shortcutsDisabled=$event},\"change\":_vm.changeShortcutsDisabled}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('theming', 'Disable all keyboard shortcuts'))+\"\\n\\t\\t\")])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.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 */\nimport { getRequestToken } from '@nextcloud/auth'\nimport Vue from 'vue'\n\nimport { refreshStyles } from './helpers/refreshStyles.js'\nimport App from './UserThemes.vue'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\nVue.prototype.OC = OC\nVue.prototype.t = t\n\nconst View = Vue.extend(App)\nconst theming = new View()\ntheming.$mount('#theming')\ntheming.$on('update:background', refreshStyles)\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, \".theming p[data-v-8a8d5388]{max-width:800px}.theming[data-v-8a8d5388] a{font-weight:bold}.theming[data-v-8a8d5388] a:hover,.theming[data-v-8a8d5388] a:focus{text-decoration:underline}.theming__preview-list[data-v-8a8d5388]{--gap: 30px;display:grid;margin-top:var(--gap);column-gap:var(--gap);row-gap:var(--gap);grid-template-columns:1fr 1fr}.background__grid[data-v-8a8d5388]{margin-top:30px}@media(max-width: 1440px){.theming__preview-list[data-v-8a8d5388]{display:flex;flex-direction:column}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/UserThemes.vue\"],\"names\":[],\"mappings\":\"AAGC,4BACC,eAAA,CAID,4BACC,gBAAA,CAEA,oEAEC,yBAAA,CAIF,wCACC,WAAA,CAEA,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,kBAAA,CACA,6BAAA,CAKD,mCACC,eAAA,CAIF,0BACC,wCACC,YAAA,CACA,qBAAA,CAAA\",\"sourcesContent\":[\"\\n.theming {\\n\\t// Limit width of settings sections for readability\\n\\tp {\\n\\t\\tmax-width: 800px;\\n\\t}\\n\\n\\t// Proper highlight for links and focus feedback\\n\\t&::v-deep a {\\n\\t\\tfont-weight: bold;\\n\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\ttext-decoration: underline;\\n\\t\\t}\\n\\t}\\n\\n\\t&__preview-list {\\n\\t\\t--gap: 30px;\\n\\n\\t\\tdisplay: grid;\\n\\t\\tmargin-top: var(--gap);\\n\\t\\tcolumn-gap: var(--gap);\\n\\t\\trow-gap: var(--gap);\\n\\t\\tgrid-template-columns: 1fr 1fr;\\n\\t}\\n}\\n\\n.background {\\n\\t&__grid {\\n\\t\\tmargin-top: 30px;\\n\\t}\\n}\\n\\n@media (max-width: 1440px) {\\n\\t.theming__preview-list {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\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, \".background-selector[data-v-4e3fc802]{display:flex;flex-wrap:wrap;justify-content:center}.background-selector .background[data-v-4e3fc802]{overflow:hidden;width:176px;height:96px;margin:8px;text-align:center;border:2px solid var(--color-main-background);border-radius:var(--border-radius-large);background-position:center center;background-size:cover}.background-selector .background__filepicker.background--active[data-v-4e3fc802]{color:#fff;background-image:var(--image-background)}.background-selector .background__default[data-v-4e3fc802]{background-color:var(--color-primary-default);background-image:linear-gradient(to bottom, rgba(23, 23, 23, 0.5), rgba(23, 23, 23, 0.5)),var(--image-background-plain, var(--image-background-default))}.background-selector .background__filepicker[data-v-4e3fc802],.background-selector .background__default[data-v-4e3fc802],.background-selector .background__color[data-v-4e3fc802]{border-color:var(--color-border)}.background-selector .background__color[data-v-4e3fc802]{color:var(--color-primary-text);background-color:var(--color-primary-default)}.background-selector .background__default[data-v-4e3fc802],.background-selector .background__shipped[data-v-4e3fc802]{color:#fff}.background-selector .background[data-color-bright][data-v-4e3fc802]{color:#000}.background-selector .background--active[data-v-4e3fc802],.background-selector .background[data-v-4e3fc802]:hover,.background-selector .background[data-v-4e3fc802]:focus{border:2px solid var(--border-color, var(--color-primary-element)) !important}.background-selector .background span[data-v-4e3fc802]{margin:4px}.background-selector .background .check-icon[data-v-4e3fc802]{display:none}.background-selector .background--active:not(.icon-loading) .check-icon[data-v-4e3fc802]{display:block !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/components/BackgroundSettings.vue\"],\"names\":[],\"mappings\":\"AACA,sCACC,YAAA,CACA,cAAA,CACA,sBAAA,CAEA,kDACC,eAAA,CACA,WAAA,CACA,WAAA,CACA,UAAA,CACA,iBAAA,CACA,6CAAA,CACA,wCAAA,CACA,iCAAA,CACA,qBAAA,CAGC,iFACC,UAAA,CACA,wCAAA,CAIF,2DACC,6CAAA,CACA,wJAAA,CAGD,kLACC,gCAAA,CAGD,yDACC,+BAAA,CACA,6CAAA,CAID,sHAEC,UAAA,CAID,qEACC,UAAA,CAGD,0KAIC,6EAAA,CAID,uDACC,UAAA,CAGD,8DACC,YAAA,CAIA,yFAEC,wBAAA\",\"sourcesContent\":[\"\\n.background-selector {\\n\\tdisplay: flex;\\n\\tflex-wrap: wrap;\\n\\tjustify-content: center;\\n\\n\\t.background {\\n\\t\\toverflow: hidden;\\n\\t\\twidth: 176px;\\n\\t\\theight: 96px;\\n\\t\\tmargin: 8px;\\n\\t\\ttext-align: center;\\n\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tbackground-position: center center;\\n\\t\\tbackground-size: cover;\\n\\n\\t\\t&__filepicker {\\n\\t\\t\\t&.background--active {\\n\\t\\t\\t\\tcolor: white;\\n\\t\\t\\t\\tbackground-image: var(--image-background);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__default {\\n\\t\\t\\tbackground-color: var(--color-primary-default);\\n\\t\\t\\tbackground-image: linear-gradient(to bottom, rgba(23, 23, 23, 0.5), rgba(23, 23, 23, 0.5)), var(--image-background-plain, var(--image-background-default));\\n\\t\\t}\\n\\n\\t\\t&__filepicker, &__default, &__color {\\n\\t\\t\\tborder-color: var(--color-border);\\n\\t\\t}\\n\\n\\t\\t&__color {\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tbackground-color: var(--color-primary-default);\\n\\t\\t}\\n\\n\\t\\t// Over a background image\\n\\t\\t&__default,\\n\\t\\t&__shipped {\\n\\t\\t\\tcolor: white;\\n\\t\\t}\\n\\n\\t\\t// Text and svg icon dark on bright background\\n\\t\\t&[data-color-bright] {\\n\\t\\t\\tcolor: black;\\n\\t\\t}\\n\\n\\t\\t&--active,\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\t// Use theme color primary, see inline css variable in template\\n\\t\\t\\tborder: 2px solid var(--border-color, var(--color-primary-element)) !important;\\n\\t\\t}\\n\\n\\t\\t// Icon\\n\\t\\tspan {\\n\\t\\t\\tmargin: 4px;\\n\\t\\t}\\n\\n\\t\\t.check-icon {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\n\\t\\t&--active:not(.icon-loading) {\\n\\t\\t\\t.check-icon {\\n\\t\\t\\t\\t// Show checkmark\\n\\t\\t\\t\\tdisplay: block !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\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, \".theming__preview[data-v-1a08e35a]{--ratio: 16;position:relative;display:flex;justify-content:flex-start;max-width:800px}.theming__preview[data-v-1a08e35a],.theming__preview *[data-v-1a08e35a]{user-select:none}.theming__preview-image[data-v-1a08e35a]{flex-basis:calc(16px*var(--ratio));flex-shrink:0;height:calc(10px*var(--ratio));margin-right:var(--gap);cursor:pointer;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:top left;background-size:cover}.theming__preview-explanation[data-v-1a08e35a]{margin-bottom:10px}.theming__preview-description[data-v-1a08e35a]{display:flex;flex-direction:column}.theming__preview-description h3[data-v-1a08e35a]{font-weight:bold;margin-bottom:0}.theming__preview-description label[data-v-1a08e35a]{padding:12px 0}.theming__preview--default[data-v-1a08e35a]{grid-column:span 2}.theming__preview-warning[data-v-1a08e35a]{color:var(--color-warning)}@media(max-width: 682.6666666667px){.theming__preview[data-v-1a08e35a]{flex-direction:column}.theming__preview-image[data-v-1a08e35a]{margin:0}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/theming/src/components/ItemPreview.vue\"],\"names\":[],\"mappings\":\"AAGA,mCAEC,WAAA,CAEA,iBAAA,CACA,YAAA,CACA,0BAAA,CACA,eAAA,CAEA,wEAEC,gBAAA,CAGD,yCACC,kCAAA,CACA,aAAA,CACA,8BAAA,CACA,uBAAA,CACA,cAAA,CACA,kCAAA,CACA,2BAAA,CACA,4BAAA,CACA,qBAAA,CAGD,+CACC,kBAAA,CAGD,+CACC,YAAA,CACA,qBAAA,CAEA,kDACC,gBAAA,CACA,eAAA,CAGD,qDACC,cAAA,CAIF,4CACC,kBAAA,CAGD,2CACC,0BAAA,CAIF,oCACC,mCACC,qBAAA,CAEA,yCACC,QAAA,CAAA\",\"sourcesContent\":[\"\\n@use 'sass:math';\\n\\n.theming__preview {\\n\\t// We make previews on 16/10 screens\\n\\t--ratio: 16;\\n\\n\\tposition: relative;\\n\\tdisplay: flex;\\n\\tjustify-content: flex-start;\\n\\tmax-width: 800px;\\n\\n\\t&,\\n\\t* {\\n\\t\\tuser-select: none;\\n\\t}\\n\\n\\t&-image {\\n\\t\\tflex-basis: calc(16px * var(--ratio));\\n\\t\\tflex-shrink: 0;\\n\\t\\theight: calc(10px * var(--ratio));\\n\\t\\tmargin-right: var(--gap);\\n\\t\\tcursor: pointer;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-position: top left;\\n\\t\\tbackground-size: cover;\\n\\t}\\n\\n\\t&-explanation {\\n\\t\\tmargin-bottom: 10px;\\n\\t}\\n\\n\\t&-description {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\n\\t\\th3 {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t}\\n\\n\\t\\tlabel {\\n\\t\\t\\tpadding: 12px 0;\\n\\t\\t}\\n\\t}\\n\\n\\t&--default {\\n\\t\\tgrid-column: span 2;\\n\\t}\\n\\n\\t&-warning {\\n\\t\\tcolor: var(--color-warning);\\n\\t}\\n}\\n\\n@media (max-width: math.div(1024px, 1.5)) {\\n\\t.theming__preview {\\n\\t\\tflex-direction: column;\\n\\n\\t\\t&-image {\\n\\t\\t\\tmargin: 0;\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var baseForOwn = require('./_baseForOwn'),\n createBaseEach = require('./_createBaseEach');\n\n/**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\nvar baseEach = createBaseEach(baseForOwn);\n\nmodule.exports = baseEach;\n","var baseEach = require('./_baseEach');\n\n/**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n}\n\nmodule.exports = baseFilter;\n","var baseFor = require('./_baseFor'),\n keys = require('./keys');\n\n/**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\nfunction baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n}\n\nmodule.exports = baseForOwn;\n","var isArrayLike = require('./isArrayLike');\n\n/**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n}\n\nmodule.exports = createBaseEach;\n","var baseRest = require('./_baseRest'),\n eq = require('./eq'),\n isIterateeCall = require('./_isIterateeCall'),\n keysIn = require('./keysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\nvar defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n});\n\nmodule.exports = defaults;\n","var arrayFilter = require('./_arrayFilter'),\n baseFilter = require('./_baseFilter'),\n baseIteratee = require('./_baseIteratee'),\n isArray = require('./isArray');\n\n/**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\nfunction filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, baseIteratee(predicate, 3));\n}\n\nmodule.exports = filter;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar vibrant_1 = __importDefault(require(\"./vibrant\"));\nvar browser_1 = __importDefault(require(\"./image/browser\"));\nvibrant_1.default.DefaultOpts.ImageClass = browser_1.default;\nmodule.exports = vibrant_1.default;\n//# sourceMappingURL=browser.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar vibrant_1 = __importDefault(require(\"./vibrant\"));\nvar clone = require(\"lodash/clone\");\nvar Builder = /** @class */ (function () {\n function Builder(src, opts) {\n if (opts === void 0) { opts = {}; }\n this._src = src;\n this._opts = opts;\n this._opts.filters = clone(vibrant_1.default.DefaultOpts.filters);\n }\n Builder.prototype.maxColorCount = function (n) {\n this._opts.colorCount = n;\n return this;\n };\n Builder.prototype.maxDimension = function (d) {\n this._opts.maxDimension = d;\n return this;\n };\n Builder.prototype.addFilter = function (f) {\n this._opts.filters.push(f);\n return this;\n };\n Builder.prototype.removeFilter = function (f) {\n var i = this._opts.filters.indexOf(f);\n if (i > 0)\n this._opts.filters.splice(i);\n return this;\n };\n Builder.prototype.clearFilters = function () {\n this._opts.filters = [];\n return this;\n };\n Builder.prototype.quality = function (q) {\n this._opts.quality = q;\n return this;\n };\n Builder.prototype.useImageClass = function (imageClass) {\n this._opts.ImageClass = imageClass;\n return this;\n };\n Builder.prototype.useGenerator = function (generator) {\n this._opts.generator = generator;\n return this;\n };\n Builder.prototype.useQuantizer = function (quantizer) {\n this._opts.quantizer = quantizer;\n return this;\n };\n Builder.prototype.build = function () {\n return new vibrant_1.default(this._src, this._opts);\n };\n Builder.prototype.getPalette = function (cb) {\n return this.build().getPalette(cb);\n };\n Builder.prototype.getSwatches = function (cb) {\n return this.build().getPalette(cb);\n };\n return Builder;\n}());\nexports.default = Builder;\n//# sourceMappingURL=builder.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Swatch = void 0;\nvar util_1 = require(\"./util\");\nvar filter = require(\"lodash/filter\");\nvar Swatch = /** @class */ (function () {\n function Swatch(rgb, population) {\n this._rgb = rgb;\n this._population = population;\n }\n Swatch.applyFilter = function (colors, f) {\n return typeof f === 'function'\n ? filter(colors, function (_a) {\n var r = _a.r, g = _a.g, b = _a.b;\n return f(r, g, b, 255);\n })\n : colors;\n };\n Object.defineProperty(Swatch.prototype, \"r\", {\n get: function () { return this._rgb[0]; },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"g\", {\n get: function () { return this._rgb[1]; },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"b\", {\n get: function () { return this._rgb[2]; },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"rgb\", {\n get: function () { return this._rgb; },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"hsl\", {\n get: function () {\n if (!this._hsl) {\n var _a = this._rgb, r = _a[0], g = _a[1], b = _a[2];\n this._hsl = util_1.rgbToHsl(r, g, b);\n }\n return this._hsl;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"hex\", {\n get: function () {\n if (!this._hex) {\n var _a = this._rgb, r = _a[0], g = _a[1], b = _a[2];\n this._hex = util_1.rgbToHex(r, g, b);\n }\n return this._hex;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"population\", {\n get: function () { return this._population; },\n enumerable: false,\n configurable: true\n });\n Swatch.prototype.toJSON = function () {\n return {\n rgb: this.rgb,\n population: this.population\n };\n };\n // TODO: deprecate internally, use property instead\n Swatch.prototype.getRgb = function () { return this._rgb; };\n // TODO: deprecate internally, use property instead\n Swatch.prototype.getHsl = function () { return this.hsl; };\n // TODO: deprecate internally, use property instead\n Swatch.prototype.getPopulation = function () { return this._population; };\n // TODO: deprecate internally, use property instead\n Swatch.prototype.getHex = function () { return this.hex; };\n Swatch.prototype.getYiq = function () {\n if (!this._yiq) {\n var rgb = this._rgb;\n this._yiq = (rgb[0] * 299 + rgb[1] * 587 + rgb[2] * 114) / 1000;\n }\n return this._yiq;\n };\n Object.defineProperty(Swatch.prototype, \"titleTextColor\", {\n get: function () {\n if (!this._titleTextColor) {\n this._titleTextColor = this.getYiq() < 200 ? '#fff' : '#000';\n }\n return this._titleTextColor;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Swatch.prototype, \"bodyTextColor\", {\n get: function () {\n if (!this._bodyTextColor) {\n this._bodyTextColor = this.getYiq() < 150 ? '#fff' : '#000';\n }\n return this._bodyTextColor;\n },\n enumerable: false,\n configurable: true\n });\n Swatch.prototype.getTitleTextColor = function () {\n return this.titleTextColor;\n };\n Swatch.prototype.getBodyTextColor = function () {\n return this.bodyTextColor;\n };\n return Swatch;\n}());\nexports.Swatch = Swatch;\n//# sourceMappingURL=color.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction defaultFilter(r, g, b, a) {\n return a >= 125 &&\n !(r > 250 && g > 250 && b > 250);\n}\nexports.default = defaultFilter;\n//# sourceMappingURL=default.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.combineFilters = void 0;\nvar default_1 = require(\"./default\");\nObject.defineProperty(exports, \"Default\", { enumerable: true, get: function () { return default_1.default; } });\nfunction combineFilters(filters) {\n // TODO: caching\n if (!Array.isArray(filters) || filters.length === 0)\n return null;\n return function (r, g, b, a) {\n if (a === 0)\n return false;\n for (var i = 0; i < filters.length; i++) {\n if (!filters[i](r, g, b, a))\n return false;\n }\n return true;\n };\n}\nexports.combineFilters = combineFilters;\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar color_1 = require(\"../color\");\nvar util_1 = require(\"../util\");\nvar defaults = require(\"lodash/defaults\");\nvar DefaultOpts = {\n targetDarkLuma: 0.26,\n maxDarkLuma: 0.45,\n minLightLuma: 0.55,\n targetLightLuma: 0.74,\n minNormalLuma: 0.3,\n targetNormalLuma: 0.5,\n maxNormalLuma: 0.7,\n targetMutesSaturation: 0.3,\n maxMutesSaturation: 0.4,\n targetVibrantSaturation: 1.0,\n minVibrantSaturation: 0.35,\n weightSaturation: 3,\n weightLuma: 6.5,\n weightPopulation: 0.5\n};\nfunction _findMaxPopulation(swatches) {\n var p = 0;\n swatches.forEach(function (s) {\n p = Math.max(p, s.getPopulation());\n });\n return p;\n}\nfunction _isAlreadySelected(palette, s) {\n return palette.Vibrant === s ||\n palette.DarkVibrant === s ||\n palette.LightVibrant === s ||\n palette.Muted === s ||\n palette.DarkMuted === s ||\n palette.LightMuted === s;\n}\nfunction _createComparisonValue(saturation, targetSaturation, luma, targetLuma, population, maxPopulation, opts) {\n function weightedMean() {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n var sum = 0;\n var weightSum = 0;\n for (var i = 0; i < values.length; i += 2) {\n var value = values[i];\n var weight = values[i + 1];\n sum += value * weight;\n weightSum += weight;\n }\n return sum / weightSum;\n }\n function invertDiff(value, targetValue) {\n return 1 - Math.abs(value - targetValue);\n }\n return weightedMean(invertDiff(saturation, targetSaturation), opts.weightSaturation, invertDiff(luma, targetLuma), opts.weightLuma, population / maxPopulation, opts.weightPopulation);\n}\nfunction _findColorVariation(palette, swatches, maxPopulation, targetLuma, minLuma, maxLuma, targetSaturation, minSaturation, maxSaturation, opts) {\n var max = null;\n var maxValue = 0;\n swatches.forEach(function (swatch) {\n var _a = swatch.getHsl(), s = _a[1], l = _a[2];\n if (s >= minSaturation && s <= maxSaturation &&\n l >= minLuma && l <= maxLuma &&\n !_isAlreadySelected(palette, swatch)) {\n var value = _createComparisonValue(s, targetSaturation, l, targetLuma, swatch.getPopulation(), maxPopulation, opts);\n if (max === null || value > maxValue) {\n max = swatch;\n maxValue = value;\n }\n }\n });\n return max;\n}\nfunction _generateVariationColors(swatches, maxPopulation, opts) {\n var palette = {};\n // mVibrantSwatch = findColor(TARGET_NORMAL_LUMA, MIN_NORMAL_LUMA, MAX_NORMAL_LUMA,\n // TARGET_VIBRANT_SATURATION, MIN_VIBRANT_SATURATION, 1f);\n palette.Vibrant = _findColorVariation(palette, swatches, maxPopulation, opts.targetNormalLuma, opts.minNormalLuma, opts.maxNormalLuma, opts.targetVibrantSaturation, opts.minVibrantSaturation, 1, opts);\n // mLightVibrantSwatch = findColor(TARGET_LIGHT_LUMA, MIN_LIGHT_LUMA, 1f,\n // TARGET_VIBRANT_SATURATION, MIN_VIBRANT_SATURATION, 1f);\n palette.LightVibrant = _findColorVariation(palette, swatches, maxPopulation, opts.targetLightLuma, opts.minLightLuma, 1, opts.targetVibrantSaturation, opts.minVibrantSaturation, 1, opts);\n // mDarkVibrantSwatch = findColor(TARGET_DARK_LUMA, 0f, MAX_DARK_LUMA,\n // TARGET_VIBRANT_SATURATION, MIN_VIBRANT_SATURATION, 1f);\n palette.DarkVibrant = _findColorVariation(palette, swatches, maxPopulation, opts.targetDarkLuma, 0, opts.maxDarkLuma, opts.targetVibrantSaturation, opts.minVibrantSaturation, 1, opts);\n // mMutedSwatch = findColor(TARGET_NORMAL_LUMA, MIN_NORMAL_LUMA, MAX_NORMAL_LUMA,\n // TARGET_MUTED_SATURATION, 0f, MAX_MUTED_SATURATION);\n palette.Muted = _findColorVariation(palette, swatches, maxPopulation, opts.targetNormalLuma, opts.minNormalLuma, opts.maxNormalLuma, opts.targetMutesSaturation, 0, opts.maxMutesSaturation, opts);\n // mLightMutedColor = findColor(TARGET_LIGHT_LUMA, MIN_LIGHT_LUMA, 1f,\n // TARGET_MUTED_SATURATION, 0f, MAX_MUTED_SATURATION);\n palette.LightMuted = _findColorVariation(palette, swatches, maxPopulation, opts.targetLightLuma, opts.minLightLuma, 1, opts.targetMutesSaturation, 0, opts.maxMutesSaturation, opts);\n // mDarkMutedSwatch = findColor(TARGET_DARK_LUMA, 0f, MAX_DARK_LUMA,\n // TARGET_MUTED_SATURATION, 0f, MAX_MUTED_SATURATION);\n palette.DarkMuted = _findColorVariation(palette, swatches, maxPopulation, opts.targetDarkLuma, 0, opts.maxDarkLuma, opts.targetMutesSaturation, 0, opts.maxMutesSaturation, opts);\n return palette;\n}\nfunction _generateEmptySwatches(palette, maxPopulation, opts) {\n if (palette.Vibrant === null && palette.DarkVibrant === null && palette.LightVibrant === null) {\n if (palette.DarkVibrant === null && palette.DarkMuted !== null) {\n var _a = palette.DarkMuted.getHsl(), h = _a[0], s = _a[1], l = _a[2];\n l = opts.targetDarkLuma;\n palette.DarkVibrant = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n if (palette.LightVibrant === null && palette.LightMuted !== null) {\n var _b = palette.LightMuted.getHsl(), h = _b[0], s = _b[1], l = _b[2];\n l = opts.targetDarkLuma;\n palette.DarkVibrant = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n }\n if (palette.Vibrant === null && palette.DarkVibrant !== null) {\n var _c = palette.DarkVibrant.getHsl(), h = _c[0], s = _c[1], l = _c[2];\n l = opts.targetNormalLuma;\n palette.Vibrant = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n else if (palette.Vibrant === null && palette.LightVibrant !== null) {\n var _d = palette.LightVibrant.getHsl(), h = _d[0], s = _d[1], l = _d[2];\n l = opts.targetNormalLuma;\n palette.Vibrant = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n if (palette.DarkVibrant === null && palette.Vibrant !== null) {\n var _e = palette.Vibrant.getHsl(), h = _e[0], s = _e[1], l = _e[2];\n l = opts.targetDarkLuma;\n palette.DarkVibrant = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n if (palette.LightVibrant === null && palette.Vibrant !== null) {\n var _f = palette.Vibrant.getHsl(), h = _f[0], s = _f[1], l = _f[2];\n l = opts.targetLightLuma;\n palette.LightVibrant = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n if (palette.Muted === null && palette.Vibrant !== null) {\n var _g = palette.Vibrant.getHsl(), h = _g[0], s = _g[1], l = _g[2];\n l = opts.targetMutesSaturation;\n palette.Muted = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n if (palette.DarkMuted === null && palette.DarkVibrant !== null) {\n var _h = palette.DarkVibrant.getHsl(), h = _h[0], s = _h[1], l = _h[2];\n l = opts.targetMutesSaturation;\n palette.DarkMuted = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n if (palette.LightMuted === null && palette.LightVibrant !== null) {\n var _j = palette.LightVibrant.getHsl(), h = _j[0], s = _j[1], l = _j[2];\n l = opts.targetMutesSaturation;\n palette.LightMuted = new color_1.Swatch(util_1.hslToRgb(h, s, l), 0);\n }\n}\nvar DefaultGenerator = function (swatches, opts) {\n opts = defaults({}, opts, DefaultOpts);\n var maxPopulation = _findMaxPopulation(swatches);\n var palette = _generateVariationColors(swatches, maxPopulation, opts);\n _generateEmptySwatches(palette, maxPopulation, opts);\n return palette;\n};\nexports.default = DefaultGenerator;\n//# sourceMappingURL=default.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar default_1 = require(\"./default\");\nObject.defineProperty(exports, \"Default\", { enumerable: true, get: function () { return default_1.default; } });\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ImageBase = void 0;\nvar ImageBase = /** @class */ (function () {\n function ImageBase() {\n }\n ImageBase.prototype.scaleDown = function (opts) {\n var width = this.getWidth();\n var height = this.getHeight();\n var ratio = 1;\n if (opts.maxDimension > 0) {\n var maxSide = Math.max(width, height);\n if (maxSide > opts.maxDimension)\n ratio = opts.maxDimension / maxSide;\n }\n else {\n ratio = 1 / opts.quality;\n }\n if (ratio < 1)\n this.resize(width * ratio, height * ratio, ratio);\n };\n ImageBase.prototype.applyFilter = function (filter) {\n var imageData = this.getImageData();\n if (typeof filter === 'function') {\n var pixels = imageData.data;\n var n = pixels.length / 4;\n var offset = void 0, r = void 0, g = void 0, b = void 0, a = void 0;\n for (var i = 0; i < n; i++) {\n offset = i * 4;\n r = pixels[offset + 0];\n g = pixels[offset + 1];\n b = pixels[offset + 2];\n a = pixels[offset + 3];\n // Mark ignored color\n if (!filter(r, g, b, a))\n pixels[offset + 3] = 0;\n }\n }\n return Promise.resolve(imageData);\n };\n return ImageBase;\n}());\nexports.ImageBase = ImageBase;\n//# sourceMappingURL=base.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar base_1 = require(\"./base\");\nvar Url = __importStar(require(\"url\"));\nfunction isRelativeUrl(url) {\n var u = Url.parse(url);\n return u.protocol === null &&\n u.host === null &&\n u.port === null;\n}\nfunction isSameOrigin(a, b) {\n var ua = Url.parse(a);\n var ub = Url.parse(b);\n // https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy\n return ua.protocol === ub.protocol &&\n ua.hostname === ub.hostname &&\n ua.port === ub.port;\n}\nvar BrowserImage = /** @class */ (function (_super) {\n __extends(BrowserImage, _super);\n function BrowserImage() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BrowserImage.prototype._initCanvas = function () {\n var img = this.image;\n var canvas = this._canvas = document.createElement('canvas');\n var context = this._context = canvas.getContext('2d');\n canvas.className = 'vibrant-canvas';\n canvas.style.display = 'none';\n this._width = canvas.width = img.width;\n this._height = canvas.height = img.height;\n context.drawImage(img, 0, 0);\n document.body.appendChild(canvas);\n };\n BrowserImage.prototype.load = function (image) {\n var _this = this;\n var img = null;\n var src = null;\n if (typeof image === 'string') {\n img = document.createElement('img');\n if (!isRelativeUrl(image) && !isSameOrigin(window.location.href, image)) {\n img.crossOrigin = 'anonymous';\n }\n src = img.src = image;\n }\n else if (image instanceof HTMLImageElement) {\n img = image;\n src = image.src;\n }\n else {\n return Promise.reject(new Error(\"Cannot load buffer as an image in browser\"));\n }\n this.image = img;\n return new Promise(function (resolve, reject) {\n var onImageLoad = function () {\n _this._initCanvas();\n resolve(_this);\n };\n if (img.complete) {\n // Already loaded\n onImageLoad();\n }\n else {\n img.onload = onImageLoad;\n img.onerror = function (e) { return reject(new Error(\"Fail to load image: \" + src)); };\n }\n });\n };\n BrowserImage.prototype.clear = function () {\n this._context.clearRect(0, 0, this._width, this._height);\n };\n BrowserImage.prototype.update = function (imageData) {\n this._context.putImageData(imageData, 0, 0);\n };\n BrowserImage.prototype.getWidth = function () {\n return this._width;\n };\n BrowserImage.prototype.getHeight = function () {\n return this._height;\n };\n BrowserImage.prototype.resize = function (targetWidth, targetHeight, ratio) {\n var _a = this, canvas = _a._canvas, context = _a._context, img = _a.image;\n this._width = canvas.width = targetWidth;\n this._height = canvas.height = targetHeight;\n context.scale(ratio, ratio);\n context.drawImage(img, 0, 0);\n };\n BrowserImage.prototype.getPixelCount = function () {\n return this._width * this._height;\n };\n BrowserImage.prototype.getImageData = function () {\n return this._context.getImageData(0, 0, this._width, this._height);\n };\n BrowserImage.prototype.remove = function () {\n if (this._canvas && this._canvas.parentNode) {\n this._canvas.parentNode.removeChild(this._canvas);\n }\n };\n return BrowserImage;\n}(base_1.ImageBase));\nexports.default = BrowserImage;\n//# sourceMappingURL=browser.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebWorker = void 0;\nvar mmcq_1 = require(\"./mmcq\");\nObject.defineProperty(exports, \"MMCQ\", { enumerable: true, get: function () { return mmcq_1.default; } });\nexports.WebWorker = null;\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar color_1 = require(\"../color\");\nvar vbox_1 = __importDefault(require(\"./vbox\"));\nvar pqueue_1 = __importDefault(require(\"./pqueue\"));\nvar fractByPopulations = 0.75;\nfunction _splitBoxes(pq, target) {\n var lastSize = pq.size();\n while (pq.size() < target) {\n var vbox = pq.pop();\n if (vbox && vbox.count() > 0) {\n var _a = vbox.split(), vbox1 = _a[0], vbox2 = _a[1];\n pq.push(vbox1);\n if (vbox2 && vbox2.count() > 0)\n pq.push(vbox2);\n // No more new boxes, converged\n if (pq.size() === lastSize) {\n break;\n }\n else {\n lastSize = pq.size();\n }\n }\n else {\n break;\n }\n }\n}\nvar MMCQ = function (pixels, opts) {\n if (pixels.length === 0 || opts.colorCount < 2 || opts.colorCount > 256) {\n throw new Error('Wrong MMCQ parameters');\n }\n var vbox = vbox_1.default.build(pixels);\n var hist = vbox.hist;\n var colorCount = Object.keys(hist).length;\n var pq = new pqueue_1.default(function (a, b) { return a.count() - b.count(); });\n pq.push(vbox);\n // first set of colors, sorted by population\n _splitBoxes(pq, fractByPopulations * opts.colorCount);\n // Re-order\n var pq2 = new pqueue_1.default(function (a, b) { return a.count() * a.volume() - b.count() * b.volume(); });\n pq2.contents = pq.contents;\n // next set - generate the median cuts using the (npix * vol) sorting.\n _splitBoxes(pq2, opts.colorCount - pq2.size());\n // calculate the actual colors\n return generateSwatches(pq2);\n};\nfunction generateSwatches(pq) {\n var swatches = [];\n while (pq.size()) {\n var v = pq.pop();\n var color = v.avg();\n var r = color[0], g = color[1], b = color[2];\n swatches.push(new color_1.Swatch(color, v.count()));\n }\n return swatches;\n}\nexports.default = MMCQ;\n//# sourceMappingURL=mmcq.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar PQueue = /** @class */ (function () {\n function PQueue(comparator) {\n this._comparator = comparator;\n this.contents = [];\n this._sorted = false;\n }\n PQueue.prototype._sort = function () {\n if (!this._sorted) {\n this.contents.sort(this._comparator);\n this._sorted = true;\n }\n };\n PQueue.prototype.push = function (item) {\n this.contents.push(item);\n this._sorted = false;\n };\n PQueue.prototype.peek = function (index) {\n this._sort();\n index = typeof index === 'number' ? index : this.contents.length - 1;\n return this.contents[index];\n };\n PQueue.prototype.pop = function () {\n this._sort();\n return this.contents.pop();\n };\n PQueue.prototype.size = function () {\n return this.contents.length;\n };\n PQueue.prototype.map = function (mapper) {\n this._sort();\n return this.contents.map(mapper);\n };\n return PQueue;\n}());\nexports.default = PQueue;\n//# sourceMappingURL=pqueue.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar util_1 = require(\"../util\");\nvar VBox = /** @class */ (function () {\n function VBox(r1, r2, g1, g2, b1, b2, hist) {\n this._volume = -1;\n this._count = -1;\n this.dimension = { r1: r1, r2: r2, g1: g1, g2: g2, b1: b1, b2: b2 };\n this.hist = hist;\n }\n VBox.build = function (pixels, shouldIgnore) {\n var hn = 1 << (3 * util_1.SIGBITS);\n var hist = new Uint32Array(hn);\n var rmax;\n var rmin;\n var gmax;\n var gmin;\n var bmax;\n var bmin;\n var r;\n var g;\n var b;\n var a;\n rmax = gmax = bmax = 0;\n rmin = gmin = bmin = Number.MAX_VALUE;\n var n = pixels.length / 4;\n var i = 0;\n while (i < n) {\n var offset = i * 4;\n i++;\n r = pixels[offset + 0];\n g = pixels[offset + 1];\n b = pixels[offset + 2];\n a = pixels[offset + 3];\n // Ignored pixels' alpha is marked as 0 in filtering stage\n if (a === 0)\n continue;\n r = r >> util_1.RSHIFT;\n g = g >> util_1.RSHIFT;\n b = b >> util_1.RSHIFT;\n var index = util_1.getColorIndex(r, g, b);\n hist[index] += 1;\n if (r > rmax)\n rmax = r;\n if (r < rmin)\n rmin = r;\n if (g > gmax)\n gmax = g;\n if (g < gmin)\n gmin = g;\n if (b > bmax)\n bmax = b;\n if (b < bmin)\n bmin = b;\n }\n return new VBox(rmin, rmax, gmin, gmax, bmin, bmax, hist);\n };\n VBox.prototype.invalidate = function () {\n this._volume = this._count = -1;\n this._avg = null;\n };\n VBox.prototype.volume = function () {\n if (this._volume < 0) {\n var _a = this.dimension, r1 = _a.r1, r2 = _a.r2, g1 = _a.g1, g2 = _a.g2, b1 = _a.b1, b2 = _a.b2;\n this._volume = (r2 - r1 + 1) * (g2 - g1 + 1) * (b2 - b1 + 1);\n }\n return this._volume;\n };\n VBox.prototype.count = function () {\n if (this._count < 0) {\n var hist = this.hist;\n var _a = this.dimension, r1 = _a.r1, r2 = _a.r2, g1 = _a.g1, g2 = _a.g2, b1 = _a.b1, b2 = _a.b2;\n var c = 0;\n for (var r = r1; r <= r2; r++) {\n for (var g = g1; g <= g2; g++) {\n for (var b = b1; b <= b2; b++) {\n var index = util_1.getColorIndex(r, g, b);\n c += hist[index];\n }\n }\n }\n this._count = c;\n }\n return this._count;\n };\n VBox.prototype.clone = function () {\n var hist = this.hist;\n var _a = this.dimension, r1 = _a.r1, r2 = _a.r2, g1 = _a.g1, g2 = _a.g2, b1 = _a.b1, b2 = _a.b2;\n return new VBox(r1, r2, g1, g2, b1, b2, hist);\n };\n VBox.prototype.avg = function () {\n if (!this._avg) {\n var hist = this.hist;\n var _a = this.dimension, r1 = _a.r1, r2 = _a.r2, g1 = _a.g1, g2 = _a.g2, b1 = _a.b1, b2 = _a.b2;\n var ntot = 0;\n var mult = 1 << (8 - util_1.SIGBITS);\n var rsum = void 0;\n var gsum = void 0;\n var bsum = void 0;\n rsum = gsum = bsum = 0;\n for (var r = r1; r <= r2; r++) {\n for (var g = g1; g <= g2; g++) {\n for (var b = b1; b <= b2; b++) {\n var index = util_1.getColorIndex(r, g, b);\n var h = hist[index];\n ntot += h;\n rsum += (h * (r + 0.5) * mult);\n gsum += (h * (g + 0.5) * mult);\n bsum += (h * (b + 0.5) * mult);\n }\n }\n }\n if (ntot) {\n this._avg = [\n ~~(rsum / ntot),\n ~~(gsum / ntot),\n ~~(bsum / ntot)\n ];\n }\n else {\n this._avg = [\n ~~(mult * (r1 + r2 + 1) / 2),\n ~~(mult * (g1 + g2 + 1) / 2),\n ~~(mult * (b1 + b2 + 1) / 2)\n ];\n }\n }\n return this._avg;\n };\n VBox.prototype.contains = function (rgb) {\n var r = rgb[0], g = rgb[1], b = rgb[2];\n var _a = this.dimension, r1 = _a.r1, r2 = _a.r2, g1 = _a.g1, g2 = _a.g2, b1 = _a.b1, b2 = _a.b2;\n r >>= util_1.RSHIFT;\n g >>= util_1.RSHIFT;\n b >>= util_1.RSHIFT;\n return r >= r1 && r <= r2 &&\n g >= g1 && g <= g2 &&\n b >= b1 && b <= b2;\n };\n VBox.prototype.split = function () {\n var hist = this.hist;\n var _a = this.dimension, r1 = _a.r1, r2 = _a.r2, g1 = _a.g1, g2 = _a.g2, b1 = _a.b1, b2 = _a.b2;\n var count = this.count();\n if (!count)\n return [];\n if (count === 1)\n return [this.clone()];\n var rw = r2 - r1 + 1;\n var gw = g2 - g1 + 1;\n var bw = b2 - b1 + 1;\n var maxw = Math.max(rw, gw, bw);\n var accSum = null;\n var sum;\n var total;\n sum = total = 0;\n var maxd = null;\n if (maxw === rw) {\n maxd = 'r';\n accSum = new Uint32Array(r2 + 1);\n for (var r = r1; r <= r2; r++) {\n sum = 0;\n for (var g = g1; g <= g2; g++) {\n for (var b = b1; b <= b2; b++) {\n var index = util_1.getColorIndex(r, g, b);\n sum += hist[index];\n }\n }\n total += sum;\n accSum[r] = total;\n }\n }\n else if (maxw === gw) {\n maxd = 'g';\n accSum = new Uint32Array(g2 + 1);\n for (var g = g1; g <= g2; g++) {\n sum = 0;\n for (var r = r1; r <= r2; r++) {\n for (var b = b1; b <= b2; b++) {\n var index = util_1.getColorIndex(r, g, b);\n sum += hist[index];\n }\n }\n total += sum;\n accSum[g] = total;\n }\n }\n else {\n maxd = 'b';\n accSum = new Uint32Array(b2 + 1);\n for (var b = b1; b <= b2; b++) {\n sum = 0;\n for (var r = r1; r <= r2; r++) {\n for (var g = g1; g <= g2; g++) {\n var index = util_1.getColorIndex(r, g, b);\n sum += hist[index];\n }\n }\n total += sum;\n accSum[b] = total;\n }\n }\n var splitPoint = -1;\n var reverseSum = new Uint32Array(accSum.length);\n for (var i = 0; i < accSum.length; i++) {\n var d = accSum[i];\n if (splitPoint < 0 && d > total / 2)\n splitPoint = i;\n reverseSum[i] = total - d;\n }\n var vbox = this;\n function doCut(d) {\n var dim1 = d + '1';\n var dim2 = d + '2';\n var d1 = vbox.dimension[dim1];\n var d2 = vbox.dimension[dim2];\n var vbox1 = vbox.clone();\n var vbox2 = vbox.clone();\n var left = splitPoint - d1;\n var right = d2 - splitPoint;\n if (left <= right) {\n d2 = Math.min(d2 - 1, ~~(splitPoint + right / 2));\n d2 = Math.max(0, d2);\n }\n else {\n d2 = Math.max(d1, ~~(splitPoint - 1 - left / 2));\n d2 = Math.min(vbox.dimension[dim2], d2);\n }\n while (!accSum[d2])\n d2++;\n var c2 = reverseSum[d2];\n while (!c2 && accSum[d2 - 1])\n c2 = reverseSum[--d2];\n vbox1.dimension[dim2] = d2;\n vbox2.dimension[dim1] = d2 + 1;\n return [vbox1, vbox2];\n }\n return doCut(maxd);\n };\n return VBox;\n}());\nexports.default = VBox;\n//# sourceMappingURL=vbox.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getColorIndex = exports.getColorDiffStatus = exports.hexDiff = exports.rgbDiff = exports.deltaE94 = exports.rgbToCIELab = exports.xyzToCIELab = exports.rgbToXyz = exports.hslToRgb = exports.rgbToHsl = exports.rgbToHex = exports.hexToRgb = exports.defer = exports.RSHIFT = exports.SIGBITS = exports.DELTAE94_DIFF_STATUS = void 0;\nexports.DELTAE94_DIFF_STATUS = {\n NA: 0,\n PERFECT: 1,\n CLOSE: 2,\n GOOD: 10,\n SIMILAR: 50\n};\nexports.SIGBITS = 5;\nexports.RSHIFT = 8 - exports.SIGBITS;\nfunction defer() {\n var resolve;\n var reject;\n // eslint-disable-next-line promise/param-names\n var promise = new Promise(function (_resolve, _reject) {\n resolve = _resolve;\n reject = _reject;\n });\n // @ts-ignore\n return { resolve: resolve, reject: reject, promise: promise };\n}\nexports.defer = defer;\nfunction hexToRgb(hex) {\n var m = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return m === null ? null : [m[1], m[2], m[3]].map(function (s) { return parseInt(s, 16); });\n}\nexports.hexToRgb = hexToRgb;\nfunction rgbToHex(r, g, b) {\n return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1, 7);\n}\nexports.rgbToHex = rgbToHex;\nfunction rgbToHsl(r, g, b) {\n r /= 255;\n g /= 255;\n b /= 255;\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h;\n var s;\n var l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n // @ts-ignore\n h /= 6;\n }\n // @ts-ignore\n return [h, s, l];\n}\nexports.rgbToHsl = rgbToHsl;\nfunction hslToRgb(h, s, l) {\n var r;\n var g;\n var b;\n function hue2rgb(p, q, t) {\n if (t < 0)\n t += 1;\n if (t > 1)\n t -= 1;\n if (t < 1 / 6)\n return p + (q - p) * 6 * t;\n if (t < 1 / 2)\n return q;\n if (t < 2 / 3)\n return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n if (s === 0) {\n r = g = b = l;\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - (l * s);\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - (1 / 3));\n }\n return [\n r * 255,\n g * 255,\n b * 255\n ];\n}\nexports.hslToRgb = hslToRgb;\nfunction rgbToXyz(r, g, b) {\n r /= 255;\n g /= 255;\n b /= 255;\n r = r > 0.04045 ? Math.pow((r + 0.005) / 1.055, 2.4) : r / 12.92;\n g = g > 0.04045 ? Math.pow((g + 0.005) / 1.055, 2.4) : g / 12.92;\n b = b > 0.04045 ? Math.pow((b + 0.005) / 1.055, 2.4) : b / 12.92;\n r *= 100;\n g *= 100;\n b *= 100;\n var x = r * 0.4124 + g * 0.3576 + b * 0.1805;\n var y = r * 0.2126 + g * 0.7152 + b * 0.0722;\n var z = r * 0.0193 + g * 0.1192 + b * 0.9505;\n return [x, y, z];\n}\nexports.rgbToXyz = rgbToXyz;\nfunction xyzToCIELab(x, y, z) {\n var REF_X = 95.047;\n var REF_Y = 100;\n var REF_Z = 108.883;\n x /= REF_X;\n y /= REF_Y;\n z /= REF_Z;\n x = x > 0.008856 ? Math.pow(x, 1 / 3) : 7.787 * x + 16 / 116;\n y = y > 0.008856 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116;\n z = z > 0.008856 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116;\n var L = 116 * y - 16;\n var a = 500 * (x - y);\n var b = 200 * (y - z);\n return [L, a, b];\n}\nexports.xyzToCIELab = xyzToCIELab;\nfunction rgbToCIELab(r, g, b) {\n var _a = rgbToXyz(r, g, b), x = _a[0], y = _a[1], z = _a[2];\n return xyzToCIELab(x, y, z);\n}\nexports.rgbToCIELab = rgbToCIELab;\nfunction deltaE94(lab1, lab2) {\n var WEIGHT_L = 1;\n var WEIGHT_C = 1;\n var WEIGHT_H = 1;\n var L1 = lab1[0], a1 = lab1[1], b1 = lab1[2];\n var L2 = lab2[0], a2 = lab2[1], b2 = lab2[2];\n var dL = L1 - L2;\n var da = a1 - a2;\n var db = b1 - b2;\n var xC1 = Math.sqrt(a1 * a1 + b1 * b1);\n var xC2 = Math.sqrt(a2 * a2 + b2 * b2);\n var xDL = L2 - L1;\n var xDC = xC2 - xC1;\n var xDE = Math.sqrt(dL * dL + da * da + db * db);\n var xDH = (Math.sqrt(xDE) > Math.sqrt(Math.abs(xDL)) + Math.sqrt(Math.abs(xDC)))\n ? Math.sqrt(xDE * xDE - xDL * xDL - xDC * xDC)\n : 0;\n var xSC = 1 + 0.045 * xC1;\n var xSH = 1 + 0.015 * xC1;\n xDL /= WEIGHT_L;\n xDC /= WEIGHT_C * xSC;\n xDH /= WEIGHT_H * xSH;\n return Math.sqrt(xDL * xDL + xDC * xDC + xDH * xDH);\n}\nexports.deltaE94 = deltaE94;\nfunction rgbDiff(rgb1, rgb2) {\n var lab1 = rgbToCIELab.apply(undefined, rgb1);\n var lab2 = rgbToCIELab.apply(undefined, rgb2);\n return deltaE94(lab1, lab2);\n}\nexports.rgbDiff = rgbDiff;\nfunction hexDiff(hex1, hex2) {\n var rgb1 = hexToRgb(hex1);\n var rgb2 = hexToRgb(hex2);\n return rgbDiff(rgb1, rgb2);\n}\nexports.hexDiff = hexDiff;\nfunction getColorDiffStatus(d) {\n if (d < exports.DELTAE94_DIFF_STATUS.NA) {\n return 'N/A';\n }\n // Not perceptible by human eyes\n if (d <= exports.DELTAE94_DIFF_STATUS.PERFECT) {\n return 'Perfect';\n }\n // Perceptible through close observation\n if (d <= exports.DELTAE94_DIFF_STATUS.CLOSE) {\n return 'Close';\n }\n // Perceptible at a glance\n if (d <= exports.DELTAE94_DIFF_STATUS.GOOD) {\n return 'Good';\n }\n // Colors are more similar than opposite\n if (d < exports.DELTAE94_DIFF_STATUS.SIMILAR) {\n return 'Similar';\n }\n return 'Wrong';\n}\nexports.getColorDiffStatus = getColorDiffStatus;\nfunction getColorIndex(r, g, b) {\n return (r << (2 * exports.SIGBITS)) + (g << exports.SIGBITS) + b;\n}\nexports.getColorIndex = getColorIndex;\n//# sourceMappingURL=util.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar color_1 = require(\"./color\");\nvar builder_1 = __importDefault(require(\"./builder\"));\nvar Util = __importStar(require(\"./util\"));\nvar Quantizer = __importStar(require(\"./quantizer\"));\nvar Generator = __importStar(require(\"./generator\"));\nvar Filters = __importStar(require(\"./filter\"));\nvar defaults = require(\"lodash/defaults\");\nvar Vibrant = /** @class */ (function () {\n function Vibrant(_src, opts) {\n this._src = _src;\n this.opts = defaults({}, opts, Vibrant.DefaultOpts);\n this.opts.combinedFilter = Filters.combineFilters(this.opts.filters);\n }\n Vibrant.from = function (src) {\n return new builder_1.default(src);\n };\n Vibrant.prototype._process = function (image, opts) {\n var quantizer = opts.quantizer, generator = opts.generator;\n image.scaleDown(opts);\n return image.applyFilter(opts.combinedFilter)\n .then(function (imageData) { return quantizer(imageData.data, opts); })\n .then(function (colors) { return color_1.Swatch.applyFilter(colors, opts.combinedFilter); })\n .then(function (colors) { return Promise.resolve(generator(colors)); });\n };\n Vibrant.prototype.palette = function () {\n return this.swatches();\n };\n Vibrant.prototype.swatches = function () {\n return this._palette;\n };\n Vibrant.prototype.getPalette = function (cb) {\n var _this = this;\n var image = new this.opts.ImageClass();\n var result = image.load(this._src)\n .then(function (image) { return _this._process(image, _this.opts); })\n .then(function (palette) {\n _this._palette = palette;\n image.remove();\n return palette;\n }, function (err) {\n image.remove();\n throw err;\n });\n if (cb)\n result.then(function (palette) { return cb(null, palette); }, function (err) { return cb(err); });\n return result;\n };\n Vibrant.Builder = builder_1.default;\n Vibrant.Quantizer = Quantizer;\n Vibrant.Generator = Generator;\n Vibrant.Filter = Filters;\n Vibrant.Util = Util;\n Vibrant.Swatch = color_1.Swatch;\n Vibrant.DefaultOpts = {\n colorCount: 64,\n quality: 5,\n generator: Generator.Default,\n ImageClass: null,\n quantizer: Quantizer.MMCQ,\n filters: [Filters.Default]\n };\n return Vibrant;\n}());\nexports.default = Vibrant;\n//# sourceMappingURL=vibrant.js.map","// 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","// 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__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"9712b63e6d8aa316e55f\" + \"\";\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 = 1474;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && !scriptUrl) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__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\t1474: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\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__(21613); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","undefined","done","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","doneResult","displayName","isGeneratorFunction","genFun","ctor","constructor","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","arguments","apply","_arrayLikeToArray","arr","len","arr2","Array","backgroundImage","loadState","shippedBackgroundList","themingDefaultBackground","defaultShippedBackground","prefixWithBaseUrl","url","generateFilePath","components","Check","Close","ImageEdit","NcColorPicker","data","loading","Theming","computed","shippedBackgrounds","_this","map","fileName","preview","details","filter","background","isGlobalBackgroundDeleted","isGlobalBackgroundDefault","isBackgroundDisabled","methods","invertTextColor","color","calculateLuma","_this$hexToRGB2","hexToRGB","isArray","_arrayWithHoles","_i","_x","_r","_arr","_n","_d","_iterableToArrayLimit","o","minLen","n","toString","from","test","_unsupportedIterableToArray","_nonIterableRest","hex","exec","parseInt","update","_this2","_callee","_context","backgroundColor","setDefault","_this3","_callee2","_context2","axios","post","generateUrl","setShipped","shipped","_this4","_callee3","_context3","setFile","path","_arguments","_this5","_callee4","_context4","removeBackground","_this6","_callee5","_context5","delete","pickColor","event","_this7","_callee6","_event$target","_this7$Theming","_context6","target","dataset","debouncePickColor","debounce","pickFile","_this8","getFilePickerBuilder","t","allowDirectories","setMimeTypeFilter","setMultiSelect","addButton","id","label","callback","nodes","_nodes$","applyFile","build","pick","_this9","_callee7","response","_palette$DarkVibrant","fileUrl","blobUrl","palette","_context7","trim","console","showError","generateRemoteUrl","getCurrentUser","uid","get","responseType","URL","createObjectURL","getColorPaletteFromBlob","DarkVibrant","debug","t0","Vibrant","getPalette","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","class","style","defaultColor","model","$$v","$set","expression","_l","shippedBackground","primary_color","attribution","theming","NcCheckboxRadioSwitch","enforced","Boolean","selected","theme","required","unique","switchType","img","checked","set","enabled","onToggle","description","enableLabel","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","availableThemes","enforceTheme","shortcutsDisabled","isUserThemingDisabled","ItemPreview","NcSettingsSection","BackgroundSettings","themes","fonts","selectedTheme","find","replace","guidelinesLink","descriptionDetail","issuetrackerLink","designteamLink","watch","newState","changeShortcutsDisabled","refreshGlobalStyles","document","head","querySelectorAll","href","searchParams","Date","now","newTheme","cloneNode","onload","remove","append","updateBackground","changeTheme","_ref","updateBodyAttributes","selectItem","changeFont","_ref2","font","generateOcsUrl","appId","configKey","configValue","enabledThemesIDs","enabledFontsIDs","body","toggleAttribute","concat","setAttribute","join","themeId","OC","Notification","showTemporary","ocs","meta","message","domProps","__webpack_nonce__","btoa","getRequestToken","Vue","extend","App","$mount","$on","___CSS_LOADER_EXPORT___","module","baseForOwn","baseEach","createBaseEach","collection","predicate","index","baseFor","iteratee","isArrayLike","eachFunc","fromRight","baseRest","eq","isIterateeCall","keysIn","objectProto","defaults","sources","guard","source","propsIndex","propsLength","arrayFilter","baseFilter","baseIteratee","__importDefault","mod","__esModule","vibrant_1","browser_1","DefaultOpts","ImageClass","clone","Builder","src","opts","_src","_opts","filters","maxColorCount","colorCount","maxDimension","d","addFilter","f","removeFilter","indexOf","splice","clearFilters","quality","q","useImageClass","imageClass","useGenerator","useQuantizer","quantizer","cb","getSwatches","Swatch","util_1","rgb","population","_rgb","_population","applyFilter","colors","_a","r","g","b","_hsl","rgbToHsl","_hex","rgbToHex","toJSON","getRgb","getHsl","hsl","getPopulation","getHex","getYiq","_yiq","_titleTextColor","_bodyTextColor","getTitleTextColor","titleTextColor","getBodyTextColor","bodyTextColor","a","combineFilters","default_1","color_1","targetDarkLuma","maxDarkLuma","minLightLuma","targetLightLuma","minNormalLuma","targetNormalLuma","maxNormalLuma","targetMutesSaturation","maxMutesSaturation","targetVibrantSaturation","minVibrantSaturation","weightSaturation","weightLuma","weightPopulation","_findColorVariation","swatches","maxPopulation","targetLuma","minLuma","maxLuma","targetSaturation","minSaturation","maxSaturation","max","maxValue","swatch","s","l","LightVibrant","Muted","DarkMuted","LightMuted","_isAlreadySelected","saturation","luma","invertDiff","targetValue","Math","abs","sum","weightSum","weight","weightedMean","_createComparisonValue","p","_findMaxPopulation","_generateVariationColors","h","hslToRgb","_f","_g","_h","_j","_generateEmptySwatches","ImageBase","scaleDown","width","getWidth","height","getHeight","ratio","maxSide","resize","imageData","getImageData","pixels","offset","extendStatics","__extends","__","__createBinding","m","k","k2","__setModuleDefault","v","__importStar","base_1","Url","BrowserImage","_super","_initCanvas","image","canvas","_canvas","createElement","getContext","className","display","_width","_height","drawImage","appendChild","load","ua","ub","u","parse","protocol","host","port","window","location","hostname","crossOrigin","HTMLImageElement","onImageLoad","onerror","e","clear","clearRect","putImageData","targetWidth","targetHeight","scale","getPixelCount","parentNode","removeChild","WebWorker","mmcq_1","vbox_1","pqueue_1","_splitBoxes","pq","lastSize","vbox","count","split","vbox1","vbox2","hist","pq2","volume","contents","avg","generateSwatches","PQueue","comparator","_comparator","_sorted","_sort","sort","item","peek","mapper","VBox","r1","r2","g1","g2","b1","b2","_volume","_count","dimension","shouldIgnore","rmax","rmin","gmax","gmin","bmax","bmin","hn","SIGBITS","Uint32Array","MAX_VALUE","RSHIFT","getColorIndex","invalidate","_avg","c","ntot","mult","rsum","gsum","bsum","contains","total","rw","gw","bw","maxw","accSum","maxd","splitPoint","reverseSum","dim1","dim2","d1","d2","left","right","min","c2","doCut","hexToRgb","rgbToXyz","pow","xyzToCIELab","x","y","z","rgbToCIELab","deltaE94","lab1","lab2","L1","a1","L2","a2","dL","da","db","xC1","sqrt","xDL","xDC","xDE","xDH","rgbDiff","rgb1","rgb2","getColorDiffStatus","hexDiff","defer","DELTAE94_DIFF_STATUS","NA","PERFECT","CLOSE","GOOD","SIMILAR","promise","_resolve","_reject","hue2rgb","hex1","hex2","builder_1","Util","Quantizer","Filters","combinedFilter","_process","_palette","Filter","Default","MMCQ","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","every","getter","definition","chunkId","all","reduce","promises","globalThis","Function","prop","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","nc","onScriptComplete","clearTimeout","doneFns","setTimeout","bind","nmd","paths","children","scriptUrl","importScripts","currentScript","baseURI","installedChunks","installedChunkData","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}