@bigbinary/neeto-themes-frontend 2.2.0 → 3.0.1

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/apis/entities.js","../../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../../app/javascript/src/apis/themes.js","../../app/javascript/src/hooks/reactQuery/useThemesApi.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/constants.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/constants.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Check.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/index.jsx","../../app/javascript/src/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityId => axios.get(`${BASE_URL}/api/v1/entities/${entityId}`);\n\nconst entitiesApi = { show };\n\nexport default entitiesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = entityId =>\n axios.get(`${BASE_URL}/api/v1/themes`, { params: { entity_id: entityId } });\n\nconst show = id => axios.get(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst create = payload =>\n axios.post(`${BASE_URL}/api/v1/themes`, { theme: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/api/v1/themes/${id}`, { theme: payload });\n\nconst destroy = id => axios.delete(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst clone = id => axios.post(`${BASE_URL}/api/v1/themes/${id}/clone`);\n\nconst apply = ({ themeId, ...payload }) =>\n axios.post(`${BASE_URL}/api/v1/themes/${themeId}/apply`, { entity: payload });\n\nconst themesApi = { list, show, create, update, destroy, clone, apply };\n\nexport default themesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport themesApi from \"apis/themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nexport const useListThemes = entityId => {\n const { isTemplateThemesEnabled } = useConfigStore.pick();\n\n const queryKey = isTemplateThemesEnabled\n ? [QUERY_KEYS.THEMES_LIST, entityId]\n : [QUERY_KEYS.THEMES_LIST];\n\n return useQuery({\n queryKey,\n queryFn: () => themesApi.list(entityId),\n });\n};\n\nexport const useCreateTheme = () =>\n useMutationWithInvalidation(themesApi.create, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useUpdateTheme = themeId =>\n useMutationWithInvalidation(\n payload => themesApi.update({ id: themeId, payload }),\n {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n [QUERY_KEYS.THEME_DETAILS, themeId],\n ],\n }\n );\n\nexport const useDeleteTheme = () =>\n useMutationWithInvalidation(themesApi.destroy, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n });\n\nexport const useCloneTheme = () =>\n useMutationWithInvalidation(themesApi.clone, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useApplyTheme = ({ onSuccess }) =>\n useMutationWithInvalidation(themesApi.apply, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n onSuccess,\n });\n","import * 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];\n\nexport const THEME_VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(\"Name is required\"),\n});\n\nexport const OVERLAY_OPACITY_SLIDER_MARKS = { 0: \" \" };\nexport const HUNDRED = 100;\n","import { t } from \"i18next\";\nimport {\n findBy,\n isNot,\n filterBy,\n isPresent,\n snakeToCamelCase,\n isNotPresent,\n} from \"neetocist\";\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 }) => {\n switch (kind) {\n case \"color\":\n return { value: defaultValue, kind: \"color\", key };\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 };\n case \"overlay_opacity\":\n return { value: 0, kind: \"overlay_opacity\", key };\n case \"slider\":\n return { value: 0, kind: \"slider\", key };\n case \"radius\":\n return { value: defaultValue, kind: \"radius\", key };\n case \"boolean\":\n return { value: String(defaultValue), kind: \"boolean\", key };\n case \"position_selector\":\n return { value: defaultValue, kind: \"position_selector\", key };\n case \"alignment_block\":\n return { value: defaultValue, kind: \"alignment_block\", key };\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","import { hyphenate } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ title = \"\", children }) => (\n <div\n className=\"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white space-y-3 border p-4\"\n data-cy={`theme-${hyphenate(title)}-properties`}\n >\n {title && (\n <div className=\"flex items-center justify-between\">\n <Typography\n data-cy=\"theme-properties\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </div>\n )}\n {children && <div className=\"space-y-4\">{children}</div>}\n </div>\n);\n\nexport default Card;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"flex items-center justify-between py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"logo-field-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select {...{ onChange, options, placeholder, value }} />\n </div>\n </div>\n);\n\nexport default SelectBlock;\n","export const DESIGN_SCREENS = { THEMES: \"Themes\", Customize: \"Customize\" };\n\nexport const ONE_MEGABYTE = 1;\n","import { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, toLabelAndValue, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Toastr, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDominantColorFromUrl } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport SelectBlock from \"./SelectBlock\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\nimport { POSITION_OPTIONS } from \"../Customize/constants\";\nimport { buildLabel } from \"../Customize/utils\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n attribute,\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, values } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const propertySchema = findBy({ key: attribute }, themePropertiesSchema);\n\n const enablePositionChanger = propertySchema?.enablePositionChanger || false;\n const options = propertySchema?.options;\n\n const positionKeyInSchema = findBy(\n { key: `${name}_position` },\n themePropertiesSchema\n );\n\n const isPositionChangerVisible =\n enablePositionChanger && imageData?.url && isPresent(positionKeyInSchema);\n\n const positionKeyIndex = findIndexBy(\n { key: `${name}_position` },\n values.properties\n );\n\n const handleImageChange = async image => {\n try {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n const dominantColor = await getDominantColorFromUrl(image.url);\n\n setFieldValue(name, {\n signedId: image.signedId,\n url: image.url,\n dominantColor,\n });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n return (\n <div\n className=\"space-y-3 py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n {label && (\n <div className=\"flex items-center justify-between\">\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n </div>\n )}\n <div className=\"space-y-3 divide-y divide-gray-200\">\n <ImageUploader\n {...{ uploadConfig }}\n className=\"h-40 w-full\"\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 || POSITION_OPTIONS}\n placeholder={t(\"neetoThemes.common.left\")}\n value={toLabelAndValue(\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n )}\n onChange={option =>\n setFieldValue(\n `properties[${positionKeyIndex}].value`,\n option.value\n )\n }\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default ImageBlock;\n","import { useFormikContext } from \"formik\";\nimport { snakeToCamelCase } from \"neetocist\";\n\nimport { buildLabel } from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport ImageBlock from \"../commons/ImageBlock\";\n\nconst Images = ({ attribute }) => {\n const { values } = useFormikContext();\n\n const key = snakeToCamelCase(attribute);\n const title = buildLabel(key, \"image\");\n const imageData = values[key];\n\n return (\n <Card {...{ title }}>\n <div className=\"divide-y divide-gray-200\">\n <ImageBlock {...{ attribute, imageData }} name={key} />\n </div>\n </Card>\n );\n};\n\nexport default Images;\n","import { Field } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { CenterAlign, LeftAlign } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst AlignmentBlock = ({ label, name }) => (\n <div\n className=\"flex items-center justify-between gap-2 py-3 first:pt-0 last:pb-0\"\n data-cy={joinHyphenCase(label)}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <div className=\"flex items-center gap-3\">\n <Button\n data-cy=\"alignment-left\"\n icon={LeftAlign}\n size=\"large\"\n style={value === \"left\" ? \"primary\" : \"text\"}\n tooltipProps={{\n content: \"Left align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"left\")}\n />\n <Button\n data-cy=\"alignment-center\"\n icon={CenterAlign}\n size=\"large\"\n style={value === \"center\" ? \"primary\" : \"text\"}\n tooltipProps={{\n content: \"Center align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"center\")}\n />\n </div>\n )}\n </Field>\n </div>\n);\n\nexport default AlignmentBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { ColorPicker, Typography } from \"neetoui\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex items-center justify-between py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <ColorPicker\n {...{ color, onChange, showTransparencyControl }}\n showEyeDropper\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst FontPickerBlock = ({\n label,\n placeholder = \"\",\n value,\n options,\n onChange,\n}) => (\n <div\n className=\"flex items-center justify-between py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n menuPosition=\"fixed\"\n styles={{\n option: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n }}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { Slider } from \"antd\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nconst SliderBlock = ({ label, onChange, value, min, max, marks }) => (\n <div\n className=\"flex items-center justify-between gap-3 py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Slider\n {...{ marks, max, min, onChange, value }}\n className=\"my-2 w-20\"\n tooltip={{ formatter: null }}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Typography, Switch } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SwitchBlock = ({ label, name, ...switchProps }) => {\n const { t, i18n } = useTranslation();\n\n const translationKey = `neetoThemes.properties.boolean.${name}HelpText`;\n const doesHelpTextExist = i18n.exists(translationKey);\n\n return (\n <div className=\"flex items-center justify-between py-3 first:pt-0 last:pb-0\">\n <div className=\"inline-flex items-center gap-4\">\n <Typography\n data-cy=\"style-fields-labels\"\n style=\"body2\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Typography>\n {doesHelpTextExist && (\n <HelpPopover\n className=\"flex-shrink-0\"\n description={t(translationKey)}\n />\n )}\n </div>\n <Switch\n {...{ name, ...switchProps }}\n data-cy=\"enable-background-color-toggle\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport {\n toLabelAndValue,\n snakeToCamelCase,\n filterBy,\n findIndexBy,\n findBy,\n} from \"neetocist\";\nimport { negate } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\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 { buildLabel, isPropertyVisible } from \"./utils\";\n\nimport AlignmentBlock from \"../commons/AlignmentBlock\";\nimport Card from \"../commons/Card\";\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\";\n\nconst Properties = ({ onPropertiesChange }) => {\n const { t } = useTranslation();\n const { themePropertiesSchema } = useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n const { setFieldValue, values } = useFormikContext();\n const { setVariable, setTheme } = useThemeUtils();\n\n const handleColorChange =\n name =>\n ({ hex, rgb }) => {\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 onPropertiesChange?.(values, handleChange, handleColorChange);\n setTheme(values);\n setThemeState({ previewingTheme: values });\n }, [values]);\n\n return (\n <Card title={t(\"neetoThemes.common.style\")}>\n <div className=\"divide-y divide-gray-200\">\n {filterBy({ kind: \"font_family\" }, values.properties).map(\n ({ key, value, kind }) =>\n isPropertyVisible(key, values, themePropertiesSchema) && (\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={findBy({ value: value || null }, FONT_OPTIONS)}\n onChange={({ value }) => {\n handleChange(key, value);\n }}\n />\n )\n )}\n {filterBy({ kind: \"color\" }, values.properties).map(\n ({ key, value, kind }) =>\n isPropertyVisible(key, values, themePropertiesSchema) && (\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 {filterBy({ kind: \"radius\" }, values.properties).map(\n ({ key, value, kind }) =>\n isPropertyVisible(key, values, themePropertiesSchema) && (\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 {filterBy({ kind: \"overlay_opacity\" }, values.properties).map(\n ({ key, value, kind }) =>\n isPropertyVisible(key, values, themePropertiesSchema) && (\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 {filterBy({ kind: \"position_selector\" }, values.properties).map(\n ({ key, kind, value }) => {\n const index = findIndexBy({ key }, values.properties);\n const options = findBy(\n { key },\n themePropertiesSchema\n )?.options?.map(toLabelAndValue);\n\n return (\n isPropertyVisible(key, values, themePropertiesSchema) && (\n <SelectBlock\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n value={toLabelAndValue(value)}\n onChange={option =>\n setFieldValue(`properties[${index}].value`, option.value)\n }\n />\n )\n );\n }\n )}\n {filterBy({ kind: \"boolean\" }, values.properties).map(\n ({ key, kind, value }) => {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n isPropertyVisible(key, values, themePropertiesSchema) && (\n <SwitchBlock\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n )\n );\n }\n )}\n {filterBy({ kind: \"alignment_block\" }, values.properties).map(\n ({ key, kind }) => {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n isPropertyVisible(key, values, themePropertiesSchema) && (\n <AlignmentBlock\n label={buildLabel(key, kind)}\n name={`properties[${index}].value`}\n />\n )\n );\n }\n )}\n </div>\n </Card>\n );\n};\n\nexport default Properties;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Input } from \"neetoui/formik\";\n\nimport Card from \"../commons/Card\";\n\nconst ThemeMeta = withT(({ t }) => (\n <Card title={t(\"neetoThemes.common.name\")}>\n <Input autoFocus data-cy=\"theme-name-property\" name=\"name\" />\n </Card>\n));\n\nexport default ThemeMeta;\n","import { useRef, useState } from \"react\";\n\nimport { filterBy } from \"neetocist\";\nimport { Close } from \"neetoicons\";\nimport { Button, Popover, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport {\n useCreateTheme,\n useUpdateTheme,\n} from \"src/hooks/reactQuery/useThemesApi\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport { THEME_VALIDATION_SCHEMA } from \"./constants\";\nimport Images from \"./Images\";\nimport Properties from \"./Properties\";\nimport ThemeMeta from \"./ThemeMeta\";\nimport { buildImageData, buildInitialValues } from \"./utils\";\n\nconst Customize = ({\n themeId,\n theme,\n onCreateTheme,\n onApplyTheme,\n isApplyingTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n}) => {\n const { t } = useTranslation();\n const [popoverInstance, setPopoverInstance] = useState({});\n const { themePropertiesSchema, entityType } = useConfigStore.pick();\n\n const { currentTheme } = useThemeUtils();\n\n const isEditingCurrentlyAppliedTheme = themeId === currentTheme?.id;\n\n const submitBtnRef = useRef(null);\n\n const { mutate: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutate: updateTheme, isPending: isUpdating } =\n useUpdateTheme(themeId);\n\n const isSubmitting = isCreating || isUpdating;\n\n const onSubmit = (values, { resetForm }) => {\n const imageData = buildImageData(values, themePropertiesSchema);\n const themeToSave = {\n propertiesAttributes: values.properties,\n name: values.name,\n ...imageData,\n };\n\n if (!themeId) {\n return createTheme(themeToSave, {\n onSuccess: ({ theme }) => {\n resetForm({ values: theme });\n onCreateTheme(theme);\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: () => {\n resetForm({ values });\n onUpdateThemeSuccess?.(values);\n },\n });\n };\n\n return (\n <Form\n formikProps={{\n initialValues: buildInitialValues(theme, themePropertiesSchema),\n validationSchema: THEME_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n {({ dirty }) => (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"flex flex-col gap-6 p-4\">\n <ThemeMeta />\n <Properties {...{ onPropertiesChange }} />\n {filterBy({ kind: \"image\" }, themePropertiesSchema).map(\n ({ key }) => (\n <Images attribute={key} key={key} />\n )\n )}\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-shadow-s sticky bottom-0 left-0 right-0 flex justify-end gap-x-2 px-4 py-6\">\n <Button\n data-cy=\"reset-button\"\n disabled={!dirty || isSubmitting}\n label={t(\"neetoThemes.buttons.reset\")}\n style=\"text\"\n type=\"reset\"\n />\n <Button\n data-cy=\"save-changes-button\"\n disabled={(!dirty && theme?.id) || isSubmitting}\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n ref={submitBtnRef}\n type=\"submit\"\n />\n </div>\n <Popover\n appendTo={() => document.body}\n disabled={isEditingCurrentlyAppliedTheme}\n position=\"top\"\n reference={submitBtnRef}\n trigger=\"click\"\n content={\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute right-1 top-1 z-0\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => popoverInstance?.hide?.()}\n />\n <Typography className=\"w-72 pr-5\" style=\"body2\" weight=\"normal\">\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoThemes.build.leftSideBar.themes.notAppliedYet\"\n values={{ entityType }}\n />\n </Typography>\n <Button\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.buttons.applyThisTheme\")}\n loading={isApplyingTheme}\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n }\n onMount={setPopoverInstance}\n />\n </div>\n )}\n </Form>\n );\n};\n\nexport default Customize;\n","const Check = props => (\n <svg\n fill=\"none\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <g filter=\"url(#filter0_d_9519_161)\">\n <rect fill=\"#008068\" height=\"20\" rx=\"10\" width=\"20\" x=\"2\" y=\"2\" />\n <rect\n height=\"20\"\n rx=\"10\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n width=\"20\"\n x=\"2\"\n y=\"2\"\n />\n <path\n d=\"M16.375 9.5l-5.95 6.25-2.8-2.941\"\n stroke=\"#fff\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"1.25\"\n />\n </g>\n <defs>\n <filter\n colorInterpolationFilters=\"sRGB\"\n filterUnits=\"userSpaceOnUse\"\n height=\"23.5\"\n id=\"filter0_d_9519_161\"\n width=\"23.5\"\n x=\"0.25\"\n y=\"0.25\"\n >\n <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n <feColorMatrix\n in=\"SourceAlpha\"\n result=\"hardAlpha\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n />\n <feOffset />\n <feGaussianBlur stdDeviation=\"0.5\" />\n <feComposite in2=\"hardAlpha\" operator=\"out\" />\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.09 0\" />\n <feBlend\n in2=\"BackgroundImageFix\"\n result=\"effect1_dropShadow_9519_161\"\n />\n <feBlend\n in=\"SourceGraphic\"\n in2=\"effect1_dropShadow_9519_161\"\n result=\"shape\"\n />\n </filter>\n </defs>\n </svg>\n);\n\nexport default Check;\n","import classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nconst Thumbnail = ({ active, isPreviewing, isHighLightedTheme, theme }) => {\n const { themePropertiesSchema = [] } = useConfigStore.pick();\n\n const [colorObject1, colorObject2] = themePropertiesSchema;\n\n const primaryLabel = humanize(colorObject1?.key);\n const secondaryLabel = humanize(colorObject2?.key);\n\n const primaryColor = findBy(\n { key: colorObject1.key },\n theme.properties\n ).value;\n\n const secondaryColor = findBy(\n { key: colorObject2.key },\n theme.properties\n ).value;\n\n const backgroundImageUrl =\n theme[\n snakeToCamelCase(\n findBy({ useAsCardBackground: true }, themePropertiesSchema).key\n )\n ]?.url;\n\n const buttonBackgroundColor = findBy(\n {\n key: findBy({ useAsCardButtonBackground: true }, themePropertiesSchema)\n ?.key,\n },\n theme.properties\n )?.value;\n\n return (\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-400\": !active,\n \"neeto-ui-border-gray-800 neeto-themes-theme-thumbnail--active\":\n active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\": isHighLightedTheme,\n }\n )}\n style={{\n backgroundImage: backgroundImageUrl\n ? `url(${backgroundImageUrl})`\n : \"initial\",\n backgroundSize: \"cover\",\n }}\n >\n <div className=\"neeto-ui-rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"neeto-ui-rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography style=\"h3\" weight=\"semibold\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"neeto-ui-rounded-lg h-5 w-12\"\n style={{ backgroundColor: buttonBackgroundColor }}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Thumbnail;\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"components/utils\";\n\nimport Check from \"./Check\";\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 onApplyTheme,\n thumbnail: Thumbnail,\n}) => {\n const { t } = useTranslation();\n\n const { id, name, appliedCount } = theme;\n\n const handleCloneTheme = () => onCloneTheme(theme);\n const handleEditTheme = () => onEditTheme(theme);\n const handleDeleteTheme = () => onDeleteTheme(id, name, appliedCount);\n\n return (\n <div\n className=\"group space-y-2 pt-0.5\"\n data-cy={active ? \"active-theme-card\" : \"theme-card\"}\n id={theme.id}\n >\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg cursor-pointer border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-200\": !active,\n \"neeto-themes-theme-thumbnail--active\": active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\":\n isHighLightedTheme,\n }\n )}\n onClick={() => onSetPreviewTheme(theme)}\n >\n <div className=\"neeto-ui-rounded-lg relative overflow-hidden rounded-bl-none rounded-br-none transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"absolute right-0 top-0 p-3\">\n {active ? (\n <Check className=\"flex-shrink-0\" data-cy=\"active-theme-label\" />\n ) : (\n <div\n className={classnames({\n hidden: !isPreviewing,\n \"group-hover:block\": true,\n })}\n >\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn flex-shrink-0\"\n data-cy=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.apply\")}\n loading={isApplyingTheme}\n size=\"small\"\n style=\"tertiary\"\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n )}\n </div>\n {Thumbnail ? (\n <Thumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n ) : (\n <DefaultThumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n )}\n </div>\n <div className=\"flex items-start justify-between gap-1 p-3\">\n <Typography\n className=\"line-clamp-2 min-w-0 flex-grow break-words pt-1\"\n data-cy=\"theme-name\"\n lineHeight=\"snug\"\n style=\"body2\"\n >\n {name}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ size: \"small\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"edit\",\n \"data-cy\": \"edit-theme-menu-item\",\n label: t(\"neetoThemes.common.edit\"),\n isVisible: isPresent(onEditTheme),\n onClick: handleEditTheme,\n },\n {\n key: \"clone\",\n \"data-cy\": \"clone-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.clone\"\n ),\n onClick: handleCloneTheme,\n },\n {\n key: \"divider\",\n type: \"divider\",\n isVisible: isFunction(onDeleteTheme),\n },\n {\n key: \"delete\",\n \"data-cy\": \"delete-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.delete\"\n ),\n isVisible: isFunction(onDeleteTheme),\n onClick: e => {\n e.stopPropagation();\n handleDeleteTheme();\n },\n },\n ]}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import { useEffect, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useCloneTheme } from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Card from \"./Card\";\n\nconst Themes = ({\n onEditTheme,\n themes = [],\n defaultThemes = [],\n onDeleteTheme,\n themeToHighlight,\n didScrollActiveThemeIntoView,\n isLoading,\n currentTheme,\n isCurrentThemeLoading,\n thumbnail,\n themeBeingApplied,\n onApplyTheme,\n isApplyingTheme,\n}) => {\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n const { setThemeState, previewingTheme } = useThemeStore.pick();\n\n const [searchQuery, setSearchQuery] = useState(\"\");\n\n const { mutate: cloneTheme } = useCloneTheme();\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 filteredDefaultThemes = defaultThemes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const filteredThemes = themes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const isSearchFieldVisible = themes?.length + defaultThemes?.length > 10;\n\n const handleCloneTheme = data => {\n cloneTheme(data.id, {\n onSuccess: ({ theme: clonedTheme }) => {\n onEditTheme(clonedTheme);\n },\n });\n };\n\n if (isLoading || isCurrentThemeLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"mb-6 space-y-3\">\n {isSearchFieldVisible && (\n <Search\n autoFocus\n autoComplete=\"off\"\n className=\"mb-4 mt-1 px-6\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n onSearch={setSearchQuery}\n />\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography className=\"text-center\" style=\"body2\">\n {t(\"neetoThemes.common.noResultsFound\")}\n </Typography>\n )}\n {isNotEmpty(filteredDefaultThemes) && (\n <>\n <Typography\n className=\"my-4 px-4 uppercase lg:px-5 xl:px-6\"\n data-cy=\"system-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.systemThemes\")}\n </Typography>\n <div\n className=\"flex flex-col gap-4 px-4 pb-10 lg:px-5 xl:px-6\"\n data-cy=\"system-themes\"\n >\n {filteredDefaultThemes.map(theme => (\n <Card\n {...{ onApplyTheme, theme, thumbnail }}\n active={currentTheme?.id === theme.id}\n isPreviewing={previewingTheme?.id === theme.id}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onCloneTheme={handleCloneTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n ))}\n </div>\n </>\n )}\n </div>\n {isNotEmpty(filteredThemes) && (\n <div className=\"mb-6 space-y-3\">\n <Typography\n className=\"my-4 px-6 uppercase\"\n data-cy=\"custom-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.customThemes\")}\n </Typography>\n <div className=\"flex flex-col gap-4 px-6\" data-cy=\"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 isHighLightedTheme={theme.id === themeToHighlight}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onCloneTheme={handleCloneTheme}\n onDeleteTheme={!isActive && onDeleteTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n );\n })}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Themes;\n","import { LeftArrow, Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst TitleBar = ({\n currentScreen,\n handleBackPress,\n handleCreateNewTheme,\n isNewTheme,\n themeToEdit,\n}) => {\n const { t } = useTranslation();\n\n if (currentScreen === DESIGN_SCREENS.Customize) {\n return (\n <div className=\"neeto-themes-sidebar__header px-4\">\n <div className=\"flex items-center justify-start space-x-2\">\n <Button\n data-cy=\"customize-themes-back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoThemes.buttons.backToThemes\"),\n position: \"top\",\n }}\n onClick={() => handleBackPress(themeToEdit)}\n />\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {isNewTheme\n ? t(\"neetoThemes.build.leftSideBar.themes.createTheme.title\")\n : t(\"neetoThemes.build.leftSideBar.themes.editTheme.title\")}\n </Typography>\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__header px-4 lg:px-5 xl:px-6\">\n <div className=\"flex items-center justify-between space-x-2\">\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.headerTabs.themes\")}\n </Typography>\n <div className=\"self-end\">\n <Button\n data-cy=\"customize-themes-add-theme-button\"\n icon={Plus}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoThemes.buttons.addNewTheme\"),\n position: \"top\",\n }}\n onClick={handleCreateNewTheme}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { memo, useCallback, useRef, useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Alert } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport {\n useApplyTheme,\n useDeleteTheme,\n useListThemes,\n} from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Customize from \"./Customize\";\nimport Themes from \"./Themes\";\nimport TitleBar from \"./TitleBar\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst MemoizedAlert = memo(Alert);\n\nconst Sidebar = ({\n thumbnail,\n onPropertiesChange,\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\n const { entityType, entityId, isFetchingSchema, defaultThemeName } =\n useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n\n const didScrollActiveThemeIntoView = useRef(null);\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n\n const { data: { themes = [], defaultThemes = [] } = {}, isLoading } =\n useListThemes(entityId);\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading: isCurrentThemeLoading,\n } = useShowThemeEntity(entityId);\n\n const { mutate: deleteTheme, isPending: isDeleting } = useDeleteTheme();\n\n const { mutate: applyTheme, isPending: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n setTheme(theme);\n highlightTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\n onApplyThemeSuccess?.(theme);\n },\n });\n\n const themeToDelete = useRef(null);\n const themeToEdit = useRef(null);\n\n const handleEditTheme = theme => {\n themeToEdit.current = theme;\n setCurrentScreen(DESIGN_SCREENS.Customize);\n };\n\n const onApplyTheme = theme => {\n if (isApplyingTheme) return;\n\n setThemeBeingApplied(theme);\n applyTheme({ themeId: theme.id, entityId, entityType });\n };\n\n const handleBackPress = theme => {\n setTheme(currentTheme);\n highlightTheme(isPresent(theme) ? theme : currentTheme);\n setThemeState({ previewingTheme: currentTheme });\n setCurrentScreen(DESIGN_SCREENS.THEMES);\n themeToEdit.current = null;\n };\n\n const highlightTheme = themeToHighlight => {\n setTimeout(() => {\n scrollElementIntoView(themeToHighlight.id);\n }, 1500);\n\n setTimeout(() => {\n setThemeToHighlight(null);\n }, 4000);\n\n setThemeToHighlight(themeToHighlight.id);\n };\n\n const onCreateTheme = createdTheme => {\n themeToEdit.current = createdTheme;\n setTheme(createdTheme);\n setThemeState({ previewingTheme: createdTheme });\n };\n\n const handleDelete = (themeId, name, appliedCount) => {\n setIsDeleteAlertOpen(true);\n themeToDelete.current = { id: themeId, name, appliedCount };\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 <div className=\"neeto-themes-sidebar neeto-ui-border-gray-200 flex-shrink-0 border-r\">\n <TitleBar\n {...{ currentScreen, handleBackPress }}\n handleCreateNewTheme={() => handleEditTheme({})}\n isNewTheme={!themeToEdit.current?.id}\n themeToEdit={themeToEdit.current}\n />\n {currentScreen === DESIGN_SCREENS.THEMES ? (\n <Themes\n {...{\n currentTheme,\n defaultThemes,\n didScrollActiveThemeIntoView,\n highlightTheme,\n isApplyingTheme,\n isCurrentThemeLoading,\n onApplyTheme,\n themeBeingApplied,\n themeToHighlight,\n themes,\n thumbnail,\n }}\n isLoading={isLoading || isFetchingSchema}\n onDeleteTheme={handleDelete}\n onEditTheme={handleEditTheme}\n />\n ) : (\n <Customize\n {...{\n isApplyingTheme,\n onApplyTheme,\n onCreateTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n }}\n theme={themeToEdit.current}\n themeId={themeToEdit.current?.id}\n />\n )}\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 count: themeToDelete.current?.appliedCount,\n defaultThemeName,\n entityType: t(`neetoThemes.entityType.${entityType.toLowerCase()}`, {\n count: themeToDelete.current?.appliedCount,\n }),\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n </div>\n );\n};\n\nexport default Sidebar;\n","import { useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { noop, isNotPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\n\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/themes.scss\";\n\nimport Sidebar from \"./Sidebar\";\n\nconst NeetoThemesBuilder = ({\n children,\n entityType,\n entityId,\n thumbnail,\n onPropertiesChange,\n isTemplateThemesEnabled = false,\n onApplyThemeSuccess = noop,\n onUpdateThemeSuccess = noop,\n}) => {\n const { setThemeState } = useThemeStore.pick();\n const { setTheme } = useThemeUtils();\n const { setConfigState } = useConfigStore.pick();\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({ entityType, entityId, isTemplateThemesEnabled });\n }, []);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ previewingTheme: currentTheme });\n setTheme(currentTheme);\n }, [isLoading, entityId]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ currentTheme, isCurrentThemeLoading });\n }, [currentTheme, isCurrentThemeLoading]);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <Sidebar\n {...{\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 withTitle(NeetoThemesBuilder, t(\"neetoThemes.common.design\"));\n"],"names":["show","entityId","axios","get","concat","BASE_URL","entitiesApi","useShowThemeEntity","useQuery","queryKey","QUERY_KEYS","THEME_ENTITY_DETAILS","queryFn","enabled","list","params","entity_id","id","create","payload","post","theme","update","_ref","put","destroy","clone","apply","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","_useConfigStore","useConfigStore","store","isTemplateThemesEnabled","shallow","THEMES_LIST","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","THEME_DETAILS","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","POSITION_OPTIONS","label","value","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","name","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","buildInitialValues","themePropertiesSchema","isPresent","t","properties","map","key","kind","defaultValue","String","filter","isNot","buildImageData","values","filterBy","reduce","acc","item","_values$snakeToCamelC","signedId","snakeToCamelCase","isPropertyVisible","formikValues","property","findBy","isNotPresent","hidden","conditionalKey","dependsOn","dependentPropertySchema","dependentProperty","_formikValues$snakeTo","url","buildLabel","Card","_ref$title","title","children","_jsxs","className","hyphenate","_jsx","Typography","lineHeight","style","weight","SelectBlock","_ref$placeholder","placeholder","options","onChange","joinHyphenCase","Select","DESIGN_SCREENS","THEMES","Customize","ONE_MEGABYTE","ImageBlock","_findBy","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","_useTranslation","useTranslation","_useFormikContext","useFormikContext","setFieldValue","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","findIndexBy","handleImageChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","dominantColor","wrap","_callee$","_context","prev","next","isEmpty","abrupt","getDominantColorFromUrl","sent","t0","Toastr","error","stop","_x","arguments","_createElement","ImageUploader","src","onUploadComplete","toLabelAndValue","option","Images","AlignmentBlock","Field","field","form","Button","icon","LeftAlign","size","tooltipProps","content","position","onClick","CenterAlign","ColorBlock","_ref$color","color","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","menuPosition","styles","data","_objectSpread","fontFamily","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","i18n","translationKey","doesHelpTextExist","exists","classnames","HelpPopover","description","Switch","Properties","onPropertiesChange","_useThemeStore","useThemeStore","setThemeState","_useThemeUtils","useThemeUtils","setVariable","setTheme","handleColorChange","hex","rgb","handleChange","r","g","b","a","variableValue","index","handleOverlayChange","overlayColorVariable","Math","abs","useEffect","previewingTheme","_ref3","_ref4","_ref5","_ref6","Number","radius","_ref7","negate","opacity","_ref8","_findBy2","_ref9","checked","e","target","_ref10","ThemeMeta","withT","Input","autoFocus","onCreateTheme","onApplyTheme","isApplyingTheme","onUpdateThemeSuccess","_useState","useState","_useState2","_slicedToArray","popoverInstance","setPopoverInstance","entityType","currentTheme","isEditingCurrentlyAppliedTheme","submitBtnRef","useRef","_useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","updateTheme","isUpdating","isSubmitting","onSubmit","resetForm","themeToSave","propertiesAttributes","Form","formikProps","initialValues","validationSchema","dirty","disabled","type","loading","ref","Popover","appendTo","document","body","reference","trigger","Close","_popoverInstance$hide","hide","call","Trans","components","bold","i18nKey","onMount","Check","props","fill","height","viewBox","width","xmlns","rx","x","y","stroke","strokeWidth","d","strokeLinecap","strokeLinejoin","colorInterpolationFilters","filterUnits","floodOpacity","result","stdDeviation","in2","operator","Thumbnail","_theme$snakeToCamelCa","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","backgroundImage","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","thumbnail","appliedCount","handleCloneTheme","handleEditTheme","handleDeleteTheme","DefaultThumbnail","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","stopPropagation","menuItems","isVisible","isFunction","memo","Themes","_ref$themes","themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isLoading","isCurrentThemeLoading","themeBeingApplied","searchQuery","setSearchQuery","_useCloneTheme","cloneTheme","current","setTimeout","scrollElementIntoView","setPreviewTheme","filteredDefaultThemes","toLowerCase","includes","filteredThemes","isSearchFieldVisible","length","clonedTheme","Spinner","Search","autoComplete","onSearch","isNotEmpty","_Fragment","isActive","TitleBar","currentScreen","handleBackPress","handleCreateNewTheme","isNewTheme","themeToEdit","LeftArrow","iconPosition","Plus","MemoizedAlert","Alert","Sidebar","_themeToEdit$current","_themeToEdit$current2","_themeToDelete$curren2","_themeToDelete$curren3","_themeToDelete$curren4","onApplyThemeSuccess","setCurrentScreen","_useState3","_useState4","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","setThemeToHighlight","_useState7","_useState8","setThemeBeingApplied","isFetchingSchema","defaultThemeName","_useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","deleteTheme","isDeleting","_useApplyTheme","highlightTheme","applyTheme","themeToDelete","createdTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","isOpen","message","count","onClose","NeetoThemesBuilder","_ref$isTemplateThemes","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","setConfigState","isFetchingCurrentTheme","isFetching","withTitle"],"mappings":"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"}
1
+ {"version":3,"file":"NeetoThemesBuilder.js","sources":["../../app/javascript/src/apis/entities.js","../../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../../app/javascript/src/apis/themes.js","../../app/javascript/src/hooks/reactQuery/useThemesApi.js","../../app/javascript/src/apis/global_themes.js","../../app/javascript/src/hooks/reactQuery/useGlobalThemesApi.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/constants.js","../../app/javascript/src/components/NeetoThemesBuilder/constants.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/utils.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/CustomCSS.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Check.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../../app/javascript/src/components/NeetoThemesBuilder/Sidebar/index.jsx","../../app/javascript/src/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityId => axios.get(`${BASE_URL}/api/v1/entities/${entityId}`);\n\nconst entitiesApi = { show };\n\nexport default entitiesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = entityId =>\n axios.get(`${BASE_URL}/api/v1/themes`, { params: { entity_id: entityId } });\n\nconst show = id => axios.get(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst create = payload =>\n axios.post(`${BASE_URL}/api/v1/themes`, { theme: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/api/v1/themes/${id}`, { theme: payload });\n\nconst destroy = id => axios.delete(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst clone = id => axios.post(`${BASE_URL}/api/v1/themes/${id}/clone`);\n\nconst apply = ({ themeId, ...payload }) =>\n axios.post(`${BASE_URL}/api/v1/themes/${themeId}/apply`, { entity: payload });\n\nconst applyGlobalTheme = ({ themeId, payload }) =>\n axios.post(`${BASE_URL}/api/v1/themes/${themeId}/apply_global_theme`, {\n theme: payload,\n });\n\nconst themesApi = {\n list,\n show,\n create,\n update,\n destroy,\n clone,\n apply,\n applyGlobalTheme,\n};\n\nexport default themesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport themesApi from \"apis/themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nexport const useListThemes = entityId => {\n const { isTemplateThemesEnabled } = useConfigStore.pick();\n\n const queryKey = isTemplateThemesEnabled\n ? [QUERY_KEYS.THEMES_LIST, entityId]\n : [QUERY_KEYS.THEMES_LIST];\n\n return useQuery({\n queryKey,\n queryFn: () => themesApi.list(entityId),\n });\n};\n\nexport const useCreateTheme = () =>\n useMutationWithInvalidation(themesApi.create, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.GLOBAL_THEME_DETAILS],\n ],\n });\n\nexport const useUpdateTheme = themeId =>\n useMutationWithInvalidation(\n payload => themesApi.update({ id: themeId, payload }),\n {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n [QUERY_KEYS.THEME_DETAILS, themeId],\n [QUERY_KEYS.GLOBAL_THEME_DETAILS],\n ],\n }\n );\n\nexport const useDeleteTheme = () =>\n useMutationWithInvalidation(themesApi.destroy, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n });\n\nexport const useCloneTheme = () =>\n useMutationWithInvalidation(themesApi.clone, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useApplyTheme = ({ onSuccess }) =>\n useMutationWithInvalidation(themesApi.apply, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n onSuccess,\n });\n\nexport const useApplyGlobalTheme = () =>\n useMutationWithInvalidation(themesApi.applyGlobalTheme, {\n keysToInvalidate: [[QUERY_KEYS.GLOBAL_THEME_DETAILS]],\n });\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityType =>\n axios.get(`${BASE_URL}/api/v1/global_theme`, {\n params: { entity_type: entityType },\n });\n\nconst globalThemesApi = { show };\nexport default globalThemesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport globalThemesApi from \"apis/global_themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowGlobalTheme = entityType =>\n useQuery({\n queryKey: [QUERY_KEYS.GLOBAL_THEME_DETAILS, entityType],\n queryFn: () => globalThemesApi.show(entityType),\n enabled: !!entityType,\n });\n","import * 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(\"Name is required\"),\n});\n\nexport const OVERLAY_OPACITY_SLIDER_MARKS = { 0: \" \" };\nexport const HUNDRED = 100;\n\nexport const ACCORDIAN_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 { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ACCORDIAN_OPEN_STATE } from \"../Customize/constants\";\n\nconst Card = ({ title = \"\", children, name, className }) => {\n const [accordianOpenState, setAccordianOpenState] =\n useState(ACCORDIAN_OPEN_STATE);\n\n return (\n <div\n data-cy={`theme-${hyphenate(title)}-properties`}\n className={classnames(\n \"neeto-themes-nano-section neeto-ui-border-gray-200 border-b pt-2 transition-all duration-300 last:border-none\",\n className,\n {\n \"pb-2\": !accordianOpenState[name],\n \"pb-3\": accordianOpenState[name],\n }\n )}\n >\n {title && (\n <button\n className=\"neeto-themes-nano-section__title flex w-full cursor-pointer items-center justify-between px-1 py-2 focus:outline-none\"\n type=\"button\"\n onClick={() =>\n setAccordianOpenState({\n ...accordianOpenState,\n [name]: !accordianOpenState[name],\n })\n }\n >\n <Typography\n className=\"min-w-0 flex-grow text-left\"\n component=\"span\"\n data-cy=\"theme-properties\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n <Down\n size={20}\n className={classnames(\"transition-all duration-300\", {\n \"rotate-180\": accordianOpenState[name],\n })}\n />\n </button>\n )}\n {children && (\n <div\n className={classnames(\n \"neeto-themes-nano-section__content w-full space-y-3 overflow-hidden px-1 transition-all duration-300\",\n {\n \"neeto-themes-nano-section__content--closed\":\n !accordianOpenState[name],\n \"neeto-themes-nano-section__content--open pb-1\":\n accordianOpenState[name],\n }\n )}\n >\n {children}\n </div>\n )}\n </div>\n );\n};\n\nexport default Card;\n","import { DESIGN_SCREENS } from \"../constants\";\n\nexport const isScreenCustomCSS = screen => screen === DESIGN_SCREENS.CustomCSS;\n","import Editor from \"@monaco-editor/react\";\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { findBy, findIndexBy } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DESIGN_SCREENS } from \"components/NeetoThemesBuilder/constants\";\nimport { scrollElementIntoView } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { setCustomCSS } from \"utils\";\n\nimport Card from \"../commons/Card\";\nimport { isScreenCustomCSS } from \"../utils\";\n\nconst CustomCSS = ({ onEditCSSClick, currentScreen }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const customCSS = findBy({ kind: \"custom_css\" }, values.properties);\n\n if (!customCSS) 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 title={\n isCustomCssScreen\n ? \"\"\n : t(\"neetoThemes.build.leftSideBar.themes.customCSS\")\n }\n >\n <div className=\"w-full\">\n <div className=\"neeto-themes-sidebar__custom-css-editor-header w-full justify-end gap-1 rounded-b-none p-2\">\n <Button\n size=\"small\"\n style=\"secondary\"\n label={\n isCustomCssScreen\n ? t(\"neetoThemes.buttons.minimizeEditor\")\n : t(\"neetoThemes.buttons.expandEditor\")\n }\n onClick={handleEditorToggle}\n />\n </div>\n <Editor\n language=\"css\"\n theme=\"vs-dark\"\n value={customCSS.value}\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 onChange={handleChange}\n />\n </div>\n </Card>\n </div>\n );\n};\n\nexport default CustomCSS;\n","import { t } from \"i18next\";\nimport {\n findBy,\n isNot,\n filterBy,\n isPresent,\n snakeToCamelCase,\n isNotPresent,\n} from \"neetocist\";\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 \"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 default:\n return null;\n }\n })\n .filter(isNot(null)),\n };\n};\n\nexport const buildImageData = (values, themePropertiesSchema) =>\n filterBy({ kind: \"image\" }, themePropertiesSchema).reduce((acc, item) => {\n const signedId = values[snakeToCamelCase(item.key)]?.signedId;\n acc[item.key] = signedId;\n\n return acc;\n }, {});\n\nexport const isPropertyVisible = (key, formikValues, themePropertiesSchema) => {\n const property = findBy({ key }, themePropertiesSchema);\n\n if (isNotPresent(property)) return false;\n\n if (property?.hidden) return false;\n\n const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentPropertySchema = findBy(\n { key: conditionalKey },\n themePropertiesSchema\n );\n\n const dependentProperty = findBy(\n { key: conditionalKey },\n formikValues.properties\n );\n\n if (dependentPropertySchema.kind === \"image\") {\n return isPresent(formikValues[snakeToCamelCase(conditionalKey)]?.url);\n } else if (dependentPropertySchema.kind === \"boolean\") {\n return dependentProperty?.value !== \"false\";\n }\n\n return isPresent(dependentProperty?.value);\n};\n\nexport const buildLabel = (key, kind) =>\n t(\n `neetoThemes.properties.${snakeToCamelCase(kind)}.${snakeToCamelCase(key)}`\n );\n\nexport const buildProperties = (values, condition, themePropertiesSchema) => {\n values.forEach(value => {\n themePropertiesSchema.forEach(theme => {\n if (!(value.key === theme.key)) return;\n value.dependsOn = theme.dependsOn;\n });\n });\n\n if (condition) {\n return filterBy({ dependsOn: condition }, values);\n }\n\n const imageKeys = new Set();\n filterBy({ kind: \"image\" }, themePropertiesSchema).forEach(ele =>\n imageKeys.add(ele.key)\n );\n\n return values?.filter(({ dependsOn }) => !imageKeys.has(dependsOn));\n};\n","import classnames from \"classnames\";\nimport { Field } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { CenterAlign, LeftAlign } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst AlignmentBlock = ({ label, name }) => (\n <div\n className=\"flex items-center justify-between gap-2\"\n data-cy={joinHyphenCase(label)}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <div className=\"neeto-ui-border-gray-300 neeto-themes-nano-alignment-block flex items-center border\">\n <Button\n className=\"neeto-themes-nano-alignment-button neeto-themes-nano-alignment-button__alignment-left\"\n data-cy=\"alignment-left\"\n size=\"medium\"\n style={value === \"left\" ? \"primary\" : \"text\"}\n icon={() => (\n <LeftAlign\n size={20}\n className={classnames({\n rounded: true,\n \"neeto-ui-text-primary-800\": value === \"left\",\n \"neeto-ui-text-gray-600\": value !== \"left\",\n })}\n />\n )}\n tooltipProps={{\n content: \"Left align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"left\")}\n />\n <div className=\"neeto-themes-nano-alignment-divider\" />\n <Button\n className=\"neeto-themes-nano-alignment-button neeto-themes-nano-alignment-button__alignment-center\"\n data-cy=\"alignment-center\"\n size=\"medium\"\n style={value === \"center\" ? \"primary\" : \"text\"}\n icon={() => (\n <CenterAlign\n size={20}\n className={classnames({\n rounded: true,\n \"neeto-ui-text-primary-800\": value === \"center\",\n \"neeto-ui-text-gray-600\": value !== \"center\",\n })}\n />\n )}\n tooltipProps={{\n content: \"Center align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"center\")}\n />\n </div>\n )}\n </Field>\n </div>\n);\n\nexport default AlignmentBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { ColorPicker, Typography } from \"neetoui\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex items-center justify-between\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <ColorPicker\n {...{ color, onChange, showTransparencyControl }}\n showEyeDropper\n size=\"medium\"\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst FontPickerBlock = ({\n label,\n placeholder = \"\",\n value,\n options,\n onChange,\n}) => (\n <div\n className=\"flex items-center justify-between\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n menuPosition=\"fixed\"\n styles={{\n option: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n }}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"flex items-center justify-between\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"logo-field-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select {...{ onChange, options, placeholder, value }} />\n </div>\n </div>\n);\n\nexport default SelectBlock;\n","import { Slider } from \"antd\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nconst SliderBlock = ({ label, onChange, value, min, max, marks }) => (\n <div\n className=\"flex items-center justify-between gap-3\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Slider\n {...{ marks, max, min, onChange, value }}\n className=\"my-2 w-20\"\n tooltip={{ formatter: null }}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Typography, Switch } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SwitchBlock = ({ label, name, ...switchProps }) => {\n const { t, i18n } = useTranslation();\n\n const translationKey = `neetoThemes.properties.boolean.${name}HelpText`;\n const doesHelpTextExist = i18n.exists(translationKey);\n\n return (\n <div\n className=\"flex items-center justify-between\"\n data-cy=\"theme-style-content-background\"\n >\n <div className=\"inline-flex items-center gap-4\">\n <Typography\n data-cy=\"style-fields-labels\"\n style=\"body2\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Typography>\n {doesHelpTextExist && (\n <HelpPopover\n className=\"flex-shrink-0\"\n description={t(translationKey)}\n />\n )}\n </div>\n <Switch\n {...{ name, ...switchProps }}\n data-cy=\"enable-background-color-toggle\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport {\n toLabelAndValue,\n snakeToCamelCase,\n findIndexBy,\n findBy,\n} 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 { buildLabel, buildProperties, isPropertyVisible } 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\";\n\nconst Properties = ({ onPropertiesChange, condition }) => {\n const { themePropertiesSchema } = useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n const { setFieldValue, values } = useFormikContext();\n const { setVariable, setTheme } = useThemeUtils();\n\n const handleColorChange =\n name =>\n ({ hex, rgb }) => {\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 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 \"font_family\":\n return (\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={findBy({ value: value || null }, FONT_OPTIONS)}\n onChange={({ value }) => handleChange(key, value)}\n />\n );\n\n case \"color\":\n return (\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(toLabelAndValue);\n\n return (\n <SelectBlock\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n value={toLabelAndValue(value)}\n onChange={option =>\n setFieldValue(`properties[${index}].value`, option.value)\n }\n />\n );\n }\n\n case \"boolean\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n <SwitchBlock\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n );\n }\n\n case \"alignment_block\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n <AlignmentBlock\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 { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, toLabelAndValue, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Toastr, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDominantColorFromUrl } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport SelectBlock from \"./SelectBlock\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\nimport { POSITION_OPTIONS } from \"../Customize/constants\";\nimport { buildLabel } from \"../Customize/utils\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n attribute,\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, values } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const propertySchema = findBy({ key: attribute }, themePropertiesSchema);\n\n const enablePositionChanger = propertySchema?.enablePositionChanger || false;\n const options = propertySchema?.options;\n\n const positionKeyInSchema = findBy(\n { key: `${name}_position` },\n themePropertiesSchema\n );\n\n const isPositionChangerVisible =\n enablePositionChanger && imageData?.url && isPresent(positionKeyInSchema);\n\n const positionKeyIndex = findIndexBy(\n { key: `${name}_position` },\n values.properties\n );\n\n const handleImageChange = async image => {\n try {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n const dominantColor = await getDominantColorFromUrl(image.url);\n\n setFieldValue(name, {\n signedId: image.signedId,\n url: image.url,\n dominantColor,\n });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n return (\n <div\n className=\"space-y-3\"\n data-cy={`theme-style-${label ? joinHyphenCase(label) : \"image-block\"}`}\n >\n {label && (\n <div className=\"flex items-center justify-between\">\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n </div>\n )}\n <div className=\"space-y-3\">\n <ImageUploader\n {...{ uploadConfig }}\n className=\"h-40 w-full\"\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 || POSITION_OPTIONS}\n placeholder={t(\"neetoThemes.common.left\")}\n value={toLabelAndValue(\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n )}\n onChange={option =>\n setFieldValue(\n `properties[${positionKeyIndex}].value`,\n option.value\n )\n }\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default ImageBlock;\n","import { useFormikContext } from \"formik\";\nimport { snakeToCamelCase } from \"neetocist\";\n\nimport Properties from \"./Properties\";\nimport { buildLabel } from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport ImageBlock from \"../commons/ImageBlock\";\n\nconst Images = ({ attribute, className, onPropertiesChange }) => {\n const { values } = useFormikContext();\n\n const key = snakeToCamelCase(attribute);\n const title = buildLabel(key, \"image\");\n const imageData = values[key];\n\n return (\n <Card {...{ className, title }} name=\"images\">\n <ImageBlock {...{ attribute, imageData }} name={key} />\n <Properties {...{ onPropertiesChange }} condition={attribute} />\n </Card>\n );\n};\n\nexport default Images;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Input } from \"neetoui/formik\";\n\nimport Card from \"../commons/Card\";\n\nconst ThemeMeta = withT(({ t, className }) => (\n <Card {...{ className }} name=\"name\" title={t(\"neetoThemes.common.name\")}>\n <Input autoFocus data-cy=\"theme-name-property\" name=\"name\" />\n </Card>\n));\n\nexport default ThemeMeta;\n","import { useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { filterBy } from \"neetocist\";\nimport { Close } from \"neetoicons\";\nimport { Button, Popover, Typography, Switch, Tooltip } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useShowGlobalTheme } from \"hooks/reactQuery/useGlobalThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport {\n useCreateTheme,\n useUpdateTheme,\n} from \"src/hooks/reactQuery/useThemesApi\";\nimport useConfigStore from \"src/stores/useConfigStore\";\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 } from \"../utils\";\n\nconst Customize = ({\n themeId,\n theme,\n onCreateTheme,\n onApplyTheme,\n isApplyingTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n onEditCSSClick,\n currentScreen,\n}) => {\n const { t } = useTranslation();\n const [popoverInstance, setPopoverInstance] = useState({});\n const { themePropertiesSchema, entityType } = useConfigStore.pick();\n\n const { currentTheme } = useThemeUtils();\n\n const { data: { globalTheme = {} } = {} } = useShowGlobalTheme(entityType);\n const isThemeGlobalTheme = globalTheme?.id === themeId;\n\n const isEditingCurrentlyAppliedTheme = themeId === currentTheme?.id;\n\n const submitBtnRef = useRef(null);\n\n const { mutate: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutate: updateTheme, isPending: isUpdating } =\n useUpdateTheme(themeId);\n\n const isSubmitting = isCreating || isUpdating;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleGlobalThemeSwitchChange = (e, setFieldValue) => {\n setFieldValue(\"shouldSetAsGlobalTheme\", e.target.checked);\n };\n\n const onSubmit = (values, { resetForm }) => {\n const imageData = buildImageData(values, themePropertiesSchema);\n const themeToSave = {\n propertiesAttributes: values.properties,\n name: values.name,\n shouldSetAsGlobalTheme: values.shouldSetAsGlobalTheme,\n entityType: values.entityType,\n ...imageData,\n };\n\n if (!themeId) {\n return createTheme(themeToSave, {\n onSuccess: ({ theme }) => {\n resetForm({ values: theme });\n onCreateTheme(theme);\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: () => {\n resetForm({ values });\n onUpdateThemeSuccess?.(values);\n },\n });\n };\n\n return (\n <Form\n formikProps={{\n initialValues: {\n ...buildInitialValues(theme, themePropertiesSchema),\n shouldSetAsGlobalTheme: isThemeGlobalTheme,\n entityType,\n },\n validationSchema: THEME_VALIDATION_SCHEMA,\n enableReinitialize: true,\n onSubmit,\n }}\n >\n {({ dirty, values, setFieldValue }) => (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"neeto-themes-sidebar__scroll-content flex flex-grow flex-col px-4 pb-4 lg:px-5\">\n <ThemeMeta className={classNames({ hidden: isCustomCssScreen })} />\n <Card\n className={classNames({ hidden: isCustomCssScreen })}\n name=\"style\"\n title={t(\"neetoThemes.common.style\")}\n >\n <Properties {...{ onPropertiesChange }} />\n </Card>\n {filterBy({ kind: \"image\" }, themePropertiesSchema).map(\n ({ key }) => (\n <Images\n {...{ onPropertiesChange }}\n attribute={key}\n className={classNames({ hidden: isCustomCssScreen })}\n key={key}\n />\n )\n )}\n <CustomCSS {...{ currentScreen, onEditCSSClick }} />\n <div className=\"neeto-ui-bg-gray-50 neeto-ui-border-gray-200 mt-2 flex flex-col space-y-2 border p-2\">\n <Tooltip\n disabled={!isThemeGlobalTheme}\n content={t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.tooltipContent\"\n )}\n >\n <Switch\n checked={values.shouldSetAsGlobalTheme}\n disabled={isThemeGlobalTheme}\n name=\"shouldSetAsGlobalTheme\"\n label={t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.label\"\n )}\n onChange={e =>\n handleGlobalThemeSwitchChange(e, setFieldValue)\n }\n />\n </Tooltip>\n <Typography className=\"text-sm\" style=\"body2\">\n {t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.helpText\",\n { entityType }\n )}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-shadow-s sticky bottom-0 left-0 right-0 flex justify-end gap-x-2 px-4 py-6 lg:px-5 xl:px-6\">\n <Button\n data-cy=\"reset-button\"\n disabled={!dirty || isSubmitting}\n label={t(\"neetoThemes.buttons.reset\")}\n style=\"text\"\n type=\"reset\"\n />\n <Button\n data-cy=\"save-changes-button\"\n disabled={(!dirty && theme?.id) || isSubmitting}\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n ref={submitBtnRef}\n type=\"submit\"\n />\n </div>\n <Popover\n appendTo={() => document.body}\n disabled={isEditingCurrentlyAppliedTheme}\n position=\"top\"\n reference={submitBtnRef}\n trigger=\"click\"\n content={\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute right-1 top-1 z-0\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => popoverInstance?.hide?.()}\n />\n <Typography className=\"w-72 pr-5\" style=\"body2\" weight=\"normal\">\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoThemes.build.leftSideBar.themes.notAppliedYet\"\n values={{ entityType }}\n />\n </Typography>\n <Button\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.buttons.applyThisTheme\")}\n loading={isApplyingTheme}\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n }\n onMount={setPopoverInstance}\n />\n </div>\n )}\n </Form>\n );\n};\n\nexport default Customize;\n","const Check = props => (\n <svg\n fill=\"none\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <g filter=\"url(#filter0_d_9519_161)\">\n <rect fill=\"#008068\" height=\"20\" rx=\"10\" width=\"20\" x=\"2\" y=\"2\" />\n <rect\n height=\"20\"\n rx=\"10\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n width=\"20\"\n x=\"2\"\n y=\"2\"\n />\n <path\n d=\"M16.375 9.5l-5.95 6.25-2.8-2.941\"\n stroke=\"#fff\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"1.25\"\n />\n </g>\n <defs>\n <filter\n colorInterpolationFilters=\"sRGB\"\n filterUnits=\"userSpaceOnUse\"\n height=\"23.5\"\n id=\"filter0_d_9519_161\"\n width=\"23.5\"\n x=\"0.25\"\n y=\"0.25\"\n >\n <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n <feColorMatrix\n in=\"SourceAlpha\"\n result=\"hardAlpha\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n />\n <feOffset />\n <feGaussianBlur stdDeviation=\"0.5\" />\n <feComposite in2=\"hardAlpha\" operator=\"out\" />\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.09 0\" />\n <feBlend\n in2=\"BackgroundImageFix\"\n result=\"effect1_dropShadow_9519_161\"\n />\n <feBlend\n in=\"SourceGraphic\"\n in2=\"effect1_dropShadow_9519_161\"\n result=\"shape\"\n />\n </filter>\n </defs>\n </svg>\n);\n\nexport default Check;\n","import classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nconst Thumbnail = ({ active, isPreviewing, isHighLightedTheme, theme }) => {\n const { themePropertiesSchema = [] } = useConfigStore.pick();\n\n const [colorObject1, colorObject2] = themePropertiesSchema;\n\n const primaryLabel = humanize(colorObject1?.key);\n const secondaryLabel = humanize(colorObject2?.key);\n\n const primaryColor = findBy(\n { key: colorObject1.key },\n theme.properties\n ).value;\n\n const secondaryColor = findBy(\n { key: colorObject2.key },\n theme.properties\n ).value;\n\n const backgroundImageUrl =\n theme[\n snakeToCamelCase(\n findBy({ useAsCardBackground: true }, themePropertiesSchema).key\n )\n ]?.url;\n\n const buttonBackgroundColor = findBy(\n {\n key: findBy({ useAsCardButtonBackground: true }, themePropertiesSchema)\n ?.key,\n },\n theme.properties\n )?.value;\n\n return (\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-400\": !active,\n \"neeto-ui-border-gray-800 neeto-themes-theme-thumbnail--active\":\n active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\": isHighLightedTheme,\n }\n )}\n style={{\n backgroundImage: backgroundImageUrl\n ? `url(${backgroundImageUrl})`\n : \"initial\",\n backgroundSize: \"cover\",\n }}\n >\n <div className=\"neeto-ui-rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"neeto-ui-rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography style=\"h3\" weight=\"semibold\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"neeto-ui-rounded-lg h-5 w-12\"\n style={{ backgroundColor: buttonBackgroundColor }}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Thumbnail;\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Rating } from \"neetoicons\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"components/utils\";\n\nimport Check from \"./Check\";\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 onApplyGlobalTheme,\n thumbnail: Thumbnail,\n}) => {\n const { t } = useTranslation();\n\n const { id, name, appliedCount } = theme;\n\n const handleCloneTheme = () => onCloneTheme(theme);\n const handleEditTheme = () => onEditTheme(theme);\n const handleDeleteTheme = () => onDeleteTheme(id, name, appliedCount);\n const handleApplyGlobalTheme = () => onApplyGlobalTheme(id);\n\n return (\n <div\n className=\"group space-y-2 pt-0.5\"\n data-cy={active ? \"active-theme-card\" : \"theme-card\"}\n id={theme.id}\n >\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg cursor-pointer border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-200\": !active,\n \"neeto-themes-theme-thumbnail--active\": active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\":\n isHighLightedTheme,\n }\n )}\n onClick={() => onSetPreviewTheme(theme)}\n >\n <div className=\"neeto-ui-rounded-lg relative overflow-hidden rounded-bl-none rounded-br-none transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"absolute right-0 top-0 p-3\">\n {active ? (\n <Check className=\"flex-shrink-0\" data-cy=\"active-theme-label\" />\n ) : (\n <div\n className={classnames({\n hidden: !isPreviewing,\n \"group-hover:block\": true,\n })}\n >\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn flex-shrink-0\"\n data-cy=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.apply\")}\n loading={isApplyingTheme}\n size=\"small\"\n style=\"tertiary\"\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n )}\n </div>\n {Thumbnail ? (\n <Thumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n ) : (\n <DefaultThumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n )}\n </div>\n <div className=\"neeto-ui-border-gray-100 flex items-start justify-between gap-1 border-t p-2\">\n <div className=\"flex items-center space-x-2\">\n <Typography\n className=\"line-clamp-2 min-w-0 flex-grow break-words pt-1\"\n data-cy=\"theme-name\"\n lineHeight=\"snug\"\n style=\"body2\"\n >\n {name}\n </Typography>\n {isGlobalTheme && (\n <Rating\n className=\"neeto-themes-nano-global-theme-icon\"\n size={18}\n />\n )}\n </div>\n <MoreDropdown\n dropdownButtonProps={{ size: \"small\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"edit\",\n \"data-cy\": \"edit-theme-menu-item\",\n label: t(\"neetoThemes.common.edit\"),\n isVisible: isPresent(onEditTheme),\n onClick: handleEditTheme,\n },\n {\n key: \"clone\",\n \"data-cy\": \"clone-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.clone\"\n ),\n onClick: handleCloneTheme,\n },\n {\n key: \"set-as-global-theme\",\n \"data-cy\": \"set-as-global-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.label\"\n ),\n isVisible: !isGlobalTheme,\n onClick: handleApplyGlobalTheme,\n },\n {\n key: \"divider\",\n type: \"divider\",\n isVisible: isFunction(onDeleteTheme),\n },\n {\n key: \"delete\",\n \"data-cy\": \"delete-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.delete\"\n ),\n isVisible: isFunction(onDeleteTheme),\n onClick: e => {\n e.stopPropagation();\n handleDeleteTheme();\n },\n },\n ]}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import { useEffect, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowGlobalTheme } from \"hooks/reactQuery/useGlobalThemesApi\";\nimport {\n useCloneTheme,\n useApplyGlobalTheme,\n} from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Card from \"./Card\";\n\nconst Themes = ({\n onEditTheme,\n themes = [],\n defaultThemes = [],\n onDeleteTheme,\n themeToHighlight,\n didScrollActiveThemeIntoView,\n isLoading,\n currentTheme,\n isCurrentThemeLoading,\n thumbnail,\n themeBeingApplied,\n onApplyTheme,\n isApplyingTheme,\n}) => {\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n const { setThemeState, previewingTheme } = useThemeStore.pick();\n const { entityType } = useConfigStore.pick();\n\n const [searchQuery, setSearchQuery] = useState(\"\");\n\n const { mutate: cloneTheme } = useCloneTheme();\n const { mutate: applyGlobalTheme } = useApplyGlobalTheme();\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 filteredDefaultThemes = defaultThemes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const filteredThemes = themes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const isSearchFieldVisible = themes?.length + defaultThemes?.length > 10;\n\n const handleCloneTheme = data => {\n cloneTheme(data.id, {\n onSuccess: ({ theme: clonedTheme }) => {\n onEditTheme(clonedTheme);\n },\n });\n };\n\n const handleApplyGlobalTheme = themeId => {\n const payload = { entityType };\n applyGlobalTheme({ themeId, payload });\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 return (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"mb-6 space-y-3\">\n {isSearchFieldVisible && (\n <Search\n autoFocus\n autoComplete=\"off\"\n className=\"mb-4 mt-1 px-6\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n onSearch={setSearchQuery}\n />\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography className=\"text-center\" style=\"body2\">\n {t(\"neetoThemes.common.noResultsFound\")}\n </Typography>\n )}\n {isNotEmpty(filteredDefaultThemes) && (\n <>\n <Typography\n className=\"my-4 px-6 uppercase lg:px-5 xl:px-6\"\n data-cy=\"system-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.systemThemes\")}\n </Typography>\n <div\n className=\"flex flex-col gap-4 px-6 pb-10 lg:px-5 xl:px-6\"\n data-cy=\"system-themes\"\n >\n {filteredDefaultThemes.map(theme => (\n <Card\n {...{ onApplyTheme, theme, thumbnail }}\n active={currentTheme?.id === theme.id}\n isGlobalTheme={globalTheme?.id === theme.id}\n isPreviewing={previewingTheme?.id === theme.id}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onApplyGlobalTheme={handleApplyGlobalTheme}\n onCloneTheme={handleCloneTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n ))}\n </div>\n </>\n )}\n </div>\n {isNotEmpty(filteredThemes) && (\n <div className=\"mb-6 space-y-3\">\n <Typography\n className=\"my-4 px-6 uppercase\"\n data-cy=\"custom-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.customThemes\")}\n </Typography>\n <div className=\"flex flex-col gap-4 px-6\" data-cy=\"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 isGlobalTheme={globalTheme?.id === theme.id}\n isHighLightedTheme={theme.id === themeToHighlight}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onApplyGlobalTheme={handleApplyGlobalTheme}\n onCloneTheme={handleCloneTheme}\n onDeleteTheme={!isActive && onDeleteTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n );\n })}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Themes;\n","import { LeftArrow, Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst TitleBar = ({\n currentScreen,\n handleBackPress,\n handleCreateNewTheme,\n isNewTheme,\n themeToEdit,\n}) => {\n const { t } = useTranslation();\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n if (currentScreen === DESIGN_SCREENS.THEMES) {\n return (\n <div className=\"neeto-themes-sidebar__header px-6 lg:px-5 xl:px-6\">\n <div className=\"flex items-center justify-between space-x-2\">\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.headerTabs.themes\")}\n </Typography>\n <div className=\"self-end\">\n <Button\n data-cy=\"customize-themes-add-theme-button\"\n icon={Plus}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoThemes.buttons.addNewTheme\"),\n position: \"top\",\n }}\n onClick={handleCreateNewTheme}\n />\n </div>\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__header px-4\">\n <div className=\"flex items-center justify-start space-x-2\">\n <Button\n data-cy=\"customize-themes-back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: isCustomCssScreen\n ? t(\"neetoThemes.buttons.backToEdit\")\n : t(\"neetoThemes.buttons.backToThemes\"),\n position: \"top\",\n }}\n onClick={() => handleBackPress(themeToEdit)}\n />\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {currentScreen === DESIGN_SCREENS.Customize &&\n (isNewTheme\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\nexport default TitleBar;\n","import { memo, useCallback, useRef, useState, useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { Collapse } from \"neetoicons\";\nimport { Alert, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport {\n useApplyTheme,\n useDeleteTheme,\n useListThemes,\n} from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Customize from \"./Customize\";\nimport Themes from \"./Themes\";\nimport TitleBar from \"./TitleBar\";\nimport { isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst MemoizedAlert = memo(Alert);\n\nconst Sidebar = ({\n thumbnail,\n onPropertiesChange,\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] = useState(\n !isLargerScreen\n );\n\n useEffect(() => {\n setIsThemesSidebarCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n const { entityType, entityId, isFetchingSchema, defaultThemeName } =\n useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n\n const didScrollActiveThemeIntoView = useRef(null);\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n\n const { data: { themes = [], defaultThemes = [] } = {}, isLoading } =\n useListThemes(entityId);\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading: isCurrentThemeLoading,\n } = useShowThemeEntity(entityId);\n\n const { mutate: deleteTheme, isPending: isDeleting } = useDeleteTheme();\n\n const { mutate: applyTheme, isPending: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n setTheme(theme);\n highlightTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\n onApplyThemeSuccess?.(theme);\n },\n });\n\n const themeToDelete = useRef(null);\n const themeToEdit = useRef(null);\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleEditTheme = theme => {\n themeToEdit.current = theme;\n setCurrentScreen(DESIGN_SCREENS.Customize);\n };\n\n const onApplyTheme = theme => {\n if (isApplyingTheme) return;\n\n setThemeBeingApplied(theme);\n applyTheme({ themeId: theme.id, entityId, entityType });\n };\n\n const handleBackPress = theme => {\n setTheme(currentTheme);\n highlightTheme(isPresent(theme) ? theme : currentTheme);\n setThemeState({ previewingTheme: currentTheme });\n setCurrentScreen(\n isCustomCssScreen ? DESIGN_SCREENS.Customize : DESIGN_SCREENS.THEMES\n );\n themeToEdit.current = null;\n };\n\n const highlightTheme = themeToHighlight => {\n setTimeout(() => {\n scrollElementIntoView(themeToHighlight.id);\n }, 1500);\n\n setTimeout(() => {\n setThemeToHighlight(null);\n }, 4000);\n\n setThemeToHighlight(themeToHighlight.id);\n };\n\n const onCreateTheme = createdTheme => {\n themeToEdit.current = createdTheme;\n setTheme(createdTheme);\n setThemeState({ previewingTheme: createdTheme });\n };\n\n const handleDelete = (themeId, name, appliedCount) => {\n setIsDeleteAlertOpen(true);\n themeToDelete.current = { id: themeId, name, appliedCount };\n };\n\n const handleCloseDeleteAlert = useCallback(() => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n }, [themeToDelete]);\n\n const handleDeleteTheme = useCallback(() => {\n deleteTheme(themeToDelete.current?.id, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n },\n });\n }, [deleteTheme, themeToDelete]);\n\n return (\n <>\n {!isThemesSidebarCollapsed && (\n <div\n className=\"neeto-themes-sidebar__backdrop\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n )}\n <div\n className={classNames(\n \"neeto-themes-sidebar neeto-ui-border-gray-200 flex-shrink-0 border-r transition-all duration-300\",\n { \"neeto-themes-sidebar--expanded\": isCustomCssScreen },\n {\n \"neeto-themes-sidebar--collapsed\": isThemesSidebarCollapsed,\n }\n )}\n >\n <TitleBar\n {...{ currentScreen, handleBackPress }}\n handleCreateNewTheme={() => handleEditTheme({})}\n isNewTheme={!themeToEdit.current?.id}\n themeToEdit={themeToEdit.current}\n />\n {currentScreen === DESIGN_SCREENS.THEMES ? (\n <Themes\n {...{\n currentTheme,\n defaultThemes,\n didScrollActiveThemeIntoView,\n highlightTheme,\n isApplyingTheme,\n isCurrentThemeLoading,\n onApplyTheme,\n themeBeingApplied,\n themeToHighlight,\n themes,\n thumbnail,\n }}\n isLoading={isLoading || isFetchingSchema}\n onDeleteTheme={handleDelete}\n onEditTheme={handleEditTheme}\n />\n ) : (\n <Customize\n {...{\n currentScreen,\n isApplyingTheme,\n onApplyTheme,\n onCreateTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n }}\n theme={themeToEdit.current}\n themeId={themeToEdit.current?.id}\n onEditCSSClick={setCurrentScreen}\n />\n )}\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 count: themeToDelete.current?.appliedCount,\n defaultThemeName,\n entityType: t(\n `neetoThemes.entityType.${entityType.toLowerCase()}`,\n { count: themeToDelete.current?.appliedCount }\n ),\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n <Button\n className=\"neeto-themes-sidebar__toggler\"\n icon={Collapse}\n style=\"secondary\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Sidebar;\n","import { useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { noop, isNotPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\n\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/themes.scss\";\n\nimport Sidebar from \"./Sidebar\";\n\nconst NeetoThemesBuilder = ({\n children,\n entityType,\n entityId,\n thumbnail,\n onPropertiesChange,\n isTemplateThemesEnabled = false,\n onApplyThemeSuccess = noop,\n onUpdateThemeSuccess = noop,\n}) => {\n const { setThemeState } = useThemeStore.pick();\n const { setTheme } = useThemeUtils();\n const { setConfigState } = useConfigStore.pick();\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({ entityType, entityId, isTemplateThemesEnabled });\n }, []);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ previewingTheme: currentTheme });\n setTheme(currentTheme);\n }, [isLoading, entityId]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ currentTheme, isCurrentThemeLoading });\n }, [currentTheme, isCurrentThemeLoading]);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <Sidebar\n {...{\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 withTitle(NeetoThemesBuilder, t(\"neetoThemes.common.theme\"));\n"],"names":["show","entityId","axios","get","concat","BASE_URL","entitiesApi","useShowThemeEntity","useQuery","queryKey","QUERY_KEYS","THEME_ENTITY_DETAILS","queryFn","enabled","list","params","entity_id","id","create","payload","post","theme","update","_ref","put","destroy","clone","apply","_ref2","themeId","_objectWithoutProperties","_excluded","entity","applyGlobalTheme","_ref3","themesApi","useListThemes","_useConfigStore","useConfigStore","store","isTemplateThemesEnabled","shallow","THEMES_LIST","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","GLOBAL_THEME_DETAILS","useUpdateTheme","THEME_DETAILS","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","useApplyGlobalTheme","entityType","entity_type","globalThemesApi","useShowGlobalTheme","POSITION_OPTIONS","label","value","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","name","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","ACCORDIAN_OPEN_STATE","style","images","customcss","DESIGN_SCREENS","THEMES","Customize","CustomCSS","ONE_MEGABYTE","Card","_ref$title","title","children","className","_useState","useState","_useState2","_slicedToArray","accordianOpenState","setAccordianOpenState","_jsxs","hyphenate","classnames","type","onClick","_objectSpread","_defineProperty","_jsx","Typography","component","lineHeight","weight","Down","size","isScreenCustomCSS","screen","onEditCSSClick","currentScreen","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","values","setFieldValue","themePropertiesSchema","customCSS","findBy","kind","properties","parentElementClass","parentClass","isCustomCssScreen","handleEditorToggle","setTimeout","scrollElementIntoView","handleChange","index","findIndexBy","key","setCustomCSS","css","elementId","Button","Editor","language","classNames","rounded","options","scrollBeyondLastLine","minimap","onChange","buildInitialValues","isPresent","map","defaultValue","_ref$order","order","dependsOn","String","filter","isNot","buildImageData","filterBy","reduce","acc","item","_values$snakeToCamelC","signedId","snakeToCamelCase","isPropertyVisible","formikValues","property","isNotPresent","hidden","conditionalKey","dependentPropertySchema","dependentProperty","_formikValues$snakeTo","url","buildLabel","buildProperties","condition","forEach","imageKeys","Set","ele","add","has","AlignmentBlock","joinHyphenCase","Field","field","form","icon","LeftAlign","tooltipProps","content","position","CenterAlign","ColorBlock","_ref$color","color","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","_ref$placeholder","placeholder","Select","menuPosition","styles","option","data","fontFamily","SelectBlock","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","i18n","translationKey","doesHelpTextExist","exists","HelpPopover","description","Switch","Properties","onPropertiesChange","_useThemeStore","useThemeStore","setThemeState","_useThemeUtils","useThemeUtils","setVariable","setTheme","handleColorChange","hex","rgb","r","g","b","a","variableValue","handleOverlayChange","overlayColorVariable","Math","abs","useEffect","previewingTheme","_Fragment","sort","_findBy","Infinity","_findBy2","isCurrentPropertyVisible","_ref4","Number","radius","negate","opacity","_findBy3","_findBy3$options","toLabelAndValue","checked","e","target","ImageBlock","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","dominantColor","wrap","_callee$","_context","prev","next","isEmpty","abrupt","getDominantColorFromUrl","sent","t0","Toastr","error","stop","_x","arguments","_createElement","ImageUploader","src","onUploadComplete","Images","ThemeMeta","withT","Input","autoFocus","onCreateTheme","onApplyTheme","isApplyingTheme","onUpdateThemeSuccess","popoverInstance","setPopoverInstance","currentTheme","_useShowGlobalTheme","_useShowGlobalTheme$d","_useShowGlobalTheme$d2","_useShowGlobalTheme$d3","globalTheme","isThemeGlobalTheme","isEditingCurrentlyAppliedTheme","submitBtnRef","useRef","_useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","updateTheme","isUpdating","isSubmitting","handleGlobalThemeSwitchChange","onSubmit","resetForm","themeToSave","propertiesAttributes","shouldSetAsGlobalTheme","Form","formikProps","initialValues","validationSchema","enableReinitialize","dirty","_ref5","Tooltip","disabled","loading","ref","Popover","appendTo","document","body","reference","trigger","Close","_popoverInstance$hide","hide","call","Trans","components","bold","i18nKey","onMount","Check","props","fill","height","viewBox","width","xmlns","rx","x","y","stroke","strokeWidth","d","strokeLinecap","strokeLinejoin","colorInterpolationFilters","filterUnits","floodOpacity","result","stdDeviation","in2","operator","Thumbnail","_theme$snakeToCamelCa","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","backgroundImage","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","isGlobalTheme","onApplyGlobalTheme","thumbnail","appliedCount","handleCloneTheme","handleEditTheme","handleDeleteTheme","handleApplyGlobalTheme","DefaultThumbnail","Rating","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","stopPropagation","menuItems","isVisible","isFunction","memo","Themes","_ref$themes","themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isLoading","isCurrentThemeLoading","themeBeingApplied","searchQuery","setSearchQuery","_useCloneTheme","cloneTheme","_useApplyGlobalTheme","isLoadingGlobalTheme","current","setPreviewTheme","filteredDefaultThemes","toLowerCase","includes","filteredThemes","isSearchFieldVisible","length","clonedTheme","Spinner","Search","autoComplete","onSearch","isNotEmpty","isActive","TitleBar","handleBackPress","handleCreateNewTheme","isNewTheme","themeToEdit","Plus","iconPosition","LeftArrow","MemoizedAlert","Alert","Sidebar","_themeToEdit$current","_themeToEdit$current2","_themeToDelete$curren2","_themeToDelete$curren3","_themeToDelete$curren4","onApplyThemeSuccess","setCurrentScreen","_useState3","_useState4","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","setThemeToHighlight","_useState7","_useState8","setThemeBeingApplied","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_useState9","_useState10","isThemesSidebarCollapsed","setIsThemesSidebarCollapsed","isFetchingSchema","defaultThemeName","_useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","deleteTheme","isDeleting","_useApplyTheme","highlightTheme","applyTheme","themeToDelete","createdTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","isOpen","message","count","onClose","Collapse","NeetoThemesBuilder","_ref$isTemplateThemes","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","setConfigState","isFetchingCurrentTheme","isFetching","withTitle"],"mappings":"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","x_google_ignoreList":[2]}