@bigbinary/neeto-themes-frontend 4.0.21 → 4.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/app/javascript/src/translations/ar.json +45 -0
  2. package/app/javascript/src/translations/bg.json +45 -0
  3. package/app/javascript/src/translations/ca.json +45 -0
  4. package/app/javascript/src/translations/cs.json +45 -0
  5. package/app/javascript/src/translations/da.json +45 -0
  6. package/app/javascript/src/translations/de.json +45 -0
  7. package/app/javascript/src/translations/en.json +45 -0
  8. package/app/javascript/src/translations/es-MX.json +45 -0
  9. package/app/javascript/src/translations/es.json +45 -0
  10. package/app/javascript/src/translations/et.json +45 -0
  11. package/app/javascript/src/translations/fi.json +45 -0
  12. package/app/javascript/src/translations/fil.json +45 -0
  13. package/app/javascript/src/translations/fr.json +45 -0
  14. package/app/javascript/src/translations/he.json +45 -0
  15. package/app/javascript/src/translations/hi.json +45 -0
  16. package/app/javascript/src/translations/hr.json +45 -0
  17. package/app/javascript/src/translations/hu.json +45 -0
  18. package/app/javascript/src/translations/id.json +45 -0
  19. package/app/javascript/src/translations/index.js +108 -1
  20. package/app/javascript/src/translations/it.json +45 -0
  21. package/app/javascript/src/translations/ja.json +45 -0
  22. package/app/javascript/src/translations/ko.json +45 -0
  23. package/app/javascript/src/translations/nl.json +45 -0
  24. package/app/javascript/src/translations/pl.json +45 -0
  25. package/app/javascript/src/translations/pt-BR.json +45 -0
  26. package/app/javascript/src/translations/pt.json +45 -0
  27. package/app/javascript/src/translations/ro.json +45 -0
  28. package/app/javascript/src/translations/ru.json +45 -0
  29. package/app/javascript/src/translations/sk.json +45 -0
  30. package/app/javascript/src/translations/sl.json +45 -0
  31. package/app/javascript/src/translations/sv.json +45 -0
  32. package/app/javascript/src/translations/th.json +45 -0
  33. package/app/javascript/src/translations/tr.json +45 -0
  34. package/app/javascript/src/translations/uk.json +45 -0
  35. package/app/javascript/src/translations/vi.json +45 -0
  36. package/app/javascript/src/translations/zh-CN.json +45 -0
  37. package/app/javascript/src/translations/zh-TW.json +45 -0
  38. package/dist/.ready +1 -1
  39. package/dist/NeetoThemesBuilder.js +57 -2620
  40. package/dist/NeetoThemesBuilder.js.map +1 -1
  41. package/dist/cjs/NeetoThemesBuilder.js +58 -2617
  42. package/dist/cjs/NeetoThemesBuilder.js.map +1 -1
  43. package/dist/cjs/hooks.js +2 -2
  44. package/dist/cjs/index.js +6 -5
  45. package/dist/cjs/index.js.map +1 -1
  46. package/dist/cjs/utils.js +1 -1
  47. package/dist/hooks.js +2 -2
  48. package/dist/index-B-2UmfUl.js +10300 -0
  49. package/dist/index-B-2UmfUl.js.map +1 -0
  50. package/dist/{index-BP-ka0mC.js → index-BUeeI0XI.js} +3 -2
  51. package/dist/index-BUeeI0XI.js.map +1 -0
  52. package/dist/{index-JpAFUrB8.js → index-BZB12oJt.js} +3 -2
  53. package/dist/index-BZB12oJt.js.map +1 -0
  54. package/dist/index-CCp4j3GE.js +10303 -0
  55. package/dist/index-CCp4j3GE.js.map +1 -0
  56. package/dist/index.js +4 -4
  57. package/dist/{useExpandedSection-D9J7nzlC.js → useExpandedSection-CelNLEKQ.js} +2 -2
  58. package/dist/{useExpandedSection-D9J7nzlC.js.map → useExpandedSection-CelNLEKQ.js.map} +1 -1
  59. package/dist/{useExpandedSection-B6w2AxTV.js → useExpandedSection-GpzbAxmE.js} +2 -2
  60. package/dist/{useExpandedSection-B6w2AxTV.js.map → useExpandedSection-GpzbAxmE.js.map} +1 -1
  61. package/dist/utils.js +1 -1
  62. package/package.json +20 -20
  63. package/types.d.ts +5 -1
  64. package/dist/index-BP-ka0mC.js.map +0 -1
  65. package/dist/index-JpAFUrB8.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CCp4j3GE.js","sources":["../app/javascript/src/apis/entities.js","../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../app/javascript/src/translations/index.js","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../app/javascript/src/apis/themes.js","../app/javascript/src/hooks/reactQuery/useThemesApi.js","../app/javascript/src/routes.js","../app/javascript/src/apis/global_themes.js","../app/javascript/src/hooks/reactQuery/useGlobalThemesApi.js","../app/javascript/src/components/NeetoThemesBuilder/constants.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Editor.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/utils.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/CustomCSS.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/LogoPosition.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/TextBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/QuickActionRow.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityId => axios.get(`${BASE_URL}/api/v1/entities/${entityId}`);\n\nconst entitiesApi = { show };\n\nexport default entitiesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","import i18n from \"i18next\";\n\nimport ar from \"./ar.json\";\nimport bg from \"./bg.json\";\nimport ca from \"./ca.json\";\nimport cs from \"./cs.json\";\nimport da from \"./da.json\";\nimport de from \"./de.json\";\nimport en from \"./en.json\";\nimport esMx from \"./es-MX.json\";\nimport es from \"./es.json\";\nimport et from \"./et.json\";\nimport fi from \"./fi.json\";\nimport fil from \"./fil.json\";\nimport fr from \"./fr.json\";\nimport he from \"./he.json\";\nimport hi from \"./hi.json\";\nimport hr from \"./hr.json\";\nimport hu from \"./hu.json\";\nimport id from \"./id.json\";\nimport it from \"./it.json\";\nimport ja from \"./ja.json\";\nimport ko from \"./ko.json\";\nimport nl from \"./nl.json\";\nimport pl from \"./pl.json\";\nimport ptBr from \"./pt-BR.json\";\nimport pt from \"./pt.json\";\nimport ro from \"./ro.json\";\nimport ru from \"./ru.json\";\nimport sk from \"./sk.json\";\nimport sl from \"./sl.json\";\nimport sv from \"./sv.json\";\nimport th from \"./th.json\";\nimport tr from \"./tr.json\";\nimport uk from \"./uk.json\";\nimport vi from \"./vi.json\";\nimport zhCn from \"./zh-CN.json\";\nimport zhTw from \"./zh-TW.json\";\n\nconst translations = {\n ar,\n bg,\n ca,\n cs,\n da,\n de,\n en,\n \"es-MX\": esMx,\n es,\n et,\n fi,\n fil,\n fr,\n he,\n hi,\n hr,\n hu,\n id,\n it,\n ja,\n ko,\n nl,\n pl,\n \"pt-BR\": ptBr,\n pt,\n ro,\n ru,\n sk,\n sl,\n sv,\n th,\n tr,\n uk,\n vi,\n \"zh-CN\": zhCn,\n \"zh-TW\": zhTw,\n};\n\nconst registeredLanguagesByI18nInstance = new WeakMap();\n\nconst getRegisteredLanguages = i18nInstance => {\n if (!registeredLanguagesByI18nInstance.has(i18nInstance)) {\n registeredLanguagesByI18nInstance.set(i18nInstance, new Set());\n }\n\n return registeredLanguagesByI18nInstance.get(i18nInstance);\n};\n\nconst registerNeetoThemesTranslations = (\n i18nInstance = i18n,\n { overwrite = false } = {}\n) => {\n const registeredLanguages = getRegisteredLanguages(i18nInstance);\n\n Object.entries(translations).forEach(([language, translation]) => {\n if (!overwrite && registeredLanguages.has(language)) return;\n\n i18nInstance.addResourceBundle(\n language,\n \"translation\",\n translation,\n true,\n overwrite\n );\n\n registeredLanguages.add(language);\n });\n};\n\nexport { en, translations, registerNeetoThemesTranslations };\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = entityId =>\n axios.get(`${BASE_URL}/api/v1/themes`, { params: { entity_id: entityId } });\n\nconst show = id => axios.get(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst create = payload =>\n axios.post(`${BASE_URL}/api/v1/themes`, { theme: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(\n `${BASE_URL}/api/v1/themes/${id}`,\n { theme: payload },\n { showToastr: false }\n );\n\nconst destroy = id =>\n axios.delete(`${BASE_URL}/api/v1/themes/${id}`, { showToastr: false });\n\nconst clone = id =>\n axios.post(`${BASE_URL}/api/v1/themes/${id}/clone`, {}, { showToastr: false });\n\nconst apply = ({ themeId, ...payload }) =>\n axios.post(\n `${BASE_URL}/api/v1/themes/${themeId}/apply`,\n { entity: payload },\n { showToastr: false }\n );\n\nconst applyGlobalTheme = ({ themeId, payload }) =>\n axios.post(`${BASE_URL}/api/v1/themes/${themeId}/apply_global_theme`, {\n theme: payload,\n });\n\nconst themesApi = {\n list,\n show,\n create,\n update,\n destroy,\n clone,\n apply,\n applyGlobalTheme,\n};\n\nexport default themesApi;\n","import { useQuery, useQueryClient } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport themesApi from \"apis/themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nexport const useListThemes = entityId => {\n const { isTemplateThemesEnabled } = useConfigStore.pick();\n\n const queryKey = isTemplateThemesEnabled\n ? [QUERY_KEYS.THEMES_LIST, entityId]\n : [QUERY_KEYS.THEMES_LIST];\n\n return useQuery({\n queryKey,\n queryFn: () => themesApi.list(entityId),\n });\n};\n\nexport const useFetchTheme = (themeId, options) =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_DETAILS, themeId],\n queryFn: () => themesApi.show(themeId),\n ...options,\n });\n\nexport const useCreateTheme = () =>\n useMutationWithInvalidation(themesApi.create, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n [QUERY_KEYS.GLOBAL_THEME_DETAILS],\n ],\n });\n\nexport const useUpdateTheme = themeId => {\n const queryClient = useQueryClient();\n\n return useMutationWithInvalidation(\n payload => themesApi.update({ id: themeId, payload }),\n {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n [QUERY_KEYS.THEME_DETAILS, themeId],\n [QUERY_KEYS.GLOBAL_THEME_DETAILS],\n ],\n onSuccess: ({ theme }) => {\n queryClient.setQueryData([QUERY_KEYS.THEME_DETAILS, themeId], theme);\n },\n }\n );\n};\n\nexport const useDeleteTheme = () =>\n useMutationWithInvalidation(themesApi.destroy, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n });\n\nexport const useCloneTheme = () =>\n useMutationWithInvalidation(themesApi.clone, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useApplyTheme = ({ onSuccess }) =>\n useMutationWithInvalidation(themesApi.apply, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n onSuccess,\n });\n\nexport const useApplyGlobalTheme = () =>\n useMutationWithInvalidation(themesApi.applyGlobalTheme, {\n keysToInvalidate: [\n [QUERY_KEYS.GLOBAL_THEME_DETAILS],\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n });\n","const routes = {\n themes: {\n index: \"/themes\",\n edit: \"/themes/:themeId/edit\",\n new: \"/themes/new\",\n },\n};\nexport default routes;\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityType =>\n axios.get(`${BASE_URL}/api/v1/global_theme`, {\n params: { entity_type: entityType },\n });\n\nconst globalThemesApi = { show };\nexport default globalThemesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport globalThemesApi from \"apis/global_themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowGlobalTheme = entityType =>\n useQuery({\n queryKey: [QUERY_KEYS.GLOBAL_THEME_DETAILS, entityType],\n queryFn: () => globalThemesApi.show(entityType),\n enabled: !!entityType,\n });\n","export const DESIGN_SCREENS = {\n THEMES: \"Themes\",\n Customize: \"Customize\",\n CustomCSS: \"CustomCSS\",\n};\n\nexport const ONE_MEGABYTE = 1;\n","import { lazy, Suspense } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Spinner } from \"neetoui\";\n\nconst MonacoEditor = lazy(() => import(\"@monaco-editor/react\"));\n\nconst Editor = ({ value, isCustomCssScreen, onChange }) => (\n <Suspense fallback={<Spinner />}>\n <MonacoEditor\n {...{ onChange, value }}\n language=\"css\"\n theme=\"vs-dark\"\n className={classNames({\n rounded: true,\n \"css-editor-height__expanded\": isCustomCssScreen,\n \"css-editor-height__regular\": !isCustomCssScreen,\n })}\n options={{\n scrollBeyondLastLine: false,\n minimap: { enabled: false },\n }}\n />\n </Suspense>\n);\n\nexport default Editor;\n","import classnames from \"classnames\";\nimport i18n from \"i18next\";\nimport { hyphenate, isPresent } from \"neetocist\";\nimport { Right, Left } from \"neetoicons\";\nimport HelpPopver from \"neetomolecules/HelpPopover\";\nimport { Typography } from \"neetoui\";\n\nimport useExpandedSection from \"hooks/useExpandedSection\";\n\nconst Card = ({\n title = \"\",\n children,\n name,\n className,\n helpPopoverProps,\n required,\n}) => {\n const { expandedSection, setExpandedSection } = useExpandedSection();\n const isOpen = expandedSection === name;\n\n const isRTL = i18n.dir() === \"rtl\";\n const ToggleIcon = isRTL ? Left : Right;\n\n const handleToggle = () => setExpandedSection(isOpen ? \"\" : name);\n\n return (\n <div\n data-testid={`theme-${hyphenate(title)}-properties`}\n className={classnames(\n \"neeto-themes-nano-section neeto-ui-border-gray-200 border-b pt-2 transition-all duration-300 last:border-none\",\n className,\n { \"pb-2\": !isOpen, \"pb-3\": isOpen }\n )}\n >\n {title && (\n <button\n className=\"neeto-themes-nano-section__title flex w-full cursor-pointer items-center justify-between px-1 py-2 focus:outline-none\"\n type=\"button\"\n onClick={handleToggle}\n >\n <Typography\n className=\"flex min-w-0 grow items-center gap-2 text-start\"\n component=\"span\"\n data-testid=\"theme-properties\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n {required && (\n <span aria-hidden className=\"-ms-1\">\n *\n </span>\n )}\n {isPresent(helpPopoverProps) && (\n <HelpPopver {...helpPopoverProps} />\n )}\n </Typography>\n <ToggleIcon\n size={20}\n className={classnames(\"transition-all duration-300\", {\n \"rotate-90 rtl:-rotate-90\": isOpen,\n })}\n />\n </button>\n )}\n {children && (\n <div\n className={classnames(\n \"neeto-themes-nano-section__content w-full space-y-3 overflow-hidden px-1 transition-all duration-300\",\n {\n \"neeto-themes-nano-section__content--closed\": !isOpen,\n \"neeto-themes-nano-section__content--open pb-1\": isOpen,\n }\n )}\n >\n {children}\n </div>\n )}\n </div>\n );\n};\n\nexport default Card;\n","import { isEmpty } from \"ramda\";\nimport { flushSync } from \"react-dom\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nexport const isScreenCustomCSS = screen => screen === DESIGN_SCREENS.CustomCSS;\n\nexport const buildPathname = route => {\n let pathname = \"\";\n for (const segment of location.pathname.split(\"/\")) {\n if (isEmpty(segment)) {\n continue;\n }\n\n if (segment === \"themes\") {\n break;\n }\n pathname += `/${segment}`;\n }\n\n return `${pathname}${route}`;\n};\n\n// FLIP: measure each theme card's position, apply the React update, then\n// transform every card back to its old spot and let a CSS transition glide\n// it to the new one. The animation itself is CSS (.neeto-themes-flip-animating).\nexport const animateThemeReorder = updateFn => {\n const prefersReducedMotion = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches;\n const cards = [...document.querySelectorAll(\"[data-flip-id]\")];\n const scrollContainer = document.querySelector(\n \".neeto-themes-sidebar__scroll\"\n );\n\n if (prefersReducedMotion || cards.length === 0) {\n updateFn();\n if (scrollContainer) scrollContainer.scrollTop = 0;\n\n return;\n }\n\n const oldRects = new Map(\n cards.map(card => [card.dataset.flipId, card.getBoundingClientRect()])\n );\n\n flushSync(updateFn);\n\n // Move the viewport to the top — the applied theme is now the first card.\n // The FLIP deltas below are measured after this, so the scroll is folded\n // into the glide instead of showing as an instant jump.\n if (scrollContainer) scrollContainer.scrollTop = 0;\n\n const flips = [...document.querySelectorAll(\"[data-flip-id]\")]\n .map(card => {\n const oldRect = oldRects.get(card.dataset.flipId);\n if (!oldRect) return null;\n\n const newRect = card.getBoundingClientRect();\n const dx = oldRect.left - newRect.left;\n const dy = oldRect.top - newRect.top;\n\n return dx || dy ? { card, dx, dy } : null;\n })\n .filter(Boolean);\n\n if (flips.length === 0) return;\n\n flips.forEach(({ card, dx, dy }) => {\n card.style.transform = `translate(${dx}px, ${dy}px)`;\n });\n\n // Force a reflow so the starting transform is committed before animating.\n document.body.offsetHeight;\n\n flips.forEach(({ card }) => {\n card.classList.add(\"neeto-themes-flip-animating\");\n card.style.transform = \"\";\n card.addEventListener(\n \"transitionend\",\n () => {\n card.classList.remove(\"neeto-themes-flip-animating\");\n },\n { once: true }\n );\n });\n};\n","import { useFormikContext } from \"formik\";\nimport { findBy, findIndexBy } from \"neetocist\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DESIGN_SCREENS } from \"components/NeetoThemesBuilder/constants\";\nimport { scrollElementIntoView } from \"components/utils\";\nimport useExpandedSection from \"hooks/useExpandedSection\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { setCustomCSS } from \"utils\";\n\nimport Editor from \"./Editor\";\n\nimport Card from \"../commons/Card\";\nimport { isScreenCustomCSS } from \"../utils\";\n\nconst CustomCSS = ({\n onEditCSSClick,\n currentScreen,\n isEnabled,\n isProFeature,\n}) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n const { themePropertiesSchema, helpPopoverProps } = useConfigStore.pick();\n const { customCss: customCssHelpPopoverProps = {} } = helpPopoverProps;\n const { expandedSection } = useExpandedSection();\n const isExpanded = expandedSection === \"customcss\";\n\n const customCSS = findBy({ kind: \"custom_css\" }, values.properties);\n\n if (!customCSS || (!isEnabled && !isProFeature)) return null;\n\n const parentElementClass = findBy(\n { kind: \"custom_css\" },\n themePropertiesSchema\n ).parentClass;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleEditorToggle = () => {\n if (!isCustomCssScreen) return onEditCSSClick(DESIGN_SCREENS.CustomCSS);\n onEditCSSClick(DESIGN_SCREENS.Customize);\n\n return setTimeout(() => {\n scrollElementIntoView(\"css-editor\");\n }, 400);\n };\n\n const handleChange = value => {\n const index = findIndexBy({ key: customCSS.key }, values.properties);\n\n if (index !== -1 && values.properties[index].value !== value) {\n setFieldValue(`properties[${index}].value`, value);\n setCustomCSS({\n css: value,\n elementId: customCSS.key,\n parentElementClass,\n });\n }\n };\n\n return (\n <div className=\"neeto-themes-sidebar__custom-css-wrapper\" id=\"css-editor\">\n <Card\n name=\"customcss\"\n helpPopoverProps={\n isEnabled\n ? customCssHelpPopoverProps\n : {\n title: t(\"neetoThemes.common.proFeature.customCSS.title\"),\n description: t(\n \"neetoThemes.common.proFeature.customCSS.description\"\n ),\n }\n }\n title={\n isCustomCssScreen\n ? \"\"\n : t(\"neetoThemes.build.leftSideBar.themes.customCSS\")\n }\n >\n {isEnabled ? (\n <div className=\"w-full\">\n <div className=\"neeto-themes-sidebar__custom-css-editor-header w-full justify-end gap-1 rounded-b-none p-2\">\n <Button\n size=\"small\"\n style=\"secondary\"\n label={\n isCustomCssScreen\n ? t(\"neetoThemes.buttons.minimizeEditor\")\n : t(\"neetoThemes.buttons.expandEditor\")\n }\n onClick={handleEditorToggle}\n />\n </div>\n {isExpanded && (\n <Editor\n {...{ isCustomCssScreen }}\n value={customCSS.value}\n onChange={handleChange}\n />\n )}\n </div>\n ) : (\n <div className=\"px-1 py-2\">\n <Typography lineHeight=\"normal\" style=\"body2\">\n {t(\"neetoThemes.common.proFeature.customCSS.description\")}\n </Typography>\n </div>\n )}\n </Card>\n </div>\n );\n};\n\nexport default CustomCSS;\n","import { useFormikContext } from \"formik\";\nimport { findIndexBy } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { Radio } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nconst LogoPosition = () => {\n const { t } = useTranslation();\n\n const { values } = useFormikContext();\n const index = findIndexBy({ key: \"logo_position\" }, values.properties);\n // Do not show this field if the logo_position property is not present.\n if (index === -1) return null;\n\n return (\n <Radio\n stacked\n name={`properties[${index}].value`}\n label={\n <Typography\n className=\"my-3\"\n component=\"span\"\n style=\"body2\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.title\")}\n </Typography>\n }\n >\n <Radio.Item\n value=\"over_left\"\n label={\n <span className=\"flex flex-col gap-1\">\n <Typography component=\"span\" style=\"body2\" weight=\"semibold\">\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.overLeft\")}\n </Typography>\n <Typography component=\"span\" style=\"body3\" weight=\"normal\">\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeftDescription\"\n )}\n </Typography>\n </span>\n }\n />\n <Radio.Item\n value=\"below_left\"\n label={\n <span className=\"flex flex-col gap-1\">\n <Typography component=\"span\" style=\"body2\" weight=\"semibold\">\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeft\")}\n </Typography>\n <Typography component=\"span\" style=\"body3\" weight=\"normal\">\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeftDescription\"\n )}\n </Typography>\n </span>\n }\n />\n </Radio>\n );\n};\n\nexport default LogoPosition;\n","import { t } from \"i18next\";\nimport {\n findBy,\n isNot,\n filterBy,\n isPresent,\n snakeToCamelCase,\n isNotPresent,\n toLabelAndValue,\n capitalize,\n} from \"neetocist\";\n\n// Capitalizes the first letter of the displayed label while keeping the\n// underlying value untouched (position values like \"top left\" are used\n// verbatim as CSS background-position, so they must stay lowercase).\nexport const toCapitalizedOption = value => {\n const { label, value: optionValue } = toLabelAndValue(value);\n\n return { label: label ? capitalize(label) : label, value: optionValue };\n};\n\nexport const generateRandomColor = () => {\n const letters = \"0123456789ABCDEF\";\n let color = \"#\";\n for (let i = 0; i < 6; i++) {\n color += letters[Math.floor(Math.random() * 16)];\n }\n\n return color;\n};\n\nexport const buildInitialValues = (theme, themePropertiesSchema) => {\n if (isPresent(theme)) return theme;\n\n return {\n name: t(\"neetoThemes.build.leftSideBar.themes.createTheme.newThemeName\"),\n properties: themePropertiesSchema\n .map(({ key, kind, defaultValue, order = null, dependsOn }) => {\n switch (kind) {\n case \"text_input\":\n return {\n value: defaultValue || \"\",\n kind: \"text_input\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"color\":\n return {\n value: defaultValue,\n kind: \"color\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"font_family\":\n return {\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n kind: \"font_family\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"overlay_opacity\":\n return {\n value: 0,\n kind: \"overlay_opacity\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"slider\":\n return {\n value: 0,\n kind: \"slider\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"radius\":\n return {\n value: defaultValue,\n kind: \"radius\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"boolean\":\n return {\n value: String(defaultValue),\n kind: \"boolean\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"order_selector\":\n return {\n value: defaultValue,\n kind: \"order_selector\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"alignment_block\":\n return {\n value: defaultValue,\n kind: \"alignment_block\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"custom_css\":\n return {\n value: defaultValue,\n kind: \"custom_css\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n case \"logo_position\":\n return {\n value: defaultValue,\n kind: \"logo_position\",\n key,\n dependsOn,\n ...(order !== null && { order }),\n };\n default:\n return null;\n }\n })\n .filter(isNot(null)),\n };\n};\n\nexport const buildImageData = (values, themePropertiesSchema) =>\n filterBy({ kind: \"image\" }, themePropertiesSchema).reduce((acc, item) => {\n const signedId = values[snakeToCamelCase(item.key)]?.signedId;\n acc[item.key] = signedId;\n\n return acc;\n }, {});\n\nexport const isPropertyVisible = (key, formikValues, themePropertiesSchema) => {\n const property = findBy({ key }, themePropertiesSchema);\n\n if (isNotPresent(property)) return false;\n\n if (property?.hidden) return false;\n\n const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentPropertySchema = findBy(\n { key: conditionalKey },\n themePropertiesSchema\n );\n\n const dependentProperty = findBy(\n { key: conditionalKey },\n formikValues.properties\n );\n\n if (dependentPropertySchema.kind === \"image\") {\n return isPresent(formikValues[snakeToCamelCase(conditionalKey)]?.url);\n } else if (dependentPropertySchema.kind === \"boolean\") {\n return dependentProperty?.value !== \"false\";\n }\n\n return isPresent(dependentProperty?.value);\n};\n\nexport const buildLabel = (key, kind) =>\n t(\n `neetoThemes.properties.${snakeToCamelCase(kind)}.${snakeToCamelCase(key)}`\n );\n\nexport const buildProperties = (values, condition, themePropertiesSchema) => {\n values.forEach(value => {\n themePropertiesSchema.forEach(theme => {\n if (!(value.key === theme.key)) return;\n value.dependsOn = theme.dependsOn;\n });\n });\n\n if (condition) {\n return filterBy({ dependsOn: condition }, values);\n }\n\n const imageKeys = new Set();\n filterBy({ kind: \"image\" }, themePropertiesSchema).forEach(ele =>\n imageKeys.add(ele.key)\n );\n\n return values?.filter(({ dependsOn }) => !imageKeys.has(dependsOn));\n};\n","import classnames from \"classnames\";\nimport { Field } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { CenterAlign, LeftAlign } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst AlignmentBlock = ({ label, name }) => (\n <div\n className=\"flex items-center justify-between gap-2\"\n data-testid={joinHyphenCase(label)}\n >\n <Typography data-testid=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <div className=\"neeto-ui-border-gray-300 neeto-themes-nano-alignment-block flex items-center border\">\n <Button\n className=\"neeto-themes-nano-alignment-button neeto-themes-nano-alignment-button__alignment-left\"\n data-testid=\"alignment-left\"\n size=\"medium\"\n style={value === \"left\" ? \"primary\" : \"text\"}\n icon={() => (\n <LeftAlign\n size={20}\n className={classnames({\n rounded: true,\n \"neeto-ui-text-primary-800\": value === \"left\",\n \"neeto-ui-text-gray-600\": value !== \"left\",\n })}\n />\n )}\n tooltipProps={{\n content: \"Left align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"left\")}\n />\n <div className=\"neeto-themes-nano-alignment-divider\" />\n <Button\n className=\"neeto-themes-nano-alignment-button neeto-themes-nano-alignment-button__alignment-center\"\n data-testid=\"alignment-center\"\n size=\"medium\"\n style={value === \"center\" ? \"primary\" : \"text\"}\n icon={() => (\n <CenterAlign\n size={20}\n className={classnames({\n rounded: true,\n \"neeto-ui-text-primary-800\": value === \"center\",\n \"neeto-ui-text-gray-600\": value !== \"center\",\n })}\n />\n )}\n tooltipProps={{\n content: \"Center align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"center\")}\n />\n </div>\n )}\n </Field>\n </div>\n);\n\nexport default AlignmentBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { ColorPicker, Typography } from \"neetoui\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex items-center justify-between\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-testid=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <ColorPicker\n {...{ color, onChange, showTransparencyControl }}\n showEyeDropper\n size=\"medium\"\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst FontPickerBlock = ({\n label,\n placeholder = \"\",\n value,\n options,\n onChange,\n}) => (\n <div\n className=\"flex items-center justify-between\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-testid=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n menuPosition=\"fixed\"\n styles={{\n option: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n }}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"neeto-ui-border-gray-200 flex flex-col gap-2 border-t pt-3\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-testid=\"logo-field-labels\" style=\"body2\">\n {label}\n </Typography>\n <Select {...{ onChange, options, placeholder, value }} />\n </div>\n);\n\nexport default SelectBlock;\n","import { Slider } from \"antd\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nconst SliderBlock = ({ label, onChange, value, min, max, marks }) => (\n <div\n className=\"flex items-center justify-between gap-3\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-testid=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Slider\n {...{ marks, max, min, onChange, value }}\n className=\"my-2 w-20\"\n tooltip={{ formatter: null }}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Typography, Switch, Checkbox } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SwitchBlock = ({ label, name, asCheckbox = false, ...inputProps }) => {\n const { t, i18n } = useTranslation();\n\n const translationKey = `neetoThemes.properties.boolean.${name}HelpText`;\n const doesHelpTextExist = i18n.exists(translationKey);\n\n if (asCheckbox) {\n return (\n <div\n className=\"flex items-center gap-2\"\n data-testid=\"theme-style-content-background\"\n >\n <Checkbox\n {...{ label, name, ...inputProps }}\n data-testid=\"enable-background-color-toggle\"\n />\n {doesHelpTextExist && (\n <HelpPopover className=\"shrink-0\" description={t(translationKey)} />\n )}\n </div>\n );\n }\n\n return (\n <div\n className=\"flex items-center justify-between\"\n data-testid=\"theme-style-content-background\"\n >\n <div className=\"inline-flex items-center gap-4\">\n <Typography\n data-testid=\"style-fields-labels\"\n style=\"body2\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Typography>\n {doesHelpTextExist && (\n <HelpPopover className=\"shrink-0\" description={t(translationKey)} />\n )}\n </div>\n <Switch\n {...{ name, ...inputProps }}\n data-testid=\"enable-background-color-toggle\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Input } from \"neetoui\";\n\nconst TextBlock = ({\n label,\n name,\n type = \"text\",\n value,\n onChange,\n placeholder,\n error,\n}) => (\n <div\n className=\"flex items-center justify-between\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-testid=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Input {...{ error, name, onChange, placeholder, type, value }} />\n </div>\n </div>\n);\n\nexport default TextBlock;\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { snakeToCamelCase, findIndexBy, findBy } from \"neetocist\";\nimport { negate } from \"ramda\";\n\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport {\n OVERLAY_OPACITY_SLIDER_MARKS,\n FONT_OPTIONS,\n HUNDRED,\n POSITION_OPTIONS,\n} from \"./constants\";\nimport {\n buildLabel,\n buildProperties,\n isPropertyVisible,\n toCapitalizedOption,\n} from \"./utils\";\n\nimport AlignmentBlock from \"../commons/AlignmentBlock\";\nimport ColorBlock from \"../commons/ColorBlock\";\nimport FontPickerBlock from \"../commons/FontPickerBlock\";\nimport SelectBlock from \"../commons/SelectBlock\";\nimport SliderBlock from \"../commons/SliderBlock\";\nimport SwitchBlock from \"../commons/SwitchBlock\";\nimport TextBlock from \"../commons/TextBlock\";\n\nconst DependentPropertyConnector = () => (\n <svg\n className=\"neeto-themes-dependent-property__connector\"\n fill=\"none\"\n height=\"32\"\n viewBox=\"0 0 36 32\"\n width=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M4 1V22C4 25.5 7 28 13 28H34\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n strokeLinecap=\"round\"\n strokeWidth=\"1.5\"\n />\n </svg>\n);\n\nconst Properties = ({ onPropertiesChange, condition, themeId }) => {\n const { themePropertiesSchema } = useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n const { setFieldValue, values, errors } = useFormikContext();\n const { setVariable, setTheme } = useThemeUtils();\n\n const handleColorChange =\n name =>\n ({ hex, rgb }) => {\n if (name === \"background_color\") {\n const isDominantBackgroundColorEnabled =\n findBy(\n { key: \"is_dominant_background_color_enabled\" },\n values.properties\n )?.value === \"true\";\n\n const hasImageWithDominantColor =\n values?.backgroundImage?.dominantColor;\n\n if (isDominantBackgroundColorEnabled && hasImageWithDominantColor) {\n return;\n }\n }\n\n handleChange(name, hex, `${rgb.r}, ${rgb.g}, ${rgb.b}, ${rgb.a}`);\n };\n\n const handleChange = (name, value, variableValue) => {\n const index = findIndexBy({ key: name }, values.properties);\n if (index !== -1 && values.properties[index].value !== value) {\n setFieldValue(`properties[${index}].value`, value);\n }\n setVariable(snakeToCamelCase(name), variableValue ?? value);\n };\n\n const handleOverlayChange = (key, value) => {\n const index = findIndexBy({ key }, values.properties);\n const overlayColorVariable = `${key}_overlay_color`;\n\n setFieldValue(`properties[${index}].value`, value);\n setVariable(`${key}_overlay_opacity`, Math.abs(value / 100));\n if (value < 0) {\n handleChange(overlayColorVariable, \"#000000\", \"0, 0, 0\");\n } else {\n handleChange(overlayColorVariable, \"#ffffff\", \"255, 255, 255\");\n }\n };\n\n useEffect(() => {\n if (!(values?.id === themeId)) return;\n\n onPropertiesChange?.(values, handleChange, handleColorChange);\n setTheme(values);\n setThemeState({ previewingTheme: values });\n }, [values]);\n\n return (\n <>\n {buildProperties(values?.properties, condition, themePropertiesSchema)\n .sort((a, b) => {\n const order = key =>\n findBy({ key }, themePropertiesSchema)?.order || Infinity;\n\n return order(a.key) - order(b.key);\n })\n .map(({ key, value, kind }) => {\n const propertySchema = findBy({ key }, themePropertiesSchema);\n const isDependentProperty = Boolean(propertySchema?.dependsOn);\n\n const wrapProperty = property => {\n if (!isDependentProperty) return property;\n\n return (\n <div className=\"neeto-themes-dependent-property\" key={key}>\n <DependentPropertyConnector />\n {property}\n </div>\n );\n };\n\n const isCurrentPropertyVisible = isPropertyVisible(\n key,\n values,\n themePropertiesSchema\n );\n\n if (!isCurrentPropertyVisible) return null;\n\n switch (kind) {\n case \"text_input\": {\n const index = findIndexBy({ key }, values.properties);\n const error = errors?.properties?.[index]?.value;\n\n return wrapProperty(\n <TextBlock\n {...{ error }}\n key={key}\n label={buildLabel(key, kind)}\n name={`properties[${index}].value`}\n value={value || \"\"}\n onChange={e =>\n setFieldValue(`properties[${index}].value`, e.target.value)\n }\n />\n );\n }\n case \"font_family\":\n return wrapProperty(\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={findBy({ value: value || null }, FONT_OPTIONS)}\n onChange={({ value }) => handleChange(key, value)}\n />\n );\n\n case \"color\":\n return wrapProperty(\n <ColorBlock\n color={value}\n key={key}\n label={buildLabel(key, kind)}\n showTransparencyControl={\n propertySchema?.showTransparencyControl || false\n }\n onChange={handleColorChange(key)}\n />\n );\n\n case \"radius\":\n return wrapProperty(\n <SliderBlock\n key={key}\n label={buildLabel(key, kind)}\n max={50}\n min={0}\n value={Number(value) || 0}\n onChange={radius => handleChange(key, radius, `${radius}px`)}\n />\n );\n\n case \"overlay_opacity\":\n return wrapProperty(\n <SliderBlock\n key={key}\n label={buildLabel(key, kind)}\n marks={OVERLAY_OPACITY_SLIDER_MARKS}\n max={HUNDRED}\n min={negate(HUNDRED)}\n value={Number(value) || 0}\n onChange={opacity => handleOverlayChange(key, opacity)}\n />\n );\n\n case \"position_selector\": {\n const index = findIndexBy({ key }, values.properties);\n const options = findBy(\n { key },\n themePropertiesSchema\n )?.options?.map(toCapitalizedOption);\n\n return wrapProperty(\n <SelectBlock\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n value={toCapitalizedOption(value)}\n onChange={option =>\n setFieldValue(`properties[${index}].value`, option.value)\n }\n />\n );\n }\n\n case \"boolean\": {\n const index = findIndexBy({ key }, values.properties);\n const renderAsCheckbox =\n propertySchema?.renderAsCheckbox || false;\n\n return wrapProperty(\n <SwitchBlock\n asCheckbox={renderAsCheckbox}\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n );\n }\n\n case \"alignment_block\": {\n const index = findIndexBy({ key }, values.properties);\n\n return wrapProperty(\n <AlignmentBlock\n key={key}\n label={buildLabel(key, kind)}\n name={`properties[${index}].value`}\n />\n );\n }\n\n default:\n return null;\n }\n })}\n </>\n );\n};\n\nexport default Properties;\n","import { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { ImageUploader } from \"neetoimageuploader\";\nimport { Toastr, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDominantColorFromUrl } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport SelectBlock from \"./SelectBlock\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\nimport { POSITION_OPTIONS } from \"../Customize/constants\";\nimport { buildLabel, toCapitalizedOption } from \"../Customize/utils\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n attribute,\n defaultImageSize,\n useDefaultImageSize,\n fixedAspectRatio,\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, values } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const propertySchema = findBy({ key: attribute }, themePropertiesSchema);\n\n const enablePositionChanger = propertySchema?.enablePositionChanger || false;\n const options = propertySchema?.options;\n\n const positionKeyInSchema = findBy(\n { key: `${name}_position` },\n themePropertiesSchema\n );\n\n const isPositionChangerVisible =\n enablePositionChanger && imageData?.url && isPresent(positionKeyInSchema);\n\n const positionKeyIndex = findIndexBy(\n { key: `${name}_position` },\n values.properties\n );\n\n const handleImageChange = async image => {\n try {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n const dominantColor = await getDominantColorFromUrl(image.url);\n\n setFieldValue(name, {\n signedId: image.signedId,\n url: image.url,\n dominantColor,\n });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n return (\n <div\n className=\"space-y-3\"\n data-testid={`theme-style-${label ? joinHyphenCase(label) : \"image-block\"}`}\n >\n {label && (\n <div className=\"flex items-center justify-between\">\n <Typography data-testid=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n </div>\n )}\n <div className=\"space-y-3\">\n <ImageUploader\n {...{ fixedAspectRatio, uploadConfig }}\n className=\"h-40 w-full\"\n defaultImageSize={useDefaultImageSize ? defaultImageSize : {}}\n key={imageData?.url}\n src={imageData?.url}\n onUploadComplete={handleImageChange}\n />\n {isPositionChangerVisible && (\n <SelectBlock\n label={buildLabel(`${name}Position`, \"image\")}\n options={options?.map(toCapitalizedOption) || POSITION_OPTIONS}\n placeholder={t(\"neetoThemes.common.left\")}\n value={toCapitalizedOption(\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n )}\n onChange={option =>\n setFieldValue(\n `properties[${positionKeyIndex}].value`,\n option.value\n )\n }\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default ImageBlock;\n","import { useFormikContext } from \"formik\";\nimport { snakeToCamelCase } from \"neetocist\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport LogoPosition from \"./LogoPosition\";\nimport Properties from \"./Properties\";\nimport { buildLabel } from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport ImageBlock from \"../commons/ImageBlock\";\n\nconst Images = ({\n attribute,\n className,\n onPropertiesChange,\n defaultImageSize,\n useDefaultImageSize,\n fixedAspectRatio,\n}) => {\n const { values } = useFormikContext();\n const { helpPopoverProps } = useConfigStore.pick();\n\n const key = snakeToCamelCase(attribute);\n const title = buildLabel(key, \"image\");\n const imageData = values[key];\n\n return (\n <Card\n {...{ className, title }}\n helpPopoverProps={helpPopoverProps[key]}\n name={key}\n >\n <ImageBlock\n {...{\n attribute,\n defaultImageSize,\n fixedAspectRatio,\n imageData,\n useDefaultImageSize,\n }}\n name={key}\n />\n <Properties {...{ onPropertiesChange }} condition={attribute} />\n {key === \"logo\" && values.coverImage?.url && <LogoPosition />}\n </Card>\n );\n};\n\nexport default Images;\n","import { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport Card from \"../commons/Card\";\n\nconst ThemeMeta = ({ className }) => {\n const { t } = useTranslation();\n const { helpPopoverProps } = useConfigStore.pick();\n\n const { name: nameHelpPopoverProps = {} } = helpPopoverProps;\n\n return (\n <Card\n {...{ className }}\n required\n helpPopoverProps={nameHelpPopoverProps}\n name=\"name\"\n title={t(\"neetoThemes.common.name\")}\n >\n <Input autoFocus data-testid=\"theme-name-property\" name=\"name\" />\n </Card>\n );\n};\n\nexport default ThemeMeta;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { filterBy } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Close } from \"neetoicons\";\nimport { isNotNil } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { useHistory, useParams } from \"react-router-dom\";\n\nimport { isEditThemeRoute } from \"components/utils\";\nimport { useShowGlobalTheme } from \"hooks/reactQuery/useGlobalThemesApi\";\nimport { useFetchTheme } from \"hooks/reactQuery/useThemesApi\";\nimport { useSyncExpandedSectionFromUrl } from \"hooks/useExpandedSection\";\nimport { Button, Popover, Typography, Switch, Tooltip, Spinner } from \"neetoui\";\nimport { Form, BlockNavigation } from \"neetoui/formik\";\nimport routes from \"routes\";\nimport {\n useCreateTheme,\n useUpdateTheme,\n} from \"src/hooks/reactQuery/useThemesApi\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport { THEME_VALIDATION_SCHEMA } from \"./constants\";\nimport CustomCSS from \"./CustomCSS\";\nimport Images from \"./Images\";\nimport Properties from \"./Properties\";\nimport ThemeMeta from \"./ThemeMeta\";\nimport { buildImageData, buildInitialValues } from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport { isScreenCustomCSS, buildPathname } from \"../utils\";\n\nconst Customize = ({\n theme,\n onCreateTheme,\n onApplyTheme,\n onUpdateTheme,\n isApplyingTheme,\n onPropertiesChange,\n defaultImageSize,\n fixedAspectRatio,\n onEditCSSClick,\n currentScreen,\n}) => {\n const { t } = useTranslation();\n\n useSyncExpandedSectionFromUrl();\n\n const history = useHistory();\n\n const [popoverInstance, setPopoverInstance] = useState({});\n const {\n themePropertiesSchema,\n entityType,\n isFetchingSchema,\n helpPopoverProps,\n enabledFeatures,\n proFeatures,\n } = useConfigStore.pick();\n\n const { themeId } = useParams();\n\n const { currentTheme, setThemeState } = useThemeStore.pick();\n\n const { data: { globalTheme = {} } = {} } = useShowGlobalTheme(entityType);\n\n const { data: themeData = {}, isLoadingTheme } = useFetchTheme(themeId, {\n enabled: isEditThemeRoute() && isNotNil(themeId),\n initialData: theme ?? undefined,\n });\n\n const isLoading = isFetchingSchema || isLoadingTheme;\n const isThemeGlobalTheme = themeId && globalTheme?.id === themeId;\n const isCurrentThemeAndGlobalThemeSame = currentTheme?.id === globalTheme?.id;\n const { style: styleHelpPopoverProps = {} } = helpPopoverProps;\n\n const isEditingCurrentlyAppliedTheme = themeId === currentTheme?.id;\n\n const submitBtnRef = useRef(null);\n\n const { mutate: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutate: updateTheme, isPending: isUpdating } =\n useUpdateTheme(themeId);\n\n const isSubmitting = isCreating || isUpdating;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleGlobalThemeSwitchChange = (e, setFieldValue) => {\n setFieldValue(\"shouldSetAsGlobalTheme\", e.target.checked);\n };\n\n const onSubmit = (values, { resetForm }) => {\n const imageData = buildImageData(values, themePropertiesSchema);\n const themeToSave = {\n propertiesAttributes: values.properties,\n name: values.name,\n shouldSetAsGlobalTheme: values.shouldSetAsGlobalTheme,\n entityType: values.entityType,\n ...imageData,\n };\n\n if (!themeId) {\n return createTheme(themeToSave, {\n onSuccess: ({ theme }) => {\n resetForm({ values: theme });\n onCreateTheme(theme);\n history.replace(\n buildUrl(buildPathname(routes.themes.edit), { themeId: theme.id })\n );\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: ({ theme }) => {\n onUpdateTheme(theme);\n resetForm({ values: theme });\n },\n });\n };\n\n useEffect(() => {\n if (isNotNil(themeId) && !isLoadingTheme) {\n setThemeState({ previewingTheme: themeData });\n }\n }, [isLoadingTheme]);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Form\n formikProps={{\n initialValues: {\n ...buildInitialValues(themeData, themePropertiesSchema),\n shouldSetAsGlobalTheme: isThemeGlobalTheme,\n entityType,\n },\n validationSchema: THEME_VALIDATION_SCHEMA,\n enableReinitialize: true,\n onSubmit,\n }}\n >\n {({ dirty, isValid, values, setFieldValue }) => (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"neeto-themes-sidebar__scroll-content flex grow flex-col px-4 pb-4 lg:px-5\">\n {!isSubmitting && <BlockNavigation />}\n <ThemeMeta className={classNames({ hidden: isCustomCssScreen })} />\n <Card\n className={classNames({ hidden: isCustomCssScreen })}\n helpPopoverProps={styleHelpPopoverProps}\n name=\"style\"\n title={t(\"neetoThemes.common.style\")}\n >\n <Properties {...{ onPropertiesChange, themeId }} />\n </Card>\n {filterBy({ kind: \"image\" }, themePropertiesSchema).map(\n ({\n key,\n useDefaultImageSize,\n defaultImageSize: propertyDefaultSize,\n fixedAspectRatio: propertyFixedAspectRatio,\n }) => (\n <Images\n {...{\n fixedAspectRatio,\n onPropertiesChange,\n useDefaultImageSize,\n }}\n attribute={key}\n className={classNames({ hidden: isCustomCssScreen })}\n defaultImageSize={propertyDefaultSize || defaultImageSize}\n key={key}\n fixedAspectRatio={\n propertyFixedAspectRatio || fixedAspectRatio\n }\n />\n )\n )}\n <CustomCSS\n {...{ currentScreen, onEditCSSClick }}\n isEnabled={enabledFeatures.customCSS}\n isProFeature={proFeatures.customCSS}\n />\n <div className=\"neeto-ui-bg-gray-50 neeto-ui-border-gray-200 mt-2 flex flex-col space-y-2 border p-2\">\n <Tooltip\n disabled={!isThemeGlobalTheme}\n content={t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.tooltipContent\"\n )}\n >\n <Switch\n checked={values.shouldSetAsGlobalTheme}\n disabled={isThemeGlobalTheme}\n name=\"shouldSetAsGlobalTheme\"\n label={t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.label\"\n )}\n onChange={e =>\n handleGlobalThemeSwitchChange(e, setFieldValue)\n }\n />\n </Tooltip>\n <Typography className=\"text-sm\" style=\"body2\">\n {t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.helpText\",\n {\n entityType: t(\n `neetoThemes.entityType.${entityType.toLowerCase()}`,\n { count: 2 }\n ),\n }\n )}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-shadow-s sticky bottom-0 start-0 end-0 flex justify-end gap-x-2 px-4 py-6 lg:px-5 xl:px-6\">\n <Button\n data-testid=\"reset-button\"\n disabled={!dirty || isSubmitting}\n label={t(\"neetoThemes.buttons.reset\")}\n style=\"text\"\n type=\"reset\"\n />\n <Button\n data-testid=\"save-changes-button\"\n disabled={(!dirty && themeData?.id) || isSubmitting || !isValid}\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n ref={submitBtnRef}\n type=\"submit\"\n />\n </div>\n <Popover\n appendTo={() => document.body}\n position=\"top\"\n reference={submitBtnRef}\n trigger=\"click\"\n content={\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute end-1 top-1 z-0\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => popoverInstance?.hide?.()}\n />\n <Typography className=\"w-72 pe-5\" style=\"body2\" weight=\"normal\">\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoThemes.build.leftSideBar.themes.notAppliedYet\"\n values={{\n entityType: t(\n `neetoThemes.entityType.${entityType.toLowerCase()}`\n ),\n }}\n />\n </Typography>\n <Button\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.buttons.applyThisTheme\")}\n loading={isApplyingTheme}\n onClick={() => onApplyTheme(themeData)}\n />\n </div>\n }\n disabled={\n isEditingCurrentlyAppliedTheme ||\n (isCurrentThemeAndGlobalThemeSame &&\n values.shouldSetAsGlobalTheme)\n }\n onMount={setPopoverInstance}\n />\n </div>\n )}\n </Form>\n );\n};\n\nexport default Customize;\n","import { Typography } from \"neetoui\";\n\nconst QuickActionRow = ({ icon: Icon, label, onClick, testId }) => (\n <button\n {...{ onClick }}\n className=\"neeto-ui-border-gray-100 hover:neeto-ui-bg-gray-100 flex w-full cursor-pointer items-center gap-3 border-t px-3 py-2 text-start transition-colors\"\n data-testid={testId}\n type=\"button\"\n >\n <Icon size={16} />\n <Typography lineHeight=\"normal\" style=\"body2\">\n {label}\n </Typography>\n </button>\n);\n\nexport default QuickActionRow;\n","import classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nconst Thumbnail = ({ active, isPreviewing, isHighLightedTheme, theme }) => {\n const { themePropertiesSchema = [] } = useConfigStore.pick();\n\n const [colorObject1, colorObject2] = themePropertiesSchema;\n\n const primaryLabel = humanize(colorObject1?.key);\n const secondaryLabel = humanize(colorObject2?.key);\n\n const primaryColor = findBy(\n { key: colorObject1.key },\n theme.properties\n ).value;\n\n const secondaryColor = findBy(\n { key: colorObject2.key },\n theme.properties\n ).value;\n\n const backgroundImageUrl =\n theme[\n snakeToCamelCase(\n findBy({ useAsCardBackground: true }, themePropertiesSchema).key\n )\n ]?.url;\n\n const buttonBackgroundColor = findBy(\n {\n key: findBy({ useAsCardButtonBackground: true }, themePropertiesSchema)\n ?.key,\n },\n theme.properties\n )?.value;\n\n return (\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-400\": !active,\n \"neeto-ui-border-gray-800 neeto-themes-theme-thumbnail--active\":\n active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\": isHighLightedTheme,\n }\n )}\n style={{\n backgroundImage: backgroundImageUrl\n ? `url(${backgroundImageUrl})`\n : \"initial\",\n backgroundSize: \"cover\",\n }}\n >\n <div className=\"neeto-ui-rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"neeto-ui-rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography style=\"h3\" weight=\"semibold\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"neeto-ui-rounded-lg h-5 w-12\"\n style={{ backgroundColor: buttonBackgroundColor }}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Thumbnail;\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize, filterBy, hyphenate, isPresent, snakeToCamelCase } from \"neetocist\";\nimport { AddImage, CodeBlock, ColorPicker } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"components/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography, Button } from \"neetoui\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport QuickActionRow from \"./QuickActionRow\";\nimport DefaultThumbnail from \"./Thumbnail\";\n\nconst Card = ({\n active = false,\n isPreviewing,\n onSetPreviewTheme,\n onDeleteTheme,\n onEditTheme,\n theme,\n isApplyingTheme,\n onCloneTheme,\n isHighLightedTheme,\n isGlobalTheme,\n onApplyTheme,\n thumbnail: Thumbnail,\n}) => {\n const { t } = useTranslation();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const { id, name } = theme;\n\n const imageProperties = filterBy({ kind: \"image\" }, themePropertiesSchema);\n\n const handleDeleteTheme = () => onDeleteTheme(id, name);\n\n const handleQuickEdit = section => e => {\n e.stopPropagation();\n if (isPresent(onEditTheme)) onEditTheme(theme, section);\n else onCloneTheme(theme, section);\n };\n\n const showMoreDropdown = isFunction(onDeleteTheme);\n\n return (\n <div\n className=\"group space-y-2 pt-0.5\"\n data-flip-id={theme.id}\n data-testid={active ? \"active-theme-card\" : \"theme-card\"}\n id={theme.id}\n >\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg relative cursor-pointer border-2 transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-400\": !active,\n \"neeto-themes-theme-thumbnail--active\": active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\":\n isHighLightedTheme,\n }\n )}\n onClick={() => onSetPreviewTheme(theme)}\n >\n <div className=\"neeto-ui-rounded-lg relative overflow-hidden rounded-bl-none rounded-br-none transition-all duration-300 ease-in-out\">\n {active ? (\n <div\n className=\"neeto-themes-theme-thumbnail__active-banner absolute start-0 top-0 z-10 w-full py-1 text-center text-xs font-semibold uppercase tracking-wide\"\n data-testid=\"active-theme-label\"\n >\n {t(\"neetoThemes.common.activeTheme\")}\n </div>\n ) : (\n <div className=\"absolute start-0 top-0 z-10 flex h-full w-full items-center justify-center px-3 pb-3 pt-3\">\n <div\n className={classnames(\n \"-translate-y-9 flex w-full items-center justify-between gap-2\",\n { hidden: !isPreviewing, \"group-hover:flex\": true }\n )}\n >\n <Button\n data-testid=\"preview-theme-button\"\n disabled={isPreviewing}\n label={t(\"neetoThemes.common.previewTheme\")}\n size=\"medium\"\n style=\"tertiary\"\n className={classnames({\n \"neeto-themes-theme-thumbnail__preview-btn--disabled opacity-100\":\n isPreviewing,\n \"neeto-themes-theme-thumbnail__preview-btn shrink-0 justify-center\": true,\n })}\n onClick={() => onSetPreviewTheme(theme)}\n />\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn shrink-0 justify-center\"\n data-testid=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.useTheme\")}\n loading={isApplyingTheme}\n size=\"medium\"\n style=\"primary\"\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n </div>\n )}\n <div className=\"neeto-themes-theme-thumbnail__overlay w-full transition-all duration-300 ease-in-out\">\n {Thumbnail ? (\n <Thumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n ) : (\n <DefaultThumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n )}\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-100 flex items-start justify-between gap-1 border-t p-2\">\n <div className=\"flex items-center space-x-2\">\n <Typography\n className=\"neeto-ui-text-gray-500 line-clamp-2 min-w-0 grow wrap-anywhere pt-1 italic\"\n data-testid=\"theme-name\"\n lineHeight=\"snug\"\n style=\"body2\"\n >\n {name}\n </Typography>\n {isGlobalTheme && (\n <Typography\n className=\"neeto-ui-text-gray-500 shrink-0 pt-1 italic\"\n data-testid=\"default-theme-label\"\n lineHeight=\"snug\"\n style=\"body2\"\n >\n {t(\"neetoThemes.common.defaultTheme\")}\n </Typography>\n )}\n </div>\n {showMoreDropdown && (\n <MoreDropdown\n dropdownButtonProps={{ size: \"small\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"delete\",\n \"data-testid\": \"delete-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.delete\"\n ),\n isDisabled: isApplyingTheme,\n onClick: e => {\n e.stopPropagation();\n handleDeleteTheme();\n },\n },\n ]}\n />\n )}\n </div>\n {active && (\n <div className=\"flex flex-col\">\n <QuickActionRow\n icon={ColorPicker}\n label={t(\"neetoThemes.common.customizeStyle\")}\n testId=\"quick-customize-style\"\n onClick={handleQuickEdit(\"style\")}\n />\n {imageProperties.map(({ key }) => {\n const camelKey = snakeToCamelCase(key);\n const hasImage = isPresent(theme[camelKey]?.url);\n const action = hasImage ? \"change\" : \"add\";\n const specificKey = `neetoThemes.common.${action}${capitalize(\n camelKey\n )}`;\n\n return (\n <QuickActionRow\n icon={AddImage}\n key={key}\n label={t([specificKey, \"neetoThemes.common.addImage\"])}\n testId={`quick-add-${hyphenate(key)}`}\n onClick={handleQuickEdit(camelKey)}\n />\n );\n })}\n <QuickActionRow\n icon={CodeBlock}\n label={t(\"neetoThemes.build.leftSideBar.themes.customCSS\")}\n testId=\"quick-custom-css\"\n onClick={handleQuickEdit(\"customcss\")}\n />\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import { useEffect } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowGlobalTheme } from \"hooks/reactQuery/useGlobalThemesApi\";\nimport { useApplyTheme, useCloneTheme } from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Card from \"./Card\";\n\nconst Themes = ({\n onEditTheme,\n themes = [],\n defaultThemes = [],\n onDeleteTheme,\n themeToHighlight,\n didScrollActiveThemeIntoView,\n isLoading,\n currentTheme,\n isCurrentThemeLoading,\n thumbnail,\n themeBeingApplied,\n onApplyTheme,\n onApplyThemeSuccess,\n isSearchVisible = false,\n}) => {\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n const { setThemeState, previewingTheme } = useThemeStore.pick();\n const { entityType, entityId } = useConfigStore.pick();\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const { mutate: cloneTheme } = useCloneTheme();\n const { mutate: applyClonedTheme } = useApplyTheme({});\n\n const { data: { globalTheme = {} } = {}, isLoading: isLoadingGlobalTheme } =\n useShowGlobalTheme(entityType);\n\n useEffect(() => {\n if (didScrollActiveThemeIntoView.current || !currentTheme?.id) return;\n\n didScrollActiveThemeIntoView.current = true;\n setTimeout(() => {\n scrollElementIntoView(currentTheme?.id);\n }, 100);\n }, [didScrollActiveThemeIntoView, currentTheme?.id]);\n\n const setPreviewTheme = theme => {\n setThemeState({ previewingTheme: theme });\n setTheme(theme);\n };\n\n const activeThemeId = currentTheme?.id;\n\n const lowerSearchTerm = searchTerm.toLowerCase();\n const matchesSearch = theme =>\n theme.name.toLowerCase().includes(lowerSearchTerm);\n\n const activeTheme = activeThemeId\n ? [...defaultThemes, ...themes].find(theme => theme.id === activeThemeId)\n : null;\n\n const isActiveThemeCustom = themes.some(theme => theme.id === activeThemeId);\n\n const filteredDefaultThemes = defaultThemes.filter(\n theme => theme.id !== activeThemeId && matchesSearch(theme)\n );\n\n const filteredThemes = themes.filter(\n theme => theme.id !== activeThemeId && matchesSearch(theme)\n );\n\n const showActiveThemeSection = activeTheme && matchesSearch(activeTheme);\n\n const handleCloneTheme = (data, section) => {\n cloneTheme(data.id, {\n onSuccess: ({ theme: clonedTheme }) => {\n // A system theme is cloned when the user customizes it. Apply the\n // clone right away so it becomes the active theme — the editor then\n // won't prompt \"apply this theme?\" on save.\n applyClonedTheme(\n { themeId: clonedTheme.id, entityId, entityType },\n {\n onSuccess: () => {\n onApplyThemeSuccess?.(clonedTheme);\n onEditTheme(clonedTheme, section);\n },\n }\n );\n },\n });\n };\n\n if (isLoading || isCurrentThemeLoading || isLoadingGlobalTheme) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const activeThemeSection = showActiveThemeSection && (\n <div className=\"neeto-ui-border-gray-200 mb-6 border-b px-6 pb-6 lg:px-5 xl:px-6\">\n <Card\n {...{ onApplyTheme, thumbnail }}\n active\n isApplyingTheme={themeBeingApplied?.id === activeTheme.id}\n isGlobalTheme={globalTheme?.id === activeTheme.id}\n isHighLightedTheme={activeTheme.id === themeToHighlight}\n isPreviewing={previewingTheme?.id === activeTheme.id}\n theme={activeTheme}\n onCloneTheme={handleCloneTheme}\n onEditTheme={isActiveThemeCustom ? onEditTheme : undefined}\n onSetPreviewTheme={setPreviewTheme}\n />\n </div>\n );\n\n const systemThemesSection = isNotEmpty(filteredDefaultThemes) && (\n <div className=\"mb-6 space-y-3\">\n <div\n className=\"flex flex-col gap-4 px-6 pb-10 lg:px-5 xl:px-6\"\n data-testid=\"system-themes\"\n >\n {filteredDefaultThemes.map(theme => (\n <Card\n {...{ onApplyTheme, theme, thumbnail }}\n active={currentTheme?.id === theme.id}\n isApplyingTheme={themeBeingApplied?.id === theme.id}\n isGlobalTheme={globalTheme?.id === theme.id}\n isPreviewing={previewingTheme?.id === theme.id}\n key={theme.id}\n onCloneTheme={handleCloneTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n ))}\n </div>\n </div>\n );\n\n const customThemesSection = isNotEmpty(filteredThemes) && (\n <div className=\"mb-6 space-y-3\">\n <div className=\"flex flex-col gap-4 px-6\" data-testid=\"custom-themes\">\n {filteredThemes.map(theme => {\n const isActive = currentTheme?.id === theme.id;\n const isPreviewing = previewingTheme?.id === theme.id;\n\n return (\n <Card\n {...{\n isPreviewing,\n onApplyTheme,\n onEditTheme,\n theme,\n thumbnail,\n }}\n active={isActive}\n isApplyingTheme={themeBeingApplied?.id === theme.id}\n isGlobalTheme={globalTheme?.id === theme.id}\n isHighLightedTheme={theme.id === themeToHighlight}\n key={theme.id}\n onCloneTheme={handleCloneTheme}\n onDeleteTheme={!isActive && onDeleteTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n );\n })}\n </div>\n </div>\n );\n\n return (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"mb-6 space-y-3\">\n {isSearchVisible && (\n <Search\n autoFocus\n enableUrlSync\n autoComplete=\"off\"\n className=\"mb-4 mt-1 px-6\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n />\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography\n className=\"text-center\"\n data-testid=\"no-data-title\"\n style=\"body2\"\n >\n {t(\"neetoThemes.common.noResultsFound\")}\n </Typography>\n )}\n </div>\n {activeThemeSection}\n {systemThemesSection}\n {customThemesSection}\n </div>\n );\n};\n\nexport default Themes;\n","import i18next from \"i18next\";\nimport { LeftArrow, RightArrow, Search } from \"neetoicons\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isEditThemeRoute, isNewThemeRoute } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport { isScreenCustomCSS } from \"./utils\";\n\nconst TitleBar = ({ currentScreen, handleBackPress, handleToggleSearch }) => {\n const { t } = useTranslation();\n\n const { previewingTheme } = useThemeStore.pick();\n const themeId = previewingTheme?.id;\n const { entityType, helpDocUrl } = useConfigStore.pick();\n\n const isCustomizeScreen = isEditThemeRoute() || isNewThemeRoute();\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const isRTL = i18next.dir() === \"rtl\";\n const BackButtonIcon = isRTL ? RightArrow : LeftArrow;\n\n if (isCustomizeScreen) {\n return (\n <div className=\"neeto-themes-sidebar__header px-4\">\n <div className=\"flex items-center justify-start space-x-2\">\n <Button\n data-testid=\"customize-themes-back-button\"\n icon={BackButtonIcon}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: isCustomCssScreen\n ? t(\"neetoThemes.buttons.backToEdit\")\n : t(\"neetoThemes.buttons.backToThemes\"),\n position: \"top\",\n }}\n onClick={() => handleBackPress(themeId)}\n />\n <Typography\n data-testid=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {isCustomizeScreen &&\n !isCustomCssScreen &&\n (isNewThemeRoute()\n ? t(\"neetoThemes.build.leftSideBar.themes.createTheme.title\")\n : t(\"neetoThemes.build.leftSideBar.themes.editTheme.title\"))}\n {isCustomCssScreen &&\n t(\"neetoThemes.build.leftSideBar.themes.customCSS\")}\n </Typography>\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__header px-6 lg:px-5 xl:px-6\">\n <div className=\"flex items-center justify-between space-x-2\">\n <div className=\"flex space-x-2\">\n <Typography\n data-testid=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.headerTabs.themes\")}\n </Typography>\n <HelpPopover\n helpLinkProps={helpDocUrl && { href: helpDocUrl }}\n title={t(\"neetoThemes.build.leftSideBar.helpPopover.title\")}\n description={t(\n \"neetoThemes.build.leftSideBar.helpPopover.description\",\n {\n entityType: t(\n `neetoThemes.entityType.${entityType.toLowerCase()}`\n ),\n }\n )}\n />\n </div>\n <div className=\"self-end\">\n <Button\n data-testid=\"themes-search-toggle-button\"\n icon={Search}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoThemes.common.searchThemes\"),\n position: \"top\",\n }}\n onClick={handleToggleSearch}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { memo, useCallback, useRef, useState, useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Collapse } from \"neetoicons\";\nimport { Alert, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useHistory } from \"react-router-dom\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport {\n useApplyTheme,\n useDeleteTheme,\n useListThemes,\n} from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport routes from \"routes\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport { APPLY_SPINNER_DELAY } from \"./constants\";\nimport Customize from \"./Customize\";\nimport Themes from \"./Themes\";\nimport TitleBar from \"./TitleBar\";\nimport { animateThemeReorder, buildPathname, isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst MemoizedAlert = memo(Alert);\n\nconst Sidebar = ({\n thumbnail,\n onPropertiesChange,\n defaultImageSize,\n fixedAspectRatio,\n onApplyThemeSuccess,\n onUpdateThemeSuccess,\n}) => {\n const [currentScreen, setCurrentScreen] = useState(DESIGN_SCREENS.THEMES);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [themeToHighlight, setThemeToHighlight] = useState(null);\n const [themeBeingApplied, setThemeBeingApplied] = useState({});\n const { isSize } = useBreakpoints();\n const isLargerScreen = !isSize(\"mobile\");\n\n const [isThemesSidebarCollapsed, setIsThemesSidebarCollapsed] =\n useState(!isLargerScreen);\n\n const history = useHistory();\n\n useEffect(() => {\n setIsThemesSidebarCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n const { entityType, entityId, isFetchingSchema, defaultThemeName } =\n useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n\n const didScrollActiveThemeIntoView = useRef(null);\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n\n const { data: { themes = [], defaultThemes = [] } = {}, isLoading } =\n useListThemes(entityId);\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading: isCurrentThemeLoading,\n } = useShowThemeEntity(entityId);\n\n const { mutate: deleteTheme, isPending: isDeleting } = useDeleteTheme();\n\n const { mutate: applyTheme, isPending: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n const applyUpdates = () => {\n setTheme(theme);\n highlightTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\n onApplyThemeSuccess?.(theme);\n };\n\n // Keep the spinner visible a bit longer so the apply feels deliberate,\n // then glide the card into the pinned active section.\n setTimeout(() => animateThemeReorder(applyUpdates), APPLY_SPINNER_DELAY);\n },\n });\n\n const themeToDelete = useRef(null);\n const themeToEdit = useRef(null);\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const [isSearchVisible, setIsSearchVisible] = useState(false);\n\n const handleToggleSearch = () => {\n setIsSearchVisible(prev => {\n const next = !prev;\n if (!next) {\n const params = new URLSearchParams(history.location.search);\n params.delete(\"searchTerm\");\n history.replace({ search: params.toString() });\n }\n\n return next;\n });\n };\n\n const handleEditTheme = (theme, section) => {\n themeToEdit.current = theme;\n const pathname = buildUrl(buildPathname(routes.themes.edit), {\n themeId: theme.id,\n });\n\n history.push({\n pathname,\n search: section ? `?section=${section}` : \"\",\n });\n };\n\n const onApplyTheme = theme => {\n if (themeBeingApplied?.id) return;\n\n setThemeBeingApplied(theme);\n applyTheme(\n { themeId: theme.id, entityId, entityType },\n { onError: () => setThemeBeingApplied({}) }\n );\n };\n\n const navigateToThemesScreen = themeId => {\n highlightTheme(isPresent(themeId) ? themeId : currentTheme?.id);\n history.push(buildPathname(routes.themes.index));\n\n themeToEdit.current = null;\n };\n\n const handleBackPress = themeId => {\n if (isCustomCssScreen) {\n setCurrentScreen(DESIGN_SCREENS.Customize);\n\n return;\n }\n\n navigateToThemesScreen(themeId);\n };\n\n const highlightTheme = themeIdToHighlight => {\n setTimeout(() => {\n scrollElementIntoView(themeIdToHighlight);\n }, 1500);\n\n setTimeout(() => {\n setThemeToHighlight(null);\n }, 4000);\n\n setThemeToHighlight(themeIdToHighlight);\n };\n\n const onCreateTheme = createdTheme => {\n themeToEdit.current = createdTheme;\n setTheme(createdTheme);\n setThemeState({ previewingTheme: createdTheme });\n };\n\n const onUpdateTheme = updatedTheme => {\n themeToEdit.current = updatedTheme;\n onUpdateThemeSuccess?.(updatedTheme);\n };\n\n const handleDelete = (themeId, name) => {\n setIsDeleteAlertOpen(true);\n themeToDelete.current = { id: themeId, name };\n };\n\n const handleCloseDeleteAlert = useCallback(() => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n }, [themeToDelete]);\n\n const handleDeleteTheme = useCallback(() => {\n deleteTheme(themeToDelete.current?.id, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n },\n });\n }, [deleteTheme, themeToDelete]);\n\n return (\n <>\n {!isThemesSidebarCollapsed && (\n <div\n className=\"neeto-themes-sidebar__backdrop\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n )}\n <div\n className={classNames(\n \"neeto-themes-sidebar neeto-ui-border-gray-200 shrink-0 border-e transition-all duration-300\",\n { \"neeto-themes-sidebar--expanded\": isCustomCssScreen },\n {\n \"neeto-themes-sidebar--collapsed\": isThemesSidebarCollapsed,\n }\n )}\n >\n <TitleBar {...{ currentScreen, handleBackPress, handleToggleSearch }} />\n <Switch>\n <Route\n exact\n path={buildPathname(routes.themes.index)}\n render={() => (\n <Themes\n {...{\n currentTheme,\n defaultThemes,\n didScrollActiveThemeIntoView,\n highlightTheme,\n isCurrentThemeLoading,\n isSearchVisible,\n onApplyTheme,\n onApplyThemeSuccess,\n themeBeingApplied,\n themeToHighlight,\n themes,\n thumbnail,\n }}\n isLoading={isLoading || isFetchingSchema}\n onDeleteTheme={handleDelete}\n onEditTheme={handleEditTheme}\n />\n )}\n />\n <Route\n path={buildPathname(routes.themes.new)}\n render={() => (\n <Customize\n {...{\n currentScreen,\n defaultImageSize,\n fixedAspectRatio,\n isApplyingTheme,\n onApplyTheme,\n onCreateTheme,\n onPropertiesChange,\n onUpdateTheme,\n }}\n theme={themeToEdit.current}\n onEditCSSClick={setCurrentScreen}\n />\n )}\n />\n <Route\n path={buildPathname(routes.themes.edit)}\n render={() => (\n <Customize\n {...{\n currentScreen,\n defaultImageSize,\n fixedAspectRatio,\n isApplyingTheme,\n onApplyTheme,\n onCreateTheme,\n onPropertiesChange,\n onUpdateTheme,\n }}\n theme={themeToEdit.current}\n onEditCSSClick={setCurrentScreen}\n />\n )}\n />\n </Switch>\n <MemoizedAlert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n title={t(\"neetoThemes.alerts.title.deleteTheme\")}\n message={t(\"neetoThemes.alerts.message.deleteTheme\", {\n name: themeToDelete.current?.name,\n defaultThemeName,\n entityType: t(`neetoThemes.entityType.${entityType.toLowerCase()}`),\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n <Button\n className=\"neeto-themes-sidebar__toggler\"\n icon={Collapse}\n style=\"secondary\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Sidebar;\n","import { useEffect, useMemo } from \"react\";\n\nimport { noop, isNotPresent } from \"neetocist\";\nimport { PageTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isEditThemeRoute } from \"components/utils\";\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\nimport { registerNeetoThemesTranslations } from \"src/translations\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/main.css\";\n\nimport Sidebar from \"./Sidebar\";\n\nconst NeetoThemesBuilder = ({\n children,\n entityType,\n entityId,\n thumbnail,\n onPropertiesChange,\n defaultImageSize = {},\n fixedAspectRatio = {},\n helpDocUrl = null,\n isTemplateThemesEnabled = false,\n pageTitle = null,\n onApplyThemeSuccess = noop,\n onUpdateThemeSuccess = noop,\n helpPopoverProps = {},\n enabledFeatures = { customCSS: true },\n proFeatures = {}, // Add supported pro features here, example: { customCSS: true }\n}) => {\n useMemo(registerNeetoThemesTranslations, []);\n\n const { setThemeState } = useThemeStore.pick();\n const { setTheme } = useThemeUtils();\n const { setConfigState } = useConfigStore.pick();\n const { t } = useTranslation();\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading,\n isFetching: isFetchingCurrentTheme,\n } = useShowThemeEntity(entityId);\n\n const isCurrentThemeLoading = isLoading || isFetchingCurrentTheme;\n\n useEffect(() => {\n setConfigState({\n entityType,\n entityId,\n isTemplateThemesEnabled,\n helpDocUrl,\n helpPopoverProps,\n enabledFeatures,\n proFeatures,\n });\n }, []);\n\n useEffect(() => {\n if (isNotPresent(currentTheme) || isEditThemeRoute()) {\n return;\n }\n\n setThemeState({ previewingTheme: currentTheme });\n setTheme(currentTheme);\n }, [isLoading, entityId, currentTheme]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ currentTheme, isCurrentThemeLoading });\n }, [currentTheme, isCurrentThemeLoading]);\n\n useEffect(() => {\n const setViewportHeight = () => {\n document.documentElement.style.setProperty(\n \"--viewport-height\",\n `${window.innerHeight}px`\n );\n };\n\n setViewportHeight();\n window.addEventListener(\"load\", setViewportHeight);\n window.addEventListener(\"resize\", setViewportHeight);\n window.addEventListener(\"orientationchange\", setViewportHeight);\n window.addEventListener(\"scroll\", setViewportHeight);\n\n return () => {\n window.removeEventListener(\"load\", setViewportHeight);\n window.removeEventListener(\"resize\", setViewportHeight);\n window.removeEventListener(\"orientationchange\", setViewportHeight);\n window.removeEventListener(\"scroll\", setViewportHeight);\n };\n }, []);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <PageTitle title={pageTitle || t(\"neetoThemes.common.theme\")} />\n <Sidebar\n {...{\n defaultImageSize,\n fixedAspectRatio,\n onApplyThemeSuccess,\n onPropertiesChange,\n onUpdateThemeSuccess,\n thumbnail,\n }}\n />\n <div className=\"neeto-themes-preview__wrapper\">\n {isCurrentThemeLoading ? (\n <div className=\"m-auto flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n children\n )}\n </div>\n </div>\n );\n};\n\nexport default NeetoThemesBuilder;\n"],"names":["show","entityId","axios","get","concat","BASE_URL","entitiesApi","useShowThemeEntity","useQuery","queryKey","QUERY_KEYS","THEME_ENTITY_DETAILS","queryFn","enabled","translations","ar","bg","ca","cs","da","de","en","esMx","es","et","fi","fil","fr","he","hi","hr","hu","id","it","ja","ko","nl","pl","ptBr","pt","ro","ru","sk","sl","sv","th","tr","uk","vi","zhCn","zhTw","registeredLanguagesByI18nInstance","WeakMap","getRegisteredLanguages","i18nInstance","has","set","Set","registerNeetoThemesTranslations","arguments","length","undefined","i18n","_ref","_ref$overwrite","overwrite","registeredLanguages","Object","entries","forEach","_ref2","_ref3","_slicedToArray","language","translation","addResourceBundle","add","list","params","entity_id","create","payload","post","theme","update","put","showToastr","destroy","clone","apply","themeId","_objectWithoutProperties","_excluded","entity","applyGlobalTheme","themesApi","useListThemes","_useConfigStore","useConfigStore","store","isTemplateThemesEnabled","shallow","THEMES_LIST","useFetchTheme","options","_objectSpread","THEME_DETAILS","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","GLOBAL_THEME_DETAILS","useUpdateTheme","queryClient","useQueryClient","onSuccess","setQueryData","useDeleteTheme","useCloneTheme","useApplyTheme","routes","themes","index","edit","entityType","entity_type","globalThemesApi","useShowGlobalTheme","DESIGN_SCREENS","THEMES","Customize","CustomCSS","ONE_MEGABYTE","MonacoEditor","lazy","Editor","value","isCustomCssScreen","onChange","_jsx","Suspense","fallback","Spinner","children","className","classNames","rounded","scrollBeyondLastLine","minimap","Card","_ref$title","title","name","helpPopoverProps","required","_useExpandedSection","useExpandedSection","expandedSection","setExpandedSection","isOpen","isRTL","dir","ToggleIcon","Left","Right","handleToggle","_jsxs","hyphenate","classnames","type","onClick","Typography","component","lineHeight","style","weight","isPresent","HelpPopver","size","isScreenCustomCSS","screen","buildPathname","route","pathname","_iterator","_createForOfIteratorHelper","location","split","_step","s","n","done","segment","isEmpty","err","e","f","animateThemeReorder","updateFn","prefersReducedMotion","window","matchMedia","matches","cards","_toConsumableArray","document","querySelectorAll","scrollContainer","querySelector","scrollTop","oldRects","Map","map","card","dataset","flipId","getBoundingClientRect","flushSync","flips","oldRect","newRect","dx","left","dy","top","filter","Boolean","transform","body","offsetHeight","classList","addEventListener","remove","once","onEditCSSClick","currentScreen","isEnabled","isProFeature","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","values","setFieldValue","themePropertiesSchema","_helpPopoverProps$cus","customCss","customCssHelpPopoverProps","isExpanded","customCSS","findBy","kind","properties","parentElementClass","parentClass","handleEditorToggle","setTimeout","scrollElementIntoView","handleChange","findIndexBy","key","setCustomCSS","css","elementId","description","Button","label","LogoPosition","Radio","stacked","Item","toCapitalizedOption","_toLabelAndValue","toLabelAndValue","optionValue","capitalize","buildInitialValues","defaultValue","_ref$order","order","dependsOn","String","isNot","buildImageData","filterBy","reduce","acc","item","_values$snakeToCamelC","signedId","snakeToCamelCase","isPropertyVisible","formikValues","property","isNotPresent","hidden","conditionalKey","dependentPropertySchema","dependentProperty","_formikValues$snakeTo","url","buildLabel","buildProperties","condition","imageKeys","ele","AlignmentBlock","joinHyphenCase","Field","field","form","icon","LeftAlign","tooltipProps","content","position","CenterAlign","ColorBlock","_ref$color","color","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","_ref$placeholder","placeholder","Select","menuPosition","styles","option","data","fontFamily","SelectBlock","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","_ref$asCheckbox","asCheckbox","inputProps","translationKey","doesHelpTextExist","exists","Checkbox","HelpPopover","Switch","TextBlock","_ref$type","error","Input","DependentPropertyConnector","fill","height","viewBox","width","xmlns","d","stroke","strokeLinecap","strokeWidth","Properties","onPropertiesChange","_useThemeStore","useThemeStore","setThemeState","errors","_useThemeUtils","useThemeUtils","setVariable","setTheme","handleColorChange","hex","rgb","_findBy","_values$backgroundIma","isDominantBackgroundColorEnabled","hasImageWithDominantColor","backgroundImage","dominantColor","r","g","b","a","variableValue","handleOverlayChange","overlayColorVariable","Math","abs","useEffect","previewingTheme","_Fragment","sort","_findBy2","Infinity","propertySchema","isDependentProperty","wrapProperty","isCurrentPropertyVisible","_errors$properties","_createElement","target","FONT_OPTIONS","_ref4","Number","radius","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","negate","opacity","_findBy3","POSITION_OPTIONS","renderAsCheckbox","checked","ImageBlock","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","defaultImageSize","useDefaultImageSize","fixedAspectRatio","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","wrap","_callee$","_context","prev","next","abrupt","getDominantColorFromUrl","sent","t0","Toastr","stop","_x","ImageUploader","src","onUploadComplete","Images","_values$coverImage","coverImage","ThemeMeta","_helpPopoverProps$nam","nameHelpPopoverProps","autoFocus","onCreateTheme","onApplyTheme","onUpdateTheme","isApplyingTheme","useSyncExpandedSectionFromUrl","history","useHistory","_useState","useState","_useState2","popoverInstance","setPopoverInstance","isFetchingSchema","enabledFeatures","proFeatures","_useParams","useParams","currentTheme","_useShowGlobalTheme","_useShowGlobalTheme$d","_useShowGlobalTheme$d2","_useShowGlobalTheme$d3","globalTheme","_useFetchTheme","isEditThemeRoute","isNotNil","initialData","_useFetchTheme$data","themeData","isLoadingTheme","isLoading","isThemeGlobalTheme","isCurrentThemeAndGlobalThemeSame","_helpPopoverProps$sty","styleHelpPopoverProps","isEditingCurrentlyAppliedTheme","submitBtnRef","useRef","_useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","updateTheme","isUpdating","isSubmitting","handleGlobalThemeSwitchChange","onSubmit","resetForm","themeToSave","propertiesAttributes","shouldSetAsGlobalTheme","replace","buildUrl","Form","formikProps","initialValues","validationSchema","THEME_VALIDATION_SCHEMA","enableReinitialize","_ref5","dirty","isValid","BlockNavigation","_ref6","propertyDefaultSize","propertyFixedAspectRatio","_defineProperty","Tooltip","disabled","toLowerCase","count","loading","ref","Popover","appendTo","reference","trigger","Close","_popoverInstance$hide","hide","call","Trans","components","bold","i18nKey","onMount","QuickActionRow","Icon","testId","Thumbnail","_theme$snakeToCamelCa","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","isGlobalTheme","thumbnail","imageProperties","handleDeleteTheme","handleQuickEdit","section","stopPropagation","showMoreDropdown","isFunction","DefaultThumbnail","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","menuItems","isDisabled","_theme$camelKey","camelKey","hasImage","action","specificKey","AddImage","CodeBlock","memo","Themes","_ref$themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isCurrentThemeLoading","themeBeingApplied","onApplyThemeSuccess","_ref$isSearchVisible","isSearchVisible","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","_useCloneTheme","cloneTheme","_useApplyTheme","applyClonedTheme","isLoadingGlobalTheme","current","setPreviewTheme","activeThemeId","lowerSearchTerm","matchesSearch","includes","activeTheme","find","isActiveThemeCustom","some","filteredDefaultThemes","filteredThemes","showActiveThemeSection","handleCloneTheme","clonedTheme","activeThemeSection","systemThemesSection","isNotEmpty","customThemesSection","isActive","Search","enableUrlSync","autoComplete","TitleBar","handleBackPress","handleToggleSearch","helpDocUrl","isCustomizeScreen","isNewThemeRoute","i18next","BackButtonIcon","RightArrow","LeftArrow","iconPosition","helpLinkProps","href","MemoizedAlert","Alert","Sidebar","_themeToDelete$curren2","onUpdateThemeSuccess","setCurrentScreen","_useState3","_useState4","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","setThemeToHighlight","_useState7","_useState8","setThemeBeingApplied","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_useState9","_useState10","isThemesSidebarCollapsed","setIsThemesSidebarCollapsed","defaultThemeName","_useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","deleteTheme","isDeleting","applyUpdates","highlightTheme","APPLY_SPINNER_DELAY","applyTheme","themeToDelete","themeToEdit","_useState11","_useState12","setIsSearchVisible","URLSearchParams","search","toString","handleEditTheme","push","onError","navigateToThemesScreen","themeIdToHighlight","createdTheme","updatedTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","Route","exact","path","render","message","onClose","Collapse","NeetoThemesBuilder","_ref$defaultImageSize","_ref$fixedAspectRatio","_ref$helpDocUrl","_ref$isTemplateThemes","_ref$pageTitle","pageTitle","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","_ref$helpPopoverProps","_ref$enabledFeatures","_ref$proFeatures","useMemo","setConfigState","isFetchingCurrentTheme","isFetching","setViewportHeight","documentElement","setProperty","innerHeight","removeEventListener","PageTitle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAMA,MAAI,GAAG,SAAPA,IAAIA,CAAGC,QAAQ,EAAA;AAAA,EAAA,OAAIC,KAAK,CAACC,GAAG,CAAA,EAAA,CAAAC,MAAA,CAAIC,cAAQ,EAAA,mBAAA,CAAA,CAAAD,MAAA,CAAoBH,QAAQ,CAAE,CAAC;AAAA,CAAA;AAE7E,IAAMK,WAAW,GAAG;AAAEN,EAAAA,IAAI,EAAJA;AAAK,CAAC;;ACDrB,IAAMO,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGN,QAAQ,EAAA;AAAA,EAAA,OACxCO,mBAAQ,CAAC;AACPC,IAAAA,QAAQ,EAAE,CAACC,6BAAU,CAACC,oBAAoB,EAAEV,QAAQ,CAAC;IACrDW,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQN,WAAW,CAACN,IAAI,CAACC,QAAQ,CAAC;AAAA,IAAA,CAAA;IACzCY,OAAO,EAAE,CAAC,CAACZ;AACb,GAAC,CAAC;AAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC6BJ,IAAMa,YAAY,GAAG;AACnBC,EAAAA,EAAE,EAAFA,EAAE;AACFC,EAAAA,EAAE,EAAFA,EAAE;AACFC,EAAAA,EAAE,EAAFA,EAAE;AACFC,EAAAA,EAAE,EAAFA,EAAE;AACFC,EAAAA,EAAE,EAAFA,EAAE;AACFC,EAAAA,EAAE,EAAFA,EAAE;AACFC,EAAAA,EAAE,EAAFA,EAAE;A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","x_google_ignoreList":[3]}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { default as NeetoThemesBuilder } from './NeetoThemesBuilder.js';
2
- export { u as useThemeUtils } from './useExpandedSection-D9J7nzlC.js';
3
- export { s as setTheme } from './index-JpAFUrB8.js';
1
+ export { N as NeetoThemesBuilder, r as registerNeetoThemesTranslations } from './index-B-2UmfUl.js';
2
+ export { u as useThemeUtils } from './useExpandedSection-CelNLEKQ.js';
3
+ export { s as setTheme } from './index-BZB12oJt.js';
4
4
  import 'zustand/shallow';
5
5
  import 'react';
6
6
  import '@bigbinary/neeto-cist';
@@ -10,6 +10,7 @@ import 'react-i18next';
10
10
  import '@tanstack/react-query';
11
11
  import 'axios';
12
12
  import '@babel/runtime/helpers/slicedToArray';
13
+ import 'i18next';
13
14
  import 'classnames';
14
15
  import '@bigbinary/neeto-commons-frontend/utils';
15
16
  import '@bigbinary/neeto-icons/Collapse';
@@ -28,7 +29,6 @@ import '@bigbinary/neetoui/formik/Form';
28
29
  import '@bigbinary/neetoui/formik/BlockNavigation';
29
30
  import 'formik';
30
31
  import 'react/jsx-runtime';
31
- import 'i18next';
32
32
  import '@bigbinary/neeto-icons/Right';
33
33
  import '@bigbinary/neeto-icons/Left';
34
34
  import '@bigbinary/neeto-molecules/HelpPopover';
@@ -6,7 +6,7 @@ import { withImmutableActions, useQueryParams } from '@bigbinary/neeto-commons-f
6
6
  import { create } from 'zustand';
7
7
  import { t } from 'i18next';
8
8
  import * as yup from 'yup';
9
- import { B as BASE_URL, s as setTheme, a as setVariable } from './index-JpAFUrB8.js';
9
+ import { B as BASE_URL, s as setTheme, a as setVariable } from './index-BZB12oJt.js';
10
10
  import { useQuery } from '@tanstack/react-query';
11
11
  import axios from 'axios';
12
12
  import { isPresent } from '@bigbinary/neeto-cist';
@@ -278,4 +278,4 @@ var useSyncExpandedSectionFromUrl = function useSyncExpandedSectionFromUrl() {
278
278
  };
279
279
 
280
280
  export { APPLY_SPINNER_DELAY as A, FONT_OPTIONS as F, HUNDRED as H, OVERLAY_OPACITY_SLIDER_MARKS as O, POSITION_OPTIONS as P, QUERY_KEYS as Q, THEME_VALIDATION_SCHEMA as T, useExpandedSection as a, useConfigStore as b, useThemeStore as c, useSyncExpandedSectionFromUrl as d, useThemeUtils as u };
281
- //# sourceMappingURL=useExpandedSection-D9J7nzlC.js.map
281
+ //# sourceMappingURL=useExpandedSection-CelNLEKQ.js.map