@bigbinary/neeto-themes-frontend 4.0.34 → 4.0.35
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.
- package/app/javascript/src/translations/en.json +2 -0
- package/dist/.ready +1 -1
- package/dist/NeetoThemesBuilder.js +1 -1
- package/dist/cjs/NeetoThemesBuilder.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/v2/NeetoThemesBuilder.js +34 -54
- package/dist/cjs/v2/NeetoThemesBuilder.js.map +1 -1
- package/dist/cjs/v2/index.js +3 -2
- package/dist/cjs/v2/index.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/{useGlobalThemesApi-llxHjPOu.js → useGlobalThemesApi-BXiSjDgN.js} +3 -1
- package/dist/{useGlobalThemesApi-llxHjPOu.js.map → useGlobalThemesApi-BXiSjDgN.js.map} +1 -1
- package/dist/{useGlobalThemesApi-CuO0V6wS.js → useGlobalThemesApi-F5AVHAjv.js} +3 -1
- package/dist/{useGlobalThemesApi-CuO0V6wS.js.map → useGlobalThemesApi-F5AVHAjv.js.map} +1 -1
- package/dist/v2/NeetoThemesBuilder.js +30 -50
- package/dist/v2/NeetoThemesBuilder.js.map +1 -1
- package/dist/v2/index.js +3 -2
- package/dist/v2/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeetoThemesBuilder.js","sources":["../../../app/javascript/src/v2/components/utils.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/constants.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/constants.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/constants.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/Editor.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/utils.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/CustomCSS.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/LogoPosition.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/TextBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/QuickActionRow.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/index.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import { Toastr } from \"@bigbinary/neeto-atoms\";\n\nexport const getImageFromUrl = source => {\n const image = new Image();\n image.crossOrigin = \"anonymous\";\n image.src = source;\n\n return new Promise(resolve => {\n image.onload = () => {\n resolve(image);\n };\n });\n};\n\nexport const getDominantColorFromUrl = async imageUrl => {\n try {\n const image = await getImageFromUrl(imageUrl);\n const context = document.createElement(\"canvas\").getContext(\"2d\");\n context?.drawImage(image, 0, 0, 1, 1);\n const c = context?.getImageData(0, 0, 1, 1).data;\n\n if (c) {\n return `#${((1 << 24) + (c[0] << 16) + (c[1] << 8) + c[2])\n .toString(16)\n .slice(1)}`;\n }\n\n return null;\n } catch (error) {\n Toastr.error(error);\n\n return null;\n }\n};\n\nexport const scrollElementIntoView = elementId => {\n const elementToScroll = document.getElementById(elementId);\n const sidebarContainer = document.querySelector(\n \".neeto-themes-sidebar__scroll\"\n );\n if (!elementToScroll || !sidebarContainer) return;\n\n const elementRect = elementToScroll.getBoundingClientRect();\n const sidebarContainerRect = sidebarContainer.getBoundingClientRect();\n const offset =\n elementRect.top - sidebarContainerRect.top + sidebarContainer.scrollTop;\n\n sidebarContainer.scrollTo({ top: offset, behavior: \"smooth\" });\n};\n\nexport const isFunction = obj => typeof obj === \"function\";\n\nexport const hexToRgba = hex => {\n const result =\n /^#?(?:([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})?|([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2}))$/i.exec(\n hex\n );\n\n if (!result) return null;\n\n const r = parseInt(result[1] || result[5], 16);\n const g = parseInt(result[2] || result[6], 16);\n const b = parseInt(result[3] || result[7], 16);\n const a = result[4]\n ? Math.round(parseInt(result[4], 16) / 2.55) / 100\n : undefined;\n\n return `${r}, ${g}, ${b}${a !== undefined ? `, ${a}` : \"\"}`;\n};\n\nexport const hexToRgb = hex => hexToRgba(hex?.slice(0, 7));\n\nexport const isNewThemeRoute = () => location.pathname.endsWith(\"new\");\nexport const isEditThemeRoute = () => location.pathname.endsWith(\"edit\");\n","// Keeps the spinner visible a bit longer so the apply feels deliberate,\n// before the card glides into the pinned active section.\nexport const APPLY_SPINNER_DELAY = 900;\n\nexport const DEFAULT_OPEN_SECTION = \"style\";\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const FIVE_MEGABYTES = 5;\n\nexport const IMAGE_UPLOAD_CONFIG = { maxImageSize: FIVE_MEGABYTES };\n\nexport const POSITION_OPTIONS = [\n { label: \"Left\", value: \"left\" },\n { label: \"Right\", value: \"right\" },\n];\n\nexport const FONT_OPTIONS = [\n {\n label: \"System UI\",\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n },\n {\n label: \"Cedarville Cursive\",\n value: \"'Cedarville Cursive', cursive\",\n },\n { label: \"Poppins\", value: \"Poppins, sans-serif\" },\n { label: \"Roboto\", value: \"Roboto, sans-serif\" },\n { label: \"Open Sans\", value: \"Open Sans, sans-serif\" },\n { label: \"Montserrat\", value: \"Montserrat, sans-serif\" },\n { label: \"Raleway\", value: \"Raleway, sans-serif\" },\n { label: \"Quicksand\", value: \"Quicksand, sans-serif\" },\n { label: \"Inter\", value: \"Inter, sans-serif\" },\n { label: \"Satoshi\", value: \"Satoshi, sans-serif\" },\n { label: \"Chillax\", value: \"Chillax, sans-serif\" },\n { label: \"Clash Display\", value: \"Clash Display, sans-serif\" },\n { label: \"General Sans\", value: \"General Sans, sans-serif\" },\n { label: \"Cabinet Grotesk\", value: \"Cabinet Grotesk, sans-serif\" },\n { label: \"Lora\", value: \"Lora, serif\" },\n { label: \"Merriweather\", value: \"Merriweather, serif\" },\n { label: \"Boska\", value: \"Boska, serif\" },\n { label: \"Playfair Display\", value: \"Playfair Display, serif\" },\n { label: \"Roboto Slab\", value: \"Roboto Slab, serif\" },\n { label: \"Dancing Script\", value: \"Dancing Script, cursive\" },\n { label: \"Tw Cent\", value: \"Tw Cen MT, Tahoma, sans-serif\" },\n { label: \"Comic Sans\", value: \"Comic Sans MS, cursive\" },\n];\n\nexport const THEME_VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(() => t(\"neetoThemes.validations.nameRequired\")),\n properties: yup.array().of(\n yup.object().shape({\n key: yup.string(),\n value: yup.string().when(\"key\", {\n is: key => key?.endsWith(\"_url\"),\n then: schema =>\n schema.url(() => t(\"neetoThemes.validations.invalidUrl\")),\n }),\n })\n ),\n});\n\nexport const OVERLAY_OPACITY_SLIDER_MARKS = { 0: \" \" };\nexport const HUNDRED = 100;\n\nexport const ACCORDION_OPEN_STATE = {\n name: true,\n style: true,\n images: false,\n customcss: false,\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 { Spinner } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport i18n from \"i18next\";\nimport { ChevronRight, ChevronLeft } from \"lucide-react\";\nimport { hyphenate, isPresent } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\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 ? ChevronLeft : ChevronRight;\n\n const handleToggle = () => setExpandedSection(isOpen ? \"\" : name);\n\n const sectionId = name || hyphenate(title);\n const triggerId = `neeto-themes-section-${sectionId}-trigger`;\n const contentId = `neeto-themes-section-${sectionId}-content`;\n\n return (\n <div\n data-testid={`theme-${hyphenate(title)}-properties`}\n className={classnames(\n \"neeto-themes-nano-section border-border 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 aria-controls={contentId}\n aria-expanded={isOpen}\n className=\"neeto-themes-nano-section__title flex w-full cursor-pointer items-center justify-between rounded-md px-1 py-2 focus:outline-none\"\n id={triggerId}\n type=\"button\"\n onClick={handleToggle}\n >\n <Typography\n asChild\n className=\"flex min-w-0 grow items-center gap-2 text-start\"\n data-testid=\"theme-properties\"\n variant=\"h6\"\n >\n <span>\n {title}\n {required && (\n <span aria-hidden className=\"-ms-1\">\n *\n </span>\n )}\n {isPresent(helpPopoverProps) && (\n <HelpPopover {...helpPopoverProps} />\n )}\n </span>\n </Typography>\n <ToggleIcon\n aria-hidden\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 aria-labelledby={title ? triggerId : undefined}\n id={contentId}\n role={title ? \"region\" : undefined}\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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { findBy, findIndexBy } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useExpandedSection from \"hooks/useExpandedSection\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { setCustomCSS } from \"utils\";\nimport { DESIGN_SCREENS } from \"v2/components/NeetoThemesBuilder/constants\";\nimport { scrollElementIntoView } from \"v2/components/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=\"sm\"\n variant=\"outline\"\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 color=\"muted\" variant=\"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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport { RadioGroup } from \"@bigbinary/neeto-atoms/formik\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy } from \"neetocist\";\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 <RadioGroup\n name={`properties[${index}].value`}\n orientation=\"vertical\"\n label={\n <Typography asChild className=\"my-3\" variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.title\")}\n </span>\n </Typography>\n }\n >\n <RadioGroup.Item\n value=\"over_left\"\n label={\n <span className=\"flex flex-col gap-1\">\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeft\"\n )}\n </span>\n </Typography>\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeftDescription\"\n )}\n </span>\n </Typography>\n </span>\n }\n />\n <RadioGroup.Item\n value=\"below_left\"\n label={\n <span className=\"flex flex-col gap-1\">\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeft\"\n )}\n </span>\n </Typography>\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeftDescription\"\n )}\n </span>\n </Typography>\n </span>\n }\n />\n </RadioGroup>\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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Field } from \"formik\";\nimport { AlignCenter, AlignLeft } from \"lucide-react\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\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\" variant=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <div className=\"border-border neeto-themes-nano-alignment-block flex items-center rounded-md border\">\n <Button\n className=\"neeto-themes-nano-alignment-button neeto-themes-nano-alignment-button__alignment-left\"\n data-testid=\"alignment-left\"\n variant={value === \"left\" ? \"default\" : \"ghost\"}\n icon={() => (\n <AlignLeft\n size={20}\n className={classnames({\n rounded: true,\n \"text-primary-foreground\": value === \"left\",\n \"text-muted-foreground\": 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 bg-border h-8 w-px\" />\n <Button\n className=\"neeto-themes-nano-alignment-button neeto-themes-nano-alignment-button__alignment-center\"\n data-testid=\"alignment-center\"\n variant={value === \"center\" ? \"default\" : \"ghost\"}\n icon={() => (\n <AlignCenter\n size={20}\n className={classnames({\n rounded: true,\n \"text-primary-foreground\": value === \"center\",\n \"text-muted-foreground\": 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 { ColorPicker, Label } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex min-h-9 items-center justify-between\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"style-fields-labels\">{label}</Label>\n <ColorPicker\n {...{ color, onChange, showTransparencyControl }}\n showEyeDropper\n size=\"medium\"\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { Label, Select } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\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 <Label data-testid=\"style-fields-labels\">{label}</Label>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n contentProps={{ className: \"min-w-max\" }}\n formatOptionLabel={option => (\n <span style={{ fontFamily: option.value }}>{option.label}</span>\n )}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { Label, Select } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"flex min-h-9 items-center justify-between gap-3\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"logo-field-labels\">{label}</Label>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n contentProps={{ className: \"min-w-max\" }}\n />\n </div>\n </div>\n);\n\nexport default SelectBlock;\n","import { Label, Slider } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst SliderBlock = ({ label, onChange, value, min, max }) => (\n <div\n className=\"flex min-h-9 items-center justify-between gap-3\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"style-fields-labels\">{label}</Label>\n <Slider\n {...{ max, min, value }}\n className=\"my-2 w-20\"\n onValueChange={onChange}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import { Label, Switch, Checkbox } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\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 min-h-9 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 min-h-9 items-center justify-between\"\n data-testid=\"theme-style-content-background\"\n >\n <div className=\"inline-flex items-center gap-4\">\n <Label\n data-testid=\"style-fields-labels\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Label>\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 size=\"default\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { Label, Input } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst TextBlock = ({\n label,\n name,\n type = \"text\",\n value,\n onChange,\n placeholder,\n error,\n}) => (\n <div\n className=\"flex flex-col gap-2\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"style-fields-labels\">{label}</Label>\n <Input {...{ error, name, onChange, placeholder, type, value }} />\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 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 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 (\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 (\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={value || \"\"}\n onChange={newValue => handleChange(key, newValue)}\n />\n );\n\n case \"color\":\n return (\n <ColorBlock\n color={value}\n key={key}\n label={buildLabel(key, kind)}\n showTransparencyControl={\n findBy({ key }, themePropertiesSchema)\n ?.showTransparencyControl || false\n }\n onChange={handleColorChange(key)}\n />\n );\n\n case \"radius\":\n return (\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 (\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 (\n <SelectBlock\n {...{ value }}\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n onChange={newValue =>\n setFieldValue(`properties[${index}].value`, newValue)\n }\n />\n );\n }\n\n case \"boolean\": {\n const index = findIndexBy({ key }, values.properties);\n const renderAsCheckbox =\n findBy({ key }, themePropertiesSchema)?.renderAsCheckbox ||\n false;\n\n return (\n <SwitchBlock\n asCheckbox={renderAsCheckbox}\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onCheckedChange={checked =>\n setFieldValue(`properties[${index}].value`, String(checked))\n }\n />\n );\n }\n\n case \"alignment_block\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\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 { Toastr, Label } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\nimport { ImageUploader } from \"neetoimageuploader/v2\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { getDominantColorFromUrl } from \"v2/components/utils\";\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 <Label data-testid=\"style-fields-labels\">{label}</Label>\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={\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n }\n onChange={newValue =>\n setFieldValue(`properties[${positionKeyIndex}].value`, newValue)\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 \"@bigbinary/neeto-atoms/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, useState } from \"react\";\n\nimport {\n Button,\n Popover,\n Typography,\n Switch,\n Tooltip,\n Spinner,\n} from \"@bigbinary/neeto-atoms\";\nimport { Form, BlockNavigation } from \"@bigbinary/neeto-atoms/formik\";\nimport classNames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport { filterBy } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport { isNotNil } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { useHistory, useParams } from \"react-router-dom\";\n\nimport { useShowGlobalTheme } from \"hooks/reactQuery/useGlobalThemesApi\";\nimport { useFetchTheme } from \"hooks/reactQuery/useThemesApi\";\nimport { useSyncExpandedSectionFromUrl } from \"hooks/useExpandedSection\";\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\";\nimport { isEditThemeRoute } from \"v2/components/utils\";\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 [isNotAppliedPopoverOpen, setIsNotAppliedPopoverOpen] = useState(false);\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 { 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 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 const isNotAppliedCondition =\n !isEditingCurrentlyAppliedTheme &&\n !(isCurrentThemeAndGlobalThemeSame && values.shouldSetAsGlobalTheme);\n\n return (\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\n className={classNames({ hidden: isCustomCssScreen })}\n />\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-themes-default-theme-toggle border-border mt-4 flex flex-col space-y-2 rounded-lg 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 size=\"lg\"\n label={t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.label\"\n )}\n onCheckedChange={checked =>\n setFieldValue(\"shouldSetAsGlobalTheme\", checked)\n }\n />\n </Tooltip>\n <Typography className=\"text-sm\" color=\"muted\" variant=\"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=\"bg-background border-border sticky bottom-0 start-0 end-0 flex justify-end gap-x-2 border-t 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 type=\"reset\"\n variant=\"ghost\"\n />\n <Popover\n disabled={!isNotAppliedCondition}\n open={isNotAppliedPopoverOpen}\n position=\"top\"\n trigger={\n <Button\n data-testid=\"save-changes-button\"\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n type=\"submit\"\n disabled={\n (!dirty && themeData?.id) || isSubmitting || !isValid\n }\n onClick={() => {\n if (isNotAppliedCondition) {\n setIsNotAppliedPopoverOpen(true);\n }\n }}\n />\n }\n onOpenChange={setIsNotAppliedPopoverOpen}\n >\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute end-1 top-1 z-0\"\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n onClick={() => setIsNotAppliedPopoverOpen(false)}\n />\n <Typography\n className=\"w-72 pe-5\"\n variant=\"body2\"\n weight=\"normal\"\n >\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 </Popover>\n </div>\n </div>\n );\n }}\n </Form>\n );\n};\n\nexport default Customize;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\n\nconst QuickActionRow = ({ icon: Icon, label, onClick, testId }) => (\n <button\n {...{ onClick }}\n className=\"border-border hover:bg-muted flex w-full cursor-pointer items-center gap-2 border-t px-3 py-1.5 text-start transition-colors\"\n data-testid={testId}\n type=\"button\"\n >\n <Icon className=\"text-muted-foreground\" size={16} />\n <Typography className=\"text-sm\" variant=\"body2\">\n {label}\n </Typography>\n </button>\n);\n\nexport default QuickActionRow;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\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 rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"border-border\": !active,\n \"border-foreground neeto-themes-theme-thumbnail--active\": 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=\"rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography variant=\"h5\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography color=\"muted\" variant=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"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 { Typography, Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Code, ImagePlus, Pipette } from \"lucide-react\";\nimport {\n capitalize,\n filterBy,\n hyphenate,\n isPresent,\n snakeToCamelCase,\n} from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { isFunction } from \"v2/components/utils\";\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 group/thumbnail rounded-lg relative cursor-pointer overflow-hidden border-2 transition-all duration-300 ease-in-out\",\n {\n \"border-border\": !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=\"relative overflow-hidden transition-all duration-300 ease-in-out\">\n {active ? (\n <div\n className=\"neeto-themes-theme-thumbnail__active-banner bg-primary text-primary-foreground 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 transition-all duration-300 ease-in-out\",\n {\n \"pointer-events-none opacity-0 group-hover:pointer-events-auto! group-hover:opacity-100! group-focus-within:pointer-events-auto! group-focus-within:opacity-100!\":\n !isPreviewing,\n }\n )}\n >\n <Button\n data-testid=\"preview-theme-button\"\n disabled={isPreviewing}\n label={t(\"neetoThemes.common.previewTheme\")}\n variant=\"secondary\"\n className={classnames({\n \"neeto-themes-theme-thumbnail__preview-btn--disabled opacity-100\":\n isPreviewing,\n \"neeto-themes-theme-thumbnail__preview-btn hover:bg-secondary! w-[8.125rem] max-w-full min-w-0 shrink justify-center\": true,\n })}\n onClick={() => onSetPreviewTheme(theme)}\n />\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn hover:bg-primary! w-[8.125rem] max-w-full min-w-0 shrink justify-center disabled:opacity-100!\"\n data-testid=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.useTheme\")}\n loading={isApplyingTheme}\n variant=\"default\"\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 group-hover/thumbnail:opacity-60\">\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=\"border-border flex items-start justify-between gap-1 border-t px-2 py-1.5\">\n <div\n className={classnames(\"flex items-center space-x-2\", {\n grow: !showMoreDropdown,\n })}\n >\n <Typography\n color=\"muted\"\n data-testid=\"theme-name\"\n variant=\"body2\"\n className={classnames(\n \"line-clamp-2 min-w-0 grow wrap-anywhere text-sm italic\",\n { \"pt-1\": showMoreDropdown }\n )}\n >\n {name}\n </Typography>\n {isGlobalTheme && (\n <Typography\n color=\"muted\"\n data-testid=\"default-theme-label\"\n variant=\"body2\"\n className={classnames(\"shrink-0 text-sm italic\", {\n \"pt-1\": showMoreDropdown,\n })}\n >\n {t(\"neetoThemes.common.defaultTheme\")}\n </Typography>\n )}\n </div>\n {showMoreDropdown && (\n <MoreDropdown\n dropdownButtonProps={{ size: \"sm\" }}\n dropdownProps={{\n className: \"w-max\",\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={Pipette}\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={ImagePlus}\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={Code}\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 { Spinner, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport Search from \"neetomolecules/v2/Search\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\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\";\nimport { scrollElementIntoView } from \"v2/components/utils\";\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 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=\"border-border 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 <div className=\"mb-4 mt-1 px-6 lg:px-5 xl:px-6\">\n <Search\n autoFocus\n enableUrlSync\n autoComplete=\"off\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n />\n </div>\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography\n className=\"text-center\"\n color=\"muted\"\n data-testid=\"no-data-title\"\n variant=\"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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport i18next from \"i18next\";\nimport { ArrowLeft, ArrowRight, Search } from \"lucide-react\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\nimport { isEditThemeRoute, isNewThemeRoute } from \"v2/components/utils\";\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 ? ArrowRight : ArrowLeft;\n\n if (isCustomizeScreen) {\n return (\n <div className=\"neeto-themes-sidebar__header px-4 pt-4 pb-2\">\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 variant=\"ghost\"\n tooltipProps={{\n content: isCustomCssScreen\n ? t(\"neetoThemes.buttons.backToEdit\")\n : t(\"neetoThemes.buttons.backToThemes\"),\n position: \"bottom\",\n }}\n onClick={() => handleBackPress(themeId)}\n />\n <Typography data-testid=\"themes-header\" variant=\"h5\">\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 pt-4 pb-2 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 data-testid=\"themes-header\" variant=\"h5\">\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 variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoThemes.common.searchThemes\"),\n position: \"bottom\",\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 { Alert, Button } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { ChevronsLeft, ChevronsRight } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/v2/react-utils\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useHistory } from \"react-router-dom\";\n\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\";\nimport { scrollElementIntoView } from \"v2/components/utils\";\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, i18n } = useTranslation();\n const ToggleIcon = i18n.dir() === \"rtl\" ? ChevronsRight : ChevronsLeft;\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 border-border 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={ToggleIcon}\n variant=\"outline\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Sidebar;\n","import { useEffect, useMemo } from \"react\";\n\nimport { Spinner } from \"@bigbinary/neeto-atoms\";\nimport { noop, isNotPresent } from \"neetocist\";\nimport { PageTitle } from \"neetocommons/v2/react-utils\";\nimport { useTranslation } from \"react-i18next\";\n\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/v2/main.css\";\nimport { isEditThemeRoute } from \"v2/components/utils\";\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":["getImageFromUrl","source","image","Image","crossOrigin","src","Promise","resolve","onload","getDominantColorFromUrl","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","imageUrl","context","c","wrap","_callee$","_context","prev","next","sent","document","createElement","getContext","drawImage","getImageData","data","abrupt","concat","toString","slice","t0","Toastr","error","stop","_x","apply","arguments","scrollElementIntoView","elementId","elementToScroll","getElementById","sidebarContainer","querySelector","elementRect","getBoundingClientRect","sidebarContainerRect","offset","top","scrollTop","scrollTo","behavior","isFunction","obj","isNewThemeRoute","location","pathname","endsWith","isEditThemeRoute","APPLY_SPINNER_DELAY","POSITION_OPTIONS","label","value","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","name","string","required","t","properties","array","of","key","when","is","then","schema","url","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","DESIGN_SCREENS","THEMES","Customize","CustomCSS","ONE_MEGABYTE","MonacoEditor","lazy","Editor","isCustomCssScreen","onChange","_jsx","Suspense","fallback","Spinner","children","language","theme","className","classNames","rounded","options","scrollBeyondLastLine","minimap","enabled","Card","_ref$title","title","helpPopoverProps","_useExpandedSection","useExpandedSection","expandedSection","setExpandedSection","isOpen","isRTL","i18n","dir","ToggleIcon","ChevronLeft","ChevronRight","handleToggle","sectionId","hyphenate","triggerId","contentId","_jsxs","classnames","id","type","onClick","Typography","asChild","variant","isPresent","HelpPopover","_objectSpread","size","undefined","role","isScreenCustomCSS","screen","buildPathname","route","_iterator","_createForOfIteratorHelper","split","_step","s","n","done","segment","isEmpty","err","e","f","animateThemeReorder","updateFn","prefersReducedMotion","window","matchMedia","matches","cards","_toConsumableArray","querySelectorAll","scrollContainer","length","oldRects","Map","map","card","dataset","flipId","flushSync","flips","oldRect","get","newRect","dx","left","dy","filter","Boolean","forEach","style","transform","body","offsetHeight","_ref2","classList","add","addEventListener","remove","once","onEditCSSClick","currentScreen","isEnabled","isProFeature","_useTranslation","useTranslation","_useFormikContext","useFormikContext","values","setFieldValue","_useConfigStore","useConfigStore","store","themePropertiesSchema","shallow","_helpPopoverProps$cus","customCss","customCssHelpPopoverProps","isExpanded","customCSS","findBy","kind","parentElementClass","parentClass","handleEditorToggle","setTimeout","handleChange","index","findIndexBy","setCustomCSS","css","description","Button","color","LogoPosition","RadioGroup","orientation","weight","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","buildLabel","buildProperties","condition","imageKeys","Set","ele","has","AlignmentBlock","joinHyphenCase","Field","field","form","icon","AlignLeft","tooltipProps","content","position","AlignCenter","ColorBlock","_ref$color","showTransparencyControl","Label","ColorPicker","showEyeDropper","FontPickerBlock","_ref$placeholder","placeholder","Select","contentProps","formatOptionLabel","option","fontFamily","SelectBlock","SliderBlock","min","max","Slider","onValueChange","SwitchBlock","_ref$asCheckbox","asCheckbox","inputProps","_objectWithoutProperties","_excluded","translationKey","doesHelpTextExist","exists","Checkbox","Switch","TextBlock","_ref$type","Input","Properties","onPropertiesChange","themeId","_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","_ref3","_findBy3","isCurrentPropertyVisible","_errors$properties","_createElement","target","newValue","Number","radius","marks","negate","opacity","_findBy4","_findBy5","renderAsCheckbox","checked","onCheckedChange","ImageBlock","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","defaultImageSize","useDefaultImageSize","fixedAspectRatio","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","ImageUploader","onUploadComplete","Images","_values$coverImage","coverImage","ThemeMeta","_helpPopoverProps$nam","nameHelpPopoverProps","autoFocus","onCreateTheme","onApplyTheme","onUpdateTheme","isApplyingTheme","useSyncExpandedSectionFromUrl","history","useHistory","_useState","useState","_useState2","_slicedToArray","isNotAppliedPopoverOpen","setIsNotAppliedPopoverOpen","entityType","isFetchingSchema","enabledFeatures","proFeatures","_useParams","useParams","currentTheme","_useShowGlobalTheme","useShowGlobalTheme","_useShowGlobalTheme$d","_useShowGlobalTheme$d2","_useShowGlobalTheme$d3","globalTheme","_useFetchTheme","useFetchTheme","isNotNil","initialData","_useFetchTheme$data","themeData","isLoadingTheme","isLoading","isThemeGlobalTheme","isCurrentThemeAndGlobalThemeSame","_helpPopoverProps$sty","styleHelpPopoverProps","isEditingCurrentlyAppliedTheme","_useCreateTheme","useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","useUpdateTheme","updateTheme","isUpdating","isSubmitting","onSubmit","resetForm","themeToSave","propertiesAttributes","shouldSetAsGlobalTheme","onSuccess","replace","buildUrl","routes","themes","edit","_ref4","Form","formikProps","initialValues","validationSchema","enableReinitialize","_ref5","dirty","isValid","isNotAppliedCondition","BlockNavigation","_ref6","propertyDefaultSize","propertyFixedAspectRatio","_defineProperty","Tooltip","disabled","toLowerCase","count","Popover","open","trigger","loading","onOpenChange","X","Trans","components","bold","i18nKey","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","DefaultThumbnail","grow","MoreDropdown","dropdownButtonProps","dropdownProps","menuItems","isDisabled","Pipette","_theme$camelKey","camelKey","hasImage","action","specificKey","ImagePlus","Code","memo","Themes","_ref$themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isCurrentThemeLoading","themeBeingApplied","onApplyThemeSuccess","_ref$isSearchVisible","isSearchVisible","entityId","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","_useCloneTheme","useCloneTheme","cloneTheme","_useApplyTheme","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","i18next","BackButtonIcon","ArrowRight","ArrowLeft","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","_useState0","isThemesSidebarCollapsed","setIsThemesSidebarCollapsed","defaultThemeName","useRef","ChevronsRight","ChevronsLeft","_useListThemes","useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","useDeleteTheme","deleteTheme","isDeleting","applyUpdates","highlightTheme","applyTheme","themeToDelete","themeToEdit","_useState1","_useState10","setIsSearchVisible","params","URLSearchParams","search","handleEditTheme","push","onError","navigateToThemesScreen","themeIdToHighlight","createdTheme","updatedTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","Route","exact","path","render","message","onClose","NeetoThemesBuilder","_ref$defaultImageSize","_ref$fixedAspectRatio","_ref$helpDocUrl","_ref$isTemplateThemes","isTemplateThemesEnabled","_ref$pageTitle","pageTitle","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","_ref$helpPopoverProps","_ref$enabledFeatures","_ref$proFeatures","useMemo","registerNeetoThemesTranslations","setConfigState","isFetchingCurrentTheme","isFetching","setViewportHeight","documentElement","setProperty","innerHeight","removeEventListener","PageTitle"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeetoThemesBuilder.js","sources":["../../../app/javascript/src/v2/components/utils.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/constants.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/constants.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/constants.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/Editor.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/utils.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/CustomCSS.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/LogoPosition.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/TextBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/QuickActionRow.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/Sidebar/index.jsx","../../../app/javascript/src/v2/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import { Toastr } from \"@bigbinary/neeto-atoms\";\n\nexport const getImageFromUrl = source => {\n const image = new Image();\n image.crossOrigin = \"anonymous\";\n image.src = source;\n\n return new Promise(resolve => {\n image.onload = () => {\n resolve(image);\n };\n });\n};\n\nexport const getDominantColorFromUrl = async imageUrl => {\n try {\n const image = await getImageFromUrl(imageUrl);\n const context = document.createElement(\"canvas\").getContext(\"2d\");\n context?.drawImage(image, 0, 0, 1, 1);\n const c = context?.getImageData(0, 0, 1, 1).data;\n\n if (c) {\n return `#${((1 << 24) + (c[0] << 16) + (c[1] << 8) + c[2])\n .toString(16)\n .slice(1)}`;\n }\n\n return null;\n } catch (error) {\n Toastr.error(error);\n\n return null;\n }\n};\n\nexport const scrollElementIntoView = elementId => {\n const elementToScroll = document.getElementById(elementId);\n const sidebarContainer = document.querySelector(\n \".neeto-themes-sidebar__scroll\"\n );\n if (!elementToScroll || !sidebarContainer) return;\n\n const elementRect = elementToScroll.getBoundingClientRect();\n const sidebarContainerRect = sidebarContainer.getBoundingClientRect();\n const offset =\n elementRect.top - sidebarContainerRect.top + sidebarContainer.scrollTop;\n\n sidebarContainer.scrollTo({ top: offset, behavior: \"smooth\" });\n};\n\nexport const isFunction = obj => typeof obj === \"function\";\n\nexport const hexToRgba = hex => {\n const result =\n /^#?(?:([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})?|([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2}))$/i.exec(\n hex\n );\n\n if (!result) return null;\n\n const r = parseInt(result[1] || result[5], 16);\n const g = parseInt(result[2] || result[6], 16);\n const b = parseInt(result[3] || result[7], 16);\n const a = result[4]\n ? Math.round(parseInt(result[4], 16) / 2.55) / 100\n : undefined;\n\n return `${r}, ${g}, ${b}${a !== undefined ? `, ${a}` : \"\"}`;\n};\n\nexport const hexToRgb = hex => hexToRgba(hex?.slice(0, 7));\n\nexport const isNewThemeRoute = () => location.pathname.endsWith(\"new\");\nexport const isEditThemeRoute = () => location.pathname.endsWith(\"edit\");\n","// Keeps the spinner visible a bit longer so the apply feels deliberate,\n// before the card glides into the pinned active section.\nexport const APPLY_SPINNER_DELAY = 900;\n\nexport const DEFAULT_OPEN_SECTION = \"style\";\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const FIVE_MEGABYTES = 5;\n\nexport const IMAGE_UPLOAD_CONFIG = { maxImageSize: FIVE_MEGABYTES };\n\nexport const POSITION_OPTIONS = [\n { label: \"Left\", value: \"left\" },\n { label: \"Right\", value: \"right\" },\n];\n\nexport const FONT_OPTIONS = [\n {\n label: \"System UI\",\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n },\n {\n label: \"Cedarville Cursive\",\n value: \"'Cedarville Cursive', cursive\",\n },\n { label: \"Poppins\", value: \"Poppins, sans-serif\" },\n { label: \"Roboto\", value: \"Roboto, sans-serif\" },\n { label: \"Open Sans\", value: \"Open Sans, sans-serif\" },\n { label: \"Montserrat\", value: \"Montserrat, sans-serif\" },\n { label: \"Raleway\", value: \"Raleway, sans-serif\" },\n { label: \"Quicksand\", value: \"Quicksand, sans-serif\" },\n { label: \"Inter\", value: \"Inter, sans-serif\" },\n { label: \"Satoshi\", value: \"Satoshi, sans-serif\" },\n { label: \"Chillax\", value: \"Chillax, sans-serif\" },\n { label: \"Clash Display\", value: \"Clash Display, sans-serif\" },\n { label: \"General Sans\", value: \"General Sans, sans-serif\" },\n { label: \"Cabinet Grotesk\", value: \"Cabinet Grotesk, sans-serif\" },\n { label: \"Lora\", value: \"Lora, serif\" },\n { label: \"Merriweather\", value: \"Merriweather, serif\" },\n { label: \"Boska\", value: \"Boska, serif\" },\n { label: \"Playfair Display\", value: \"Playfair Display, serif\" },\n { label: \"Roboto Slab\", value: \"Roboto Slab, serif\" },\n { label: \"Dancing Script\", value: \"Dancing Script, cursive\" },\n { label: \"Tw Cent\", value: \"Tw Cen MT, Tahoma, sans-serif\" },\n { label: \"Comic Sans\", value: \"Comic Sans MS, cursive\" },\n];\n\nexport const THEME_VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(() => t(\"neetoThemes.validations.nameRequired\")),\n properties: yup.array().of(\n yup.object().shape({\n key: yup.string(),\n value: yup.string().when(\"key\", {\n is: key => key?.endsWith(\"_url\"),\n then: schema =>\n schema.url(() => t(\"neetoThemes.validations.invalidUrl\")),\n }),\n })\n ),\n});\n\nexport const OVERLAY_OPACITY_SLIDER_MARKS = { 0: \" \" };\nexport const HUNDRED = 100;\n\nexport const ACCORDION_OPEN_STATE = {\n name: true,\n style: true,\n images: false,\n customcss: false,\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 { Spinner } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport i18n from \"i18next\";\nimport { ChevronRight, ChevronLeft } from \"lucide-react\";\nimport { hyphenate, isPresent } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\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 ? ChevronLeft : ChevronRight;\n\n const handleToggle = () => setExpandedSection(isOpen ? \"\" : name);\n\n const sectionId = name || hyphenate(title);\n const triggerId = `neeto-themes-section-${sectionId}-trigger`;\n const contentId = `neeto-themes-section-${sectionId}-content`;\n\n return (\n <div\n data-testid={`theme-${hyphenate(title)}-properties`}\n className={classnames(\n \"neeto-themes-nano-section border-border 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 aria-controls={contentId}\n aria-expanded={isOpen}\n className=\"neeto-themes-nano-section__title flex w-full cursor-pointer items-center justify-between rounded-md px-1 py-2 focus:outline-none\"\n id={triggerId}\n type=\"button\"\n onClick={handleToggle}\n >\n <Typography\n asChild\n className=\"flex min-w-0 grow items-center gap-2 text-start\"\n data-testid=\"theme-properties\"\n variant=\"h6\"\n >\n <span>\n {title}\n {required && (\n <span aria-hidden className=\"-ms-1\">\n *\n </span>\n )}\n {isPresent(helpPopoverProps) && (\n <HelpPopover {...helpPopoverProps} />\n )}\n </span>\n </Typography>\n <ToggleIcon\n aria-hidden\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 aria-labelledby={title ? triggerId : undefined}\n id={contentId}\n role={title ? \"region\" : undefined}\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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { findBy, findIndexBy } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useExpandedSection from \"hooks/useExpandedSection\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { setCustomCSS } from \"utils\";\nimport { DESIGN_SCREENS } from \"v2/components/NeetoThemesBuilder/constants\";\nimport { scrollElementIntoView } from \"v2/components/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=\"sm\"\n variant=\"outline\"\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 color=\"muted\" variant=\"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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport { RadioGroup } from \"@bigbinary/neeto-atoms/formik\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy } from \"neetocist\";\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 <RadioGroup\n name={`properties[${index}].value`}\n orientation=\"vertical\"\n label={\n <Typography asChild className=\"my-3\" variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.title\")}\n </span>\n </Typography>\n }\n >\n <RadioGroup.Item\n value=\"over_left\"\n label={\n <span className=\"flex flex-col gap-1\">\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeft\"\n )}\n </span>\n </Typography>\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeftDescription\"\n )}\n </span>\n </Typography>\n </span>\n }\n />\n <RadioGroup.Item\n value=\"below_left\"\n label={\n <span className=\"flex flex-col gap-1\">\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeft\"\n )}\n </span>\n </Typography>\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeftDescription\"\n )}\n </span>\n </Typography>\n </span>\n }\n />\n </RadioGroup>\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 { Typography } from \"@bigbinary/neeto-atoms\";\nimport {\n ToggleGroup,\n ToggleGroupItem,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport { Field } from \"formik\";\nimport { AlignCenter, AlignLeft } from \"lucide-react\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst AlignmentBlock = withT(({ t, 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\" variant=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <ToggleGroup\n {...{ value }}\n className=\"bg-background border-input h-8 rounded-md border p-[3px] shadow-none\"\n size=\"sm\"\n spacing={1}\n type=\"single\"\n variant=\"default\"\n onValueChange={newValue => newValue && setFieldValue(name, newValue)}\n >\n <ToggleGroupItem\n aria-label={t(\"neetoThemes.common.leftAlign\")}\n className=\"size-6 min-w-6 rounded-sm px-0\"\n data-testid=\"alignment-left\"\n title={t(\"neetoThemes.common.leftAlign\")}\n value=\"left\"\n >\n <AlignLeft />\n </ToggleGroupItem>\n <ToggleGroupItem\n aria-label={t(\"neetoThemes.common.centerAlign\")}\n className=\"size-6 min-w-6 rounded-sm px-0\"\n data-testid=\"alignment-center\"\n title={t(\"neetoThemes.common.centerAlign\")}\n value=\"center\"\n >\n <AlignCenter />\n </ToggleGroupItem>\n </ToggleGroup>\n )}\n </Field>\n </div>\n));\n\nexport default AlignmentBlock;\n","import { ColorPicker, Label } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex min-h-9 items-center justify-between\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"style-fields-labels\">{label}</Label>\n <ColorPicker\n {...{ color, onChange, showTransparencyControl }}\n showEyeDropper\n size=\"medium\"\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { Label, Select } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\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 <Label data-testid=\"style-fields-labels\">{label}</Label>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n contentProps={{ className: \"min-w-max\" }}\n formatOptionLabel={option => (\n <span style={{ fontFamily: option.value }}>{option.label}</span>\n )}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { Label, Select } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"flex min-h-9 items-center justify-between gap-3\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"logo-field-labels\">{label}</Label>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n contentProps={{ className: \"min-w-max\" }}\n />\n </div>\n </div>\n);\n\nexport default SelectBlock;\n","import { Label, Slider } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst SliderBlock = ({ label, onChange, value, min, max }) => (\n <div\n className=\"flex min-h-9 items-center justify-between gap-3\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"style-fields-labels\">{label}</Label>\n <Slider\n {...{ max, min, value }}\n className=\"my-2 w-20\"\n onValueChange={onChange}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import { Label, Switch, Checkbox } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\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 min-h-9 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 min-h-9 items-center justify-between\"\n data-testid=\"theme-style-content-background\"\n >\n <div className=\"inline-flex items-center gap-4\">\n <Label\n data-testid=\"style-fields-labels\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Label>\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 size=\"default\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { Label, Input } from \"@bigbinary/neeto-atoms\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\n\nconst TextBlock = ({\n label,\n name,\n type = \"text\",\n value,\n onChange,\n placeholder,\n error,\n}) => (\n <div\n className=\"flex flex-col gap-2\"\n data-testid={`theme-style-${joinHyphenCase(label)}`}\n >\n <Label data-testid=\"style-fields-labels\">{label}</Label>\n <Input {...{ error, name, onChange, placeholder, type, value }} />\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 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 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 (\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 (\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={value || \"\"}\n onChange={newValue => handleChange(key, newValue)}\n />\n );\n\n case \"color\":\n return (\n <ColorBlock\n color={value}\n key={key}\n label={buildLabel(key, kind)}\n showTransparencyControl={\n findBy({ key }, themePropertiesSchema)\n ?.showTransparencyControl || false\n }\n onChange={handleColorChange(key)}\n />\n );\n\n case \"radius\":\n return (\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 (\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 (\n <SelectBlock\n {...{ value }}\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n onChange={newValue =>\n setFieldValue(`properties[${index}].value`, newValue)\n }\n />\n );\n }\n\n case \"boolean\": {\n const index = findIndexBy({ key }, values.properties);\n const renderAsCheckbox =\n findBy({ key }, themePropertiesSchema)?.renderAsCheckbox ||\n false;\n\n return (\n <SwitchBlock\n asCheckbox={renderAsCheckbox}\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onCheckedChange={checked =>\n setFieldValue(`properties[${index}].value`, String(checked))\n }\n />\n );\n }\n\n case \"alignment_block\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\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 { Toastr, Label } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/v2/utils\";\nimport { ImageUploader } from \"neetoimageuploader/v2\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { getDominantColorFromUrl } from \"v2/components/utils\";\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 <Label data-testid=\"style-fields-labels\">{label}</Label>\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={\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n }\n onChange={newValue =>\n setFieldValue(`properties[${positionKeyIndex}].value`, newValue)\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 \"@bigbinary/neeto-atoms/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, useState } from \"react\";\n\nimport {\n Button,\n Popover,\n Typography,\n Switch,\n Tooltip,\n Spinner,\n} from \"@bigbinary/neeto-atoms\";\nimport { Form, BlockNavigation } from \"@bigbinary/neeto-atoms/formik\";\nimport classNames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport { filterBy } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport { isNotNil } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { useHistory, useParams } from \"react-router-dom\";\n\nimport { useShowGlobalTheme } from \"hooks/reactQuery/useGlobalThemesApi\";\nimport { useFetchTheme } from \"hooks/reactQuery/useThemesApi\";\nimport { useSyncExpandedSectionFromUrl } from \"hooks/useExpandedSection\";\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\";\nimport { isEditThemeRoute } from \"v2/components/utils\";\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 [isNotAppliedPopoverOpen, setIsNotAppliedPopoverOpen] = useState(false);\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 { 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 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 const isNotAppliedCondition =\n !isEditingCurrentlyAppliedTheme &&\n !(isCurrentThemeAndGlobalThemeSame && values.shouldSetAsGlobalTheme);\n\n return (\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\n className={classNames({ hidden: isCustomCssScreen })}\n />\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-themes-default-theme-toggle border-border mt-4 flex flex-col space-y-2 rounded-lg 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 size=\"lg\"\n label={t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.label\"\n )}\n onCheckedChange={checked =>\n setFieldValue(\"shouldSetAsGlobalTheme\", checked)\n }\n />\n </Tooltip>\n <Typography className=\"text-sm\" color=\"muted\" variant=\"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=\"bg-background border-border sticky bottom-0 start-0 end-0 flex justify-end gap-x-2 border-t 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 type=\"reset\"\n variant=\"ghost\"\n />\n <Popover\n disabled={!isNotAppliedCondition}\n open={isNotAppliedPopoverOpen}\n position=\"top\"\n trigger={\n <Button\n data-testid=\"save-changes-button\"\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n type=\"submit\"\n disabled={\n (!dirty && themeData?.id) || isSubmitting || !isValid\n }\n onClick={() => {\n if (isNotAppliedCondition) {\n setIsNotAppliedPopoverOpen(true);\n }\n }}\n />\n }\n onOpenChange={setIsNotAppliedPopoverOpen}\n >\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute end-1 top-1 z-0\"\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n onClick={() => setIsNotAppliedPopoverOpen(false)}\n />\n <Typography\n className=\"w-72 pe-5\"\n variant=\"body2\"\n weight=\"normal\"\n >\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 </Popover>\n </div>\n </div>\n );\n }}\n </Form>\n );\n};\n\nexport default Customize;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\n\nconst QuickActionRow = ({ icon: Icon, label, onClick, testId }) => (\n <button\n {...{ onClick }}\n className=\"border-border hover:bg-muted flex w-full cursor-pointer items-center gap-2 border-t px-3 py-1.5 text-start transition-colors\"\n data-testid={testId}\n type=\"button\"\n >\n <Icon className=\"text-muted-foreground\" size={16} />\n <Typography className=\"text-sm\" variant=\"body2\">\n {label}\n </Typography>\n </button>\n);\n\nexport default QuickActionRow;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\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 rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"border-border\": !active,\n \"border-foreground neeto-themes-theme-thumbnail--active\": 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=\"rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography variant=\"h5\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography color=\"muted\" variant=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"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 { Typography, Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Code, ImagePlus, Pipette } from \"lucide-react\";\nimport {\n capitalize,\n filterBy,\n hyphenate,\n isPresent,\n snakeToCamelCase,\n} from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { isFunction } from \"v2/components/utils\";\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 group/thumbnail rounded-lg relative cursor-pointer overflow-hidden border-2 transition-all duration-300 ease-in-out\",\n {\n \"border-border\": !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=\"relative overflow-hidden transition-all duration-300 ease-in-out\">\n {active ? (\n <div\n className=\"neeto-themes-theme-thumbnail__active-banner bg-primary text-primary-foreground 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 transition-all duration-300 ease-in-out\",\n {\n \"pointer-events-none opacity-0 group-hover:pointer-events-auto! group-hover:opacity-100! group-focus-within:pointer-events-auto! group-focus-within:opacity-100!\":\n !isPreviewing,\n }\n )}\n >\n <Button\n data-testid=\"preview-theme-button\"\n disabled={isPreviewing}\n label={t(\"neetoThemes.common.previewTheme\")}\n variant=\"secondary\"\n className={classnames({\n \"neeto-themes-theme-thumbnail__preview-btn--disabled opacity-100\":\n isPreviewing,\n \"neeto-themes-theme-thumbnail__preview-btn hover:bg-secondary! w-[8.125rem] max-w-full min-w-0 shrink justify-center\": true,\n })}\n onClick={() => onSetPreviewTheme(theme)}\n />\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn hover:bg-primary! w-[8.125rem] max-w-full min-w-0 shrink justify-center disabled:opacity-100!\"\n data-testid=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.useTheme\")}\n loading={isApplyingTheme}\n variant=\"default\"\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 group-hover/thumbnail:opacity-60\">\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=\"border-border flex items-start justify-between gap-1 border-t px-2 py-1.5\">\n <div\n className={classnames(\"flex items-center space-x-2\", {\n grow: !showMoreDropdown,\n })}\n >\n <Typography\n color=\"muted\"\n data-testid=\"theme-name\"\n variant=\"body2\"\n className={classnames(\n \"line-clamp-2 min-w-0 grow wrap-anywhere text-sm italic\",\n { \"pt-1\": showMoreDropdown }\n )}\n >\n {name}\n </Typography>\n {isGlobalTheme && (\n <Typography\n color=\"muted\"\n data-testid=\"default-theme-label\"\n variant=\"body2\"\n className={classnames(\"shrink-0 text-sm italic\", {\n \"pt-1\": showMoreDropdown,\n })}\n >\n {t(\"neetoThemes.common.defaultTheme\")}\n </Typography>\n )}\n </div>\n {showMoreDropdown && (\n <MoreDropdown\n dropdownButtonProps={{ size: \"sm\" }}\n dropdownProps={{\n className: \"w-max\",\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={Pipette}\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={ImagePlus}\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={Code}\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 { Spinner, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport Search from \"neetomolecules/v2/Search\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\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\";\nimport { scrollElementIntoView } from \"v2/components/utils\";\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 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=\"border-border 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 <div className=\"mb-4 mt-1 px-6 lg:px-5 xl:px-6\">\n <Search\n autoFocus\n enableUrlSync\n autoComplete=\"off\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n />\n </div>\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography\n className=\"text-center\"\n color=\"muted\"\n data-testid=\"no-data-title\"\n variant=\"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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport i18next from \"i18next\";\nimport { ArrowLeft, ArrowRight, Search } from \"lucide-react\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\nimport { isEditThemeRoute, isNewThemeRoute } from \"v2/components/utils\";\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 ? ArrowRight : ArrowLeft;\n\n if (isCustomizeScreen) {\n return (\n <div className=\"neeto-themes-sidebar__header px-4 pt-4 pb-2\">\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 variant=\"ghost\"\n tooltipProps={{\n content: isCustomCssScreen\n ? t(\"neetoThemes.buttons.backToEdit\")\n : t(\"neetoThemes.buttons.backToThemes\"),\n position: \"bottom\",\n }}\n onClick={() => handleBackPress(themeId)}\n />\n <Typography data-testid=\"themes-header\" variant=\"h5\">\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 pt-4 pb-2 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 data-testid=\"themes-header\" variant=\"h5\">\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 variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoThemes.common.searchThemes\"),\n position: \"bottom\",\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 { Alert, Button } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { ChevronsLeft, ChevronsRight } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/v2/react-utils\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useHistory } from \"react-router-dom\";\n\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\";\nimport { scrollElementIntoView } from \"v2/components/utils\";\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, i18n } = useTranslation();\n const ToggleIcon = i18n.dir() === \"rtl\" ? ChevronsRight : ChevronsLeft;\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 border-border 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={ToggleIcon}\n variant=\"outline\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Sidebar;\n","import { useEffect, useMemo } from \"react\";\n\nimport { Spinner } from \"@bigbinary/neeto-atoms\";\nimport { noop, isNotPresent } from \"neetocist\";\nimport { PageTitle } from \"neetocommons/v2/react-utils\";\nimport { useTranslation } from \"react-i18next\";\n\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/v2/main.css\";\nimport { isEditThemeRoute } from \"v2/components/utils\";\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":["getImageFromUrl","source","image","Image","crossOrigin","src","Promise","resolve","onload","getDominantColorFromUrl","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","imageUrl","context","c","wrap","_callee$","_context","prev","next","sent","document","createElement","getContext","drawImage","getImageData","data","abrupt","concat","toString","slice","t0","Toastr","error","stop","_x","apply","arguments","scrollElementIntoView","elementId","elementToScroll","getElementById","sidebarContainer","querySelector","elementRect","getBoundingClientRect","sidebarContainerRect","offset","top","scrollTop","scrollTo","behavior","isFunction","obj","isNewThemeRoute","location","pathname","endsWith","isEditThemeRoute","APPLY_SPINNER_DELAY","POSITION_OPTIONS","label","value","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","name","string","required","t","properties","array","of","key","when","is","then","schema","url","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","DESIGN_SCREENS","THEMES","Customize","CustomCSS","ONE_MEGABYTE","MonacoEditor","lazy","Editor","isCustomCssScreen","onChange","_jsx","Suspense","fallback","Spinner","children","language","theme","className","classNames","rounded","options","scrollBeyondLastLine","minimap","enabled","Card","_ref$title","title","helpPopoverProps","_useExpandedSection","useExpandedSection","expandedSection","setExpandedSection","isOpen","isRTL","i18n","dir","ToggleIcon","ChevronLeft","ChevronRight","handleToggle","sectionId","hyphenate","triggerId","contentId","_jsxs","classnames","id","type","onClick","Typography","asChild","variant","isPresent","HelpPopover","_objectSpread","size","undefined","role","isScreenCustomCSS","screen","buildPathname","route","_iterator","_createForOfIteratorHelper","split","_step","s","n","done","segment","isEmpty","err","e","f","animateThemeReorder","updateFn","prefersReducedMotion","window","matchMedia","matches","cards","_toConsumableArray","querySelectorAll","scrollContainer","length","oldRects","Map","map","card","dataset","flipId","flushSync","flips","oldRect","get","newRect","dx","left","dy","filter","Boolean","forEach","style","transform","body","offsetHeight","_ref2","classList","add","addEventListener","remove","once","onEditCSSClick","currentScreen","isEnabled","isProFeature","_useTranslation","useTranslation","_useFormikContext","useFormikContext","values","setFieldValue","_useConfigStore","useConfigStore","store","themePropertiesSchema","shallow","_helpPopoverProps$cus","customCss","customCssHelpPopoverProps","isExpanded","customCSS","findBy","kind","parentElementClass","parentClass","handleEditorToggle","setTimeout","handleChange","index","findIndexBy","setCustomCSS","css","description","Button","color","LogoPosition","RadioGroup","orientation","weight","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","buildLabel","buildProperties","condition","imageKeys","Set","ele","has","AlignmentBlock","withT","joinHyphenCase","Field","field","form","ToggleGroup","spacing","onValueChange","newValue","ToggleGroupItem","AlignLeft","AlignCenter","ColorBlock","_ref$color","showTransparencyControl","Label","ColorPicker","showEyeDropper","FontPickerBlock","_ref$placeholder","placeholder","Select","contentProps","formatOptionLabel","option","fontFamily","SelectBlock","SliderBlock","min","max","Slider","SwitchBlock","_ref$asCheckbox","asCheckbox","inputProps","_objectWithoutProperties","_excluded","translationKey","doesHelpTextExist","exists","Checkbox","Switch","TextBlock","_ref$type","Input","Properties","onPropertiesChange","themeId","_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","_ref3","_findBy3","isCurrentPropertyVisible","_errors$properties","_createElement","target","Number","radius","marks","negate","opacity","_findBy4","_findBy5","renderAsCheckbox","checked","onCheckedChange","ImageBlock","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","defaultImageSize","useDefaultImageSize","fixedAspectRatio","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","ImageUploader","onUploadComplete","Images","_values$coverImage","coverImage","ThemeMeta","_helpPopoverProps$nam","nameHelpPopoverProps","autoFocus","onCreateTheme","onApplyTheme","onUpdateTheme","isApplyingTheme","useSyncExpandedSectionFromUrl","history","useHistory","_useState","useState","_useState2","_slicedToArray","isNotAppliedPopoverOpen","setIsNotAppliedPopoverOpen","entityType","isFetchingSchema","enabledFeatures","proFeatures","_useParams","useParams","currentTheme","_useShowGlobalTheme","useShowGlobalTheme","_useShowGlobalTheme$d","_useShowGlobalTheme$d2","_useShowGlobalTheme$d3","globalTheme","_useFetchTheme","useFetchTheme","isNotNil","initialData","_useFetchTheme$data","themeData","isLoadingTheme","isLoading","isThemeGlobalTheme","isCurrentThemeAndGlobalThemeSame","_helpPopoverProps$sty","styleHelpPopoverProps","isEditingCurrentlyAppliedTheme","_useCreateTheme","useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","useUpdateTheme","updateTheme","isUpdating","isSubmitting","onSubmit","resetForm","themeToSave","propertiesAttributes","shouldSetAsGlobalTheme","onSuccess","replace","buildUrl","routes","themes","edit","_ref4","Form","formikProps","initialValues","validationSchema","enableReinitialize","_ref5","dirty","isValid","isNotAppliedCondition","BlockNavigation","_ref6","propertyDefaultSize","propertyFixedAspectRatio","_defineProperty","Tooltip","disabled","content","toLowerCase","count","Popover","open","position","trigger","loading","onOpenChange","icon","X","Trans","components","bold","i18nKey","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","DefaultThumbnail","grow","MoreDropdown","dropdownButtonProps","dropdownProps","menuItems","isDisabled","Pipette","_theme$camelKey","camelKey","hasImage","action","specificKey","ImagePlus","Code","memo","Themes","_ref$themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isCurrentThemeLoading","themeBeingApplied","onApplyThemeSuccess","_ref$isSearchVisible","isSearchVisible","entityId","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","_useCloneTheme","useCloneTheme","cloneTheme","_useApplyTheme","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","i18next","BackButtonIcon","ArrowRight","ArrowLeft","iconPosition","tooltipProps","helpLinkProps","href","MemoizedAlert","Alert","Sidebar","_themeToDelete$curren2","onUpdateThemeSuccess","setCurrentScreen","_useState3","_useState4","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","setThemeToHighlight","_useState7","_useState8","setThemeBeingApplied","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_useState9","_useState0","isThemesSidebarCollapsed","setIsThemesSidebarCollapsed","defaultThemeName","useRef","ChevronsRight","ChevronsLeft","_useListThemes","useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","useDeleteTheme","deleteTheme","isDeleting","applyUpdates","highlightTheme","applyTheme","themeToDelete","themeToEdit","_useState1","_useState10","setIsSearchVisible","params","URLSearchParams","search","handleEditTheme","push","onError","navigateToThemesScreen","themeIdToHighlight","createdTheme","updatedTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","Route","exact","path","render","message","onClose","NeetoThemesBuilder","_ref$defaultImageSize","_ref$fixedAspectRatio","_ref$helpDocUrl","_ref$isTemplateThemes","isTemplateThemesEnabled","_ref$pageTitle","pageTitle","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","_ref$helpPopoverProps","_ref$enabledFeatures","_ref$proFeatures","useMemo","registerNeetoThemesTranslations","setConfigState","isFetchingCurrentTheme","isFetching","setViewportHeight","documentElement","setProperty","innerHeight","removeEventListener","PageTitle"],"mappings":"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"}
|