@bigbinary/neeto-themes-frontend 4.2.3 → 4.2.4-beta2

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.
@@ -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 { useId } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Typography } from \"neetoatoms\";\nimport { RadioGroup } from \"neetoatoms/formik\";\nimport { findIndexBy } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nconst LogoPosition = () => {\n const { t } = useTranslation();\n const labelId = useId();\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 <div className=\"flex flex-col\">\n <Typography asChild className=\"my-3\" variant=\"body2\" weight=\"semibold\">\n <span id={labelId}>\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.title\")}\n </span>\n </Typography>\n <RadioGroup\n aria-labelledby={labelId}\n className=\"border-border !gap-0 overflow-hidden rounded-lg border\"\n name={`properties[${index}].value`}\n orientation=\"vertical\"\n >\n <RadioGroup.Item\n className=\"p-3\"\n value=\"over_left\"\n helpText={\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeftDescription\"\n )}\n </span>\n </Typography>\n }\n label={\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeft\"\n )}\n </span>\n </Typography>\n }\n />\n <RadioGroup.Item\n className=\"border-border border-t p-3\"\n value=\"below_left\"\n helpText={\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeftDescription\"\n )}\n </span>\n </Typography>\n }\n label={\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeft\"\n )}\n </span>\n </Typography>\n }\n />\n </RadioGroup>\n </div>\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 { useFormikContext } from \"formik\";\nimport { Toastr, Label } from \"neetoatoms\";\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 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 const uploadConfig = {\n maxImageSize: propertySchema?.maxImageSizeInMb || ONE_MEGABYTE,\n };\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 { mutateAsync: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutateAsync: 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","labelId","useId","weight","RadioGroup","orientation","Item","helpText","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","attribute","defaultImageSize","useDefaultImageSize","fixedAspectRatio","propertySchema","enablePositionChanger","uploadConfig","maxImageSize","maxImageSizeInMb","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","mutateAsync","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","mutate","_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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,MAAM,EAAI;AACvC,EAAA,IAAMC,KAAK,GAAG,IAAIC,KAAK,EAAE;EACzBD,KAAK,CAACE,WAAW,GAAG,WAAW;EAC/BF,KAAK,CAACG,GAAG,GAAGJ,MAAM;AAElB,EAAA,OAAO,IAAIK,OAAO,CAAC,UAAAC,OAAO,EAAI;IAC5BL,KAAK,CAACM,MAAM,GAAG,YAAM;MACnBD,OAAO,CAACL,KAAK,CAAC;IAChB,CAAC;AACH,EAAA,CAAC,CAAC;AACJ,CAAC;AAEM,IAAMO,uBAAuB,gBAAA,YAAA;EAAA,IAAAC,IAAA,GAAAC,iBAAA,cAAAC,mBAAA,CAAAC,IAAA,CAAG,SAAAC,OAAAA,CAAMC,QAAQ,EAAA;AAAA,IAAA,IAAAb,KAAA,EAAAc,OAAA,EAAAC,CAAA;AAAA,IAAA,OAAAL,mBAAA,CAAAM,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,MAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,QAAA,KAAA,CAAA;AAAAF,UAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA;AAAAD,UAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;UAAA,OAE7BtB,eAAe,CAACe,QAAQ,CAAC;AAAA,QAAA,KAAA,CAAA;UAAvCb,KAAK,GAAAkB,QAAA,CAAAG,IAAA;UACLP,OAAO,GAAGQ,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC,CAACC,UAAU,CAAC,IAAI,CAAC;AACjEV,UAAAA,OAAO,aAAPA,OAAO,KAAA,MAAA,IAAPA,OAAO,CAAEW,SAAS,CAACzB,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC/Be,UAAAA,CAAC,GAAGD,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,MAAA,GAAA,MAAA,GAAPA,OAAO,CAAEY,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAACC,IAAI;AAAA,UAAA,IAAA,CAE5CZ,CAAC,EAAA;AAAAG,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAAA,OAAAF,QAAA,CAAAU,MAAA,eAAAC,MAAA,CACQ,CAAC,CAAC,CAAC,IAAI,EAAE,KAAKd,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAIA,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAGA,CAAC,CAAC,CAAC,CAAC,EACtDe,QAAQ,CAAC,EAAE,CAAC,CACZC,KAAK,CAAC,CAAC,CAAC,CAAA,CAAA;AAAA,QAAA,KAAA,CAAA;AAAA,UAAA,OAAAb,QAAA,CAAAU,MAAA,CAAA,QAAA,EAGN,IAAI,CAAA;AAAA,QAAA,KAAA,EAAA;AAAAV,UAAAA,QAAA,CAAAC,IAAA,GAAA,EAAA;UAAAD,QAAA,CAAAc,EAAA,GAAAd,QAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAEXe,UAAAA,iBAAM,CAACC,KAAK,CAAAhB,QAAA,CAAAc,EAAM,CAAC;AAAC,UAAA,OAAAd,QAAA,CAAAU,MAAA,CAAA,QAAA,EAEb,IAAI,CAAA;AAAA,QAAA,KAAA,EAAA;AAAA,QAAA,KAAA,KAAA;UAAA,OAAAV,QAAA,CAAAiB,IAAA,EAAA;AAAA;AAAA,IAAA,CAAA,EAAAvB,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA;EAAA,CAEd,CAAA,CAAA;EAAA,OAAA,SAnBYL,uBAAuBA,CAAA6B,EAAA,EAAA;AAAA,IAAA,OAAA5B,IAAA,CAAA6B,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,EAAA,CAAA;AAAA,CAAA,EAmBnC;AAEM,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,SAAS,EAAI;AAChD,EAAA,IAAMC,eAAe,GAAGnB,QAAQ,CAACoB,cAAc,CAACF,SAAS,CAAC;AAC1D,EAAA,IAAMG,gBAAgB,GAAGrB,QAAQ,CAACsB,aAAa,CAC7C,+BACF,CAAC;AACD,EAAA,IAAI,CAACH,eAAe,IAAI,CAACE,gBAAgB,EAAE;AAE3C,EAAA,IAAME,WAAW,GAAGJ,eAAe,CAACK,qBAAqB,EAAE;AAC3D,EAAA,IAAMC,oBAAoB,GAAGJ,gBAAgB,CAACG,qBAAqB,EAAE;AACrE,EAAA,IAAME,MAAM,GACVH,WAAW,CAACI,GAAG,GAAGF,oBAAoB,CAACE,GAAG,GAAGN,gBAAgB,CAACO,SAAS;EAEzEP,gBAAgB,CAACQ,QAAQ,CAAC;AAAEF,IAAAA,GAAG,EAAED,MAAM;AAAEI,IAAAA,QAAQ,EAAE;AAAS,GAAC,CAAC;AAChE,CAAC;AAEM,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAGC,GAAG,EAAA;EAAA,OAAI,OAAOA,GAAG,KAAK,UAAU;AAAA,CAAA;AAsBnD,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,GAAA;AAAA,EAAA,OAASC,QAAQ,CAACC,QAAQ,CAACC,QAAQ,CAAC,KAAK,CAAC;AAAA,CAAA;AAC/D,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAA;AAAA,EAAA,OAASH,QAAQ,CAACC,QAAQ,CAACC,QAAQ,CAAC,MAAM,CAAC;AAAA,CAAA;;ACzExE;AACA;AACO,IAAME,mBAAmB,GAAG,GAAG;;ACK/B,IAAMC,gBAAgB,GAAG,CAC9B;AAAEC,EAAAA,KAAK,EAAE,MAAM;AAAEC,EAAAA,KAAK,EAAE;AAAO,CAAC,EAChC;AAAED,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,KAAK,EAAE;AAAQ,CAAC,CACnC;AAEM,IAAMC,YAAY,GAAG,CAC1B;AACEF,EAAAA,KAAK,EAAE,WAAW;AAClBC,EAAAA,KAAK,EACH;AACJ,CAAC,EACD;AACED,EAAAA,KAAK,EAAE,oBAAoB;AAC3BC,EAAAA,KAAK,EAAE;AACT,CAAC,EACD;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,QAAQ;AAAEC,EAAAA,KAAK,EAAE;AAAqB,CAAC,EAChD;AAAED,EAAAA,KAAK,EAAE,WAAW;AAAEC,EAAAA,KAAK,EAAE;AAAwB,CAAC,EACtD;AAAED,EAAAA,KAAK,EAAE,YAAY;AAAEC,EAAAA,KAAK,EAAE;AAAyB,CAAC,EACxD;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,WAAW;AAAEC,EAAAA,KAAK,EAAE;AAAwB,CAAC,EACtD;AAAED,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,KAAK,EAAE;AAAoB,CAAC,EAC9C;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,eAAe;AAAEC,EAAAA,KAAK,EAAE;AAA4B,CAAC,EAC9D;AAAED,EAAAA,KAAK,EAAE,cAAc;AAAEC,EAAAA,KAAK,EAAE;AAA2B,CAAC,EAC5D;AAAED,EAAAA,KAAK,EAAE,iBAAiB;AAAEC,EAAAA,KAAK,EAAE;AAA8B,CAAC,EAClE;AAAED,EAAAA,KAAK,EAAE,MAAM;AAAEC,EAAAA,KAAK,EAAE;AAAc,CAAC,EACvC;AAAED,EAAAA,KAAK,EAAE,cAAc;AAAEC,EAAAA,KAAK,EAAE;AAAsB,CAAC,EACvD;AAAED,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,KAAK,EAAE;AAAe,CAAC,EACzC;AAAED,EAAAA,KAAK,EAAE,kBAAkB;AAAEC,EAAAA,KAAK,EAAE;AAA0B,CAAC,EAC/D;AAAED,EAAAA,KAAK,EAAE,aAAa;AAAEC,EAAAA,KAAK,EAAE;AAAqB,CAAC,EACrD;AAAED,EAAAA,KAAK,EAAE,gBAAgB;AAAEC,EAAAA,KAAK,EAAE;AAA0B,CAAC,EAC7D;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE;AAAgC,CAAC,EAC5D;AAAED,EAAAA,KAAK,EAAE,YAAY;AAAEC,EAAAA,KAAK,EAAE;AAAyB,CAAC,CACzD;AAEM,IAAME,uBAAuB,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EACxDC,IAAI,EAAEH,cAAG,CAACI,MAAM,EAAE,CAACC,QAAQ,CAAC,YAAA;IAAA,OAAMC,MAAC,CAAC,sCAAsC,CAAC;EAAA,CAAA,CAAC;AAC5EC,EAAAA,UAAU,EAAEP,cAAG,CAACQ,KAAK,EAAE,CAACC,EAAE,CACxBT,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AACjBQ,IAAAA,GAAG,EAAEV,cAAG,CAACI,MAAM,EAAE;IACjBP,KAAK,EAAEG,cAAG,CAACI,MAAM,EAAE,CAACO,IAAI,CAAC,KAAK,EAAE;AAC9BC,MAAAA,EAAE,EAAE,SAAJA,EAAEA,CAAEF,GAAG,EAAA;QAAA,OAAIA,GAAG,aAAHA,GAAG,KAAA,MAAA,GAAA,MAAA,GAAHA,GAAG,CAAElB,QAAQ,CAAC,MAAM,CAAC;AAAA,MAAA,CAAA;AAChCqB,MAAAA,IAAI,EAAE,SAANA,IAAIA,CAAEC,MAAM,EAAA;QAAA,OACVA,MAAM,CAACC,GAAG,CAAC,YAAA;UAAA,OAAMT,MAAC,CAAC,oCAAoC,CAAC;QAAA,CAAA,CAAC;AAAA,MAAA;KAC5D;AACH,GAAC,CACH;AACF,CAAC,CAAC;AAEK,IAAMU,4BAA4B,GAAG;AAAE,EAAA,CAAC,EAAE;AAAI,CAAC;AAC/C,IAAMC,OAAO,GAAG,GAAG;;AC3DnB,IAAMC,cAAc,GAAG;AAC5BC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,SAAS,EAAE;AACb,CAAC;AAEM,IAAMC,YAAY,GAAG,CAAC;;ACD7B,IAAMC,YAAY,gBAAGC,UAAI,CAAC,YAAA;EAAA,OAAM,OAAO,sBAAsB,CAAC;AAAA,CAAA,CAAC;AAE/D,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAAnF,IAAA,EAAA;AAAA,EAAA,IAAMuD,KAAK,GAAAvD,IAAA,CAALuD,KAAK;IAAE6B,iBAAiB,GAAApF,IAAA,CAAjBoF,iBAAiB;IAAEC,QAAQ,GAAArF,IAAA,CAARqF,QAAQ;EAAA,oBAClDC,cAAA,CAACC,cAAQ,EAAA;AAACC,IAAAA,QAAQ,eAAEF,cAAA,CAACG,kBAAO,IAAE,CAAE;IAAAC,QAAA,eAC9BJ,cAAA,CAACL,YAAY,EAAA;AACLI,MAAAA,QAAQ,EAARA,QAAQ;AAAE9B,MAAAA,KAAK,EAALA,KAAK;AACrBoC,MAAAA,QAAQ,EAAC,KAAK;AACdC,MAAAA,KAAK,EAAC,SAAS;MACfC,SAAS,EAAEC,UAAU,CAAC;AACpBC,QAAAA,OAAO,EAAE,IAAI;AACb,QAAA,6BAA6B,EAAEX,iBAAiB;AAChD,QAAA,4BAA4B,EAAE,CAACA;AACjC,OAAC,CAAE;AACHY,MAAAA,OAAO,EAAE;AACPC,QAAAA,oBAAoB,EAAE,KAAK;AAC3BC,QAAAA,OAAO,EAAE;AAAEC,UAAAA,OAAO,EAAE;AAAM;AAC5B;KACD;AAAC,GACM,CAAC;AAAA,CACZ;;;;ACfD,IAAMC,MAAI,GAAG,SAAPA,IAAIA,CAAApG,IAAA,EAOJ;AAAA,EAAA,IAAAqG,UAAA,GAAArG,IAAA,CANJsG,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,UAAA;IACVX,QAAQ,GAAA1F,IAAA,CAAR0F,QAAQ;IACR7B,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;IACJgC,SAAS,GAAA7F,IAAA,CAAT6F,SAAS;IACTU,gBAAgB,GAAAvG,IAAA,CAAhBuG,gBAAgB;IAChBxC,QAAQ,GAAA/D,IAAA,CAAR+D,QAAQ;AAER,EAAA,IAAAyC,mBAAA,GAAgDC,qCAAkB,EAAE;IAA5DC,eAAe,GAAAF,mBAAA,CAAfE,eAAe;IAAEC,kBAAkB,GAAAH,mBAAA,CAAlBG,kBAAkB;AAC3C,EAAA,IAAMC,MAAM,GAAGF,eAAe,KAAK7C,IAAI;EAEvC,IAAMgD,KAAK,GAAGC,IAAI,CAACC,GAAG,EAAE,KAAK,KAAK;AAClC,EAAA,IAAMC,UAAU,GAAGH,KAAK,GAAGI,uBAAW,GAAGC,wBAAY;AAErD,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAA;AAAA,IAAA,OAASR,kBAAkB,CAACC,MAAM,GAAG,EAAE,GAAG/C,IAAI,CAAC;AAAA,EAAA,CAAA;AAEjE,EAAA,IAAMuD,SAAS,GAAGvD,IAAI,IAAIwD,mBAAS,CAACf,KAAK,CAAC;AAC1C,EAAA,IAAMgB,SAAS,GAAA,uBAAA,CAAAjG,MAAA,CAA2B+F,SAAS,EAAA,UAAA,CAAU;AAC7D,EAAA,IAAMG,SAAS,GAAA,uBAAA,CAAAlG,MAAA,CAA2B+F,SAAS,EAAA,UAAA,CAAU;AAE7D,EAAA,oBACEI,eAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAA,QAAA,CAAAnG,MAAA,CAAsBgG,mBAAS,CAACf,KAAK,CAAC,EAAA,aAAA,CAAc;AACpDT,IAAAA,SAAS,EAAE4B,UAAU,CACnB,oGAAoG,EACpG5B,SAAS,EACT;MAAE,MAAM,EAAE,CAACe,MAAM;AAAE,MAAA,MAAM,EAAEA;AAAO,KACpC,CAAE;IAAAlB,QAAA,EAAA,CAEDY,KAAK,iBACJkB,eAAA,CAAA,QAAA,EAAA;AACE,MAAA,eAAA,EAAeD,SAAU;AACzB,MAAA,eAAA,EAAeX,MAAO;AACtBf,MAAAA,SAAS,EAAC,kIAAkI;AAC5I6B,MAAAA,EAAE,EAAEJ,SAAU;AACdK,MAAAA,IAAI,EAAC,QAAQ;AACbC,MAAAA,OAAO,EAAET,YAAa;MAAAzB,QAAA,EAAA,cAEtBJ,cAAA,CAACuC,qBAAU,EAAA;QACTC,OAAO,EAAA,IAAA;AACPjC,QAAAA,SAAS,EAAC,iDAAiD;AAC3D,QAAA,aAAA,EAAY,kBAAkB;AAC9BkC,QAAAA,OAAO,EAAC,IAAI;AAAArC,QAAAA,QAAA,eAEZ8B,eAAA,CAAA,MAAA,EAAA;AAAA9B,UAAAA,QAAA,EAAA,CACGY,KAAK,EACLvC,QAAQ,iBACPuB,cAAA,CAAA,MAAA,EAAA;YAAM,aAAA,EAAA,IAAW;AAACO,YAAAA,SAAS,EAAC,OAAO;AAAAH,YAAAA,QAAA,EAAC;AAEpC,WAAM,CACP,EACAsC,mBAAS,CAACzB,gBAAgB,CAAC,iBAC1BjB,cAAA,CAAC2C,WAAW,EAAAC,eAAA,CAAA,EAAA,EAAK3B,gBAAgB,CAAG,CACrC;SACG;AAAC,OACG,CAAC,eACbjB,cAAA,CAAC0B,UAAU,EAAA;QACT,aAAA,EAAA,IAAW;AACXmB,QAAAA,IAAI,EAAE,EAAG;AACTtC,QAAAA,SAAS,EAAE4B,UAAU,CAAC,6BAA6B,EAAE;AACnD,UAAA,0BAA0B,EAAEb;SAC7B;AAAE,OACJ,CAAC;AAAA,KACI,CACT,EACAlB,QAAQ,iBACPJ,cAAA,CAAA,KAAA,EAAA;AACE,MAAA,iBAAA,EAAiBgB,KAAK,GAAGgB,SAAS,GAAGc,SAAU;AAC/CV,MAAAA,EAAE,EAAEH,SAAU;AACdc,MAAAA,IAAI,EAAE/B,KAAK,GAAG,QAAQ,GAAG8B,SAAU;AACnCvC,MAAAA,SAAS,EAAE4B,UAAU,CACnB,sGAAsG,EACtG;QACE,4CAA4C,EAAE,CAACb,MAAM;AACrD,QAAA,+CAA+C,EAAEA;AACnD,OACF,CAAE;AAAAlB,MAAAA,QAAA,EAEDA;AAAQ,KACN,CACN;AAAA,GACE,CAAC;AAEV,CAAC;;;;;ACvFM,IAAM4C,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,MAAM,EAAA;AAAA,EAAA,OAAIA,MAAM,KAAK3D,cAAc,CAACG,SAAS;AAAA,CAAA;AAEvE,IAAMyD,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK,EAAI;EACpC,IAAIxF,QAAQ,GAAG,EAAE;EAAC,IAAAyF,SAAA,GAAAC,0BAAA,CACI3F,QAAQ,CAACC,QAAQ,CAAC2F,KAAK,CAAC,GAAG,CAAC,CAAA;IAAAC,KAAA;AAAA,EAAA,IAAA;IAAlD,KAAAH,SAAA,CAAAI,CAAA,EAAA,EAAA,CAAA,CAAAD,KAAA,GAAAH,SAAA,CAAAK,CAAA,EAAA,EAAAC,IAAA,GAAoD;AAAA,MAAA,IAAzCC,OAAO,GAAAJ,KAAA,CAAAtF,KAAA;AAChB,MAAA,IAAI2F,aAAO,CAACD,OAAO,CAAC,EAAE;AACpB,QAAA;AACF,MAAA;MAEA,IAAIA,OAAO,KAAK,QAAQ,EAAE;AACxB,QAAA;AACF,MAAA;AACAhG,MAAAA,QAAQ,IAAA,GAAA,CAAA5B,MAAA,CAAQ4H,OAAO,CAAE;AAC3B,IAAA;AAAC,EAAA,CAAA,CAAA,OAAAE,GAAA,EAAA;IAAAT,SAAA,CAAAU,CAAA,CAAAD,GAAA,CAAA;AAAA,EAAA,CAAA,SAAA;AAAAT,IAAAA,SAAA,CAAAW,CAAA,EAAA;AAAA,EAAA;AAED,EAAA,OAAA,EAAA,CAAAhI,MAAA,CAAU4B,QAAQ,CAAA,CAAA5B,MAAA,CAAGoH,KAAK,CAAA;AAC5B,CAAC;;AAED;AACA;AACA;AACO,IAAMa,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,QAAQ,EAAI;EAC7C,IAAMC,oBAAoB,GAAGC,MAAM,CAACC,UAAU,CAC5C,kCACF,CAAC,CAACC,OAAO;EACT,IAAMC,KAAK,GAAAC,kBAAA,CAAO/I,QAAQ,CAACgJ,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;AAC9D,EAAA,IAAMC,eAAe,GAAGjJ,QAAQ,CAACsB,aAAa,CAC5C,+BACF,CAAC;AAED,EAAA,IAAIoH,oBAAoB,IAAII,KAAK,CAACI,MAAM,KAAK,CAAC,EAAE;AAC9CT,IAAAA,QAAQ,EAAE;AACV,IAAA,IAAIQ,eAAe,EAAEA,eAAe,CAACrH,SAAS,GAAG,CAAC;AAElD,IAAA;AACF,EAAA;EAEA,IAAMuH,QAAQ,GAAG,IAAIC,GAAG,CACtBN,KAAK,CAACO,GAAG,CAAC,UAAAC,IAAI,EAAA;AAAA,IAAA,OAAI,CAACA,IAAI,CAACC,OAAO,CAACC,MAAM,EAAEF,IAAI,CAAC9H,qBAAqB,EAAE,CAAC;AAAA,EAAA,CAAA,CACvE,CAAC;EAEDiI,kBAAS,CAAChB,QAAQ,CAAC;;AAEnB;AACA;AACA;AACA,EAAA,IAAIQ,eAAe,EAAEA,eAAe,CAACrH,SAAS,GAAG,CAAC;AAElD,EAAA,IAAM8H,KAAK,GAAGX,kBAAA,CAAI/I,QAAQ,CAACgJ,gBAAgB,CAAC,gBAAgB,CAAC,CAAA,CAC1DK,GAAG,CAAC,UAAAC,IAAI,EAAI;IACX,IAAMK,OAAO,GAAGR,QAAQ,CAACS,GAAG,CAACN,IAAI,CAACC,OAAO,CAACC,MAAM,CAAC;AACjD,IAAA,IAAI,CAACG,OAAO,EAAE,OAAO,IAAI;AAEzB,IAAA,IAAME,OAAO,GAAGP,IAAI,CAAC9H,qBAAqB,EAAE;IAC5C,IAAMsI,EAAE,GAAGH,OAAO,CAACI,IAAI,GAAGF,OAAO,CAACE,IAAI;IACtC,IAAMC,EAAE,GAAGL,OAAO,CAAChI,GAAG,GAAGkI,OAAO,CAAClI,GAAG;IAEpC,OAAOmI,EAAE,IAAIE,EAAE,GAAG;AAAEV,MAAAA,IAAI,EAAJA,IAAI;AAAEQ,MAAAA,EAAE,EAAFA,EAAE;AAAEE,MAAAA,EAAE,EAAFA;AAAG,KAAC,GAAG,IAAI;AAC3C,EAAA,CAAC,CAAC,CACDC,MAAM,CAACC,OAAO,CAAC;AAElB,EAAA,IAAIR,KAAK,CAACR,MAAM,KAAK,CAAC,EAAE;AAExBQ,EAAAA,KAAK,CAACS,OAAO,CAAC,UAAAjL,IAAA,EAAsB;AAAA,IAAA,IAAnBoK,IAAI,GAAApK,IAAA,CAAJoK,IAAI;MAAEQ,EAAE,GAAA5K,IAAA,CAAF4K,EAAE;MAAEE,EAAE,GAAA9K,IAAA,CAAF8K,EAAE;AAC3BV,IAAAA,IAAI,CAACc,KAAK,CAACC,SAAS,GAAA,YAAA,CAAA9J,MAAA,CAAgBuJ,EAAE,EAAA,MAAA,CAAA,CAAAvJ,MAAA,CAAOyJ,EAAE,EAAA,KAAA,CAAK;AACtD,EAAA,CAAC,CAAC;;AAEF;EACAhK,QAAQ,CAACsK,IAAI,CAACC,YAAY;AAE1Bb,EAAAA,KAAK,CAACS,OAAO,CAAC,UAAAK,KAAA,EAAc;AAAA,IAAA,IAAXlB,IAAI,GAAAkB,KAAA,CAAJlB,IAAI;AACnBA,IAAAA,IAAI,CAACmB,SAAS,CAACC,GAAG,CAAC,6BAA6B,CAAC;AACjDpB,IAAAA,IAAI,CAACc,KAAK,CAACC,SAAS,GAAG,EAAE;AACzBf,IAAAA,IAAI,CAACqB,gBAAgB,CACnB,eAAe,EACf,YAAM;AACJrB,MAAAA,IAAI,CAACmB,SAAS,CAACG,MAAM,CAAC,6BAA6B,CAAC;AACtD,IAAA,CAAC,EACD;AAAEC,MAAAA,IAAI,EAAE;AAAK,KACf,CAAC;AACH,EAAA,CAAC,CAAC;AACJ,CAAC;;ACtED,IAAM5G,SAAS,GAAG,SAAZA,SAASA,CAAA/E,IAAA,EAKT;AAAA,EAAA,IAJJ4L,cAAc,GAAA5L,IAAA,CAAd4L,cAAc;IACdC,aAAa,GAAA7L,IAAA,CAAb6L,aAAa;IACbC,SAAS,GAAA9L,IAAA,CAAT8L,SAAS;IACTC,YAAY,GAAA/L,IAAA,CAAZ+L,YAAY;AAEZ,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AACT,EAAA,IAAAkI,iBAAA,GAAkCC,uBAAgB,EAAE;IAA5CC,MAAM,GAAAF,iBAAA,CAANE,MAAM;IAAEC,aAAa,GAAAH,iBAAA,CAAbG,aAAa;AAC7B,EAAA,IAAAC,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,qBAAqB,EAAAD,KAAA,CAAA,uBAAA,CAAA;AAAEjG,QAAAA,gBAAgB,EAAAiG,KAAA,CAAA,kBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAvCD,qBAAqB,GAAAH,eAAA,CAArBG,qBAAqB;IAAElG,gBAAgB,GAAA+F,eAAA,CAAhB/F,gBAAgB;AAC/C,EAAA,IAAAoG,qBAAA,GAAsDpG,gBAAgB,CAA9DqG,SAAS;AAAEC,IAAAA,yBAAyB,GAAAF,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AACjD,EAAA,IAAAnG,mBAAA,GAA4BC,qCAAkB,EAAE;IAAxCC,eAAe,GAAAF,mBAAA,CAAfE,eAAe;AACvB,EAAA,IAAMoG,UAAU,GAAGpG,eAAe,KAAK,WAAW;EAElD,IAAMqG,SAAS,GAAGC,gBAAM,CAAC;AAAEC,IAAAA,IAAI,EAAE;AAAa,GAAC,EAAEb,MAAM,CAACnI,UAAU,CAAC;EAEnE,IAAI,CAAC8I,SAAS,IAAK,CAACjB,SAAS,IAAI,CAACC,YAAa,EAAE,OAAO,IAAI;EAE5D,IAAMmB,kBAAkB,GAAGF,gBAAM,CAC/B;AAAEC,IAAAA,IAAI,EAAE;AAAa,GAAC,EACtBR,qBACF,CAAC,CAACU,WAAW;AAEb,EAAA,IAAM/H,iBAAiB,GAAGkD,iBAAiB,CAACuD,aAAa,CAAC;AAE1D,EAAA,IAAMuB,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;IAC/B,IAAI,CAAChI,iBAAiB,EAAE,OAAOwG,cAAc,CAAChH,cAAc,CAACG,SAAS,CAAC;AACvE6G,IAAAA,cAAc,CAAChH,cAAc,CAACE,SAAS,CAAC;IAExC,OAAOuI,UAAU,CAAC,YAAM;MACtBtL,qBAAqB,CAAC,YAAY,CAAC;IACrC,CAAC,EAAE,GAAG,CAAC;EACT,CAAC;AAED,EAAA,IAAMuL,YAAY,GAAG,SAAfA,YAAYA,CAAG/J,KAAK,EAAI;IAC5B,IAAMgK,KAAK,GAAGC,qBAAW,CAAC;MAAEpJ,GAAG,EAAE2I,SAAS,CAAC3I;AAAI,KAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;AAEpE,IAAA,IAAIsJ,KAAK,KAAK,EAAE,IAAInB,MAAM,CAACnI,UAAU,CAACsJ,KAAK,CAAC,CAAChK,KAAK,KAAKA,KAAK,EAAE;AAC5D8I,MAAAA,aAAa,eAAAhL,MAAA,CAAekM,KAAK,EAAA,SAAA,CAAA,EAAWhK,KAAK,CAAC;AAClDkK,MAAAA,kBAAY,CAAC;AACXC,QAAAA,GAAG,EAAEnK,KAAK;QACVvB,SAAS,EAAE+K,SAAS,CAAC3I,GAAG;AACxB8I,QAAAA,kBAAkB,EAAlBA;AACF,OAAC,CAAC;AACJ,IAAA;EACF,CAAC;AAED,EAAA,oBACE5H,cAAA,CAAA,KAAA,EAAA;AAAKO,IAAAA,SAAS,EAAC,0CAA0C;AAAC6B,IAAAA,EAAE,EAAC,YAAY;IAAAhC,QAAA,eACvEJ,cAAA,CAACc,MAAI,EAAA;AACHvC,MAAAA,IAAI,EAAC,WAAW;AAChB0C,MAAAA,gBAAgB,EACduF,SAAS,GACLe,yBAAyB,GACzB;AACEvG,QAAAA,KAAK,EAAEtC,CAAC,CAAC,+CAA+C,CAAC;QACzD2J,WAAW,EAAE3J,CAAC,CACZ,qDACF;OAEP;MACDsC,KAAK,EACHlB,iBAAiB,GACb,EAAE,GACFpB,CAAC,CAAC,gDAAgD,CACvD;MAAA0B,QAAA,EAEAoG,SAAS,gBACRtE,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,QAAQ;AAAAH,QAAAA,QAAA,gBACrBJ,cAAA,CAAA,KAAA,EAAA;AAAKO,UAAAA,SAAS,EAAC,4FAA4F;UAAAH,QAAA,eACzGJ,cAAA,CAACsI,iBAAM,EAAA;AACLzF,YAAAA,IAAI,EAAC,IAAI;AACTJ,YAAAA,OAAO,EAAC,SAAS;YACjBzE,KAAK,EACH8B,iBAAiB,GACbpB,CAAC,CAAC,oCAAoC,CAAC,GACvCA,CAAC,CAAC,kCAAkC,CACzC;AACD4D,YAAAA,OAAO,EAAEwF;WACV;AAAC,SACC,CAAC,EACLN,UAAU,iBACTxH,cAAA,CAACH,MAAM,EAAA;AACCC,UAAAA,iBAAiB,EAAjBA,iBAAiB;UACvB7B,KAAK,EAAEwJ,SAAS,CAACxJ,KAAM;AACvB8B,UAAAA,QAAQ,EAAEiI;AAAa,SACxB,CACF;OACE,CAAC,gBAENhI,cAAA,CAAA,KAAA,EAAA;AAAKO,QAAAA,SAAS,EAAC,WAAW;QAAAH,QAAA,eACxBJ,cAAA,CAACuC,qBAAU,EAAA;AAACgG,UAAAA,KAAK,EAAC,OAAO;AAAC9F,UAAAA,OAAO,EAAC,OAAO;UAAArC,QAAA,EACtC1B,CAAC,CAAC,qDAAqD;SAC9C;OACT;KAEH;AAAC,GACJ,CAAC;AAEV,CAAC;;AC1GD,IAAM8J,YAAY,GAAG,SAAfA,YAAYA,GAAS;AACzB,EAAA,IAAA9B,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AACT,EAAA,IAAM+J,OAAO,GAAGC,WAAK,EAAE;AAEvB,EAAA,IAAA9B,iBAAA,GAAmBC,uBAAgB,EAAE;IAA7BC,MAAM,GAAAF,iBAAA,CAANE,MAAM;EACd,IAAMmB,KAAK,GAAGC,qBAAW,CAAC;AAAEpJ,IAAAA,GAAG,EAAE;AAAgB,GAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;AACtE;AACA,EAAA,IAAIsJ,KAAK,KAAK,EAAE,EAAE,OAAO,IAAI;AAE7B,EAAA,oBACE/F,eAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,eAAe;IAAAH,QAAA,EAAA,cAC5BJ,cAAA,CAACuC,qBAAU,EAAA;MAACC,OAAO,EAAA,IAAA;AAACjC,MAAAA,SAAS,EAAC,MAAM;AAACkC,MAAAA,OAAO,EAAC,OAAO;AAACkG,MAAAA,MAAM,EAAC,UAAU;AAAAvI,MAAAA,QAAA,eACpEJ,cAAA,CAAA,MAAA,EAAA;AAAMoC,QAAAA,EAAE,EAAEqG,OAAQ;QAAArI,QAAA,EACf1B,CAAC,CAAC,yDAAyD;OACxD;AAAC,KACG,CAAC,eACbwD,eAAA,CAAC0G,mBAAU,EAAA;AACT,MAAA,iBAAA,EAAiBH,OAAQ;AACzBlI,MAAAA,SAAS,EAAC,wDAAwD;AAClEhC,MAAAA,IAAI,EAAA,aAAA,CAAAxC,MAAA,CAAgBkM,KAAK,EAAA,SAAA,CAAU;AACnCY,MAAAA,WAAW,EAAC,UAAU;AAAAzI,MAAAA,QAAA,EAAA,cAEtBJ,cAAA,CAAC4I,mBAAU,CAACE,IAAI,EAAA;AACdvI,QAAAA,SAAS,EAAC,KAAK;AACftC,QAAAA,KAAK,EAAC,WAAW;QACjB8K,QAAQ,eACN/I,cAAA,CAACuC,qBAAU,EAAA;UAACC,OAAO,EAAA,IAAA;AAACC,UAAAA,OAAO,EAAC,OAAO;AAACkG,UAAAA,MAAM,EAAC,QAAQ;AAAAvI,UAAAA,QAAA,eACjDJ,cAAA,CAAA,MAAA,EAAA;YAAAI,QAAA,EACG1B,CAAC,CACA,uEACF;WACI;AAAC,SACG,CACb;QACDV,KAAK,eACHgC,cAAA,CAACuC,qBAAU,EAAA;UAACC,OAAO,EAAA,IAAA;AAACC,UAAAA,OAAO,EAAC,OAAO;AAACkG,UAAAA,MAAM,EAAC,UAAU;AAAAvI,UAAAA,QAAA,eACnDJ,cAAA,CAAA,MAAA,EAAA;YAAAI,QAAA,EACG1B,CAAC,CACA,4DACF;WACI;SACI;AACb,OACF,CAAC,eACFsB,cAAA,CAAC4I,mBAAU,CAACE,IAAI,EAAA;AACdvI,QAAAA,SAAS,EAAC,4BAA4B;AACtCtC,QAAAA,KAAK,EAAC,YAAY;QAClB8K,QAAQ,eACN/I,cAAA,CAACuC,qBAAU,EAAA;UAACC,OAAO,EAAA,IAAA;AAACC,UAAAA,OAAO,EAAC,OAAO;AAACkG,UAAAA,MAAM,EAAC,QAAQ;AAAAvI,UAAAA,QAAA,eACjDJ,cAAA,CAAA,MAAA,EAAA;YAAAI,QAAA,EACG1B,CAAC,CACA,wEACF;WACI;AAAC,SACG,CACb;QACDV,KAAK,eACHgC,cAAA,CAACuC,qBAAU,EAAA;UAACC,OAAO,EAAA,IAAA;AAACC,UAAAA,OAAO,EAAC,OAAO;AAACkG,UAAAA,MAAM,EAAC,UAAU;AAAAvI,UAAAA,QAAA,eACnDJ,cAAA,CAAA,MAAA,EAAA;YAAAI,QAAA,EACG1B,CAAC,CACA,6DACF;WACI;SACI;AACb,OACF,CAAC;AAAA,KACQ,CAAC;AAAA,GACV,CAAC;AAEV,CAAC;;;;;ACjED;AACA;AACA;AACO,IAAMsK,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAG/K,KAAK,EAAI;AAC1C,EAAA,IAAAgL,gBAAA,GAAsCC,yBAAe,CAACjL,KAAK,CAAC;IAApDD,KAAK,GAAAiL,gBAAA,CAALjL,KAAK;IAASmL,WAAW,GAAAF,gBAAA,CAAlBhL,KAAK;EAEpB,OAAO;IAAED,KAAK,EAAEA,KAAK,GAAGoL,oBAAU,CAACpL,KAAK,CAAC,GAAGA,KAAK;AAAEC,IAAAA,KAAK,EAAEkL;GAAa;AACzE,CAAC;AAYM,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI/I,KAAK,EAAE6G,qBAAqB,EAAK;AAClE,EAAA,IAAIzE,mBAAS,CAACpC,KAAK,CAAC,EAAE,OAAOA,KAAK;EAElC,OAAO;AACL/B,IAAAA,IAAI,EAAEG,MAAC,CAAC,+DAA+D,CAAC;AACxEC,IAAAA,UAAU,EAAEwI,qBAAqB,CAC9BtC,GAAG,CAAC,UAAAnK,IAAA,EAA0D;AAAA,MAAA,IAAvDoE,GAAG,GAAApE,IAAA,CAAHoE,GAAG;QAAE6I,IAAI,GAAAjN,IAAA,CAAJiN,IAAI;QAAE2B,YAAY,GAAA5O,IAAA,CAAZ4O,YAAY;QAAAC,UAAA,GAAA7O,IAAA,CAAE8O,KAAK;AAALA,QAAAA,KAAK,GAAAD,UAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,UAAA;QAAEE,SAAS,GAAA/O,IAAA,CAAT+O,SAAS;AACtD,MAAA,QAAQ9B,IAAI;AACV,QAAA,KAAK,YAAY;AACf,UAAA,OAAA/E,eAAA,CAAA;YACE3E,KAAK,EAAEqL,YAAY,IAAI,EAAE;AACzB3B,YAAAA,IAAI,EAAE,YAAY;AAClB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,OAAO;AACV,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEqL,YAAY;AACnB3B,YAAAA,IAAI,EAAE,OAAO;AACb7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,aAAa;AAChB,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EACH,+IAA+I;AACjJ0J,YAAAA,IAAI,EAAE,aAAa;AACnB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,iBAAiB;AACpB,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAE,CAAC;AACR0J,YAAAA,IAAI,EAAE,iBAAiB;AACvB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,QAAQ;AACX,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAE,CAAC;AACR0J,YAAAA,IAAI,EAAE,QAAQ;AACd7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,QAAQ;AACX,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEqL,YAAY;AACnB3B,YAAAA,IAAI,EAAE,QAAQ;AACd7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,SAAS;AACZ,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEyL,MAAM,CAACJ,YAAY,CAAC;AAC3B3B,YAAAA,IAAI,EAAE,SAAS;AACf7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,gBAAgB;AACnB,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEqL,YAAY;AACnB3B,YAAAA,IAAI,EAAE,gBAAgB;AACtB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,iBAAiB;AACpB,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEqL,YAAY;AACnB3B,YAAAA,IAAI,EAAE,iBAAiB;AACvB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,YAAY;AACf,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEqL,YAAY;AACnB3B,YAAAA,IAAI,EAAE,YAAY;AAClB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA,KAAK,eAAe;AAClB,UAAA,OAAA5G,eAAA,CAAA;AACE3E,YAAAA,KAAK,EAAEqL,YAAY;AACnB3B,YAAAA,IAAI,EAAE,eAAe;AACrB7I,YAAAA,GAAG,EAAHA,GAAG;AACH2K,YAAAA,SAAS,EAATA;WAAS,EACLD,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA;WAAO,CAAA;AAEnC,QAAA;AACE,UAAA,OAAO,IAAI;AACf;AACF,IAAA,CAAC,CAAC,CACD/D,MAAM,CAACkE,eAAK,CAAC,IAAI,CAAC;GACtB;AACH,CAAC;AAEM,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAI9C,MAAM,EAAEK,qBAAqB,EAAA;AAAA,EAAA,OAC1D0C,kBAAQ,CAAC;AAAElC,IAAAA,IAAI,EAAE;GAAS,EAAER,qBAAqB,CAAC,CAAC2C,MAAM,CAAC,UAACC,GAAG,EAAEC,IAAI,EAAK;AAAA,IAAA,IAAAC,qBAAA;AACvE,IAAA,IAAMC,QAAQ,GAAA,CAAAD,qBAAA,GAAGnD,MAAM,CAACqD,0BAAgB,CAACH,IAAI,CAAClL,GAAG,CAAC,CAAC,MAAA,IAAA,IAAAmL,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAlCA,qBAAA,CAAoCC,QAAQ;AAC7DH,IAAAA,GAAG,CAACC,IAAI,CAAClL,GAAG,CAAC,GAAGoL,QAAQ;AAExB,IAAA,OAAOH,GAAG;EACZ,CAAC,EAAE,EAAE,CAAC;AAAA,CAAA;AAED,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAItL,GAAG,EAAEuL,YAAY,EAAElD,qBAAqB,EAAK;EAC7E,IAAMmD,QAAQ,GAAG5C,gBAAM,CAAC;AAAE5I,IAAAA,GAAG,EAAHA;GAAK,EAAEqI,qBAAqB,CAAC;AAEvD,EAAA,IAAIoD,sBAAY,CAACD,QAAQ,CAAC,EAAE,OAAO,KAAK;EAExC,IAAIA,QAAQ,aAARA,QAAQ,KAAA,MAAA,IAARA,QAAQ,CAAEE,MAAM,EAAE,OAAO,KAAK;EAElC,IAAMC,cAAc,GAAGH,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,GAAA,MAAA,GAARA,QAAQ,CAAEb,SAAS;AAC1C,EAAA,IAAIc,sBAAY,CAACE,cAAc,CAAC,EAAE,OAAO,IAAI;EAE7C,IAAMC,uBAAuB,GAAGhD,gBAAM,CACpC;AAAE5I,IAAAA,GAAG,EAAE2L;GAAgB,EACvBtD,qBACF,CAAC;EAED,IAAMwD,iBAAiB,GAAGjD,gBAAM,CAC9B;AAAE5I,IAAAA,GAAG,EAAE2L;AAAe,GAAC,EACvBJ,YAAY,CAAC1L,UACf,CAAC;AAED,EAAA,IAAI+L,uBAAuB,CAAC/C,IAAI,KAAK,OAAO,EAAE;AAAA,IAAA,IAAAiD,qBAAA;AAC5C,IAAA,OAAOlI,mBAAS,CAAA,CAAAkI,qBAAA,GAACP,YAAY,CAACF,0BAAgB,CAACM,cAAc,CAAC,CAAC,MAAA,IAAA,IAAAG,qBAAA,uBAA9CA,qBAAA,CAAgDzL,GAAG,CAAC;AACvE,EAAA,CAAC,MAAM,IAAIuL,uBAAuB,CAAC/C,IAAI,KAAK,SAAS,EAAE;IACrD,OAAO,CAAAgD,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAE1M,KAAK,MAAK,OAAO;AAC7C,EAAA;EAEA,OAAOyE,mBAAS,CAACiI,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAA,MAAA,GAAA,MAAA,GAAjBA,iBAAiB,CAAE1M,KAAK,CAAC;AAC5C,CAAC;AAEM,IAAM4M,UAAU,GAAG,SAAbA,UAAUA,CAAI/L,GAAG,EAAE6I,IAAI,EAAA;AAAA,EAAA,OAClCjJ,MAAC,CAAA,yBAAA,CAAA3C,MAAA,CAC2BoO,0BAAgB,CAACxC,IAAI,CAAC,EAAA,GAAA,CAAA,CAAA5L,MAAA,CAAIoO,0BAAgB,CAACrL,GAAG,CAAC,CAC3E,CAAC;AAAA,CAAA;AAEI,IAAMgM,eAAe,GAAG,SAAlBA,eAAeA,CAAIhE,MAAM,EAAEiE,SAAS,EAAE5D,qBAAqB,EAAK;AAC3EL,EAAAA,MAAM,CAACnB,OAAO,CAAC,UAAA1H,KAAK,EAAI;AACtBkJ,IAAAA,qBAAqB,CAACxB,OAAO,CAAC,UAAArF,KAAK,EAAI;MACrC,IAAI,EAAErC,KAAK,CAACa,GAAG,KAAKwB,KAAK,CAACxB,GAAG,CAAC,EAAE;AAChCb,MAAAA,KAAK,CAACwL,SAAS,GAAGnJ,KAAK,CAACmJ,SAAS;AACnC,IAAA,CAAC,CAAC;AACJ,EAAA,CAAC,CAAC;AAEF,EAAA,IAAIsB,SAAS,EAAE;AACb,IAAA,OAAOlB,kBAAQ,CAAC;AAAEJ,MAAAA,SAAS,EAAEsB;KAAW,EAAEjE,MAAM,CAAC;AACnD,EAAA;AAEA,EAAA,IAAMkE,SAAS,GAAG,IAAIC,GAAG,EAAE;AAC3BpB,EAAAA,kBAAQ,CAAC;AAAElC,IAAAA,IAAI,EAAE;AAAQ,GAAC,EAAER,qBAAqB,CAAC,CAACxB,OAAO,CAAC,UAAAuF,GAAG,EAAA;AAAA,IAAA,OAC5DF,SAAS,CAAC9E,GAAG,CAACgF,GAAG,CAACpM,GAAG,CAAC;AAAA,EAAA,CACxB,CAAC;EAED,OAAOgI,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAErB,MAAM,CAAC,UAAAO,KAAA,EAAA;AAAA,IAAA,IAAGyD,SAAS,GAAAzD,KAAA,CAATyD,SAAS;AAAA,IAAA,OAAO,CAACuB,SAAS,CAACG,GAAG,CAAC1B,SAAS,CAAC;EAAA,CAAA,CAAC;AACrE,CAAC;;AC1LD,IAAM2B,cAAc,GAAGC,gBAAK,CAAC,UAAA3Q,IAAA,EAAA;AAAA,EAAA,IAAGgE,CAAC,GAAAhE,IAAA,CAADgE,CAAC;IAAEV,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAEO,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;AAAA,EAAA,oBAC5C2D,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,yCAAyC;IACnD,aAAA,EAAa+K,sBAAc,CAACtN,KAAK,CAAE;IAAAoC,QAAA,EAAA,cAEnCJ,cAAA,CAACuC,qBAAU,EAAA;AAAC,MAAA,aAAA,EAAY,qBAAqB;AAACE,MAAAA,OAAO,EAAC,OAAO;AAAArC,MAAAA,QAAA,EAC1DpC;AAAK,KACI,CAAC,eACbgC,cAAA,CAACuL,YAAK,EAAA;AAAOhN,MAAAA,IAAI,EAAJA,IAAI;MAAA6B,QAAA,EACd,SAAAA,QAAAA,CAAA4F,KAAA,EAAA;AAAA,QAAA,IAAY/H,KAAK,GAAA+H,KAAA,CAAdwF,KAAK,CAAIvN,KAAK;AAAY8I,UAAAA,aAAa,GAAAf,KAAA,CAArByF,IAAI,CAAI1E,aAAa;QAAA,oBACzC7E,eAAA,CAACwJ,sBAAW,EAAA;AACJzN,UAAAA,KAAK,EAALA,KAAK;AACXsC,UAAAA,SAAS,EAAC,sEAAsE;AAChFsC,UAAAA,IAAI,EAAC,IAAI;AACT8I,UAAAA,OAAO,EAAE,CAAE;AACXtJ,UAAAA,IAAI,EAAC,QAAQ;AACbI,UAAAA,OAAO,EAAC,SAAS;AACjBmJ,UAAAA,aAAa,EAAE,SAAfA,aAAaA,CAAEC,QAAQ,EAAA;AAAA,YAAA,OAAIA,QAAQ,IAAI9E,aAAa,CAACxI,IAAI,EAAEsN,QAAQ,CAAC;UAAA,CAAC;UAAAzL,QAAA,EAAA,cAErEJ,cAAA,CAAC8L,0BAAe,EAAA;YACd,YAAA,EAAYpN,CAAC,CAAC,8BAA8B,CAAE;AAC9C6B,YAAAA,SAAS,EAAC,gCAAgC;AAC1C,YAAA,aAAA,EAAY,gBAAgB;AAC5BS,YAAAA,KAAK,EAAEtC,CAAC,CAAC,8BAA8B,CAAE;AACzCT,YAAAA,KAAK,EAAC,MAAM;AAAAmC,YAAAA,QAAA,eAEZJ,cAAA,CAAC+L,qBAAS,EAAA,EAAE;AAAC,WACE,CAAC,eAClB/L,cAAA,CAAC8L,0BAAe,EAAA;YACd,YAAA,EAAYpN,CAAC,CAAC,gCAAgC,CAAE;AAChD6B,YAAAA,SAAS,EAAC,gCAAgC;AAC1C,YAAA,aAAA,EAAY,kBAAkB;AAC9BS,YAAAA,KAAK,EAAEtC,CAAC,CAAC,gCAAgC,CAAE;AAC3CT,YAAAA,KAAK,EAAC,QAAQ;AAAAmC,YAAAA,QAAA,eAEdJ,cAAA,CAACgM,uBAAW,EAAA,EAAE;AAAC,WACA,CAAC;AAAA,SACP,CAAC;AAAA,MAAA;AACf,KACI,CAAC;AAAA,GACL,CAAC;AAAA,CACP,CAAC;;AChDF,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAAvR,IAAA,EAAA;AAAA,EAAA,IACdsD,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAAkO,UAAA,GAAAxR,IAAA,CACL6N,KAAK;AAALA,IAAAA,KAAK,GAAA2D,UAAA,KAAA,MAAA,GAAG,SAAS,GAAAA,UAAA;IACjBnM,QAAQ,GAAArF,IAAA,CAARqF,QAAQ;IACRoM,uBAAuB,GAAAzR,IAAA,CAAvByR,uBAAuB;AAAA,EAAA,oBAEvBjK,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,2CAA2C;AACrD,IAAA,aAAA,EAAA,cAAA,CAAAxE,MAAA,CAA4BuP,sBAAc,CAACtN,KAAK,CAAC,CAAG;IAAAoC,QAAA,EAAA,cAEpDJ,cAAA,CAACoM,gBAAK,EAAA;AAAC,MAAA,aAAA,EAAY,qBAAqB;AAAAhM,MAAAA,QAAA,EAAEpC;AAAK,KAAQ,CAAC,eACxDgC,cAAA,CAACqM,sBAAW,EAAA;AACJ9D,MAAAA,KAAK,EAALA,KAAK;AAAExI,MAAAA,QAAQ,EAARA,QAAQ;AAAEoM,MAAAA,uBAAuB,EAAvBA,uBAAuB;MAC9CG,cAAc,EAAA,IAAA;AACdzJ,MAAAA,IAAI,EAAC;AAAQ,KACd,CAAC;AAAA,GACC,CAAC;AAAA,CACP;;ACjBD,IAAM0J,eAAe,GAAG,SAAlBA,eAAeA,CAAA7R,IAAA,EAAA;AAAA,EAAA,IACnBsD,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAAwO,gBAAA,GAAA9R,IAAA,CACL+R,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAChBvO,KAAK,GAAAvD,IAAA,CAALuD,KAAK;IACLyC,OAAO,GAAAhG,IAAA,CAAPgG,OAAO;IACPX,QAAQ,GAAArF,IAAA,CAARqF,QAAQ;AAAA,EAAA,oBAERmC,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,mCAAmC;AAC7C,IAAA,aAAA,EAAA,cAAA,CAAAxE,MAAA,CAA4BuP,sBAAc,CAACtN,KAAK,CAAC,CAAG;IAAAoC,QAAA,EAAA,cAEpDJ,cAAA,CAACoM,gBAAK,EAAA;AAAC,MAAA,aAAA,EAAY,qBAAqB;AAAAhM,MAAAA,QAAA,EAAEpC;KAAa,CAAC,eACxDgC,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,MAAM;MAAAH,QAAA,eACnBJ,cAAA,CAAC0M,iBAAM,EAAA;AACC3M,QAAAA,QAAQ,EAARA,QAAQ;AAAEW,QAAAA,OAAO,EAAPA,OAAO;AAAE+L,QAAAA,WAAW,EAAXA,WAAW;AAAExO,QAAAA,KAAK,EAALA,KAAK;AAC3C0O,QAAAA,YAAY,EAAE;AAAEpM,UAAAA,SAAS,EAAE;SAAc;AACzCqM,QAAAA,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAEC,MAAM,EAAA;AAAA,UAAA,oBACvB7M,cAAA,CAAA,MAAA,EAAA;AAAM4F,YAAAA,KAAK,EAAE;cAAEkH,UAAU,EAAED,MAAM,CAAC5O;aAAQ;YAAAmC,QAAA,EAAEyM,MAAM,CAAC7O;AAAK,WAAO,CAAC;AAAA,QAAA;OAEnE;AAAC,KACC,CAAC;AAAA,GACH,CAAC;AAAA,CACP;;ACtBD,IAAM+O,WAAW,GAAG,SAAdA,WAAWA,CAAArS,IAAA,EAAA;AAAA,EAAA,IAAMsD,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAAwO,gBAAA,GAAA9R,IAAA,CAAE+R,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAEvO,KAAK,GAAAvD,IAAA,CAALuD,KAAK;IAAEyC,OAAO,GAAAhG,IAAA,CAAPgG,OAAO;IAAEX,QAAQ,GAAArF,IAAA,CAARqF,QAAQ;AAAA,EAAA,oBACtEmC,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,iDAAiD;AAC3D,IAAA,aAAA,EAAA,cAAA,CAAAxE,MAAA,CAA4BuP,sBAAc,CAACtN,KAAK,CAAC,CAAG;IAAAoC,QAAA,EAAA,cAEpDJ,cAAA,CAACoM,gBAAK,EAAA;AAAC,MAAA,aAAA,EAAY,mBAAmB;AAAAhM,MAAAA,QAAA,EAAEpC;KAAa,CAAC,eACtDgC,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,MAAM;MAAAH,QAAA,eACnBJ,cAAA,CAAC0M,iBAAM,EAAA;AACC3M,QAAAA,QAAQ,EAARA,QAAQ;AAAEW,QAAAA,OAAO,EAAPA,OAAO;AAAE+L,QAAAA,WAAW,EAAXA,WAAW;AAAExO,QAAAA,KAAK,EAALA,KAAK;AAC3C0O,QAAAA,YAAY,EAAE;AAAEpM,UAAAA,SAAS,EAAE;AAAY;OACxC;AAAC,KACC,CAAC;AAAA,GACH,CAAC;AAAA,CACP;;ACbD,IAAMyM,WAAW,GAAG,SAAdA,WAAWA,CAAAtS,IAAA,EAAA;AAAA,EAAA,IAAMsD,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAE+B,QAAQ,GAAArF,IAAA,CAARqF,QAAQ;IAAE9B,KAAK,GAAAvD,IAAA,CAALuD,KAAK;IAAEgP,GAAG,GAAAvS,IAAA,CAAHuS,GAAG;IAAEC,GAAG,GAAAxS,IAAA,CAAHwS,GAAG;AAAA,EAAA,oBACrDhL,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,iDAAiD;AAC3D,IAAA,aAAA,EAAA,cAAA,CAAAxE,MAAA,CAA4BuP,sBAAc,CAACtN,KAAK,CAAC,CAAG;IAAAoC,QAAA,EAAA,cAEpDJ,cAAA,CAACoM,gBAAK,EAAA;AAAC,MAAA,aAAA,EAAY,qBAAqB;AAAAhM,MAAAA,QAAA,EAAEpC;AAAK,KAAQ,CAAC,eACxDgC,cAAA,CAACmN,iBAAM,EAAA;AACCD,MAAAA,GAAG,EAAHA,GAAG;AAAED,MAAAA,GAAG,EAAHA,GAAG;AAAEhP,MAAAA,KAAK,EAALA,KAAK;AACrBsC,MAAAA,SAAS,EAAC,WAAW;AACrBqL,MAAAA,aAAa,EAAE7L;AAAS,KACzB,CAAC;AAAA,GACC,CAAC;AAAA,CACP;;;;;ACVD,IAAMqN,WAAW,GAAG,SAAdA,WAAWA,CAAA1S,IAAA,EAA2D;AAAA,EAAA,IAArDsD,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAEO,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;IAAA8O,eAAA,GAAA3S,IAAA,CAAE4S,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,eAAA;AAAKE,IAAAA,UAAU,GAAAC,wBAAA,CAAA9S,IAAA,EAAA+S,SAAA,CAAA;AACnE,EAAA,IAAA/G,eAAA,GAAoBC,2BAAc,EAAE;IAA5BjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;IAAE8C,IAAI,GAAAkF,eAAA,CAAJlF,IAAI;AAEf,EAAA,IAAMkM,cAAc,GAAA,iCAAA,CAAA3R,MAAA,CAAqCwC,IAAI,EAAA,UAAA,CAAU;AACvE,EAAA,IAAMoP,iBAAiB,GAAGnM,IAAI,CAACoM,MAAM,CAACF,cAAc,CAAC;AAErD,EAAA,IAAIJ,UAAU,EAAE;AACd,IAAA,oBACEpL,eAAA,CAAA,KAAA,EAAA;AACE3B,MAAAA,SAAS,EAAC,iCAAiC;AAC3C,MAAA,aAAA,EAAY,gCAAgC;MAAAH,QAAA,EAAA,cAE5CJ,cAAA,CAAC6N,mBAAQ,EAAAjL,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAAA,eAAA,CAAA;AACD5E,QAAAA,KAAK,EAALA,KAAK;AAAEO,QAAAA,IAAI,EAAJA;AAAI,OAAA,EAAKgP,UAAU,CAAA,CAAA,EAAA,EAAA,EAAA;QAChC,aAAA,EAAY;AAAgC,OAAA,CAC7C,CAAC,EACDI,iBAAiB,iBAChB3N,cAAA,CAAC2C,WAAW,EAAA;AAACpC,QAAAA,SAAS,EAAC,UAAU;QAAC8H,WAAW,EAAE3J,CAAC,CAACgP,cAAc;AAAE,OAAE,CACpE;AAAA,KACE,CAAC;AAEV,EAAA;AAEA,EAAA,oBACExL,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,2CAA2C;AACrD,IAAA,aAAA,EAAY,gCAAgC;AAAAH,IAAAA,QAAA,gBAE5C8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,MAAAA,SAAS,EAAC,gCAAgC;MAAAH,QAAA,EAAA,cAC7CJ,cAAA,CAACoM,gBAAK,EAAA;AACJ,QAAA,aAAA,EAAY,qBAAqB;QACjC7L,SAAS,EAAE4B,UAAU,CAAC;AACpB,UAAA,MAAM,EAAEwL,iBAAiB;AACzB,UAAA,QAAQ,EAAE,CAACA;AACb,SAAC,CAAE;AAAAvN,QAAAA,QAAA,EAEFpC;AAAK,OACD,CAAC,EACP2P,iBAAiB,iBAChB3N,cAAA,CAAC2C,WAAW,EAAA;AAACpC,QAAAA,SAAS,EAAC,UAAU;QAAC8H,WAAW,EAAE3J,CAAC,CAACgP,cAAc;AAAE,OAAE,CACpE;KACE,CAAC,eACN1N,cAAA,CAAC8N,iBAAM,EAAAlL,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAAA,eAAA,CAAA;AACCrE,MAAAA,IAAI,EAAJA;AAAI,KAAA,EAAKgP,UAAU,CAAA,CAAA,EAAA,EAAA,EAAA;AACzB,MAAA,aAAA,EAAY,gCAAgC;AAC5C1K,MAAAA,IAAI,EAAC;AAAS,KAAA,CACf,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;ACnDD,IAAMkL,SAAS,GAAG,SAAZA,SAASA,CAAArT,IAAA,EAAA;AAAA,EAAA,IACbsD,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IACLO,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;IAAAyP,SAAA,GAAAtT,IAAA,CACJ2H,IAAI;AAAJA,IAAAA,IAAI,GAAA2L,SAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,SAAA;IACb/P,KAAK,GAAAvD,IAAA,CAALuD,KAAK;IACL8B,QAAQ,GAAArF,IAAA,CAARqF,QAAQ;IACR0M,WAAW,GAAA/R,IAAA,CAAX+R,WAAW;IACXrQ,KAAK,GAAA1B,IAAA,CAAL0B,KAAK;AAAA,EAAA,oBAEL8F,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,qBAAqB;AAC/B,IAAA,aAAA,EAAA,cAAA,CAAAxE,MAAA,CAA4BuP,sBAAc,CAACtN,KAAK,CAAC,CAAG;IAAAoC,QAAA,EAAA,cAEpDJ,cAAA,CAACoM,gBAAK,EAAA;AAAC,MAAA,aAAA,EAAY,qBAAqB;AAAAhM,MAAAA,QAAA,EAAEpC;AAAK,KAAQ,CAAC,eACxDgC,cAAA,CAACiO,gBAAK,EAAA;AAAO7R,MAAAA,KAAK,EAALA,KAAK;AAAEmC,MAAAA,IAAI,EAAJA,IAAI;AAAEwB,MAAAA,QAAQ,EAARA,QAAQ;AAAE0M,MAAAA,WAAW,EAAXA,WAAW;AAAEpK,MAAAA,IAAI,EAAJA,IAAI;AAAEpE,MAAAA,KAAK,EAALA;AAAK,KAAK,CAAC;AAAA,GAC/D,CAAC;AAAA,CACP;;ACYD,IAAMiQ,UAAU,GAAG,SAAbA,UAAUA,CAAAxT,IAAA,EAAmD;AAAA,EAAA,IAA7CyT,kBAAkB,GAAAzT,IAAA,CAAlByT,kBAAkB;IAAEpD,SAAS,GAAArQ,IAAA,CAATqQ,SAAS;IAAEqD,OAAO,GAAA1T,IAAA,CAAP0T,OAAO;AAC1D,EAAA,IAAApH,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,qBAAqB,EAAAD,KAAA,CAAA,uBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAArBD,qBAAqB,GAAAH,eAAA,CAArBG,qBAAqB;AAC7B,EAAA,IAAAkH,cAAA,GAAAC,gCAAA,CAAA,UAAApH,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQqH,QAAAA,aAAa,EAAArH,KAAA,CAAA,eAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAbmH,aAAa,GAAAF,cAAA,CAAbE,aAAa;AACrB,EAAA,IAAA3H,iBAAA,GAA0CC,uBAAgB,EAAE;IAApDE,aAAa,GAAAH,iBAAA,CAAbG,aAAa;IAAED,MAAM,GAAAF,iBAAA,CAANE,MAAM;IAAE0H,MAAM,GAAA5H,iBAAA,CAAN4H,MAAM;AACrC,EAAA,IAAAC,cAAA,GAAkCC,gCAAa,EAAE;IAAzCC,WAAW,GAAAF,cAAA,CAAXE,WAAW;IAAEC,QAAQ,GAAAH,cAAA,CAARG,QAAQ;AAE7B,EAAA,IAAMC,iBAAiB,GACrB,SADIA,iBAAiBA,CACrBtQ,IAAI,EAAA;IAAA,OACJ,UAAAyH,KAAA,EAAkB;AAAA,MAAA,IAAf8I,GAAG,GAAA9I,KAAA,CAAH8I,GAAG;QAAEC,GAAG,GAAA/I,KAAA,CAAH+I,GAAG;MACT,IAAIxQ,IAAI,KAAK,kBAAkB,EAAE;QAAA,IAAAyQ,OAAA,EAAAC,qBAAA;AAC/B,QAAA,IAAMC,gCAAgC,GACpC,CAAA,CAAAF,OAAA,GAAAtH,gBAAM,CACJ;AAAE5I,UAAAA,GAAG,EAAE;AAAuC,SAAC,EAC/CgI,MAAM,CAACnI,UACT,CAAC,MAAA,IAAA,IAAAqQ,OAAA,KAAA,MAAA,GAAA,MAAA,GAHDA,OAAA,CAGG/Q,KAAK,MAAK,MAAM;AAErB,QAAA,IAAMkR,yBAAyB,GAC7BrI,MAAM,KAAA,IAAA,IAANA,MAAM,gBAAAmI,qBAAA,GAANnI,MAAM,CAAEsI,eAAe,MAAA,IAAA,IAAAH,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAvBA,qBAAA,CAAyBI,aAAa;QAExC,IAAIH,gCAAgC,IAAIC,yBAAyB,EAAE;AACjE,UAAA;AACF,QAAA;AACF,MAAA;AAEAnH,MAAAA,YAAY,CAACzJ,IAAI,EAAEuQ,GAAG,EAAA,EAAA,CAAA/S,MAAA,CAAKgT,GAAG,CAACO,CAAC,EAAA,IAAA,CAAA,CAAAvT,MAAA,CAAKgT,GAAG,CAACQ,CAAC,EAAA,IAAA,CAAA,CAAAxT,MAAA,CAAKgT,GAAG,CAACS,CAAC,EAAA,IAAA,CAAA,CAAAzT,MAAA,CAAKgT,GAAG,CAACU,CAAC,CAAE,CAAC;IACnE,CAAC;AAAA,EAAA,CAAA;EAEH,IAAMzH,YAAY,GAAG,SAAfA,YAAYA,CAAIzJ,IAAI,EAAEN,KAAK,EAAEyR,aAAa,EAAK;IACnD,IAAMzH,KAAK,GAAGC,qBAAW,CAAC;AAAEpJ,MAAAA,GAAG,EAAEP;AAAK,KAAC,EAAEuI,MAAM,CAACnI,UAAU,CAAC;AAC3D,IAAA,IAAIsJ,KAAK,KAAK,EAAE,IAAInB,MAAM,CAACnI,UAAU,CAACsJ,KAAK,CAAC,CAAChK,KAAK,KAAKA,KAAK,EAAE;AAC5D8I,MAAAA,aAAa,eAAAhL,MAAA,CAAekM,KAAK,EAAA,SAAA,CAAA,EAAWhK,KAAK,CAAC;AACpD,IAAA;AACA0Q,IAAAA,WAAW,CAACxE,0BAAgB,CAAC5L,IAAI,CAAC,EAAEmR,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,MAAA,GAAbA,aAAa,GAAIzR,KAAK,CAAC;EAC7D,CAAC;EAED,IAAM0R,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAI7Q,GAAG,EAAEb,KAAK,EAAK;IAC1C,IAAMgK,KAAK,GAAGC,qBAAW,CAAC;AAAEpJ,MAAAA,GAAG,EAAHA;AAAI,KAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;AACrD,IAAA,IAAMiR,oBAAoB,GAAA,EAAA,CAAA7T,MAAA,CAAM+C,GAAG,EAAA,gBAAA,CAAgB;AAEnDiI,IAAAA,aAAa,eAAAhL,MAAA,CAAekM,KAAK,EAAA,SAAA,CAAA,EAAWhK,KAAK,CAAC;AAClD0Q,IAAAA,WAAW,CAAA,EAAA,CAAA5S,MAAA,CAAI+C,GAAG,EAAA,kBAAA,CAAA,EAAoB+Q,IAAI,CAACC,GAAG,CAAC7R,KAAK,GAAG,GAAG,CAAC,CAAC;IAC5D,IAAIA,KAAK,GAAG,CAAC,EAAE;AACb+J,MAAAA,YAAY,CAAC4H,oBAAoB,EAAE,SAAS,EAAE,SAAS,CAAC;AAC1D,IAAA,CAAC,MAAM;AACL5H,MAAAA,YAAY,CAAC4H,oBAAoB,EAAE,SAAS,EAAE,eAAe,CAAC;AAChE,IAAA;EACF,CAAC;AAEDG,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,EAAE,CAAAjJ,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAE1E,EAAE,MAAKgM,OAAO,CAAC,EAAE;IAE/BD,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,MAAA,IAAlBA,kBAAkB,CAAGrH,MAAM,EAAEkB,YAAY,EAAE6G,iBAAiB,CAAC;IAC7DD,QAAQ,CAAC9H,MAAM,CAAC;AAChByH,IAAAA,aAAa,CAAC;AAAEyB,MAAAA,eAAe,EAAElJ;AAAO,KAAC,CAAC;AAC5C,EAAA,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,oBACE9G,cAAA,CAAAiQ,mBAAA,EAAA;IAAA7P,QAAA,EACG0K,eAAe,CAAChE,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEnI,UAAU,EAAEoM,SAAS,EAAE5D,qBAAqB,CAAC,CACnE+I,IAAI,CAAC,UAACT,CAAC,EAAED,CAAC,EAAK;AACd,MAAA,IAAMhG,KAAK,GAAG,SAARA,KAAKA,CAAG1K,GAAG,EAAA;AAAA,QAAA,IAAAqR,QAAA;AAAA,QAAA,OACf,CAAA,CAAAA,QAAA,GAAAzI,gBAAM,CAAC;AAAE5I,UAAAA,GAAG,EAAHA;SAAK,EAAEqI,qBAAqB,CAAC,MAAA,IAAA,IAAAgJ,QAAA,uBAAtCA,QAAA,CAAwC3G,KAAK,KAAI4G,QAAQ;AAAA,MAAA,CAAA;AAE3D,MAAA,OAAO5G,KAAK,CAACiG,CAAC,CAAC3Q,GAAG,CAAC,GAAG0K,KAAK,CAACgG,CAAC,CAAC1Q,GAAG,CAAC;AACpC,IAAA,CAAC,CAAC,CACD+F,GAAG,CAAC,UAAAwL,KAAA,EAA0B;AAAA,MAAA,IAAAC,QAAA;AAAA,MAAA,IAAvBxR,GAAG,GAAAuR,KAAA,CAAHvR,GAAG;QAAEb,KAAK,GAAAoS,KAAA,CAALpS,KAAK;QAAE0J,IAAI,GAAA0I,KAAA,CAAJ1I,IAAI;MACtB,IAAM4I,wBAAwB,GAAGnG,iBAAiB,CAChDtL,GAAG,EACHgI,MAAM,EACNK,qBACF,CAAC;AAED,MAAA,IAAI,CAACoJ,wBAAwB,EAAE,OAAO,IAAI;AAE1C,MAAA,QAAQ5I,IAAI;AACV,QAAA,KAAK,YAAY;AAAE,UAAA;AAAA,YAAA,IAAA6I,kBAAA;YACjB,IAAMvI,KAAK,GAAGC,qBAAW,CAAC;AAAEpJ,cAAAA,GAAG,EAAHA;AAAI,aAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;YACrD,IAAMvC,KAAK,GAAGoS,MAAM,KAAA,IAAA,IAANA,MAAM,gBAAAgC,kBAAA,GAANhC,MAAM,CAAE7P,UAAU,MAAA,IAAA,IAAA6R,kBAAA,KAAA,MAAA,IAAA,CAAAA,kBAAA,GAAlBA,kBAAA,CAAqBvI,KAAK,CAAC,MAAA,IAAA,IAAAuI,kBAAA,KAAA,MAAA,GAAA,MAAA,GAA3BA,kBAAA,CAA6BvS,KAAK;YAEhD,oBACEwS,mBAAA,CAAC1C,SAAS,EAAA;AACF3R,cAAAA,KAAK,EAALA,KAAK;AACX0C,cAAAA,GAAG,EAAEA,GAAI;AACTd,cAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;AAC7BpJ,cAAAA,IAAI,EAAA,aAAA,CAAAxC,MAAA,CAAgBkM,KAAK,EAAA,SAAA,CAAU;cACnChK,KAAK,EAAEA,KAAK,IAAI,EAAG;AACnB8B,cAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE+D,CAAC,EAAA;gBAAA,OACTiD,aAAa,CAAA,aAAA,CAAAhL,MAAA,CAAekM,KAAK,EAAA,SAAA,CAAA,EAAWnE,CAAC,CAAC4M,MAAM,CAACzS,KAAK,CAAC;AAAA,cAAA;AAC5D,aACF,CAAC;AAEN,UAAA;AACA,QAAA,KAAK,aAAa;UAChB,oBACE+B,cAAA,CAACuM,eAAe,EAAA;AAEdvO,YAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;AAC7BjH,YAAAA,OAAO,EAAExC,YAAa;YACtBD,KAAK,EAAEA,KAAK,IAAI,EAAG;AACnB8B,YAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE8L,QAAQ,EAAA;AAAA,cAAA,OAAI7D,YAAY,CAAClJ,GAAG,EAAE+M,QAAQ,CAAC;AAAA,YAAA;AAAC,WAAA,EAJ7C/M,GAKN,CAAC;AAGN,QAAA,KAAK,OAAO;UACV,oBACEkB,cAAA,CAACiM,UAAU,EAAA;AACT1D,YAAAA,KAAK,EAAEtK,KAAM;AAEbD,YAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;AAC7BwE,YAAAA,uBAAuB,EACrB,CAAA,CAAAmE,QAAA,GAAA5I,gBAAM,CAAC;AAAE5I,cAAAA,GAAG,EAAHA;aAAK,EAAEqI,qBAAqB,CAAC,MAAA,IAAA,IAAAmJ,QAAA,uBAAtCA,QAAA,CACInE,uBAAuB,KAAI,KAChC;YACDpM,QAAQ,EAAE8O,iBAAiB,CAAC/P,GAAG;AAAE,WAAA,EAN5BA,GAON,CAAC;AAGN,QAAA,KAAK,QAAQ;UACX,oBACEkB,cAAA,CAACgN,WAAW,EAAA;AAEVhP,YAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;AAC7BuF,YAAAA,GAAG,EAAE,EAAG;AACRD,YAAAA,GAAG,EAAE,CAAE;AACPhP,YAAAA,KAAK,EAAE0S,MAAM,CAAC1S,KAAK,CAAC,IAAI,CAAE;AAC1B8B,YAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE6Q,MAAM,EAAA;cAAA,OAAI5I,YAAY,CAAClJ,GAAG,EAAE8R,MAAM,KAAA7U,MAAA,CAAK6U,MAAM,EAAA,IAAA,CAAI,CAAC;AAAA,YAAA;AAAC,WAAA,EALxD9R,GAMN,CAAC;AAGN,QAAA,KAAK,iBAAiB;UACpB,oBACEkB,cAAA,CAACgN,WAAW,EAAA;AAEVhP,YAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;AAC7BkJ,YAAAA,KAAK,EAAEzR,4BAA6B;AACpC8N,YAAAA,GAAG,EAAE7N,OAAQ;AACb4N,YAAAA,GAAG,EAAE6D,YAAM,CAACzR,OAAO,CAAE;AACrBpB,YAAAA,KAAK,EAAE0S,MAAM,CAAC1S,KAAK,CAAC,IAAI,CAAE;AAC1B8B,YAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEgR,OAAO,EAAA;AAAA,cAAA,OAAIpB,mBAAmB,CAAC7Q,GAAG,EAAEiS,OAAO,CAAC;AAAA,YAAA;AAAC,WAAA,EANlDjS,GAON,CAAC;AAGN,QAAA,KAAK,mBAAmB;AAAE,UAAA;AAAA,YAAA,IAAAkS,QAAA;YACxB,IAAM/I,MAAK,GAAGC,qBAAW,CAAC;AAAEpJ,cAAAA,GAAG,EAAHA;AAAI,aAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;AACrD,YAAA,IAAM+B,OAAO,GAAA,CAAAsQ,QAAA,GAAGtJ,gBAAM,CACpB;AAAE5I,cAAAA,GAAG,EAAHA;AAAI,aAAC,EACPqI,qBACF,CAAC,cAAA6J,QAAA,KAAA,MAAA,IAAA,CAAAA,QAAA,GAHeA,QAAA,CAGbtQ,OAAO,MAAA,IAAA,IAAAsQ,QAAA,KAAA,MAAA,GAAA,MAAA,GAHMA,QAAA,CAGJnM,GAAG,CAACmE,mBAAmB,CAAC;YAEpC,oBACEyH,mBAAA,CAAC1D,WAAW,EAAA;AACJ9O,cAAAA,KAAK,EAALA,KAAK;AACXa,cAAAA,GAAG,EAAEA,GAAI;AACTd,cAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;cAC7BjH,OAAO,EAAEA,OAAO,IAAI3C,gBAAiB;AACrC0O,cAAAA,WAAW,EAAC,MAAM;AAClB1M,cAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE8L,QAAQ,EAAA;AAAA,gBAAA,OAChB9E,aAAa,CAAA,aAAA,CAAAhL,MAAA,CAAekM,MAAK,EAAA,SAAA,CAAA,EAAW4D,QAAQ,CAAC;AAAA,cAAA;AACtD,aACF,CAAC;AAEN,UAAA;AAEA,QAAA,KAAK,SAAS;AAAE,UAAA;AAAA,YAAA,IAAAoF,QAAA;YACd,IAAMhJ,OAAK,GAAGC,qBAAW,CAAC;AAAEpJ,cAAAA,GAAG,EAAHA;AAAI,aAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;AACrD,YAAA,IAAMuS,gBAAgB,GACpB,CAAA,CAAAD,QAAA,GAAAvJ,gBAAM,CAAC;AAAE5I,cAAAA,GAAG,EAAHA;aAAK,EAAEqI,qBAAqB,CAAC,MAAA,IAAA,IAAA8J,QAAA,uBAAtCA,QAAA,CAAwCC,gBAAgB,KACxD,KAAK;YAEP,oBACElR,cAAA,CAACoN,WAAW,EAAA;AACVE,cAAAA,UAAU,EAAE4D,gBAAiB;cAC7BC,OAAO,EAAElT,KAAK,KAAK,OAAQ;AAE3BD,cAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;AAC7BpJ,cAAAA,IAAI,EAAE4L,0BAAgB,CAACrL,GAAG,CAAE;AAC5BsS,cAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAED,OAAO,EAAA;gBAAA,OACtBpK,aAAa,CAAA,aAAA,CAAAhL,MAAA,CAAekM,OAAK,cAAWyB,MAAM,CAACyH,OAAO,CAAC,CAAC;AAAA,cAAA;AAC7D,aAAA,EALIrS,GAMN,CAAC;AAEN,UAAA;AAEA,QAAA,KAAK,iBAAiB;AAAE,UAAA;YACtB,IAAMmJ,OAAK,GAAGC,qBAAW,CAAC;AAAEpJ,cAAAA,GAAG,EAAHA;AAAI,aAAC,EAAEgI,MAAM,CAACnI,UAAU,CAAC;YAErD,oBACEqB,cAAA,CAACoL,cAAc,EAAA;AAEbpN,cAAAA,KAAK,EAAE6M,UAAU,CAAC/L,GAAG,EAAE6I,IAAI,CAAE;cAC7BpJ,IAAI,EAAA,aAAA,CAAAxC,MAAA,CAAgBkM,OAAK,EAAA,SAAA;AAAU,aAAA,EAF9BnJ,GAGN,CAAC;AAEN,UAAA;AAEA,QAAA;AACE,UAAA,OAAO,IAAI;AACf;IACF,CAAC;AAAC,GACJ,CAAC;AAEP,CAAC;;ACvND,IAAMuS,UAAU,GAAG,SAAbA,UAAUA,CAAA3W,IAAA,EAQV;AAAA,EAAA,IAAAsU,OAAA;AAAA,EAAA,IAPJhR,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IACLO,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;IAAA+S,cAAA,GAAA5W,IAAA,CACJ6W,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,cAAA;IACdE,SAAS,GAAA9W,IAAA,CAAT8W,SAAS;IACTC,gBAAgB,GAAA/W,IAAA,CAAhB+W,gBAAgB;IAChBC,mBAAmB,GAAAhX,IAAA,CAAnBgX,mBAAmB;IACnBC,gBAAgB,GAAAjX,IAAA,CAAhBiX,gBAAgB;AAEhB,EAAA,IAAAjL,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AACT,EAAA,IAAAkI,iBAAA,GAAkCC,uBAAgB,EAAE;IAA5CE,aAAa,GAAAH,iBAAA,CAAbG,aAAa;IAAED,MAAM,GAAAF,iBAAA,CAANE,MAAM;AAC7B,EAAA,IAAAE,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,qBAAqB,EAAAD,KAAA,CAAA,uBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAArBD,qBAAqB,GAAAH,eAAA,CAArBG,qBAAqB;EAE7B,IAAMyK,cAAc,GAAGlK,gBAAM,CAAC;AAAE5I,IAAAA,GAAG,EAAE0S;GAAW,EAAErK,qBAAqB,CAAC;EAExE,IAAM0K,qBAAqB,GAAG,CAAAD,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,MAAA,GAAA,MAAA,GAAdA,cAAc,CAAEC,qBAAqB,KAAI,KAAK;EAC5E,IAAMnR,OAAO,GAAGkR,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,MAAA,GAAA,MAAA,GAAdA,cAAc,CAAElR,OAAO;AACvC,EAAA,IAAMoR,YAAY,GAAG;IACnBC,YAAY,EAAE,CAAAH,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,MAAA,GAAA,MAAA,GAAdA,cAAc,CAAEI,gBAAgB,KAAItS;GACnD;EAED,IAAMuS,mBAAmB,GAAGvK,gBAAM,CAChC;IAAE5I,GAAG,EAAA,EAAA,CAAA/C,MAAA,CAAKwC,IAAI,EAAA,WAAA;GAAa,EAC3B4I,qBACF,CAAC;AAED,EAAA,IAAM+K,wBAAwB,GAC5BL,qBAAqB,KAAIN,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAEpS,GAAG,CAAA,IAAIuD,mBAAS,CAACuP,mBAAmB,CAAC;EAE3E,IAAME,gBAAgB,GAAGjK,qBAAW,CAClC;IAAEpJ,GAAG,EAAA,EAAA,CAAA/C,MAAA,CAAKwC,IAAI,EAAA,WAAA;AAAY,GAAC,EAC3BuI,MAAM,CAACnI,UACT,CAAC;AAED,EAAA,IAAMyT,iBAAiB,gBAAA,YAAA;IAAA,IAAApM,KAAA,GAAArL,iBAAA,cAAAC,mBAAA,CAAAC,IAAA,CAAG,SAAAC,OAAAA,CAAMZ,KAAK,EAAA;AAAA,MAAA,IAAAmV,aAAA;AAAA,MAAA,OAAAzU,mBAAA,CAAAM,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,UAAA,KAAA,CAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA;AAAA,YAAA,IAAA,EAE7BuI,aAAO,CAAC1J,KAAK,CAACgQ,QAAQ,CAAC,IAAItG,aAAO,CAAC1J,KAAK,CAACiF,GAAG,CAAC,CAAA,EAAA;AAAA/D,cAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAC/CyL,aAAa,CAACxI,IAAI,EAAE;AAAE2L,cAAAA,QAAQ,EAAE,IAAI;cAAE/K,GAAG,EAAEjF,KAAK,CAACiF;AAAI,aAAC,CAAC;YAAC,OAAA/D,QAAA,CAAAU,MAAA,CAAA,QAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAAAV,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA;AAAA,YAAA,OAK9Bb,uBAAuB,CAACP,KAAK,CAACiF,GAAG,CAAC;AAAA,UAAA,KAAA,CAAA;YAAxDkQ,aAAa,GAAAjU,QAAA,CAAAG,IAAA;YAEnBwL,aAAa,CAACxI,IAAI,EAAE;cAClB2L,QAAQ,EAAEhQ,KAAK,CAACgQ,QAAQ;cACxB/K,GAAG,EAAEjF,KAAK,CAACiF,GAAG;AACdkQ,cAAAA,aAAa,EAAbA;AACF,aAAC,CAAC;AAACjU,YAAAA,QAAA,CAAAE,IAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,EAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,EAAA;YAAAD,QAAA,CAAAc,EAAA,GAAAd,QAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAEHe,YAAAA,iBAAM,CAACC,KAAK,CAAAhB,QAAA,CAAAc,EAAM,CAAC;AAAC,UAAA,KAAA,EAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAAd,QAAA,CAAAiB,IAAA,EAAA;AAAA;AAAA,MAAA,CAAA,EAAAvB,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAEvB,CAAA,CAAA;IAAA,OAAA,SAlBKsX,iBAAiBA,CAAA9V,EAAA,EAAA;AAAA,MAAA,OAAA0J,KAAA,CAAAzJ,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAkBtB;AAED,EAAA,oBACE0F,eAAA,CAAA,KAAA,EAAA;AACE3B,IAAAA,SAAS,EAAC,WAAW;IACrB,aAAA,EAAA,cAAA,CAAAxE,MAAA,CAA4BiC,KAAK,GAAGsN,sBAAc,CAACtN,KAAK,CAAC,GAAG,aAAa,CAAG;IAAAoC,QAAA,EAAA,CAE3EpC,KAAK,iBACJgC,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,mCAAmC;MAAAH,QAAA,eAChDJ,cAAA,CAACoM,gBAAK,EAAA;AAAC,QAAA,aAAA,EAAY,qBAAqB;AAAAhM,QAAAA,QAAA,EAAEpC;OAAa;KACpD,CACN,eACDkE,eAAA,CAAA,KAAA,EAAA;AAAK3B,MAAAA,SAAS,EAAC,WAAW;MAAAH,QAAA,EAAA,cACxBqQ,mBAAA,CAAC4B,aAAa,EAAA;AACNV,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAAEG,QAAAA,YAAY,EAAZA,YAAY;AACpCvR,QAAAA,SAAS,EAAC,aAAa;AACvBkR,QAAAA,gBAAgB,EAAEC,mBAAmB,GAAGD,gBAAgB,GAAG,EAAG;AAC9D3S,QAAAA,GAAG,EAAEyS,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAEpS,GAAI;AACpB9E,QAAAA,GAAG,EAAEkX,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAEpS,GAAI;AACpBmT,QAAAA,gBAAgB,EAAEF;AAAkB,OACrC,CAAC,EACDF,wBAAwB,iBACvBlS,cAAA,CAAC+M,WAAW,EAAA;QACV/O,KAAK,EAAE6M,UAAU,CAAA,EAAA,CAAA9O,MAAA,CAAIwC,IAAI,EAAA,UAAA,CAAA,EAAY,OAAO,CAAE;AAC9CmC,QAAAA,OAAO,EAAE,CAAAA,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,MAAA,GAAA,MAAA,GAAPA,OAAO,CAAEmE,GAAG,CAACmE,mBAAmB,CAAC,KAAIjL,gBAAiB;AAC/D0O,QAAAA,WAAW,EAAE/N,CAAC,CAAC,yBAAyB,CAAE;AAC1CT,QAAAA,KAAK,EACH,CAAA,CAAA+Q,OAAA,GAAAtH,gBAAM,CAAC;UAAE5I,GAAG,EAAA,EAAA,CAAA/C,MAAA,CAAKwC,IAAI,EAAA,WAAA;AAAY,SAAC,EAAEuI,MAAM,CAACnI,UAAU,CAAC,MAAA,IAAA,IAAAqQ,OAAA,KAAA,MAAA,GAAA,MAAA,GAAtDA,OAAA,CAAwD/Q,KAAK,MAC7DgU,mBAAmB,KAAA,IAAA,IAAnBA,mBAAmB,uBAAnBA,mBAAmB,CAAE3I,YAAY,CAClC;AACDvJ,QAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAE8L,QAAQ,EAAA;AAAA,UAAA,OAChB9E,aAAa,CAAA,aAAA,CAAAhL,MAAA,CAAeoW,gBAAgB,EAAA,SAAA,CAAA,EAAWtG,QAAQ,CAAC;AAAA,QAAA;AACjE,OACF,CACF;AAAA,KACE,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;AC/FD,IAAM0G,MAAM,GAAG,SAATA,MAAMA,CAAA7X,IAAA,EAON;AAAA,EAAA,IAAA8X,kBAAA;AAAA,EAAA,IANJhB,SAAS,GAAA9W,IAAA,CAAT8W,SAAS;IACTjR,SAAS,GAAA7F,IAAA,CAAT6F,SAAS;IACT4N,kBAAkB,GAAAzT,IAAA,CAAlByT,kBAAkB;IAClBsD,gBAAgB,GAAA/W,IAAA,CAAhB+W,gBAAgB;IAChBC,mBAAmB,GAAAhX,IAAA,CAAnBgX,mBAAmB;IACnBC,gBAAgB,GAAAjX,IAAA,CAAhBiX,gBAAgB;AAEhB,EAAA,IAAA/K,iBAAA,GAAmBC,uBAAgB,EAAE;IAA7BC,MAAM,GAAAF,iBAAA,CAANE,MAAM;AACd,EAAA,IAAAE,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQjG,QAAAA,gBAAgB,EAAAiG,KAAA,CAAA,kBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAhBnG,gBAAgB,GAAA+F,eAAA,CAAhB/F,gBAAgB;AAExB,EAAA,IAAMnC,GAAG,GAAGqL,0BAAgB,CAACqH,SAAS,CAAC;AACvC,EAAA,IAAMxQ,KAAK,GAAG6J,UAAU,CAAC/L,GAAG,EAAE,OAAO,CAAC;AACtC,EAAA,IAAMyS,SAAS,GAAGzK,MAAM,CAAChI,GAAG,CAAC;EAE7B,oBACEoD,eAAA,CAACpB,MAAI,EAAA;AACGP,IAAAA,SAAS,EAATA,SAAS;AAAES,IAAAA,KAAK,EAALA,KAAK;AACtBC,IAAAA,gBAAgB,EAAEA,gBAAgB,CAACnC,GAAG,CAAE;AACxCP,IAAAA,IAAI,EAAEO,GAAI;IAAAsB,QAAA,EAAA,cAEVJ,cAAA,CAACqR,UAAU,EAAA;AAEPG,MAAAA,SAAS,EAATA,SAAS;AACTC,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBJ,MAAAA,SAAS,EAATA,SAAS;AACTG,MAAAA,mBAAmB,EAAnBA,mBAAmB;AAErBnT,MAAAA,IAAI,EAAEO;AAAI,KACX,CAAC,eACFkB,cAAA,CAACkO,UAAU,EAAA;AAAOC,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAAIpD,MAAAA,SAAS,EAAEyG;KAAY,CAAC,EAC/D1S,GAAG,KAAK,MAAM,KAAA,CAAA0T,kBAAA,GAAI1L,MAAM,CAAC2L,UAAU,cAAAD,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAjBA,kBAAA,CAAmBrT,GAAG,kBAAIa,cAAA,CAACwI,YAAY,EAAA,EAAE,CAAC;AAAA,GACzD,CAAC;AAEX,CAAC;;ACxCD,IAAMkK,SAAS,GAAG,SAAZA,SAASA,CAAAhY,IAAA,EAAsB;AAAA,EAAA,IAAhB6F,SAAS,GAAA7F,IAAA,CAAT6F,SAAS;AAC5B,EAAA,IAAAmG,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AACT,EAAA,IAAAsI,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQjG,QAAAA,gBAAgB,EAAAiG,KAAA,CAAA,kBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAhBnG,gBAAgB,GAAA+F,eAAA,CAAhB/F,gBAAgB;AAExB,EAAA,IAAA0R,qBAAA,GAA4C1R,gBAAgB,CAApD1C,IAAI;AAAEqU,IAAAA,oBAAoB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;EAEvC,oBACE3S,cAAA,CAACc,MAAI,EAAA;AACGP,IAAAA,SAAS,EAATA,SAAS;IACf9B,QAAQ,EAAA,IAAA;AACRwC,IAAAA,gBAAgB,EAAE2R,oBAAqB;AACvCrU,IAAAA,IAAI,EAAC,MAAM;AACXyC,IAAAA,KAAK,EAAEtC,CAAC,CAAC,yBAAyB,CAAE;IAAA0B,QAAA,eAEpCJ,cAAA,CAACiO,cAAK,EAAA;MAAC4E,SAAS,EAAA,IAAA;AAAC,MAAA,aAAA,EAAY,qBAAqB;AAACtU,MAAAA,IAAI,EAAC;KAAQ;AAAC,GAC7D,CAAC;AAEX,CAAC;;;;ACiBD,IAAMiB,SAAS,GAAG,SAAZA,SAASA,CAAA9E,IAAA,EAWT;AAAA,EAAA,IAVJ4F,KAAK,GAAA5F,IAAA,CAAL4F,KAAK;IACLwS,aAAa,GAAApY,IAAA,CAAboY,aAAa;IACbC,YAAY,GAAArY,IAAA,CAAZqY,YAAY;IACZC,aAAa,GAAAtY,IAAA,CAAbsY,aAAa;IACbC,eAAe,GAAAvY,IAAA,CAAfuY,eAAe;IACf9E,kBAAkB,GAAAzT,IAAA,CAAlByT,kBAAkB;IAClBsD,gBAAgB,GAAA/W,IAAA,CAAhB+W,gBAAgB;IAChBE,gBAAgB,GAAAjX,IAAA,CAAhBiX,gBAAgB;IAChBrL,cAAc,GAAA5L,IAAA,CAAd4L,cAAc;IACdC,aAAa,GAAA7L,IAAA,CAAb6L,aAAa;AAEb,EAAA,IAAAG,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AAETwU,EAAAA,gDAA6B,EAAE;AAE/B,EAAA,IAAMC,OAAO,GAAGC,yBAAU,EAAE;AAE5B,EAAA,IAAAC,SAAA,GAA8DC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtEI,IAAAA,uBAAuB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,0BAA0B,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC1D,EAAA,IAAAvM,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AACEC,QAAAA,qBAAqB,EAAAD,KAAA,CAAA,uBAAA,CAAA;AACrByM,QAAAA,UAAU,EAAAzM,KAAA,CAAA,YAAA,CAAA;AACV0M,QAAAA,gBAAgB,EAAA1M,KAAA,CAAA,kBAAA,CAAA;AAChBjG,QAAAA,gBAAgB,EAAAiG,KAAA,CAAA,kBAAA,CAAA;AAChB2M,QAAAA,eAAe,EAAA3M,KAAA,CAAA,iBAAA,CAAA;AACf4M,QAAAA,WAAW,EAAA5M,KAAA,CAAA,aAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IALXD,qBAAqB,GAAAH,eAAA,CAArBG,qBAAqB;IACrBwM,UAAU,GAAA3M,eAAA,CAAV2M,UAAU;IACVC,gBAAgB,GAAA5M,eAAA,CAAhB4M,gBAAgB;IAChB3S,gBAAgB,GAAA+F,eAAA,CAAhB/F,gBAAgB;IAChB4S,eAAe,GAAA7M,eAAA,CAAf6M,eAAe;IACfC,WAAW,GAAA9M,eAAA,CAAX8M,WAAW;AAGb,EAAA,IAAAC,UAAA,GAAoBC,wBAAS,EAAE;IAAvB5F,OAAO,GAAA2F,UAAA,CAAP3F,OAAO;AAEf,EAAA,IAAAC,cAAA,GAAAC,gCAAA,CAAA,UAAApH,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQ+M,QAAAA,YAAY,EAAA/M,KAAA,CAAA,cAAA,CAAA;AAAEqH,QAAAA,aAAa,EAAArH,KAAA,CAAA,eAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAA3B6M,YAAY,GAAA5F,cAAA,CAAZ4F,YAAY;IAAE1F,aAAa,GAAAF,cAAA,CAAbE,aAAa;AAEnC,EAAA,IAAA2F,mBAAA,GAA4CC,qCAAkB,CAACR,UAAU,CAAC;IAAAS,qBAAA,GAAAF,mBAAA,CAAlErY,IAAI;AAAAwY,IAAAA,sBAAA,GAAAD,qBAAA,KAAA,MAAA,GAAyB,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAAvBE,WAAW;AAAXA,IAAAA,WAAW,GAAAD,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;AAEhC,EAAA,IAAAE,cAAA,GAAiDC,gCAAa,CAACrG,OAAO,EAAE;MACtEvN,OAAO,EAAEhD,gBAAgB,EAAE,IAAI6W,cAAQ,CAACtG,OAAO,CAAC;AAChDuG,MAAAA,WAAW,EAAErU,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAALA,KAAK,GAAIwC;AACxB,KAAC,CAAC;IAAA8R,mBAAA,GAAAJ,cAAA,CAHM3Y,IAAI;AAAEgZ,IAAAA,SAAS,GAAAD,mBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,mBAAA;IAAEE,cAAc,GAAAN,cAAA,CAAdM,cAAc;AAK5C,EAAA,IAAMC,SAAS,GAAGnB,gBAAgB,IAAIkB,cAAc;AACpD,EAAA,IAAME,kBAAkB,GAAG5G,OAAO,IAAI,CAAAmG,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnS,EAAE,MAAKgM,OAAO;AACjE,EAAA,IAAM6G,gCAAgC,GAAG,CAAAhB,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE,OAAKmS,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnS,EAAE,CAAA;AAC7E,EAAA,IAAA8S,qBAAA,GAA8CjU,gBAAgB,CAAtD2E,KAAK;AAAEuP,IAAAA,qBAAqB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;EAEzC,IAAME,8BAA8B,GAAGhH,OAAO,MAAK6F,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE,CAAA;AAEnE,EAAA,IAAAiT,eAAA,GAA4DC,iCAAc,EAAE;IAAvDC,WAAW,GAAAF,eAAA,CAAxBG,WAAW;IAA0BC,UAAU,GAAAJ,eAAA,CAArBK,SAAS;AAC3C,EAAA,IAAAC,eAAA,GACEC,iCAAc,CAACxH,OAAO,CAAC;IADJyH,WAAW,GAAAF,eAAA,CAAxBH,WAAW;IAA0BM,UAAU,GAAAH,eAAA,CAArBD,SAAS;AAG3C,EAAA,IAAMK,YAAY,GAAGN,UAAU,IAAIK,UAAU;AAE7C,EAAA,IAAMhW,iBAAiB,GAAGkD,iBAAiB,CAACuD,aAAa,CAAC;EAE1D,IAAMyP,QAAQ,GAAG,SAAXA,QAAQA,CAAIlP,MAAM,EAAAd,KAAA,EAAoB;AAAA,IAAA,IAAhBiQ,SAAS,GAAAjQ,KAAA,CAATiQ,SAAS;AACnC,IAAA,IAAM1E,SAAS,GAAG3H,cAAc,CAAC9C,MAAM,EAAEK,qBAAqB,CAAC;IAC/D,IAAM+O,WAAW,GAAAtT,aAAA,CAAA;MACfuT,oBAAoB,EAAErP,MAAM,CAACnI,UAAU;MACvCJ,IAAI,EAAEuI,MAAM,CAACvI,IAAI;MACjB6X,sBAAsB,EAAEtP,MAAM,CAACsP,sBAAsB;MACrDzC,UAAU,EAAE7M,MAAM,CAAC6M;AAAU,KAAA,EAC1BpC,SAAS,CACb;IAED,IAAI,CAACnD,OAAO,EAAE;MACZ,OAAOmH,WAAW,CAACW,WAAW,EAAE;AAC9BG,QAAAA,SAAS,EAAE,SAAXA,SAASA,CAAAhG,KAAA,EAAiB;AAAA,UAAA,IAAZ/P,KAAK,GAAA+P,KAAA,CAAL/P,KAAK;AACjB2V,UAAAA,SAAS,CAAC;AAAEnP,YAAAA,MAAM,EAAExG;AAAM,WAAC,CAAC;UAC5BwS,aAAa,CAACxS,KAAK,CAAC;AACpB6S,UAAAA,OAAO,CAACmD,OAAO,CACbC,gBAAQ,CAACrT,aAAa,CAACsT,yBAAM,CAACC,MAAM,CAACC,IAAI,CAAC,EAAE;YAAEtI,OAAO,EAAE9N,KAAK,CAAC8B;AAAG,WAAC,CACnE,CAAC;AACH,QAAA;AACF,OAAC,CAAC;AACJ,IAAA;IAEA,OAAOyT,WAAW,CAACK,WAAW,EAAE;AAC9BG,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAAM,KAAA,EAAiB;AAAA,QAAA,IAAZrW,KAAK,GAAAqW,KAAA,CAALrW,KAAK;QACjB0S,aAAa,CAAC1S,KAAK,CAAC;AACpB2V,QAAAA,SAAS,CAAC;AAAEnP,UAAAA,MAAM,EAAExG;AAAM,SAAC,CAAC;AAC9B,MAAA;AACF,KAAC,CAAC;EACJ,CAAC;AAEDyP,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI2E,cAAQ,CAACtG,OAAO,CAAC,IAAI,CAAC0G,cAAc,EAAE;AACxCvG,MAAAA,aAAa,CAAC;AAAEyB,QAAAA,eAAe,EAAE6E;AAAU,OAAC,CAAC;AAC/C,IAAA;AACF,EAAA,CAAC,EAAE,CAACC,cAAc,CAAC,CAAC;AAEpB,EAAA,IAAIC,SAAS,EAAE;AACb,IAAA,oBACE/U,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,gDAAgD;AAAAH,MAAAA,QAAA,eAC7DJ,cAAA,CAACG,kBAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;EAEA,oBACEH,cAAA,CAAC4W,aAAI,EAAA;AACHC,IAAAA,WAAW,EAAE;MACXC,aAAa,EAAAlU,aAAA,CAAAA,aAAA,CAAA,EAAA,EACRyG,kBAAkB,CAACwL,SAAS,EAAE1N,qBAAqB,CAAC,CAAA,EAAA,EAAA,EAAA;AACvDiP,QAAAA,sBAAsB,EAAEpB,kBAAkB;AAC1CrB,QAAAA,UAAU,EAAVA;OAAU,CACX;AACDoD,MAAAA,gBAAgB,EAAE5Y,uBAAuB;AACzC6Y,MAAAA,kBAAkB,EAAE,IAAI;AACxBhB,MAAAA,QAAQ,EAARA;KACA;AAAA5V,IAAAA,QAAA,EAED,SAAAA,QAAAA,CAAA6W,KAAA,EAA+C;AAAA,MAAA,IAA5CC,KAAK,GAAAD,KAAA,CAALC,KAAK;QAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;QAAErQ,MAAM,GAAAmQ,KAAA,CAANnQ,MAAM;QAAEC,aAAa,GAAAkQ,KAAA,CAAblQ,aAAa;MACvC,IAAMqQ,qBAAqB,GACzB,CAAChC,8BAA8B,IAC/B,EAAEH,gCAAgC,IAAInO,MAAM,CAACsP,sBAAsB,CAAC;AAEtE,MAAA,oBACElU,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,8BAA8B;AAAAH,QAAAA,QAAA,gBAC3C8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,UAAAA,SAAS,EAAC,2EAA2E;AAAAH,UAAAA,QAAA,EAAA,CACvF,CAAC2V,YAAY,iBAAI/V,cAAA,CAACqX,wBAAe,EAAA,EAAE,CAAC,eACrCrX,cAAA,CAAC0S,SAAS,EAAA;YACRnS,SAAS,EAAEC,UAAU,CAAC;AAAEgK,cAAAA,MAAM,EAAE1K;aAAmB;AAAE,WACtD,CAAC,eACFE,cAAA,CAACc,MAAI,EAAA;YACHP,SAAS,EAAEC,UAAU,CAAC;AAAEgK,cAAAA,MAAM,EAAE1K;AAAkB,aAAC,CAAE;AACrDmB,YAAAA,gBAAgB,EAAEkU,qBAAsB;AACxC5W,YAAAA,IAAI,EAAC,OAAO;AACZyC,YAAAA,KAAK,EAAEtC,CAAC,CAAC,0BAA0B,CAAE;YAAA0B,QAAA,eAErCJ,cAAA,CAACkO,UAAU,EAAA;AAAOC,cAAAA,kBAAkB,EAAlBA,kBAAkB;AAAEC,cAAAA,OAAO,EAAPA;aAAY;WAC9C,CAAC,EACNvE,kBAAQ,CAAC;AAAElC,YAAAA,IAAI,EAAE;AAAQ,WAAC,EAAER,qBAAqB,CAAC,CAACtC,GAAG,CACrD,UAAAyS,KAAA,EAAA;AAAA,YAAA,IACExY,GAAG,GAAAwY,KAAA,CAAHxY,GAAG;cACH4S,mBAAmB,GAAA4F,KAAA,CAAnB5F,mBAAmB;cACD6F,mBAAmB,GAAAD,KAAA,CAArC7F,gBAAgB;cACE+F,wBAAwB,GAAAF,KAAA,CAA1C3F,gBAAgB;AAAA,YAAA,oBAEhBlB,mBAAA,CAAC8B,MAAM,EAAAkF,eAAA,CAAA;AAEH9F,cAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBxD,cAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBuD,cAAAA,mBAAmB,EAAnBA,mBAAmB;AAErBF,cAAAA,SAAS,EAAE1S,GAAI;cACfyB,SAAS,EAAEC,UAAU,CAAC;AAAEgK,gBAAAA,MAAM,EAAE1K;AAAkB,eAAC,CAAE;cACrD2R,gBAAgB,EAAE8F,mBAAmB,IAAI9F,gBAAiB;AAC1D3S,cAAAA,GAAG,EAAEA;AAAI,aAAA,EAAA,kBAAA,EAEP0Y,wBAAwB,IAAI7F,gBAAgB,CAE/C,CAAC;AAAA,UAAA,CAEN,CAAC,eACD3R,cAAA,CAACP,SAAS,EAAA;AACF8G,YAAAA,aAAa,EAAbA,aAAa;AAAED,YAAAA,cAAc,EAAdA,cAAc;YACnCE,SAAS,EAAEqN,eAAe,CAACpM,SAAU;YACrChB,YAAY,EAAEqN,WAAW,CAACrM;WAC3B,CAAC,eACFvF,eAAA,CAAA,KAAA,EAAA;AAAK3B,YAAAA,SAAS,EAAC,oGAAoG;YAAAH,QAAA,EAAA,cACjHJ,cAAA,CAAC0X,kBAAO,EAAA;cACNC,QAAQ,EAAE,CAAC3C,kBAAmB;AAC9B4C,cAAAA,OAAO,EAAElZ,CAAC,CACR,mFACF,CAAE;cAAA0B,QAAA,eAEFJ,cAAA,CAAC8N,iBAAM,EAAA;gBACLqD,OAAO,EAAErK,MAAM,CAACsP,sBAAuB;AACvCuB,gBAAAA,QAAQ,EAAE3C,kBAAmB;AAC7BzW,gBAAAA,IAAI,EAAC,wBAAwB;AAC7BsE,gBAAAA,IAAI,EAAC,IAAI;AACT7E,gBAAAA,KAAK,EAAEU,CAAC,CACN,0EACF,CAAE;AACF0S,gBAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAED,OAAO,EAAA;AAAA,kBAAA,OACtBpK,aAAa,CAAC,wBAAwB,EAAEoK,OAAO,CAAC;AAAA,gBAAA;eAEnD;AAAC,aACK,CAAC,eACVnR,cAAA,CAACuC,qBAAU,EAAA;AAAChC,cAAAA,SAAS,EAAC,SAAS;AAACgI,cAAAA,KAAK,EAAC,OAAO;AAAC9F,cAAAA,OAAO,EAAC,OAAO;AAAArC,cAAAA,QAAA,EAC1D1B,CAAC,CACA,6EAA6E,EAC7E;gBACEiV,UAAU,EAAEjV,CAAC,CAAA,yBAAA,CAAA3C,MAAA,CACe4X,UAAU,CAACkE,WAAW,EAAE,CAAA,EAClD;AAAEC,kBAAAA,KAAK,EAAE;iBACX;eAEJ;AAAC,aACS,CAAC;AAAA,WACV,CAAC;SACH,CAAC,eACN5V,eAAA,CAAA,KAAA,EAAA;AAAK3B,UAAAA,SAAS,EAAC,uHAAuH;UAAAH,QAAA,EAAA,cACpIJ,cAAA,CAACsI,iBAAM,EAAA;AACL,YAAA,aAAA,EAAY,cAAc;AAC1BqP,YAAAA,QAAQ,EAAE,CAACT,KAAK,IAAInB,YAAa;AACjC/X,YAAAA,KAAK,EAAEU,CAAC,CAAC,2BAA2B,CAAE;AACtC2D,YAAAA,IAAI,EAAC,OAAO;AACZI,YAAAA,OAAO,EAAC;AAAO,WAChB,CAAC,eACFzC,cAAA,CAAC+X,kBAAO,EAAA;YACNJ,QAAQ,EAAE,CAACP,qBAAsB;AACjCY,YAAAA,IAAI,EAAEvE,uBAAwB;AAC9BwE,YAAAA,QAAQ,EAAC,KAAK;YACdC,OAAO,eACLlY,cAAA,CAACsI,iBAAM,EAAA;AACL,cAAA,aAAA,EAAY,qBAAqB;AACjCtK,cAAAA,KAAK,EAAEU,CAAC,CAAC,0BAA0B,CAAE;AACrCyZ,cAAAA,OAAO,EAAEpC,YAAa;AACtB1T,cAAAA,IAAI,EAAC,QAAQ;AACbsV,cAAAA,QAAQ,EACL,CAACT,KAAK,KAAIrC,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAEzS,EAAE,CAAA,IAAK2T,YAAY,IAAI,CAACoB,OAC/C;AACD7U,cAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;AACb,gBAAA,IAAI8U,qBAAqB,EAAE;kBACzB1D,0BAA0B,CAAC,IAAI,CAAC;AAClC,gBAAA;AACF,cAAA;AAAE,aACH,CACF;AACD0E,YAAAA,YAAY,EAAE1E,0BAA2B;AAAAtT,YAAAA,QAAA,eAEzC8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,cAAAA,SAAS,EAAC,iCAAiC;cAAAH,QAAA,EAAA,cAC9CJ,cAAA,CAACsI,iBAAM,EAAA;AACL/H,gBAAAA,SAAS,EAAC,0BAA0B;AACpC8X,gBAAAA,IAAI,EAAEC,aAAE;AACRzV,gBAAAA,IAAI,EAAC,IAAI;AACTJ,gBAAAA,OAAO,EAAC,OAAO;gBACfH,OAAO,EAAE,SAATA,OAAOA,GAAA;kBAAA,OAAQoR,0BAA0B,CAAC,KAAK,CAAC;AAAA,gBAAA;AAAC,eAClD,CAAC,eACF1T,cAAA,CAACuC,qBAAU,EAAA;AACThC,gBAAAA,SAAS,EAAC,WAAW;AACrBkC,gBAAAA,OAAO,EAAC,OAAO;AACfkG,gBAAAA,MAAM,EAAC,QAAQ;gBAAAvI,QAAA,eAEfJ,cAAA,CAACuY,kBAAK,EAAA;AACJC,kBAAAA,UAAU,EAAE;oBAAEC,IAAI,eAAEzY,cAAA,CAAA,QAAA,EAAA,EAAS;mBAAI;AACjC0Y,kBAAAA,OAAO,EAAC,oDAAoD;AAC5D5R,kBAAAA,MAAM,EAAE;oBACN6M,UAAU,EAAEjV,CAAC,CAAA,yBAAA,CAAA3C,MAAA,CACe4X,UAAU,CAACkE,WAAW,EAAE,CACpD;AACF;iBACD;AAAC,eACQ,CAAC,eACb7X,cAAA,CAACsI,iBAAM,EAAA;AACLqP,gBAAAA,QAAQ,EAAE1E,eAAgB;AAC1BjV,gBAAAA,KAAK,EAAEU,CAAC,CAAC,oCAAoC,CAAE;AAC/CyZ,gBAAAA,OAAO,EAAElF,eAAgB;gBACzB3Q,OAAO,EAAE,SAATA,OAAOA,GAAA;kBAAA,OAAQyQ,YAAY,CAAC8B,SAAS,CAAC;AAAA,gBAAA;AAAC,eACxC,CAAC;aACC;AAAC,WACC,CAAC;AAAA,SACP,CAAC;AAAA,OACH,CAAC;AAEV,IAAA;AAAC,GACG,CAAC;AAEX,CAAC;;AC1SD,IAAM8D,cAAc,GAAG,SAAjBA,cAAcA,CAAAje,IAAA,EAAA;AAAA,EAAA,IAAYke,IAAI,GAAAle,IAAA,CAAV2d,IAAI;IAAQra,KAAK,GAAAtD,IAAA,CAALsD,KAAK;IAAEsE,OAAO,GAAA5H,IAAA,CAAP4H,OAAO;IAAEuW,MAAM,GAAAne,IAAA,CAANme,MAAM;AAAA,EAAA,oBAC1D3W,eAAA,CAAA,QAAA,EAAA;AACQI,IAAAA,OAAO,EAAPA,OAAO;AACb/B,IAAAA,SAAS,EAAC,8HAA8H;AACxI,IAAA,aAAA,EAAasY,MAAO;AACpBxW,IAAAA,IAAI,EAAC,QAAQ;IAAAjC,QAAA,EAAA,cAEbJ,cAAA,CAAC4Y,IAAI,EAAA;AAACrY,MAAAA,SAAS,EAAC,uBAAuB;AAACsC,MAAAA,IAAI,EAAE;AAAG,KAAE,CAAC,eACpD7C,cAAA,CAACuC,qBAAU,EAAA;AAAChC,MAAAA,SAAS,EAAC,SAAS;AAACkC,MAAAA,OAAO,EAAC,OAAO;AAAArC,MAAAA,QAAA,EAC5CpC;AAAK,KACI,CAAC;AAAA,GACP,CAAC;AAAA,CACV;;ACRD,IAAM8a,SAAS,GAAG,SAAZA,SAASA,CAAApe,IAAA,EAA4D;AAAA,EAAA,IAAAqe,qBAAA,EAAA/J,OAAA,EAAAmB,QAAA;AAAA,EAAA,IAAtD6I,MAAM,GAAAte,IAAA,CAANse,MAAM;IAAEC,YAAY,GAAAve,IAAA,CAAZue,YAAY;IAAEC,kBAAkB,GAAAxe,IAAA,CAAlBwe,kBAAkB;IAAE5Y,KAAK,GAAA5F,IAAA,CAAL4F,KAAK;AAClE,EAAA,IAAA0G,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,qBAAqB,EAAAD,KAAA,CAAA,uBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAA+R,qBAAA,GAAAnS,eAAA,CAArBG,qBAAqB;AAArBA,IAAAA,qBAAqB,GAAAgS,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAElC,EAAA,IAAAC,qBAAA,GAAA5F,cAAA,CAAqCrM,qBAAqB,EAAA,CAAA,CAAA;AAAnDkS,IAAAA,YAAY,GAAAD,qBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,YAAY,GAAAF,qBAAA,CAAA,CAAA,CAAA;EAEjC,IAAMG,YAAY,GAAGC,kBAAQ,CAACH,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAEva,GAAG,CAAC;EAChD,IAAM2a,cAAc,GAAGD,kBAAQ,CAACF,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAExa,GAAG,CAAC;EAElD,IAAM4a,YAAY,GAAGhS,gBAAM,CACzB;IAAE5I,GAAG,EAAEua,YAAY,CAACva;AAAI,GAAC,EACzBwB,KAAK,CAAC3B,UACR,CAAC,CAACV,KAAK;EAEP,IAAM0b,cAAc,GAAGjS,gBAAM,CAC3B;IAAE5I,GAAG,EAAEwa,YAAY,CAACxa;AAAI,GAAC,EACzBwB,KAAK,CAAC3B,UACR,CAAC,CAACV,KAAK;EAEP,IAAM2b,kBAAkB,IAAAb,qBAAA,GACtBzY,KAAK,CACH6J,0BAAgB,CACdzC,gBAAM,CAAC;AAAEmS,IAAAA,mBAAmB,EAAE;AAAK,GAAC,EAAE1S,qBAAqB,CAAC,CAACrI,GAC/D,CAAC,CACF,MAAA,IAAA,IAAAia,qBAAA,KAAA,MAAA,GAAA,MAAA,GAJDA,qBAAA,CAIG5Z,GAAG;AAER,EAAA,IAAM2a,qBAAqB,GAAA,CAAA9K,OAAA,GAAGtH,gBAAM,CAClC;AACE5I,IAAAA,GAAG,EAAA,CAAAqR,QAAA,GAAEzI,gBAAM,CAAC;AAAEqS,MAAAA,yBAAyB,EAAE;AAAK,KAAC,EAAE5S,qBAAqB,CAAC,cAAAgJ,QAAA,KAAA,MAAA,GAAA,MAAA,GAAlEA,QAAA,CACDrR;GACL,EACDwB,KAAK,CAAC3B,UACR,CAAC,cAAAqQ,OAAA,KAAA,MAAA,GAAA,MAAA,GAN6BA,OAAA,CAM3B/Q,KAAK;AAER,EAAA,oBACE+B,cAAA,CAAA,KAAA,EAAA;AACEO,IAAAA,SAAS,EAAE4B,UAAU,CACnB,wFAAwF,EACxF;MACE,eAAe,EAAE,CAAC6W,MAAM;AACxB,MAAA,wDAAwD,EAAEA,MAAM;AAChE,MAAA,8CAA8C,EAAEC,YAAY;AAC5D,MAAA,gDAAgD,EAAEC;AACpD,KACF,CAAE;AACFtT,IAAAA,KAAK,EAAE;AACLwJ,MAAAA,eAAe,EAAEwK,kBAAkB,GAAA,MAAA,CAAA7d,MAAA,CACxB6d,kBAAkB,SACzB,SAAS;AACbI,MAAAA,cAAc,EAAE;KAChB;AAAA5Z,IAAAA,QAAA,eAEFJ,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,8FAA8F;AAAAH,MAAAA,QAAA,eAC3G8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,gBAAgB;AAAAH,QAAAA,QAAA,gBAC7B8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,UAAAA,SAAS,EAAC,MAAM;UAAAH,QAAA,EAAA,cACnBJ,cAAA,CAACuC,qBAAU,EAAA;AAACE,YAAAA,OAAO,EAAC,IAAI;AAAArC,YAAAA,QAAA,eACtBJ,cAAA,CAAA,MAAA,EAAA;AAAM4F,cAAAA,KAAK,EAAE;AAAE2C,gBAAAA,KAAK,EAAEmR;eAAe;AAAAtZ,cAAAA,QAAA,EAAEmZ;aAAmB;AAAC,WACjD,CAAC,eACbvZ,cAAA,CAACuC,qBAAU,EAAA;AAACgG,YAAAA,KAAK,EAAC,OAAO;AAAC9F,YAAAA,OAAO,EAAC,OAAO;AAAArC,YAAAA,QAAA,eACvCJ,cAAA,CAAA,MAAA,EAAA;AAAM4F,cAAAA,KAAK,EAAE;AAAE2C,gBAAAA,KAAK,EAAEoR;eAAiB;AAAAvZ,cAAAA,QAAA,EAAEqZ;aAAqB;AAAC,WACrD,CAAC;SACV,CAAC,eACNzZ,cAAA,CAAA,KAAA,EAAA;AACEO,UAAAA,SAAS,EAAC,qBAAqB;AAC/BqF,UAAAA,KAAK,EAAE;AAAEqU,YAAAA,eAAe,EAAEH;AAAsB;AAAE,SACnD,CAAC;OACC;KACF;AAAC,GACH,CAAC;AAEV,CAAC;;ACtDD,IAAMhZ,IAAI,GAAG,SAAPA,IAAIA,CAAApG,IAAA,EAaJ;AAAA,EAAA,IAAAwf,WAAA,GAAAxf,IAAA,CAZJse,MAAM;AAANA,IAAAA,MAAM,GAAAkB,WAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,WAAA;IACdjB,YAAY,GAAAve,IAAA,CAAZue,YAAY;IACZkB,iBAAiB,GAAAzf,IAAA,CAAjByf,iBAAiB;IACjBC,aAAa,GAAA1f,IAAA,CAAb0f,aAAa;IACbC,WAAW,GAAA3f,IAAA,CAAX2f,WAAW;IACX/Z,KAAK,GAAA5F,IAAA,CAAL4F,KAAK;IACL2S,eAAe,GAAAvY,IAAA,CAAfuY,eAAe;IACfqH,YAAY,GAAA5f,IAAA,CAAZ4f,YAAY;IACZpB,kBAAkB,GAAAxe,IAAA,CAAlBwe,kBAAkB;IAClBqB,aAAa,GAAA7f,IAAA,CAAb6f,aAAa;IACbxH,YAAY,GAAArY,IAAA,CAAZqY,YAAY;IACD+F,WAAS,GAAApe,IAAA,CAApB8f,SAAS;AAET,EAAA,IAAA9T,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AACT,EAAA,IAAAsI,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,qBAAqB,EAAAD,KAAA,CAAA,uBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAArBD,qBAAqB,GAAAH,eAAA,CAArBG,qBAAqB;AAE7B,EAAA,IAAQ/E,EAAE,GAAW9B,KAAK,CAAlB8B,EAAE;IAAE7D,IAAI,GAAK+B,KAAK,CAAd/B,IAAI;EAEhB,IAAMkc,eAAe,GAAG5Q,kBAAQ,CAAC;AAAElC,IAAAA,IAAI,EAAE;GAAS,EAAER,qBAAqB,CAAC;AAE1E,EAAA,IAAMuT,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAA;AAAA,IAAA,OAASN,aAAa,CAAChY,EAAE,EAAE7D,IAAI,CAAC;AAAA,EAAA,CAAA;AAEvD,EAAA,IAAMoc,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,OAAO,EAAA;IAAA,OAAI,UAAA9W,CAAC,EAAI;MACtCA,CAAC,CAAC+W,eAAe,EAAE;AACnB,MAAA,IAAInY,mBAAS,CAAC2X,WAAW,CAAC,EAAEA,WAAW,CAAC/Z,KAAK,EAAEsa,OAAO,CAAC,CAAC,KACnDN,YAAY,CAACha,KAAK,EAAEsa,OAAO,CAAC;IACnC,CAAC;AAAA,EAAA,CAAA;AAED,EAAA,IAAME,gBAAgB,GAAGvd,UAAU,CAAC6c,aAAa,CAAC;AAElD,EAAA,oBACEpa,cAAA,CAAA,KAAA,EAAA;AACEO,IAAAA,SAAS,EAAC,wBAAwB;IAClC,cAAA,EAAcD,KAAK,CAAC8B,EAAG;AACvB,IAAA,aAAA,EAAa4W,MAAM,GAAG,mBAAmB,GAAG,YAAa;IACzD5W,EAAE,EAAE9B,KAAK,CAAC8B,EAAG;AAAAhC,IAAAA,QAAA,eAEb8B,eAAA,CAAA,KAAA,EAAA;AACE3B,MAAAA,SAAS,EAAE4B,UAAU,CACnB,kJAAkJ,EAClJ;QACE,eAAe,EAAE,CAAC6W,MAAM;AACxB,QAAA,sCAAsC,EAAEA,MAAM;AAC9C,QAAA,8CAA8C,EAAEC,YAAY;AAC5D,QAAA,gDAAgD,EAC9CC;AACJ,OACF,CAAE;MACF5W,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQ6X,iBAAiB,CAAC7Z,KAAK,CAAC;MAAA,CAAC;AAAAF,MAAAA,QAAA,gBAExC8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,kEAAkE;QAAAH,QAAA,EAAA,CAC9E4Y,MAAM,gBACLhZ,cAAA,CAAA,KAAA,EAAA;AACEO,UAAAA,SAAS,EAAC,kLAAkL;AAC5L,UAAA,aAAA,EAAY,oBAAoB;UAAAH,QAAA,EAE/B1B,CAAC,CAAC,gCAAgC;SAChC,CAAC,gBAENsB,cAAA,CAAA,KAAA,EAAA;AAAKO,UAAAA,SAAS,EAAC,2FAA2F;AAAAH,UAAAA,QAAA,eACxG8B,eAAA,CAAA,KAAA,EAAA;AACE3B,YAAAA,SAAS,EAAE4B,UAAU,CACnB,uGAAuG,EACvG;AACE,cAAA,iKAAiK,EAC/J,CAAC8W;AACL,aACF,CAAE;YAAA7Y,QAAA,EAAA,cAEFJ,cAAA,CAACsI,iBAAM,EAAA;AACL,cAAA,aAAA,EAAY,sBAAsB;AAClCqP,cAAAA,QAAQ,EAAEsB,YAAa;AACvBjb,cAAAA,KAAK,EAAEU,CAAC,CAAC,iCAAiC,CAAE;AAC5C+D,cAAAA,OAAO,EAAC,WAAW;cACnBlC,SAAS,EAAE4B,UAAU,CAAC;AACpB,gBAAA,iEAAiE,EAC/D8W,YAAY;AACd,gBAAA,qHAAqH,EAAE;AACzH,eAAC,CAAE;cACH3W,OAAO,EAAE,SAATA,OAAOA,GAAA;gBAAA,OAAQ6X,iBAAiB,CAAC7Z,KAAK,CAAC;AAAA,cAAA;AAAC,aACzC,CAAC,eACFN,cAAA,CAACsI,iBAAM,EAAA;AACL/H,cAAAA,SAAS,EAAC,uIAAuI;AACjJ,cAAA,aAAA,EAAY,oBAAoB;AAChCoX,cAAAA,QAAQ,EAAE1E,eAAgB;AAC1BjV,cAAAA,KAAK,EAAEU,CAAC,CAAC,6BAA6B,CAAE;AACxCyZ,cAAAA,OAAO,EAAElF,eAAgB;AACzBxQ,cAAAA,OAAO,EAAC,SAAS;cACjBH,OAAO,EAAE,SAATA,OAAOA,GAAA;gBAAA,OAAQyQ,YAAY,CAACzS,KAAK,CAAC;AAAA,cAAA;AAAC,aACpC,CAAC;WACC;SACF,CACN,eACDN,cAAA,CAAA,KAAA,EAAA;AAAKO,UAAAA,SAAS,EAAC,uHAAuH;AAAAH,UAAAA,QAAA,EACnI0Y,WAAS,gBACR9Y,cAAA,CAAC8Y,WAAS,EAAA;AACFE,YAAAA,MAAM,EAANA,MAAM;AAAEE,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAAED,YAAAA,YAAY,EAAZA,YAAY;AAAE3Y,YAAAA,KAAK,EAALA;AAAK,WACtD,CAAC,gBAEFN,cAAA,CAAC+a,SAAgB,EAAA;AACT/B,YAAAA,MAAM,EAANA,MAAM;AAAEE,YAAAA,kBAAkB,EAAlBA,kBAAkB;AAAED,YAAAA,YAAY,EAAZA,YAAY;AAAE3Y,YAAAA,KAAK,EAALA;WACjD;AACF,SACE,CAAC;OACH,CAAC,eACN4B,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,2EAA2E;AAAAH,QAAAA,QAAA,gBACxF8B,eAAA,CAAA,KAAA,EAAA;AACE3B,UAAAA,SAAS,EAAE4B,UAAU,CAAC,6BAA6B,EAAE;AACnD6Y,YAAAA,IAAI,EAAE,CAACF;AACT,WAAC,CAAE;UAAA1a,QAAA,EAAA,cAEHJ,cAAA,CAACuC,qBAAU,EAAA;AACTgG,YAAAA,KAAK,EAAC,OAAO;AACb,YAAA,aAAA,EAAY,YAAY;AACxB9F,YAAAA,OAAO,EAAC,OAAO;AACflC,YAAAA,SAAS,EAAE4B,UAAU,CACnB,wDAAwD,EACxD;AAAE,cAAA,MAAM,EAAE2Y;AAAiB,aAC7B,CAAE;AAAA1a,YAAAA,QAAA,EAED7B;AAAI,WACK,CAAC,EACZgc,aAAa,iBACZva,cAAA,CAACuC,qBAAU,EAAA;AACTgG,YAAAA,KAAK,EAAC,OAAO;AACb,YAAA,aAAA,EAAY,qBAAqB;AACjC9F,YAAAA,OAAO,EAAC,OAAO;AACflC,YAAAA,SAAS,EAAE4B,UAAU,CAAC,yBAAyB,EAAE;AAC/C,cAAA,MAAM,EAAE2Y;AACV,aAAC,CAAE;YAAA1a,QAAA,EAEF1B,CAAC,CAAC,iCAAiC;AAAC,WAC3B,CACb;AAAA,SACE,CAAC,EACLoc,gBAAgB,iBACf9a,cAAA,CAACib,YAAY,EAAA;AACXC,UAAAA,mBAAmB,EAAE;AAAErY,YAAAA,IAAI,EAAE;WAAO;AACpCsY,UAAAA,aAAa,EAAE;AACb5a,YAAAA,SAAS,EAAE,OAAO;AAClB+B,YAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEwB,CAAC,EAAA;AAAA,cAAA,OAAIA,CAAC,CAAC+W,eAAe,EAAE;AAAA,YAAA;WACjC;AACFO,UAAAA,SAAS,EAAE,CACT;AACEtc,YAAAA,GAAG,EAAE,QAAQ;AACb,YAAA,aAAa,EAAE,wBAAwB;AACvCd,YAAAA,KAAK,EAAEU,CAAC,CACN,0DACF,CAAC;AACD2c,YAAAA,UAAU,EAAEpI,eAAe;AAC3B3Q,YAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEwB,CAAC,EAAI;cACZA,CAAC,CAAC+W,eAAe,EAAE;AACnBH,cAAAA,iBAAiB,EAAE;AACrB,YAAA;WACD;AACD,SACH,CACF;AAAA,OACE,CAAC,EACL1B,MAAM,iBACL9W,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,eAAe;QAAAH,QAAA,EAAA,cAC5BJ,cAAA,CAAC2Y,cAAc,EAAA;AACbN,UAAAA,IAAI,EAAEiD,mBAAQ;AACdtd,UAAAA,KAAK,EAAEU,CAAC,CAAC,mCAAmC,CAAE;AAC9Cma,UAAAA,MAAM,EAAC,uBAAuB;UAC9BvW,OAAO,EAAEqY,eAAe,CAAC,OAAO;SACjC,CAAC,EACDF,eAAe,CAAC5V,GAAG,CAAC,UAAAmB,KAAA,EAAa;AAAA,UAAA,IAAAuV,eAAA;AAAA,UAAA,IAAVzc,GAAG,GAAAkH,KAAA,CAAHlH,GAAG;AACzB,UAAA,IAAM0c,QAAQ,GAAGrR,0BAAgB,CAACrL,GAAG,CAAC;AACtC,UAAA,IAAM2c,QAAQ,GAAG/Y,mBAAS,CAAA,CAAA6Y,eAAA,GAACjb,KAAK,CAACkb,QAAQ,CAAC,cAAAD,eAAA,KAAA,MAAA,GAAA,MAAA,GAAfA,eAAA,CAAiBpc,GAAG,CAAC;AAChD,UAAA,IAAMuc,MAAM,GAAGD,QAAQ,GAAG,QAAQ,GAAG,KAAK;AAC1C,UAAA,IAAME,WAAW,GAAA,qBAAA,CAAA5f,MAAA,CAAyB2f,MAAM,CAAA,CAAA3f,MAAA,CAAGqN,oBAAU,CAC3DoS,QACF,CAAC,CAAE;UAEH,oBACExb,cAAA,CAAC2Y,cAAc,EAAA;AACbN,YAAAA,IAAI,EAAEuD,qBAAU;YAEhB5d,KAAK,EAAEU,CAAC,CAAC,CAACid,WAAW,EAAE,6BAA6B,CAAC,CAAE;AACvD9C,YAAAA,MAAM,eAAA9c,MAAA,CAAegG,mBAAS,CAACjD,GAAG,CAAC,CAAG;YACtCwD,OAAO,EAAEqY,eAAe,CAACa,QAAQ;AAAE,WAAA,EAH9B1c,GAIN,CAAC;AAEN,QAAA,CAAC,CAAC,eACFkB,cAAA,CAAC2Y,cAAc,EAAA;AACbN,UAAAA,IAAI,EAAEwD,gBAAK;AACX7d,UAAAA,KAAK,EAAEU,CAAC,CAAC,gDAAgD,CAAE;AAC3Dma,UAAAA,MAAM,EAAC,kBAAkB;UACzBvW,OAAO,EAAEqY,eAAe,CAAC,WAAW;AAAE,SACvC,CAAC;AAAA,OACC,CACN;KACE;AAAC,GACH,CAAC;AAEV,CAAC;AAED,aAAA,aAAemB,UAAI,CAAChb,IAAI,CAAC;;AC1MzB,IAAMib,MAAM,GAAG,SAATA,MAAMA,CAAArhB,IAAA,EAeN;AAAA,EAAA,IAdJ2f,WAAW,GAAA3f,IAAA,CAAX2f,WAAW;IAAA2B,WAAA,GAAAthB,IAAA,CACX+b,MAAM;AAANA,IAAAA,MAAM,GAAAuF,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IAAAC,kBAAA,GAAAvhB,IAAA,CACXwhB,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,kBAAA;IAClB7B,aAAa,GAAA1f,IAAA,CAAb0f,aAAa;IACb+B,gBAAgB,GAAAzhB,IAAA,CAAhByhB,gBAAgB;IAChBC,4BAA4B,GAAA1hB,IAAA,CAA5B0hB,4BAA4B;IAC5BrH,SAAS,GAAAra,IAAA,CAATqa,SAAS;IACTd,YAAY,GAAAvZ,IAAA,CAAZuZ,YAAY;IACZoI,qBAAqB,GAAA3hB,IAAA,CAArB2hB,qBAAqB;IACrB7B,SAAS,GAAA9f,IAAA,CAAT8f,SAAS;IACT8B,iBAAiB,GAAA5hB,IAAA,CAAjB4hB,iBAAiB;IACjBvJ,YAAY,GAAArY,IAAA,CAAZqY,YAAY;IACZwJ,mBAAmB,GAAA7hB,IAAA,CAAnB6hB,mBAAmB;IAAAC,oBAAA,GAAA9hB,IAAA,CACnB+hB,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,oBAAA;AAEvB,EAAA,IAAA9V,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AACT,EAAA,IAAA+P,cAAA,GAAqBC,gCAAa,EAAE;IAA5BE,QAAQ,GAAAH,cAAA,CAARG,QAAQ;AAChB,EAAA,IAAAP,cAAA,GAAAC,gCAAA,CAAA,UAAApH,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQqH,QAAAA,aAAa,EAAArH,KAAA,CAAA,eAAA,CAAA;AAAE8I,QAAAA,eAAe,EAAA9I,KAAA,CAAA,iBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAA9BmH,aAAa,GAAAF,cAAA,CAAbE,aAAa;IAAEyB,eAAe,GAAA3B,cAAA,CAAf2B,eAAe;AACtC,EAAA,IAAAhJ,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQyM,QAAAA,UAAU,EAAAzM,KAAA,CAAA,YAAA,CAAA;AAAEwV,QAAAA,QAAQ,EAAAxV,KAAA,CAAA,UAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAApBuM,UAAU,GAAA3M,eAAA,CAAV2M,UAAU;IAAE+I,QAAQ,GAAA1V,eAAA,CAAR0V,QAAQ;AAE5B,EAAA,IAAAC,eAAA,GAA4BC,2BAAc,EAAE;IAAAC,qBAAA,GAAAF,eAAA,CAApCG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEvB,EAAA,IAAAE,cAAA,GAA+BC,gCAAa,EAAE;IAA9BC,UAAU,GAAAF,cAAA,CAAlBG,MAAM;AACd,EAAA,IAAAC,cAAA,GAAqCC,gCAAa,CAAC,EAAE,CAAC;IAAtCC,gBAAgB,GAAAF,cAAA,CAAxBD,MAAM;AAEd,EAAA,IAAAhJ,mBAAA,GACEC,qCAAkB,CAACR,UAAU,CAAC;IAAAS,qBAAA,GAAAF,mBAAA,CADxBrY,IAAI;AAAAwY,IAAAA,sBAAA,GAAAD,qBAAA,KAAA,MAAA,GAAyB,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAAvBE,WAAW;AAAXA,IAAAA,WAAW,GAAAD,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IAAoBgJ,oBAAoB,GAAApJ,mBAAA,CAA/Ba,SAAS;AAGlDhF,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAIqM,4BAA4B,CAACmB,OAAO,IAAI,EAACtJ,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,IAAZA,YAAY,CAAE7R,EAAE,CAAA,EAAE;IAE/Dga,4BAA4B,CAACmB,OAAO,GAAG,IAAI;AAC3CxV,IAAAA,UAAU,CAAC,YAAM;MACftL,qBAAqB,CAACwX,YAAY,KAAA,IAAA,IAAZA,YAAY,uBAAZA,YAAY,CAAE7R,EAAE,CAAC;IACzC,CAAC,EAAE,GAAG,CAAC;AACT,EAAA,CAAC,EAAE,CAACga,4BAA4B,EAAEnI,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE,CAAC,CAAC;AAEpD,EAAA,IAAMob,eAAe,GAAG,SAAlBA,eAAeA,CAAGld,KAAK,EAAI;AAC/BiO,IAAAA,aAAa,CAAC;AAAEyB,MAAAA,eAAe,EAAE1P;AAAM,KAAC,CAAC;IACzCsO,QAAQ,CAACtO,KAAK,CAAC;EACjB,CAAC;EAED,IAAMmd,aAAa,GAAGxJ,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE;AAEtC,EAAA,IAAMsb,eAAe,GAAGZ,UAAU,CAACjF,WAAW,EAAE;AAChD,EAAA,IAAM8F,aAAa,GAAG,SAAhBA,aAAaA,CAAGrd,KAAK,EAAA;IAAA,OACzBA,KAAK,CAAC/B,IAAI,CAACsZ,WAAW,EAAE,CAAC+F,QAAQ,CAACF,eAAe,CAAC;AAAA,EAAA,CAAA;AAEpD,EAAA,IAAMG,WAAW,GAAGJ,aAAa,GAC7B,EAAA,CAAA1hB,MAAA,CAAAwI,kBAAA,CAAI2X,aAAa,CAAA,EAAA3X,kBAAA,CAAKkS,MAAM,GAAEqH,IAAI,CAAC,UAAAxd,KAAK,EAAA;AAAA,IAAA,OAAIA,KAAK,CAAC8B,EAAE,KAAKqb,aAAa;AAAA,EAAA,CAAA,CAAC,GACvE,IAAI;AAER,EAAA,IAAMM,mBAAmB,GAAGtH,MAAM,CAACuH,IAAI,CAAC,UAAA1d,KAAK,EAAA;AAAA,IAAA,OAAIA,KAAK,CAAC8B,EAAE,KAAKqb,aAAa;EAAA,CAAA,CAAC;AAE5E,EAAA,IAAMQ,qBAAqB,GAAG/B,aAAa,CAACzW,MAAM,CAChD,UAAAnF,KAAK,EAAA;IAAA,OAAIA,KAAK,CAAC8B,EAAE,KAAKqb,aAAa,IAAIE,aAAa,CAACrd,KAAK,CAAC;AAAA,EAAA,CAC7D,CAAC;AAED,EAAA,IAAM4d,cAAc,GAAGzH,MAAM,CAAChR,MAAM,CAClC,UAAAnF,KAAK,EAAA;IAAA,OAAIA,KAAK,CAAC8B,EAAE,KAAKqb,aAAa,IAAIE,aAAa,CAACrd,KAAK,CAAC;AAAA,EAAA,CAC7D,CAAC;AAED,EAAA,IAAM6d,sBAAsB,GAAGN,WAAW,IAAIF,aAAa,CAACE,WAAW,CAAC;EAExE,IAAMO,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIviB,IAAI,EAAE+e,OAAO,EAAK;AAC1CqC,IAAAA,UAAU,CAACphB,IAAI,CAACuG,EAAE,EAAE;AAClBiU,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAArQ,KAAA,EAA8B;AAAA,QAAA,IAAlBqY,WAAW,GAAArY,KAAA,CAAlB1F,KAAK;AACjB+c,QAAAA,gBAAgB,CACd;UAAEjP,OAAO,EAAEiQ,WAAW,CAACjc,EAAE;AAAEsa,UAAAA,QAAQ,EAARA,QAAQ;AAAE/I,UAAAA,UAAU,EAAVA;AAAW,SAAC,EACjD;AACE0C,UAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;AACfkG,YAAAA,mBAAmB,aAAnBA,mBAAmB,KAAA,MAAA,IAAnBA,mBAAmB,CAAG8B,WAAW,CAAC;AAClChE,YAAAA,WAAW,CAACgE,WAAW,EAAEzD,OAAO,CAAC;AACnC,UAAA;AACF,SACF,CAAC;AACH,MAAA;AACF,KAAC,CAAC;EACJ,CAAC;AAED,EAAA,IAAI7F,SAAS,IAAIsH,qBAAqB,IAAIiB,oBAAoB,EAAE;AAC9D,IAAA,oBACEtd,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,gDAAgD;AAAAH,MAAAA,QAAA,eAC7DJ,cAAA,CAACG,kBAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;AAEA,EAAA,IAAMme,kBAAkB,GAAGH,sBAAsB,iBAC/Cne,cAAA,CAAA,KAAA,EAAA;AAAKO,IAAAA,SAAS,EAAC,uDAAuD;IAAAH,QAAA,eACpEJ,cAAA,CAACc,MAAI,EAAA;AACGiS,MAAAA,YAAY,EAAZA,YAAY;AAAEyH,MAAAA,SAAS,EAATA,SAAS;MAC7BxB,MAAM,EAAA,IAAA;AACN/F,MAAAA,eAAe,EAAE,CAAAqJ,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAA,MAAA,GAAA,MAAA,GAAjBA,iBAAiB,CAAEla,EAAE,MAAKyb,WAAW,CAACzb,EAAG;AAC1DmY,MAAAA,aAAa,EAAE,CAAAhG,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnS,EAAE,MAAKyb,WAAW,CAACzb,EAAG;AAClD8W,MAAAA,kBAAkB,EAAE2E,WAAW,CAACzb,EAAE,KAAK+Z,gBAAiB;AACxDlD,MAAAA,YAAY,EAAE,CAAAjJ,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,MAAA,GAAA,MAAA,GAAfA,eAAe,CAAE5N,EAAE,MAAKyb,WAAW,CAACzb,EAAG;AACrD9B,MAAAA,KAAK,EAAEud,WAAY;AACnBvD,MAAAA,YAAY,EAAE8D,gBAAiB;AAC/B/D,MAAAA,WAAW,EAAE0D,mBAAmB,GAAG1D,WAAW,GAAGvX,SAAU;AAC3DqX,MAAAA,iBAAiB,EAAEqD;KACpB;AAAC,GACC,CACN;AAED,EAAA,IAAMe,mBAAmB,GAAGC,oBAAU,CAACP,qBAAqB,CAAC,iBAC3Dje,cAAA,CAAA,KAAA,EAAA;AAAKO,IAAAA,SAAS,EAAC,gBAAgB;AAAAH,IAAAA,QAAA,eAC7BJ,cAAA,CAAA,KAAA,EAAA;AACEO,MAAAA,SAAS,EAAC,gDAAgD;AAC1D,MAAA,aAAA,EAAY,eAAe;AAAAH,MAAAA,QAAA,EAE1B6d,qBAAqB,CAACpZ,GAAG,CAAC,UAAAvE,KAAK,EAAA;QAAA,oBAC9BmQ,mBAAA,CAAC3P,MAAI,EAAA;AACGiS,UAAAA,YAAY,EAAZA,YAAY;AAAEzS,UAAAA,KAAK,EAALA,KAAK;AAAEka,UAAAA,SAAS,EAATA,SAAS;AACpCxB,UAAAA,MAAM,EAAE,CAAA/E,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE,MAAK9B,KAAK,CAAC8B,EAAG;AACtC6Q,UAAAA,eAAe,EAAE,CAAAqJ,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAA,MAAA,GAAA,MAAA,GAAjBA,iBAAiB,CAAEla,EAAE,MAAK9B,KAAK,CAAC8B,EAAG;AACpDmY,UAAAA,aAAa,EAAE,CAAAhG,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnS,EAAE,MAAK9B,KAAK,CAAC8B,EAAG;AAC5C6W,UAAAA,YAAY,EAAE,CAAAjJ,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,MAAA,GAAA,MAAA,GAAfA,eAAe,CAAE5N,EAAE,MAAK9B,KAAK,CAAC8B,EAAG;UAC/CtD,GAAG,EAAEwB,KAAK,CAAC8B,EAAG;AACdkY,UAAAA,YAAY,EAAE8D,gBAAiB;AAC/BjE,UAAAA,iBAAiB,EAAEqD;AAAgB,SACpC,CAAC;MAAA,CACH;KACE;AAAC,GACH,CACN;AAED,EAAA,IAAMiB,mBAAmB,GAAGD,oBAAU,CAACN,cAAc,CAAC,iBACpDle,cAAA,CAAA,KAAA,EAAA;AAAKO,IAAAA,SAAS,EAAC,gBAAgB;AAAAH,IAAAA,QAAA,eAC7BJ,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,0BAA0B;AAAC,MAAA,aAAA,EAAY,eAAe;AAAAH,MAAAA,QAAA,EAClE8d,cAAc,CAACrZ,GAAG,CAAC,UAAAvE,KAAK,EAAI;AAC3B,QAAA,IAAMoe,QAAQ,GAAG,CAAAzK,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE,MAAK9B,KAAK,CAAC8B,EAAE;AAC9C,QAAA,IAAM6W,YAAY,GAAG,CAAAjJ,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,MAAA,GAAA,MAAA,GAAfA,eAAe,CAAE5N,EAAE,MAAK9B,KAAK,CAAC8B,EAAE;QAErD,oBACEqO,mBAAA,CAAC3P,MAAI,EAAA;AAEDmY,UAAAA,YAAY,EAAZA,YAAY;AACZlG,UAAAA,YAAY,EAAZA,YAAY;AACZsH,UAAAA,WAAW,EAAXA,WAAW;AACX/Z,UAAAA,KAAK,EAALA,KAAK;AACLka,UAAAA,SAAS,EAATA,SAAS;AAEXxB,UAAAA,MAAM,EAAE0F,QAAS;AACjBzL,UAAAA,eAAe,EAAE,CAAAqJ,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAA,MAAA,GAAA,MAAA,GAAjBA,iBAAiB,CAAEla,EAAE,MAAK9B,KAAK,CAAC8B,EAAG;AACpDmY,UAAAA,aAAa,EAAE,CAAAhG,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnS,EAAE,MAAK9B,KAAK,CAAC8B,EAAG;AAC5C8W,UAAAA,kBAAkB,EAAE5Y,KAAK,CAAC8B,EAAE,KAAK+Z,gBAAiB;UAClDrd,GAAG,EAAEwB,KAAK,CAAC8B,EAAG;AACdkY,UAAAA,YAAY,EAAE8D,gBAAiB;AAC/BhE,UAAAA,aAAa,EAAE,CAACsE,QAAQ,IAAItE,aAAc;AAC1CD,UAAAA,iBAAiB,EAAEqD;AAAgB,SACpC,CAAC;MAEN,CAAC;KACE;AAAC,GACH,CACN;AAED,EAAA,oBACEtb,eAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,8BAA8B;AAAAH,IAAAA,QAAA,gBAC3C8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,MAAAA,SAAS,EAAC,gBAAgB;MAAAH,QAAA,EAAA,CAC5Bqc,eAAe,iBACdzc,cAAA,CAAA,KAAA,EAAA;AAAKO,QAAAA,SAAS,EAAC,gCAAgC;QAAAH,QAAA,eAC7CJ,cAAA,CAAC2e,MAAM,EAAA;UACL9L,SAAS,EAAA,IAAA;UACT+L,aAAa,EAAA,IAAA;AACbC,UAAAA,YAAY,EAAC,KAAK;UAClBpS,WAAW,EAAE/N,CAAC,CAAC,iCAAiC;SACjD;AAAC,OACC,CACN,EACAkF,aAAO,CAACsa,cAAc,CAAC,IAAIta,aAAO,CAACqa,qBAAqB,CAAC,iBACxDje,cAAA,CAACuC,qBAAU,EAAA;AACThC,QAAAA,SAAS,EAAC,aAAa;AACvBgI,QAAAA,KAAK,EAAC,OAAO;AACb,QAAA,aAAA,EAAY,eAAe;AAC3B9F,QAAAA,OAAO,EAAC,OAAO;QAAArC,QAAA,EAEd1B,CAAC,CAAC,mCAAmC;AAAC,OAC7B,CACb;AAAA,KACE,CAAC,EACL4f,kBAAkB,EAClBC,mBAAmB,EACnBE,mBAAmB;AAAA,GACjB,CAAC;AAEV,CAAC;;AClMD,IAAMK,QAAQ,GAAG,SAAXA,QAAQA,CAAApkB,IAAA,EAA+D;AAAA,EAAA,IAAzD6L,aAAa,GAAA7L,IAAA,CAAb6L,aAAa;IAAEwY,eAAe,GAAArkB,IAAA,CAAfqkB,eAAe;IAAEC,kBAAkB,GAAAtkB,IAAA,CAAlBskB,kBAAkB;AACpE,EAAA,IAAAtY,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AAET,EAAA,IAAA2P,cAAA,GAAAC,gCAAA,CAAA,UAAApH,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQ8I,QAAAA,eAAe,EAAA9I,KAAA,CAAA,iBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAf4I,eAAe,GAAA3B,cAAA,CAAf2B,eAAe;EACvB,IAAM5B,OAAO,GAAG4B,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,MAAA,GAAA,MAAA,GAAfA,eAAe,CAAE5N,EAAE;AACnC,EAAA,IAAA4E,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQyM,QAAAA,UAAU,EAAAzM,KAAA,CAAA,YAAA,CAAA;AAAE+X,QAAAA,UAAU,EAAA/X,KAAA,CAAA,YAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAtBuM,UAAU,GAAA3M,eAAA,CAAV2M,UAAU;IAAEsL,UAAU,GAAAjY,eAAA,CAAViY,UAAU;EAE9B,IAAMC,iBAAiB,GAAGrhB,gBAAgB,EAAE,IAAIJ,eAAe,EAAE;AACjE,EAAA,IAAMqC,iBAAiB,GAAGkD,iBAAiB,CAACuD,aAAa,CAAC;EAE1D,IAAMhF,KAAK,GAAG4d,IAAO,CAAC1d,GAAG,EAAE,KAAK,KAAK;AACrC,EAAA,IAAM2d,cAAc,GAAG7d,KAAK,GAAG8d,sBAAU,GAAGC,qBAAS;AAErD,EAAA,IAAIJ,iBAAiB,EAAE;AACrB,IAAA,oBACElf,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,6CAA6C;AAAAH,MAAAA,QAAA,eAC1D8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,2CAA2C;QAAAH,QAAA,EAAA,cACxDJ,cAAA,CAACsI,iBAAM,EAAA;AACL,UAAA,aAAA,EAAY,8BAA8B;AAC1C+P,UAAAA,IAAI,EAAE+G,cAAe;AACrBG,UAAAA,YAAY,EAAC,MAAM;AACnB9c,UAAAA,OAAO,EAAC,OAAO;AACf+c,UAAAA,YAAY,EAAE;YACZ5H,OAAO,EAAE9X,iBAAiB,GACtBpB,CAAC,CAAC,gCAAgC,CAAC,GACnCA,CAAC,CAAC,kCAAkC,CAAC;AACzCuZ,YAAAA,QAAQ,EAAE;WACV;UACF3V,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQyc,eAAe,CAAC3Q,OAAO,CAAC;AAAA,UAAA;AAAC,SACzC,CAAC,eACFlM,eAAA,CAACK,qBAAU,EAAA;AAAC,UAAA,aAAA,EAAY,eAAe;AAACE,UAAAA,OAAO,EAAC,IAAI;UAAArC,QAAA,EAAA,CACjD8e,iBAAiB,IAChB,CAACpf,iBAAiB,KACjBrC,eAAe,EAAE,GACdiB,CAAC,CAAC,wDAAwD,CAAC,GAC3DA,CAAC,CAAC,sDAAsD,CAAC,CAAC,EAC/DoB,iBAAiB,IAChBpB,CAAC,CAAC,gDAAgD,CAAC;AAAA,SAC3C,CAAC;OACV;AAAC,KACH,CAAC;AAEV,EAAA;AAEA,EAAA,oBACEsB,cAAA,CAAA,KAAA,EAAA;AAAKO,IAAAA,SAAS,EAAC,6DAA6D;AAAAH,IAAAA,QAAA,eAC1E8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,MAAAA,SAAS,EAAC,6CAA6C;AAAAH,MAAAA,QAAA,gBAC1D8B,eAAA,CAAA,KAAA,EAAA;AAAK3B,QAAAA,SAAS,EAAC,gBAAgB;QAAAH,QAAA,EAAA,cAC7BJ,cAAA,CAACuC,qBAAU,EAAA;AAAC,UAAA,aAAA,EAAY,eAAe;AAACE,UAAAA,OAAO,EAAC,IAAI;UAAArC,QAAA,EACjD1B,CAAC,CAAC,iDAAiD;AAAC,SAC3C,CAAC,eACbsB,cAAA,CAAC2C,WAAW,EAAA;UACV8c,aAAa,EAAER,UAAU,IAAI;AAAES,YAAAA,IAAI,EAAET;WAAa;AAClDje,UAAAA,KAAK,EAAEtC,CAAC,CAAC,iDAAiD,CAAE;AAC5D2J,UAAAA,WAAW,EAAE3J,CAAC,CACZ,uDAAuD,EACvD;YACEiV,UAAU,EAAEjV,CAAC,CAAA,yBAAA,CAAA3C,MAAA,CACe4X,UAAU,CAACkE,WAAW,EAAE,CACpD;WAEJ;AAAE,SACH,CAAC;OACC,CAAC,eACN7X,cAAA,CAAA,KAAA,EAAA;AAAKO,QAAAA,SAAS,EAAC,UAAU;QAAAH,QAAA,eACvBJ,cAAA,CAACsI,iBAAM,EAAA;AACL,UAAA,aAAA,EAAY,6BAA6B;AACzC+P,UAAAA,IAAI,EAAEsG,kBAAO;AACbY,UAAAA,YAAY,EAAC,MAAM;AACnB9c,UAAAA,OAAO,EAAC,OAAO;AACf+c,UAAAA,YAAY,EAAE;AACZ5H,YAAAA,OAAO,EAAElZ,CAAC,CAAC,iCAAiC,CAAC;AAC7CuZ,YAAAA,QAAQ,EAAE;WACV;AACF3V,UAAAA,OAAO,EAAE0c;SACV;AAAC,OACC,CAAC;KACH;AAAC,GACH,CAAC;AAEV,CAAC;;AC7DD,IAAMW,aAAa,gBAAG7D,UAAI,CAAC8D,gBAAK,CAAC;AAEjC,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAAnlB,IAAA,EAOP;AAAA,EAAA,IAAAolB,sBAAA;AAAA,EAAA,IANJtF,SAAS,GAAA9f,IAAA,CAAT8f,SAAS;IACTrM,kBAAkB,GAAAzT,IAAA,CAAlByT,kBAAkB;IAClBsD,gBAAgB,GAAA/W,IAAA,CAAhB+W,gBAAgB;IAChBE,gBAAgB,GAAAjX,IAAA,CAAhBiX,gBAAgB;IAChB4K,mBAAmB,GAAA7hB,IAAA,CAAnB6hB,mBAAmB;IACnBwD,oBAAoB,GAAArlB,IAAA,CAApBqlB,oBAAoB;AAEpB,EAAA,IAAA1M,SAAA,GAA0CC,cAAQ,CAAChU,cAAc,CAACC,MAAM,CAAC;IAAAgU,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAlE9M,IAAAA,aAAa,GAAAgN,UAAA,CAAA,CAAA,CAAA;AAAEyM,IAAAA,gBAAgB,GAAAzM,UAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAA0M,UAAA,GAAkD3M,cAAQ,CAAC,KAAK,CAAC;IAAA4M,UAAA,GAAA1M,cAAA,CAAAyM,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,UAAA,GAAgD/M,cAAQ,CAAC,IAAI,CAAC;IAAAgN,UAAA,GAAA9M,cAAA,CAAA6M,UAAA,EAAA,CAAA,CAAA;AAAvDlE,IAAAA,gBAAgB,GAAAmE,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,mBAAmB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAAE,UAAA,GAAkDlN,cAAQ,CAAC,EAAE,CAAC;IAAAmN,UAAA,GAAAjN,cAAA,CAAAgN,UAAA,EAAA,CAAA,CAAA;AAAvDlE,IAAAA,iBAAiB,GAAAmE,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,oBAAoB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAE,eAAA,GAAmBC,2BAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM;AACd,EAAA,IAAMC,cAAc,GAAG,CAACD,MAAM,CAAC,QAAQ,CAAC;AAExC,EAAA,IAAAE,UAAA,GACEzN,cAAQ,CAAC,CAACwN,cAAc,CAAC;IAAAE,UAAA,GAAAxN,cAAA,CAAAuN,UAAA,EAAA,CAAA,CAAA;AADpBE,IAAAA,wBAAwB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,2BAA2B,GAAAF,UAAA,CAAA,CAAA,CAAA;AAG5D,EAAA,IAAM7N,OAAO,GAAGC,yBAAU,EAAE;AAE5BrD,EAAAA,eAAS,CAAC,YAAM;IACdmR,2BAA2B,CAAC,CAACJ,cAAc,CAAC;AAC9C,EAAA,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;AAEpB,EAAA,IAAA9Z,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQyM,QAAAA,UAAU,EAAAzM,KAAA,CAAA,YAAA,CAAA;AAAEwV,QAAAA,QAAQ,EAAAxV,KAAA,CAAA,UAAA,CAAA;AAAE0M,QAAAA,gBAAgB,EAAA1M,KAAA,CAAA,kBAAA,CAAA;AAAEia,QAAAA,gBAAgB,EAAAja,KAAA,CAAA,kBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAxDuM,UAAU,GAAA3M,eAAA,CAAV2M,UAAU;IAAE+I,QAAQ,GAAA1V,eAAA,CAAR0V,QAAQ;IAAE9I,gBAAgB,GAAA5M,eAAA,CAAhB4M,gBAAgB;IAAEuN,gBAAgB,GAAAna,eAAA,CAAhBma,gBAAgB;AAEhE,EAAA,IAAA9S,cAAA,GAAAC,gCAAA,CAAA,UAAApH,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQqH,QAAAA,aAAa,EAAArH,KAAA,CAAA,eAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAbmH,aAAa,GAAAF,cAAA,CAAbE,aAAa;AAErB,EAAA,IAAM6N,4BAA4B,GAAGgF,YAAM,CAAC,IAAI,CAAC;AACjD,EAAA,IAAA1a,eAAA,GAAoBC,2BAAc,EAAE;IAA5BjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;IAAE8C,IAAI,GAAAkF,eAAA,CAAJlF,IAAI;AACf,EAAA,IAAME,UAAU,GAAGF,IAAI,CAACC,GAAG,EAAE,KAAK,KAAK,GAAG4f,yBAAa,GAAGC,wBAAY;AACtE,EAAA,IAAA7S,cAAA,GAAqBC,gCAAa,EAAE;IAA5BE,QAAQ,GAAAH,cAAA,CAARG,QAAQ;AAEhB,EAAA,IAAA2S,cAAA,GACEC,gCAAa,CAAC9E,QAAQ,CAAC;IAAA+E,mBAAA,GAAAF,cAAA,CADjB1lB,IAAI;AAAA6lB,IAAAA,oBAAA,GAAAD,mBAAA,KAAA,MAAA,GAAwC,EAAE,GAAAA,mBAAA;IAAAE,qBAAA,GAAAD,oBAAA,CAAtCjL,MAAM;AAANA,IAAAA,MAAM,GAAAkL,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,sBAAA,GAAAF,oBAAA,CAAExF,aAAa;AAAbA,IAAAA,aAAa,GAAA0F,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IAAS7M,SAAS,GAAAwM,cAAA,CAATxM,SAAS;AAGjE,EAAA,IAAA8M,mBAAA,GAGIC,qCAAkB,CAACpF,QAAQ,CAAC;IAAAqF,qBAAA,GAAAF,mBAAA,CAF9BhmB,IAAI;AAAAmmB,IAAAA,sBAAA,GAAAD,qBAAA,KAAA,MAAA,GAAiC,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAA/B1hB,KAAK;AAAE2T,IAAAA,YAAY,GAAAgO,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IACrB5F,qBAAqB,GAAAwF,mBAAA,CAAhC9M,SAAS;AAGX,EAAA,IAAAmN,eAAA,GAAuDC,iCAAc,EAAE;IAAvDC,WAAW,GAAAF,eAAA,CAAnBhF,MAAM;IAA0BmF,UAAU,GAAAH,eAAA,CAArBxM,SAAS;EAEtC,IAAAyH,cAAA,GAA2DC,gCAAa,CAAC;AACvE/G,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAArQ,KAAA,EAAiB;AAAA,QAAA,IAAZ1F,KAAK,GAAA0F,KAAA,CAAL1F,KAAK;AACjB,QAAA,IAAMgiB,YAAY,GAAG,SAAfA,YAAYA,GAAS;UACzB1T,QAAQ,CAACtO,KAAK,CAAC;UACfiiB,cAAc,CAACjiB,KAAK,CAAC;AACrBiO,UAAAA,aAAa,CAAC;AAAEyB,YAAAA,eAAe,EAAE1P;AAAM,WAAC,CAAC;UACzCogB,oBAAoB,CAAC,EAAE,CAAC;AACxBV,UAAAA,gBAAgB,CAAC1gB,cAAc,CAACC,MAAM,CAAC;AACvCgd,UAAAA,mBAAmB,aAAnBA,mBAAmB,KAAA,MAAA,IAAnBA,mBAAmB,CAAGjc,KAAK,CAAC;QAC9B,CAAC;;AAED;AACA;AACAyH,QAAAA,UAAU,CAAC,YAAA;UAAA,OAAM/D,mBAAmB,CAACse,YAAY,CAAC;AAAA,QAAA,CAAA,EAAExkB,mBAAmB,CAAC;AAC1E,MAAA;AACF,KAAC,CAAC;IAfc0kB,UAAU,GAAArF,cAAA,CAAlBD,MAAM;IAAyBjK,eAAe,GAAAkK,cAAA,CAA1BzH,SAAS;AAiBrC,EAAA,IAAM+M,aAAa,GAAGrB,YAAM,CAAC,IAAI,CAAC;AAClC,EAAA,IAAMsB,WAAW,GAAGtB,YAAM,CAAC,IAAI,CAAC;AAEhC,EAAA,IAAMthB,iBAAiB,GAAGkD,iBAAiB,CAACuD,aAAa,CAAC;AAE1D,EAAA,IAAAoc,UAAA,GAA8CrP,cAAQ,CAAC,KAAK,CAAC;IAAAsP,WAAA,GAAApP,cAAA,CAAAmP,UAAA,EAAA,CAAA,CAAA;AAAtDlG,IAAAA,eAAe,GAAAmG,WAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,kBAAkB,GAAAD,WAAA,CAAA,CAAA,CAAA;AAE1C,EAAA,IAAM5D,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;IAC/B6D,kBAAkB,CAAC,UAAAxnB,IAAI,EAAI;MACzB,IAAMC,IAAI,GAAG,CAACD,IAAI;MAClB,IAAI,CAACC,IAAI,EAAE;QACT,IAAMwnB,MAAM,GAAG,IAAIC,eAAe,CAAC5P,OAAO,CAACzV,QAAQ,CAACslB,MAAM,CAAC;QAC3DF,MAAM,CAAA,QAAA,CAAO,CAAC,YAAY,CAAC;QAC3B3P,OAAO,CAACmD,OAAO,CAAC;AAAE0M,UAAAA,MAAM,EAAEF,MAAM,CAAC9mB,QAAQ;AAAG,SAAC,CAAC;AAChD,MAAA;AAEA,MAAA,OAAOV,IAAI;AACb,IAAA,CAAC,CAAC;EACJ,CAAC;EAED,IAAM2nB,eAAe,GAAG,SAAlBA,eAAeA,CAAI3iB,KAAK,EAAEsa,OAAO,EAAK;IAC1C8H,WAAW,CAACnF,OAAO,GAAGjd,KAAK;AAC3B,IAAA,IAAM3C,QAAQ,GAAG4Y,gBAAQ,CAACrT,aAAa,CAACsT,yBAAM,CAACC,MAAM,CAACC,IAAI,CAAC,EAAE;MAC3DtI,OAAO,EAAE9N,KAAK,CAAC8B;AACjB,KAAC,CAAC;IAEF+Q,OAAO,CAAC+P,IAAI,CAAC;AACXvlB,MAAAA,QAAQ,EAARA,QAAQ;AACRqlB,MAAAA,MAAM,EAAEpI,OAAO,GAAA,WAAA,CAAA7e,MAAA,CAAe6e,OAAO,CAAA,GAAK;AAC5C,KAAC,CAAC;EACJ,CAAC;AAED,EAAA,IAAM7H,YAAY,GAAG,SAAfA,YAAYA,CAAGzS,KAAK,EAAI;AAC5B,IAAA,IAAIgc,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,eAAjBA,iBAAiB,CAAEla,EAAE,EAAE;IAE3Bse,oBAAoB,CAACpgB,KAAK,CAAC;AAC3BkiB,IAAAA,UAAU,CACR;MAAEpU,OAAO,EAAE9N,KAAK,CAAC8B,EAAE;AAAEsa,MAAAA,QAAQ,EAARA,QAAQ;AAAE/I,MAAAA,UAAU,EAAVA;AAAW,KAAC,EAC3C;MAAEwP,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQzC,oBAAoB,CAAC,EAAE,CAAC;AAAA,MAAA;AAAC,KAC5C,CAAC;EACH,CAAC;AAED,EAAA,IAAM0C,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAGhV,OAAO,EAAI;AACxCmU,IAAAA,cAAc,CAAC7f,mBAAS,CAAC0L,OAAO,CAAC,GAAGA,OAAO,GAAG6F,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAY,CAAE7R,EAAE,CAAC;IAC/D+Q,OAAO,CAAC+P,IAAI,CAAChgB,aAAa,CAACsT,yBAAM,CAACC,MAAM,CAACxO,KAAK,CAAC,CAAC;IAEhDya,WAAW,CAACnF,OAAO,GAAG,IAAI;EAC5B,CAAC;AAED,EAAA,IAAMwB,eAAe,GAAG,SAAlBA,eAAeA,CAAG3Q,OAAO,EAAI;AACjC,IAAA,IAAItO,iBAAiB,EAAE;AACrBkgB,MAAAA,gBAAgB,CAAC1gB,cAAc,CAACE,SAAS,CAAC;AAE1C,MAAA;AACF,IAAA;IAEA4jB,sBAAsB,CAAChV,OAAO,CAAC;EACjC,CAAC;AAED,EAAA,IAAMmU,cAAc,GAAG,SAAjBA,cAAcA,CAAGc,kBAAkB,EAAI;AAC3Ctb,IAAAA,UAAU,CAAC,YAAM;MACftL,qBAAqB,CAAC4mB,kBAAkB,CAAC;IAC3C,CAAC,EAAE,IAAI,CAAC;AAERtb,IAAAA,UAAU,CAAC,YAAM;MACfwY,mBAAmB,CAAC,IAAI,CAAC;IAC3B,CAAC,EAAE,IAAI,CAAC;IAERA,mBAAmB,CAAC8C,kBAAkB,CAAC;EACzC,CAAC;AAED,EAAA,IAAMvQ,aAAa,GAAG,SAAhBA,aAAaA,CAAGwQ,YAAY,EAAI;IACpCZ,WAAW,CAACnF,OAAO,GAAG+F,YAAY;IAClC1U,QAAQ,CAAC0U,YAAY,CAAC;AACtB/U,IAAAA,aAAa,CAAC;AAAEyB,MAAAA,eAAe,EAAEsT;AAAa,KAAC,CAAC;EAClD,CAAC;AAED,EAAA,IAAMtQ,aAAa,GAAG,SAAhBA,aAAaA,CAAGuQ,YAAY,EAAI;IACpCb,WAAW,CAACnF,OAAO,GAAGgG,YAAY;AAClCxD,IAAAA,oBAAoB,aAApBA,oBAAoB,KAAA,MAAA,IAApBA,oBAAoB,CAAGwD,YAAY,CAAC;EACtC,CAAC;EAED,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIpV,OAAO,EAAE7P,IAAI,EAAK;IACtC6hB,oBAAoB,CAAC,IAAI,CAAC;IAC1BqC,aAAa,CAAClF,OAAO,GAAG;AAAEnb,MAAAA,EAAE,EAAEgM,OAAO;AAAE7P,MAAAA,IAAI,EAAJA;KAAM;EAC/C,CAAC;AAED,EAAA,IAAMklB,sBAAsB,GAAGC,iBAAW,CAAC,YAAM;IAC/CtD,oBAAoB,CAAC,KAAK,CAAC;IAC3BqC,aAAa,CAAClF,OAAO,GAAG,IAAI;AAC9B,EAAA,CAAC,EAAE,CAACkF,aAAa,CAAC,CAAC;AAEnB,EAAA,IAAM/H,iBAAiB,GAAGgJ,iBAAW,CAAC,YAAM;AAAA,IAAA,IAAAC,qBAAA;AAC1CvB,IAAAA,WAAW,CAAA,CAAAuB,qBAAA,GAAClB,aAAa,CAAClF,OAAO,MAAA,IAAA,IAAAoG,qBAAA,KAAA,MAAA,GAAA,MAAA,GAArBA,qBAAA,CAAuBvhB,EAAE,EAAE;AACrCiU,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;QACf+J,oBAAoB,CAAC,KAAK,CAAC;QAC3BqC,aAAa,CAAClF,OAAO,GAAG,IAAI;AAC9B,MAAA;AACF,KAAC,CAAC;AACJ,EAAA,CAAC,EAAE,CAAC6E,WAAW,EAAEK,aAAa,CAAC,CAAC;EAEhC,oBACEvgB,eAAA,CAAA+N,mBAAA,EAAA;AAAA7P,IAAAA,QAAA,EAAA,CACG,CAAC6gB,wBAAwB,iBACxBjhB,cAAA,CAAA,KAAA,EAAA;AACEO,MAAAA,SAAS,EAAC,gCAAgC;AAC1C+B,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;QACb4e,2BAA2B,CAAC,CAACD,wBAAwB,CAAC;AACxD,MAAA;KACD,CACF,eACD/e,eAAA,CAAA,KAAA,EAAA;AACE3B,MAAAA,SAAS,EAAEC,UAAU,CACnB,kFAAkF,EAClF;AAAE,QAAA,gCAAgC,EAAEV;AAAkB,OAAC,EACvD;AACE,QAAA,iCAAiC,EAAEmhB;AACrC,OACF,CAAE;MAAA7gB,QAAA,EAAA,cAEFJ,cAAA,CAAC8e,QAAQ,EAAA;AAAOvY,QAAAA,aAAa,EAAbA,aAAa;AAAEwY,QAAAA,eAAe,EAAfA,eAAe;AAAEC,QAAAA,kBAAkB,EAAlBA;AAAkB,OAAK,CAAC,eACxE9c,eAAA,CAAC4L,qBAAM,EAAA;QAAA1N,QAAA,EAAA,cACLJ,cAAA,CAAC4jB,oBAAK,EAAA;UACJC,KAAK,EAAA,IAAA;UACLC,IAAI,EAAE5gB,aAAa,CAACsT,yBAAM,CAACC,MAAM,CAACxO,KAAK,CAAE;UACzC8b,MAAM,EAAE,SAARA,MAAMA,GAAA;YAAA,oBACJ/jB,cAAA,CAAC+b,MAAM,EAAA;AAEH9H,cAAAA,YAAY,EAAZA,YAAY;AACZiI,cAAAA,aAAa,EAAbA,aAAa;AACbE,cAAAA,4BAA4B,EAA5BA,4BAA4B;AAC5BmG,cAAAA,cAAc,EAAdA,cAAc;AACdlG,cAAAA,qBAAqB,EAArBA,qBAAqB;AACrBI,cAAAA,eAAe,EAAfA,eAAe;AACf1J,cAAAA,YAAY,EAAZA,YAAY;AACZwJ,cAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBD,cAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBH,cAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB1F,cAAAA,MAAM,EAANA,MAAM;AACN+D,cAAAA,SAAS,EAATA,SAAS;cAEXzF,SAAS,EAAEA,SAAS,IAAInB,gBAAiB;AACzCwG,cAAAA,aAAa,EAAEoJ,YAAa;AAC5BnJ,cAAAA,WAAW,EAAE4I;AAAgB,aAC9B,CAAC;AAAA,UAAA;AACF,SACH,CAAC,eACFjjB,cAAA,CAAC4jB,oBAAK,EAAA;AACJE,UAAAA,IAAI,EAAE5gB,aAAa,CAACsT,yBAAM,CAACC,MAAM,OAAI,CAAE;UACvCsN,MAAM,EAAE,SAARA,MAAMA,GAAA;YAAA,oBACJ/jB,cAAA,CAACR,SAAS,EAAA;AAEN+G,cAAAA,aAAa,EAAbA,aAAa;AACbkL,cAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,cAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBsB,cAAAA,eAAe,EAAfA,eAAe;AACfF,cAAAA,YAAY,EAAZA,YAAY;AACZD,cAAAA,aAAa,EAAbA,aAAa;AACb3E,cAAAA,kBAAkB,EAAlBA,kBAAkB;AAClB6E,cAAAA,aAAa,EAAbA,aAAa;cAEf1S,KAAK,EAAEoiB,WAAW,CAACnF,OAAQ;AAC3BjX,cAAAA,cAAc,EAAE0Z;AAAiB,aAClC,CAAC;AAAA,UAAA;AACF,SACH,CAAC,eACFhgB,cAAA,CAAC4jB,oBAAK,EAAA;UACJE,IAAI,EAAE5gB,aAAa,CAACsT,yBAAM,CAACC,MAAM,CAACC,IAAI,CAAE;UACxCqN,MAAM,EAAE,SAARA,MAAMA,GAAA;YAAA,oBACJ/jB,cAAA,CAACR,SAAS,EAAA;AAEN+G,cAAAA,aAAa,EAAbA,aAAa;AACbkL,cAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,cAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBsB,cAAAA,eAAe,EAAfA,eAAe;AACfF,cAAAA,YAAY,EAAZA,YAAY;AACZD,cAAAA,aAAa,EAAbA,aAAa;AACb3E,cAAAA,kBAAkB,EAAlBA,kBAAkB;AAClB6E,cAAAA,aAAa,EAAbA,aAAa;cAEf1S,KAAK,EAAEoiB,WAAW,CAACnF,OAAQ;AAC3BjX,cAAAA,cAAc,EAAE0Z;AAAiB,aAClC,CAAC;AAAA,UAAA;AACF,SACH,CAAC;AAAA,OACI,CAAC,eACThgB,cAAA,CAAC2f,aAAa,EAAA;AACZre,QAAAA,MAAM,EAAE6e,iBAAkB;AAC1BpK,QAAAA,YAAY,EAAEsM,UAAW;AACzBrhB,QAAAA,KAAK,EAAEtC,CAAC,CAAC,sCAAsC,CAAE;AACjDslB,QAAAA,OAAO,EAAEtlB,CAAC,CAAC,wCAAwC,EAAE;UACnDH,IAAI,EAAA,CAAAuhB,sBAAA,GAAE2C,aAAa,CAAClF,OAAO,MAAA,IAAA,IAAAuC,sBAAA,KAAA,MAAA,GAAA,MAAA,GAArBA,sBAAA,CAAuBvhB,IAAI;AACjC4iB,UAAAA,gBAAgB,EAAhBA,gBAAgB;UAChBxN,UAAU,EAAEjV,CAAC,CAAA,yBAAA,CAAA3C,MAAA,CAA2B4X,UAAU,CAACkE,WAAW,EAAE,CAAE;AACpE,SAAC,CAAE;AACHoM,QAAAA,OAAO,EAAER,sBAAuB;AAChCzN,QAAAA,QAAQ,EAAE0E;AAAkB,OAC7B,CAAC,eACF1a,cAAA,CAACsI,iBAAM,EAAA;AACL/H,QAAAA,SAAS,EAAC,+BAA+B;AACzC8X,QAAAA,IAAI,EAAE3W,UAAW;AACjBe,QAAAA,OAAO,EAAC,SAAS;AACjBH,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;UACb4e,2BAA2B,CAAC,CAACD,wBAAwB,CAAC;AACxD,QAAA;AAAE,OACH,CAAC;AAAA,KACC,CAAC;AAAA,GACN,CAAC;AAEP,CAAC;;AC5RD,IAAMiD,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAxpB,IAAA,EAgBlB;AAAA,EAAA,IAfJ0F,QAAQ,GAAA1F,IAAA,CAAR0F,QAAQ;IACRuT,UAAU,GAAAjZ,IAAA,CAAViZ,UAAU;IACV+I,QAAQ,GAAAhiB,IAAA,CAARgiB,QAAQ;IACRlC,SAAS,GAAA9f,IAAA,CAAT8f,SAAS;IACTrM,kBAAkB,GAAAzT,IAAA,CAAlByT,kBAAkB;IAAAgW,qBAAA,GAAAzpB,IAAA,CAClB+W,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA0S,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAA1pB,IAAA,CACrBiX,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAyS,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,eAAA,GAAA3pB,IAAA,CACrBukB,UAAU;AAAVA,IAAAA,UAAU,GAAAoF,eAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,eAAA;IAAAC,qBAAA,GAAA5pB,IAAA,CACjB6pB,uBAAuB;AAAvBA,IAAAA,uBAAuB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAE,cAAA,GAAA9pB,IAAA,CAC/B+pB,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,cAAA;IAAAE,qBAAA,GAAAhqB,IAAA,CAChB6hB,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAmI,qBAAA,KAAA,MAAA,GAAGC,cAAI,GAAAD,qBAAA;IAAAE,qBAAA,GAAAlqB,IAAA,CAC1BqlB,oBAAoB;AAApBA,IAAAA,oBAAoB,GAAA6E,qBAAA,KAAA,MAAA,GAAGD,cAAI,GAAAC,qBAAA;IAAAC,qBAAA,GAAAnqB,IAAA,CAC3BuG,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA4jB,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,oBAAA,GAAApqB,IAAA,CACrBmZ,eAAe;IAAfA,eAAe,GAAAiR,oBAAA,KAAA,MAAA,GAAG;AAAErd,MAAAA,SAAS,EAAE;AAAK,KAAC,GAAAqd,oBAAA;IAAAC,gBAAA,GAAArqB,IAAA,CACrCoZ,WAAW;AAAXA,IAAAA,WAAW,GAAAiR,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;AAEhBC,EAAAA,aAAO,CAACC,kDAA+B,EAAE,EAAE,CAAC;AAE5C,EAAA,IAAA5W,cAAA,GAAAC,gCAAA,CAAA,UAAApH,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQqH,QAAAA,aAAa,EAAArH,KAAA,CAAA,eAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAbmH,aAAa,GAAAF,cAAA,CAAbE,aAAa;AACrB,EAAA,IAAAE,cAAA,GAAqBC,gCAAa,EAAE;IAA5BE,QAAQ,GAAAH,cAAA,CAARG,QAAQ;AAChB,EAAA,IAAA5H,eAAA,GAAAC,iCAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQge,QAAAA,cAAc,EAAAhe,KAAA,CAAA,gBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,EAAAE,eAAA,CAAA;IAAd8d,cAAc,GAAAle,eAAA,CAAdke,cAAc;AACtB,EAAA,IAAAxe,eAAA,GAAcC,2BAAc,EAAE;IAAtBjI,CAAC,GAAAgI,eAAA,CAADhI,CAAC;AAET,EAAA,IAAAmjB,mBAAA,GAIIC,qCAAkB,CAACpF,QAAQ,CAAC;IAAAqF,qBAAA,GAAAF,mBAAA,CAH9BhmB,IAAI;AAAAmmB,IAAAA,sBAAA,GAAAD,qBAAA,KAAA,MAAA,GAAiC,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAA/B1hB,KAAK;AAAE2T,IAAAA,YAAY,GAAAgO,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IAChClN,SAAS,GAAA8M,mBAAA,CAAT9M,SAAS;IACGoQ,sBAAsB,GAAAtD,mBAAA,CAAlCuD,UAAU;AAGZ,EAAA,IAAM/I,qBAAqB,GAAGtH,SAAS,IAAIoQ,sBAAsB;AAEjEpV,EAAAA,eAAS,CAAC,YAAM;AACdmV,IAAAA,cAAc,CAAC;AACbvR,MAAAA,UAAU,EAAVA,UAAU;AACV+I,MAAAA,QAAQ,EAARA,QAAQ;AACR6H,MAAAA,uBAAuB,EAAvBA,uBAAuB;AACvBtF,MAAAA,UAAU,EAAVA,UAAU;AACVhe,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB4S,MAAAA,eAAe,EAAfA,eAAe;AACfC,MAAAA,WAAW,EAAXA;AACF,KAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;AAEN/D,EAAAA,eAAS,CAAC,YAAM;IACd,IAAIxF,sBAAY,CAAC0J,YAAY,CAAC,IAAIpW,gBAAgB,EAAE,EAAE;AACpD,MAAA;AACF,IAAA;AAEA0Q,IAAAA,aAAa,CAAC;AAAEyB,MAAAA,eAAe,EAAEiE;AAAa,KAAC,CAAC;IAChDrF,QAAQ,CAACqF,YAAY,CAAC;EACxB,CAAC,EAAE,CAACc,SAAS,EAAE2H,QAAQ,EAAEzI,YAAY,CAAC,CAAC;AAEvClE,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAIxF,sBAAY,CAAC0J,YAAY,CAAC,EAAE;AAEhC1F,IAAAA,aAAa,CAAC;AAAE0F,MAAAA,YAAY,EAAZA,YAAY;AAAEoI,MAAAA,qBAAqB,EAArBA;AAAsB,KAAC,CAAC;AACxD,EAAA,CAAC,EAAE,CAACpI,YAAY,EAAEoI,qBAAqB,CAAC,CAAC;AAEzCtM,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMsV,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAS;AAC9B7pB,MAAAA,QAAQ,CAAC8pB,eAAe,CAAC1f,KAAK,CAAC2f,WAAW,CACxC,mBAAmB,EAAA,EAAA,CAAAxpB,MAAA,CAChBoI,MAAM,CAACqhB,WAAW,OACvB,CAAC;IACH,CAAC;AAEDH,IAAAA,iBAAiB,EAAE;AACnBlhB,IAAAA,MAAM,CAACgC,gBAAgB,CAAC,MAAM,EAAEkf,iBAAiB,CAAC;AAClDlhB,IAAAA,MAAM,CAACgC,gBAAgB,CAAC,QAAQ,EAAEkf,iBAAiB,CAAC;AACpDlhB,IAAAA,MAAM,CAACgC,gBAAgB,CAAC,mBAAmB,EAAEkf,iBAAiB,CAAC;AAC/DlhB,IAAAA,MAAM,CAACgC,gBAAgB,CAAC,QAAQ,EAAEkf,iBAAiB,CAAC;AAEpD,IAAA,OAAO,YAAM;AACXlhB,MAAAA,MAAM,CAACshB,mBAAmB,CAAC,MAAM,EAAEJ,iBAAiB,CAAC;AACrDlhB,MAAAA,MAAM,CAACshB,mBAAmB,CAAC,QAAQ,EAAEJ,iBAAiB,CAAC;AACvDlhB,MAAAA,MAAM,CAACshB,mBAAmB,CAAC,mBAAmB,EAAEJ,iBAAiB,CAAC;AAClElhB,MAAAA,MAAM,CAACshB,mBAAmB,CAAC,QAAQ,EAAEJ,iBAAiB,CAAC;IACzD,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AAEN,EAAA,oBACEnjB,eAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,uBAAuB;IAAAH,QAAA,EAAA,cACpCJ,cAAA,CAAC0lB,sBAAS,EAAA;AAAC1kB,MAAAA,KAAK,EAAEyjB,SAAS,IAAI/lB,CAAC,CAAC,0BAA0B;AAAE,KAAE,CAAC,eAChEsB,cAAA,CAAC6f,OAAO,EAAA;AAEJpO,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBE,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB4K,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBpO,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClB4R,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBvF,MAAAA,SAAS,EAATA;KAEH,CAAC,eACFxa,cAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,+BAA+B;MAAAH,QAAA,EAC3Cic,qBAAqB,gBACpBrc,cAAA,CAAA,KAAA,EAAA;AAAKO,QAAAA,SAAS,EAAC,uDAAuD;AAAAH,QAAAA,QAAA,eACpEJ,cAAA,CAACG,kBAAO,EAAA,EAAE;AAAC,OACR,CAAC,GAENC;AACD,KACE,CAAC;AAAA,GACH,CAAC;AAEV;;;;"}
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/SectionHeading.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 { useId } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Typography } from \"neetoatoms\";\nimport { RadioGroup } from \"neetoatoms/formik\";\nimport { findIndexBy } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nconst LogoPosition = () => {\n const { t } = useTranslation();\n const labelId = useId();\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 <div className=\"flex flex-col\">\n <Typography asChild className=\"my-3\" variant=\"body2\" weight=\"semibold\">\n <span id={labelId}>\n {t(\"neetoThemes.build.leftSideBar.themes.logoPosition.title\")}\n </span>\n </Typography>\n <RadioGroup\n aria-labelledby={labelId}\n className=\"border-border !gap-0 overflow-hidden rounded-lg border\"\n name={`properties[${index}].value`}\n orientation=\"vertical\"\n >\n <RadioGroup.Item\n className=\"p-3\"\n value=\"over_left\"\n helpText={\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeftDescription\"\n )}\n </span>\n </Typography>\n }\n label={\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.overLeft\"\n )}\n </span>\n </Typography>\n }\n />\n <RadioGroup.Item\n className=\"border-border border-t p-3\"\n value=\"below_left\"\n helpText={\n <Typography asChild variant=\"body3\" weight=\"normal\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeftDescription\"\n )}\n </span>\n </Typography>\n }\n label={\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <span>\n {t(\n \"neetoThemes.build.leftSideBar.themes.logoPosition.belowLeft\"\n )}\n </span>\n </Typography>\n }\n />\n </RadioGroup>\n </div>\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\";\nimport { omit } from \"ramda\";\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\nexport const buildSystemThemeCopy = systemTheme => {\n if (!systemTheme) return null;\n\n return {\n ...omit([\"id\"], systemTheme),\n name: t(\"neetoThemes.common.cloneName\", { name: systemTheme.name }),\n properties: systemTheme.properties.map(omit([\"id\", \"themeId\"])),\n };\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 { useFormikContext } from \"formik\";\nimport { Toastr, Label } from \"neetoatoms\";\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 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 const uploadConfig = {\n maxImageSize: propertySchema?.maxImageSizeInMb || ONE_MEGABYTE,\n };\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, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport {\n Button,\n Popover,\n Typography,\n Switch,\n Tooltip,\n Spinner,\n} from \"neetoatoms\";\nimport { Form, BlockNavigation } from \"neetoatoms/formik\";\nimport { filterBy, findBy, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\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 {\n useApplyTheme,\n useFetchTheme,\n useListThemes,\n} 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 {\n buildImageData,\n buildInitialValues,\n buildSystemThemeCopy,\n} from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport { isScreenCustomCSS, buildPathname } from \"../utils\";\n\nconst Customize = ({\n theme,\n onCreateTheme,\n onApplyTheme,\n onApplyThemeSuccess,\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 entityId,\n entityType,\n isFetchingSchema,\n helpPopoverProps,\n enabledFeatures,\n proFeatures,\n } = useConfigStore.pick();\n\n const { themeId } = useParams();\n const { source: sourceThemeId } = useQueryParams();\n const isCustomizingSystemTheme = !themeId && isPresent(sourceThemeId);\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 {\n data: { defaultThemes = [] } = {},\n isLoading: isLoadingSystemThemes,\n } = useListThemes(entityId);\n\n const sourceTheme = isCustomizingSystemTheme\n ? findBy({ id: sourceThemeId }, defaultThemes)\n : null;\n\n const systemThemeCopy = useMemo(\n () => buildSystemThemeCopy(sourceTheme),\n [sourceTheme?.id]\n );\n\n const themeToCustomize = isCustomizingSystemTheme\n ? systemThemeCopy\n : themeData;\n\n const isLoading =\n isFetchingSchema ||\n isLoadingTheme ||\n (isCustomizingSystemTheme && isLoadingSystemThemes);\n\n const isThemeGlobalTheme = themeId && globalTheme?.id === themeId;\n const isCurrentThemeAndGlobalThemeSame = currentTheme?.id === globalTheme?.id;\n const { style: styleHelpPopoverProps = {} } = helpPopoverProps;\n\n const isEditingCurrentlyAppliedTheme =\n (themeId ?? sourceThemeId) === currentTheme?.id;\n\n const { mutateAsync: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutateAsync: updateTheme, isPending: isUpdating } =\n useUpdateTheme(themeId);\n\n const { mutateAsync: applyTheme, isPending: isApplyingCreatedTheme } =\n useApplyTheme({});\n\n const isSubmitting = isCreating || isUpdating || isApplyingCreatedTheme;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const createAndOpenTheme = async (themeToSave, resetForm) => {\n const { theme } = await createTheme(themeToSave);\n resetForm({ values: theme });\n\n if (isCustomizingSystemTheme) {\n await applyTheme({ themeId: theme.id, entityId, entityType });\n onApplyThemeSuccess?.(theme);\n }\n\n onCreateTheme(theme);\n history.replace(\n buildUrl(buildPathname(routes.themes.edit), { themeId: theme.id })\n );\n };\n\n const onSubmit = (values, { resetForm }) => {\n const imageData = buildImageData(values, themePropertiesSchema);\n const themeToSave = {\n propertiesAttributes: values.properties,\n name: values.name,\n shouldSetAsGlobalTheme: values.shouldSetAsGlobalTheme,\n entityType: values.entityType,\n ...imageData,\n };\n\n if (!themeId) return createAndOpenTheme(themeToSave, resetForm);\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(themeToCustomize, 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 && themeToCustomize?.id) ||\n isSubmitting ||\n !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 classnames from \"classnames\";\nimport { Badge, Tooltip, Typography } from \"neetoatoms\";\nimport { withT } from \"neetocommons/react-utils\";\n\nconst QuickActionRow = withT(\n ({\n t,\n icon: Icon,\n label,\n onClick,\n testId,\n disabled = false,\n disabledTooltip,\n isProFeature = false,\n }) => (\n <Tooltip\n content={disabledTooltip}\n disabled={!disabled || !disabledTooltip}\n position=\"top\"\n >\n <div className=\"border-border border-t\">\n <button\n {...{ disabled, onClick }}\n data-testid={testId}\n type=\"button\"\n className={classnames(\n \"flex w-full items-center gap-2 px-3 py-1.5 text-start transition-colors\",\n {\n \"hover:bg-muted cursor-pointer\": !disabled,\n \"cursor-not-allowed opacity-50\": disabled,\n }\n )}\n >\n <Icon className=\"text-muted-foreground\" size={16} />\n <Typography className=\"text-sm\" variant=\"body2\">\n {label}\n </Typography>\n {isProFeature && (\n <Badge\n data-testid={`${testId}-pro-badge`}\n label={t(\"neetoThemes.common.pro\")}\n size=\"sm\"\n variant=\"purple-subtle\"\n />\n )}\n </button>\n </div>\n </Tooltip>\n )\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 classnames from \"classnames\";\nimport { Code, ImagePlus, Pipette } from \"lucide-react\";\nimport { Typography, Button } from \"neetoatoms\";\nimport {\n capitalize,\n filterBy,\n findBy,\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 onCustomizeSystemTheme,\n isHighLightedTheme,\n isGlobalTheme,\n onApplyTheme,\n thumbnail: Thumbnail,\n}) => {\n const { t } = useTranslation();\n const { themePropertiesSchema, enabledFeatures, proFeatures } =\n useConfigStore.pick();\n\n const { id, name } = theme;\n\n const imageProperties = filterBy({ kind: \"image\" }, themePropertiesSchema);\n\n const isCustomCSSInSchema = isPresent(\n findBy({ kind: \"custom_css\" }, themePropertiesSchema)\n );\n const isCustomCSSEnabled = Boolean(enabledFeatures.customCSS);\n const isCustomCSSProFeature = Boolean(proFeatures.customCSS);\n const showCustomCSSAction =\n isCustomCSSInSchema && (isCustomCSSEnabled || isCustomCSSProFeature);\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 onCustomizeSystemTheme(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 {showCustomCSSAction && (\n <QuickActionRow\n disabled={!isCustomCSSEnabled}\n icon={Code}\n isProFeature={isCustomCSSProFeature}\n label={t(\"neetoThemes.build.leftSideBar.themes.customCSS\")}\n testId=\"quick-custom-css\"\n disabledTooltip={t(\n \"neetoThemes.common.proFeature.customCSS.description\"\n )}\n onClick={handleQuickEdit(\"customcss\")}\n />\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import { Typography } from \"neetoatoms\";\n\nconst SectionHeading = ({ label, testId }) => (\n <Typography\n className=\"px-6 text-xs font-semibold uppercase tracking-wide lg:px-5 xl:px-6\"\n color=\"muted\"\n data-testid={testId}\n variant=\"body2\"\n >\n {label}\n </Typography>\n);\n\nexport default SectionHeading;\n","import { useEffect } from \"react\";\n\nimport { Spinner, Typography } from \"neetoatoms\";\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 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\";\nimport SectionHeading from \"./SectionHeading\";\n\nconst Themes = ({\n onEditTheme,\n onCustomizeSystemTheme,\n themes = [],\n defaultThemes = [],\n onDeleteTheme,\n themeToHighlight,\n didScrollActiveThemeIntoView,\n isLoading,\n currentTheme,\n isCurrentThemeLoading,\n thumbnail,\n themeBeingApplied,\n onApplyTheme,\n isSearchVisible = false,\n}) => {\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n const { setThemeState, previewingTheme } = useThemeStore.pick();\n const { entityType } = useConfigStore.pick();\n\n const { searchTerm = \"\" } = useQueryParams();\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 hasNoMatchingThemes =\n !showActiveThemeSection &&\n isEmpty(filteredThemes) &&\n isEmpty(filteredDefaultThemes);\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, onCustomizeSystemTheme, 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 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 <SectionHeading\n label={t(\"neetoThemes.build.leftSideBar.themes.systemThemes\")}\n testId=\"system-themes-heading\"\n />\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 onSetPreviewTheme={setPreviewTheme}\n />\n ))}\n </div>\n </div>\n );\n\n const customThemesSection = isNotEmpty(filteredThemes) && (\n <div className=\"mb-6 space-y-3\">\n <SectionHeading\n label={t(\"neetoThemes.build.leftSideBar.themes.customThemes\")}\n testId=\"custom-themes-heading\"\n />\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 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 {hasNoMatchingThemes && (\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 i18next from \"i18next\";\nimport { ArrowLeft, ArrowRight, Search } from \"lucide-react\";\nimport { Button, Typography } from \"neetoatoms\";\nimport { isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\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 const { source: sourceThemeId } = useQueryParams();\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() && !isPresent(sourceThemeId)\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 classNames from \"classnames\";\nimport { ChevronsLeft, ChevronsRight } from \"lucide-react\";\nimport { Alert, Button } from \"neetoatoms\";\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 handleCustomizeSystemTheme = (theme, section) => {\n themeToEdit.current = theme;\n const searchParams = new URLSearchParams({ source: theme.id });\n if (section) searchParams.set(\"section\", section);\n\n history.push({\n pathname: buildPathname(routes.themes.new),\n search: `?${searchParams.toString()}`,\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 themeBeingApplied,\n themeToHighlight,\n themes,\n thumbnail,\n }}\n isLoading={isLoading || isFetchingSchema}\n onCustomizeSystemTheme={handleCustomizeSystemTheme}\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 onApplyThemeSuccess,\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 onApplyThemeSuccess,\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","labelId","useId","weight","RadioGroup","orientation","Item","helpText","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","buildSystemThemeCopy","systemTheme","omit","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","attribute","defaultImageSize","useDefaultImageSize","fixedAspectRatio","propertySchema","enablePositionChanger","uploadConfig","maxImageSize","maxImageSizeInMb","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","ImageUploader","onUploadComplete","Images","_values$coverImage","coverImage","ThemeMeta","_helpPopoverProps$nam","nameHelpPopoverProps","autoFocus","onCreateTheme","onApplyTheme","onApplyThemeSuccess","onUpdateTheme","isApplyingTheme","useSyncExpandedSectionFromUrl","history","useHistory","_useState","useState","_useState2","_slicedToArray","isNotAppliedPopoverOpen","setIsNotAppliedPopoverOpen","entityId","entityType","isFetchingSchema","enabledFeatures","proFeatures","_useParams","useParams","_useQueryParams","useQueryParams","sourceThemeId","isCustomizingSystemTheme","currentTheme","_useShowGlobalTheme","useShowGlobalTheme","_useShowGlobalTheme$d","_useShowGlobalTheme$d2","_useShowGlobalTheme$d3","globalTheme","_useFetchTheme","useFetchTheme","isNotNil","initialData","_useFetchTheme$data","themeData","isLoadingTheme","_useListThemes","useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","defaultThemes","isLoadingSystemThemes","isLoading","sourceTheme","systemThemeCopy","useMemo","themeToCustomize","isThemeGlobalTheme","isCurrentThemeAndGlobalThemeSame","_helpPopoverProps$sty","styleHelpPopoverProps","isEditingCurrentlyAppliedTheme","_useCreateTheme","useCreateTheme","createTheme","mutateAsync","isCreating","isPending","_useUpdateTheme","useUpdateTheme","updateTheme","isUpdating","_useApplyTheme","useApplyTheme","applyTheme","isApplyingCreatedTheme","isSubmitting","createAndOpenTheme","themeToSave","resetForm","_yield$createTheme","replace","buildUrl","routes","themes","edit","_x2","onSubmit","propertiesAttributes","shouldSetAsGlobalTheme","onSuccess","_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","_ref$disabled","disabledTooltip","_ref$isProFeature","Badge","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","onCustomizeSystemTheme","isGlobalTheme","thumbnail","imageProperties","isCustomCSSInSchema","isCustomCSSEnabled","isCustomCSSProFeature","showCustomCSSAction","handleDeleteTheme","handleQuickEdit","section","stopPropagation","showMoreDropdown","DefaultThumbnail","grow","MoreDropdown","dropdownButtonProps","dropdownProps","menuItems","isDisabled","Pipette","_theme$camelKey","camelKey","hasImage","action","specificKey","ImagePlus","Code","memo","SectionHeading","Themes","_ref$themes","_ref$defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isCurrentThemeLoading","themeBeingApplied","_ref$isSearchVisible","isSearchVisible","_useQueryParams$searc","searchTerm","isLoadingGlobalTheme","current","setPreviewTheme","activeThemeId","lowerSearchTerm","matchesSearch","includes","activeTheme","find","isActiveThemeCustom","some","filteredDefaultThemes","filteredThemes","showActiveThemeSection","hasNoMatchingThemes","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$data2$2","_useShowThemeEntity","useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","useDeleteTheme","deleteTheme","mutate","isDeleting","applyUpdates","highlightTheme","themeToDelete","themeToEdit","_useState1","_useState10","setIsSearchVisible","params","URLSearchParams","search","handleEditTheme","push","handleCustomizeSystemTheme","searchParams","set","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","registerNeetoThemesTranslations","setConfigState","isFetchingCurrentTheme","isFetching","setViewportHeight","documentElement","setProperty","innerHeight","removeEventListener","PageTitle"],"mappings":"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"}