@bigbinary/neeto-themes-frontend 2.1.0 → 2.1.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.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../app/javascript/src/constants/index.js","../app/javascript/src/apis/entities.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../app/javascript/src/stores/useConfigStore.js","../app/javascript/src/stores/useThemeStore.js","../app/javascript/src/components/utils.js","../app/javascript/src/utils/index.js","../app/javascript/src/apis/schemas.js","../app/javascript/src/hooks/reactQuery/useSchemasApi.js","../app/javascript/src/hooks/useThemeUtils.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","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js"],"sourcesContent":["export const BASE_URL = \"neeto_themes_engine\";\nexport const WHITE = \"255, 255, 255\";\nexport const BLACK = \"0, 0, 0\";\n","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","export const QUERY_KEYS = {\n THEMES_LIST: \"themes-list\",\n THEME_DETAILS: \"theme-details\",\n SCHEMA_DETAILS: \"schema-details\",\n};\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","import { withImmutableActions } from \"neetocommons/react-utils\";\nimport { create } from \"zustand\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useConfigStore = create(\n withImmutableActions(set => ({\n themePropertiesSchema: [],\n entityType: \"\",\n entityId: \"\",\n variableNamesMap: {},\n defaultThemeName: \"Plain blue\",\n isFetchingSchema: true,\n isTemplateThemesEnabled: false,\n\n setConfigState: set,\n }))\n);\n\nexport default useConfigStore;\n","import { withImmutableActions } from \"neetocommons/react-utils\";\nimport { create } from \"zustand\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useThemeStore = create(\n withImmutableActions(set => ({\n currentTheme: {},\n isCurrentThemeLoading: true,\n previewingTheme: {},\n\n setThemeState: set,\n }))\n);\n\nexport default useThemeStore;\n","import { Toastr } from \"neetoui\";\n\nexport const getImageFromUrl = source => {\n const image = new Image();\n image.crossOrigin = \"anonymous\";\n image.src = source;\n\n return new Promise(resolve => {\n image.onload = () => {\n resolve(image);\n };\n });\n};\n\nexport const getDominantColorFromUrl = async imageUrl => {\n try {\n const image = await getImageFromUrl(imageUrl);\n const context = document.createElement(\"canvas\").getContext(\"2d\");\n context?.drawImage(image, 0, 0, 1, 1);\n const c = context?.getImageData(0, 0, 1, 1).data;\n\n if (c) {\n return `#${((1 << 24) + (c[0] << 16) + (c[1] << 8) + c[2])\n .toString(16)\n .slice(1)}`;\n }\n\n return null;\n } catch (error) {\n Toastr.error(error);\n\n return null;\n }\n};\n\nexport const scrollElementIntoView = elementId => {\n const elementToScroll = document.getElementById(elementId);\n elementToScroll?.scrollIntoView({ behavior: \"smooth\" });\n};\n\nexport const isFunction = obj => typeof obj === \"function\";\n\nexport const hexToRgba = hex => {\n const result =\n /^#?(?:([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})?|([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2}))$/i.exec(\n hex\n );\n\n if (!result) return null;\n\n const r = parseInt(result[1] || result[5], 16);\n const g = parseInt(result[2] || result[6], 16);\n const b = parseInt(result[3] || result[7], 16);\n const a = result[4]\n ? Math.round(parseInt(result[4], 16) / 2.55) / 100\n : undefined;\n\n return `${r}, ${g}, ${b}${a !== undefined ? `, ${a}` : \"\"}`;\n};\n\nexport const hexToRgb = hex => hexToRgba(hex?.slice(0, 7));\n","import {\n filterBy,\n findBy,\n isNotPresent,\n isPresent,\n snakeToCamelCase,\n} from \"neetocist\";\n\nimport { hexToRgba } from \"components/utils\";\nimport { BLACK, WHITE } from \"src/constants\";\n\nconst root = document.querySelector(\":root\");\n\nexport const setVariable = (name, value, variableNamesMap) => {\n const variableName = variableNamesMap[name];\n if (!variableName) return;\n\n root.style.setProperty(variableName, value);\n};\n\nexport const isPropertyIndependent = (key, theme, schema) => {\n const property = findBy({ key }, schema);\n\n if (isNotPresent(property)) return false;\n\n const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentPropertySchema = findBy({ key: conditionalKey }, schema);\n\n const dependentProperty = findBy({ key: conditionalKey }, theme.properties);\n\n if (dependentPropertySchema.kind === \"image\") {\n return isPresent(theme[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 setTheme = (theme, variableNamesMap, themeConfig) => {\n if (isNotPresent(theme?.properties)) return;\n\n theme.properties.forEach(property => {\n const attribute = snakeToCamelCase(property.key);\n\n if (!isPropertyIndependent(property.key, theme, themeConfig)) {\n setVariable(attribute, \"\", variableNamesMap);\n\n return;\n }\n\n if (property.kind === \"color\") {\n setVariable(attribute, hexToRgba(property.value), variableNamesMap);\n } else if (property.kind === \"overlay_opacity\") {\n const overlayOpacity = Number(property.value);\n\n setVariable(\n snakeToCamelCase(`${property.key}_overlay_opacity`),\n Math.abs(overlayOpacity / 100),\n variableNamesMap\n );\n\n setVariable(\n snakeToCamelCase(`${property.key}_overlay_color`),\n overlayOpacity < 0 ? BLACK : WHITE,\n variableNamesMap\n );\n } else if (property.kind === \"radius\") {\n setVariable(attribute, `${property.value}px`, variableNamesMap);\n } else {\n setVariable(attribute, property.value, variableNamesMap);\n }\n });\n\n filterBy({ kind: \"image\" }, themeConfig).forEach(({ key }) => {\n const attribute = snakeToCamelCase(key);\n setVariable(attribute, `url(${theme[attribute]?.url})`, variableNamesMap);\n });\n};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = () => axios.get(`${BASE_URL}/api/v1/schema`);\n\nconst schemasApi = { list };\n\nexport default schemasApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport schemasApi from \"apis/schemas\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useListSchema = () =>\n useQuery({\n queryKey: [QUERY_KEYS.SCHEMA_DETAILS],\n queryFn: schemasApi.list,\n });\n","import { useEffect } from \"react\";\n\nimport { prop } from \"ramda\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\nimport {\n setTheme as setThemeUtil,\n setVariable as setVariableUtil,\n} from \"utils\";\n\nimport { useListSchema } from \"./reactQuery/useSchemasApi\";\n\nconst useThemeUtils = () => {\n const setConfigState = useConfigStore(prop(\"setConfigState\"));\n const { previewingTheme, currentTheme } = useThemeStore.pick();\n\n const { isLoading: isFetchingSchema, data } = useListSchema();\n\n const { schema: themePropertiesSchema = [], variableNamesMap = {} } =\n data || {};\n\n useEffect(() => {\n if (data) {\n setConfigState({\n themePropertiesSchema: data?.schema,\n variableNamesMap: data?.variableNamesMap,\n defaultThemeName: data?.defaultThemeName,\n });\n }\n }, [data]);\n\n useEffect(() => setConfigState({ isFetchingSchema }), [isFetchingSchema]);\n\n const setVariable = (name, value) =>\n setVariableUtil(name, value, variableNamesMap);\n\n const setTheme = theme =>\n setThemeUtil(theme, variableNamesMap, themePropertiesSchema);\n\n return {\n setTheme,\n setVariable,\n previewingTheme,\n currentTheme,\n isFetchingSchema,\n };\n};\n\nexport default useThemeUtils;\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\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","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"],"names":["BASE_URL","WHITE","BLACK","show","entityId","axios","get","concat","entitiesApi","QUERY_KEYS","THEMES_LIST","THEME_DETAILS","SCHEMA_DETAILS","useShowThemeEntity","useQuery","queryKey","THEME_ENTITY_DETAILS","queryFn","enabled","useConfigStore","create","withImmutableActions","set","themePropertiesSchema","entityType","variableNamesMap","defaultThemeName","isFetchingSchema","isTemplateThemesEnabled","setConfigState","useThemeStore","currentTheme","isCurrentThemeLoading","previewingTheme","setThemeState","getImageFromUrl","source","image","Image","crossOrigin","src","Promise","resolve","onload","getDominantColorFromUrl","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","imageUrl","context","c","wrap","_callee$","_context","prev","next","sent","document","createElement","getContext","drawImage","getImageData","data","abrupt","toString","slice","t0","Toastr","error","stop","_x","apply","arguments","scrollElementIntoView","elementId","elementToScroll","getElementById","scrollIntoView","behavior","isFunction","obj","hexToRgba","hex","result","exec","r","parseInt","g","b","a","Math","round","undefined","root","querySelector","setVariable","name","value","variableName","style","setProperty","isPropertyIndependent","key","theme","schema","property","findBy","isNotPresent","conditionalKey","dependsOn","dependentPropertySchema","dependentProperty","properties","kind","_theme$snakeToCamelCa","isPresent","snakeToCamelCase","url","setTheme","themeConfig","forEach","attribute","overlayOpacity","Number","abs","filterBy","_theme$attribute","list","schemasApi","useListSchema","useThemeUtils","prop","_useThemeStore","store","shallow","_useListSchema","isLoading","_ref$schema","_ref$variableNamesMap","useEffect","setVariableUtil","setThemeUtil","params","entity_id","id","payload","post","update","put","destroy","clone","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","_useConfigStore","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","POSITION_OPTIONS","label","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","buildInitialValues","t","map","defaultValue","String","filter","isNot","buildImageData","values","reduce","acc","item","_values$snakeToCamelC","signedId","isPropertyVisible","formikValues","hidden","_formikValues$snakeTo","buildLabel","Card","_ref$title","title","children","_jsxs","className","hyphenate","_jsx","Typography","lineHeight","weight","SelectBlock","_ref$placeholder","placeholder","options","onChange","joinHyphenCase","Select","DESIGN_SCREENS","THEMES","Customize","ONE_MEGABYTE","ImageBlock","_findBy","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","_useTranslation","useTranslation","_useFormikContext","useFormikContext","setFieldValue","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","findIndexBy","handleImageChange","dominantColor","isEmpty","_createElement","ImageUploader","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","_objectSpread","fontFamily","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","i18n","translationKey","doesHelpTextExist","exists","classnames","HelpPopover","description","Switch","Properties","onPropertiesChange","_useThemeUtils","handleColorChange","rgb","handleChange","variableValue","index","handleOverlayChange","overlayColorVariable","_ref3","_ref4","_ref5","_ref6","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","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","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","stdDeviation","in2","operator","Thumbnail","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","memo","Themes","_ref$themes","themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","themeBeingApplied","searchQuery","setSearchQuery","_useCloneTheme","cloneTheme","current","setTimeout","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","_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","isFetchingCurrentTheme","isFetching","withTitle"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../app/javascript/src/constants/index.js","../app/javascript/src/apis/entities.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../app/javascript/src/stores/useConfigStore.js","../app/javascript/src/stores/useThemeStore.js","../app/javascript/src/components/utils.js","../app/javascript/src/utils/index.js","../app/javascript/src/apis/schemas.js","../app/javascript/src/hooks/reactQuery/useSchemasApi.js","../app/javascript/src/hooks/useThemeUtils.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","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js"],"sourcesContent":["export const BASE_URL = \"neeto_themes_engine\";\nexport const WHITE = \"255, 255, 255\";\nexport const BLACK = \"0, 0, 0\";\n","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","export const QUERY_KEYS = {\n THEMES_LIST: \"themes-list\",\n THEME_DETAILS: \"theme-details\",\n SCHEMA_DETAILS: \"schema-details\",\n};\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","import { withImmutableActions } from \"neetocommons/react-utils\";\nimport { create } from \"zustand\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useConfigStore = create(\n withImmutableActions(set => ({\n themePropertiesSchema: [],\n entityType: \"\",\n entityId: \"\",\n variableNamesMap: {},\n defaultThemeName: \"Plain blue\",\n isFetchingSchema: true,\n isTemplateThemesEnabled: false,\n\n setConfigState: set,\n }))\n);\n\nexport default useConfigStore;\n","import { withImmutableActions } from \"neetocommons/react-utils\";\nimport { create } from \"zustand\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useThemeStore = create(\n withImmutableActions(set => ({\n currentTheme: {},\n isCurrentThemeLoading: true,\n previewingTheme: {},\n\n setThemeState: set,\n }))\n);\n\nexport default useThemeStore;\n","import { Toastr } from \"neetoui\";\n\nexport const getImageFromUrl = source => {\n const image = new Image();\n image.crossOrigin = \"anonymous\";\n image.src = source;\n\n return new Promise(resolve => {\n image.onload = () => {\n resolve(image);\n };\n });\n};\n\nexport const getDominantColorFromUrl = async imageUrl => {\n try {\n const image = await getImageFromUrl(imageUrl);\n const context = document.createElement(\"canvas\").getContext(\"2d\");\n context?.drawImage(image, 0, 0, 1, 1);\n const c = context?.getImageData(0, 0, 1, 1).data;\n\n if (c) {\n return `#${((1 << 24) + (c[0] << 16) + (c[1] << 8) + c[2])\n .toString(16)\n .slice(1)}`;\n }\n\n return null;\n } catch (error) {\n Toastr.error(error);\n\n return null;\n }\n};\n\nexport const scrollElementIntoView = elementId => {\n const elementToScroll = document.getElementById(elementId);\n elementToScroll?.scrollIntoView({ behavior: \"smooth\" });\n};\n\nexport const isFunction = obj => typeof obj === \"function\";\n\nexport const hexToRgba = hex => {\n const result =\n /^#?(?:([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})?|([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2}))$/i.exec(\n hex\n );\n\n if (!result) return null;\n\n const r = parseInt(result[1] || result[5], 16);\n const g = parseInt(result[2] || result[6], 16);\n const b = parseInt(result[3] || result[7], 16);\n const a = result[4]\n ? Math.round(parseInt(result[4], 16) / 2.55) / 100\n : undefined;\n\n return `${r}, ${g}, ${b}${a !== undefined ? `, ${a}` : \"\"}`;\n};\n\nexport const hexToRgb = hex => hexToRgba(hex?.slice(0, 7));\n","import {\n filterBy,\n findBy,\n isNotPresent,\n isPresent,\n snakeToCamelCase,\n} from \"neetocist\";\n\nimport { hexToRgba } from \"components/utils\";\nimport { BLACK, WHITE } from \"src/constants\";\n\nconst root = document.querySelector(\":root\");\n\nexport const setVariable = (name, value, variableNamesMap) => {\n const variableName = variableNamesMap[name];\n if (!variableName) return;\n\n root.style.setProperty(variableName, value);\n};\n\nexport const isPropertyIndependent = (key, theme, schema) => {\n const property = findBy({ key }, schema);\n\n if (isNotPresent(property)) return false;\n\n const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentPropertySchema = findBy({ key: conditionalKey }, schema);\n\n const dependentProperty = findBy({ key: conditionalKey }, theme.properties);\n\n if (dependentPropertySchema.kind === \"image\") {\n return isPresent(theme[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 setTheme = (theme, variableNamesMap, themeConfig) => {\n if (isNotPresent(theme?.properties)) return;\n\n theme.properties.forEach(property => {\n const attribute = snakeToCamelCase(property.key);\n\n if (\n property.kind !== \"overlay_opacity\" &&\n !isPropertyIndependent(property.key, theme, themeConfig)\n ) {\n setVariable(attribute, \"\", variableNamesMap);\n\n return;\n }\n\n if (property.kind === \"color\") {\n setVariable(attribute, hexToRgba(property.value), variableNamesMap);\n } else if (property.kind === \"overlay_opacity\") {\n const overlayOpacity = Number(property.value);\n\n setVariable(\n snakeToCamelCase(`${property.key}_overlay_opacity`),\n Math.abs(overlayOpacity / 100),\n variableNamesMap\n );\n\n setVariable(\n snakeToCamelCase(`${property.key}_overlay_color`),\n overlayOpacity < 0 ? BLACK : WHITE,\n variableNamesMap\n );\n } else if (property.kind === \"radius\") {\n setVariable(attribute, `${property.value}px`, variableNamesMap);\n } else {\n setVariable(attribute, property.value, variableNamesMap);\n }\n });\n\n filterBy({ kind: \"image\" }, themeConfig).forEach(({ key }) => {\n const attribute = snakeToCamelCase(key);\n setVariable(attribute, `url(${theme[attribute]?.url})`, variableNamesMap);\n });\n};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = () => axios.get(`${BASE_URL}/api/v1/schema`);\n\nconst schemasApi = { list };\n\nexport default schemasApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport schemasApi from \"apis/schemas\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useListSchema = () =>\n useQuery({\n queryKey: [QUERY_KEYS.SCHEMA_DETAILS],\n queryFn: schemasApi.list,\n });\n","import { useEffect } from \"react\";\n\nimport { prop } from \"ramda\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\nimport {\n setTheme as setThemeUtil,\n setVariable as setVariableUtil,\n} from \"utils\";\n\nimport { useListSchema } from \"./reactQuery/useSchemasApi\";\n\nconst useThemeUtils = () => {\n const setConfigState = useConfigStore(prop(\"setConfigState\"));\n const { previewingTheme, currentTheme } = useThemeStore.pick();\n\n const { isLoading: isFetchingSchema, data } = useListSchema();\n\n const { schema: themePropertiesSchema = [], variableNamesMap = {} } =\n data || {};\n\n useEffect(() => {\n if (data) {\n setConfigState({\n themePropertiesSchema: data?.schema,\n variableNamesMap: data?.variableNamesMap,\n defaultThemeName: data?.defaultThemeName,\n });\n }\n }, [data]);\n\n useEffect(() => setConfigState({ isFetchingSchema }), [isFetchingSchema]);\n\n const setVariable = (name, value) =>\n setVariableUtil(name, value, variableNamesMap);\n\n const setTheme = theme =>\n setThemeUtil(theme, variableNamesMap, themePropertiesSchema);\n\n return {\n setTheme,\n setVariable,\n previewingTheme,\n currentTheme,\n isFetchingSchema,\n };\n};\n\nexport default useThemeUtils;\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\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","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"],"names":["BASE_URL","WHITE","BLACK","show","entityId","axios","get","concat","entitiesApi","QUERY_KEYS","THEMES_LIST","THEME_DETAILS","SCHEMA_DETAILS","useShowThemeEntity","useQuery","queryKey","THEME_ENTITY_DETAILS","queryFn","enabled","useConfigStore","create","withImmutableActions","set","themePropertiesSchema","entityType","variableNamesMap","defaultThemeName","isFetchingSchema","isTemplateThemesEnabled","setConfigState","useThemeStore","currentTheme","isCurrentThemeLoading","previewingTheme","setThemeState","getImageFromUrl","source","image","Image","crossOrigin","src","Promise","resolve","onload","getDominantColorFromUrl","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","imageUrl","context","c","wrap","_callee$","_context","prev","next","sent","document","createElement","getContext","drawImage","getImageData","data","abrupt","toString","slice","t0","Toastr","error","stop","_x","apply","arguments","scrollElementIntoView","elementId","elementToScroll","getElementById","scrollIntoView","behavior","isFunction","obj","hexToRgba","hex","result","exec","r","parseInt","g","b","a","Math","round","undefined","root","querySelector","setVariable","name","value","variableName","style","setProperty","isPropertyIndependent","key","theme","schema","property","findBy","isNotPresent","conditionalKey","dependsOn","dependentPropertySchema","dependentProperty","properties","kind","_theme$snakeToCamelCa","isPresent","snakeToCamelCase","url","setTheme","themeConfig","forEach","attribute","overlayOpacity","Number","abs","filterBy","_theme$attribute","list","schemasApi","useListSchema","useThemeUtils","prop","_useThemeStore","store","shallow","_useListSchema","isLoading","_ref$schema","_ref$variableNamesMap","useEffect","setVariableUtil","setThemeUtil","params","entity_id","id","payload","post","update","put","destroy","clone","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","_useConfigStore","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","POSITION_OPTIONS","label","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","buildInitialValues","t","map","defaultValue","String","filter","isNot","buildImageData","values","reduce","acc","item","_values$snakeToCamelC","signedId","isPropertyVisible","formikValues","hidden","_formikValues$snakeTo","buildLabel","Card","_ref$title","title","children","_jsxs","className","hyphenate","_jsx","Typography","lineHeight","weight","SelectBlock","_ref$placeholder","placeholder","options","onChange","joinHyphenCase","Select","DESIGN_SCREENS","THEMES","Customize","ONE_MEGABYTE","ImageBlock","_findBy","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","_useTranslation","useTranslation","_useFormikContext","useFormikContext","setFieldValue","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","findIndexBy","handleImageChange","dominantColor","isEmpty","_createElement","ImageUploader","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","_objectSpread","fontFamily","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","i18n","translationKey","doesHelpTextExist","exists","classnames","HelpPopover","description","Switch","Properties","onPropertiesChange","_useThemeUtils","handleColorChange","rgb","handleChange","variableValue","index","handleOverlayChange","overlayColorVariable","_ref3","_ref4","_ref5","_ref6","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","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","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","stdDeviation","in2","operator","Thumbnail","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","memo","Themes","_ref$themes","themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","themeBeingApplied","searchQuery","setSearchQuery","_useCloneTheme","cloneTheme","current","setTimeout","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","_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","isFetchingCurrentTheme","isFetching","withTitle"],"mappings":"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"}