{"version":3,"file":"config.js","sources":["../../../src/js/config.js"],"sourcesContent":["/* eslint-disable no-var */\n/* eslint-disable no-unused-vars */\n/* eslint-disable no-extra-boolean-cast */\n/* -------------------------------------------------------------------------- */\n/* Config */\n/* -------------------------------------------------------------------------- */\n\nconst configQueryMap = {\n 'navbar-vertical-collapsed': 'phoenixIsNavbarVerticalCollapsed',\n 'color-scheme': 'phoenixTheme',\n 'navigation-type': 'phoenixNavbarPosition',\n 'vertical-navbar-appearance': 'phoenixNavbarVerticalStyle',\n 'horizontal-navbar-shape': 'phoenixNavbarTopShape',\n 'horizontal-navbar-appearance': 'phoenixNavbarTopStyle'\n};\n\nconst initialConfig = {\n phoenixIsNavbarVerticalCollapsed: false,\n phoenixTheme: 'light',\n phoenixNavbarTopStyle: 'default',\n phoenixNavbarVerticalStyle: 'default',\n phoenixNavbarPosition: 'vertical',\n phoenixNavbarTopShape: 'default',\n phoenixIsRTL: false,\n phoenixSupportChat: true\n};\n\nconst CONFIG = { ...initialConfig };\n\nconst setConfig = (payload, persist = true) => {\n Object.keys(payload).forEach(key => {\n CONFIG[key] = payload[key];\n if (persist) {\n localStorage.setItem(key, payload[key]);\n }\n });\n};\n\nconst resetConfig = () => {\n Object.keys(initialConfig).forEach(key => {\n CONFIG[key] = initialConfig[key];\n localStorage.setItem(key, initialConfig[key]);\n });\n};\n\nconst urlSearchParams = new URLSearchParams(window.location.search);\nconst params = Object.fromEntries(urlSearchParams.entries());\n\nif (\n Object.keys(params).length > 0 &&\n Object.keys(params).includes('theme-control')\n) {\n resetConfig();\n\n Object.keys(params).forEach(param => {\n if (configQueryMap[param]) {\n localStorage.setItem(configQueryMap[param], params[param]);\n }\n });\n}\n\nObject.keys(CONFIG).forEach(key => {\n if (localStorage.getItem(key) === null) {\n localStorage.setItem(key, CONFIG[key]);\n } else {\n try {\n setConfig({\n [key]: JSON.parse(localStorage.getItem(key))\n });\n } catch {\n setConfig({\n [key]: localStorage.getItem(key)\n });\n }\n }\n});\n\nif (!!JSON.parse(localStorage.getItem('phoenixIsNavbarVerticalCollapsed'))) {\n document.documentElement.classList.add('navbar-vertical-collapsed');\n}\n\nif (localStorage.getItem('phoenixTheme') === 'dark') {\n document.documentElement.setAttribute('data-bs-theme', 'dark');\n} else if (localStorage.getItem('phoenixTheme') === 'auto') {\n document.documentElement.setAttribute(\n 'data-bs-theme',\n window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'\n );\n}\n\nif (localStorage.getItem('phoenixNavbarPosition') === 'horizontal') {\n document.documentElement.setAttribute('data-navigation-type', 'horizontal');\n}\n\nif (localStorage.getItem('phoenixNavbarPosition') === 'combo') {\n document.documentElement.setAttribute('data-navigation-type', 'combo');\n}\n\nexport default {\n config: CONFIG,\n reset: resetConfig,\n set: setConfig\n};\n"],"names":[],"mappings":"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"}