@bigbinary/neeto-themes-frontend 1.2.3 → 1.3.0-beta2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +35 -33
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +35 -33
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../app/javascript/src/stores/useConfigStore.js","../app/javascript/src/stores/useThemeStore.js","../app/javascript/src/components/utils.js","../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/apis/themes.js","../app/javascript/src/hooks/reactQuery/useThemesApi.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/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/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/ColorBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/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":["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 isFetchingSchema: true,\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","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 \"react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery(\n [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n () => entitiesApi.show(entityId),\n { enabled: !!entityId }\n );\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = () => axios.get(`${BASE_URL}/api/v1/themes`);\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 { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { useQuery } from \"react-query\";\n\nimport themesApi from \"apis/themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useListThemes = () =>\n useQuery(QUERY_KEYS.THEMES_LIST, themesApi.list);\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: [QUERY_KEYS.THEMES_LIST, QUERY_KEYS.THEME_ENTITY_DETAILS],\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: [QUERY_KEYS.THEMES_LIST, QUERY_KEYS.THEME_ENTITY_DETAILS],\n onSuccess,\n });\n","import { filterBy, isNotPresent, snakeToCamelCase } 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 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 (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 {\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 \"react-query\";\n\nimport schemasApi from \"apis/schemas\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useListSchema = ({ onSuccess }) =>\n useQuery(QUERY_KEYS.SCHEMA_DETAILS, schemasApi.list, { onSuccess });\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 {\n isLoading: isFetchingSchema,\n data: { schema: themePropertiesSchema = [], variableNamesMap = {} } = {},\n } = useListSchema({\n onSuccess: ({\n schema: themePropertiesSchema = [],\n variableNamesMap = {},\n }) => setConfigState({ themePropertiesSchema, variableNamesMap }),\n });\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 * 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 \"boolean\":\n return { value: String(defaultValue), kind: \"boolean\", key };\n case \"position_selector\":\n return { value: defaultValue, kind: \"position_selector\", 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 const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentProperty = findBy(\n { key: conditionalKey },\n themePropertiesSchema\n );\n\n if (dependentProperty.kind === \"image\") {\n return isPresent(formikValues[snakeToCamelCase(conditionalKey)]?.url);\n }\n\n return isPresent(\n findBy({ key: conditionalKey }, formikValues.properties)?.value\n );\n};\n\nexport const buildLabel = (key, kind) =>\n t(\n `neetoThemes.properties.${snakeToCamelCase(kind)}.${snakeToCamelCase(key)}`\n );\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ title = \"\", children }) => (\n <div className=\"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white space-y-3 border p-4\">\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","export const DESIGN_SCREENS = { THEMES: \"Themes\", Customize: \"Customize\" };\n\nexport const ONE_MEGABYTE = 1;\n","import React from \"react\";\n\nimport { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { useFormikContext } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n}) => {\n const { setFieldValue } = useFormikContext();\n\n const handleImageChange = image => {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n setFieldValue(name, { signedId: image.signedId, url: image.url });\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 <ImageUploader\n {...{ uploadConfig }}\n className=\"h-40 w-full\"\n key={imageData?.url}\n src={imageData?.url}\n onUploadComplete={handleImageChange}\n />\n </div>\n );\n};\n\nexport default ImageBlock;\n","import React from \"react\";\n\nimport { 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 {...{ imageData }} name={key} />\n </div>\n </Card>\n );\n};\n\nexport default Images;\n","import React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport { 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","import React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport { Typography, Switch } from \"neetoui\";\n\nconst SwitchBlock = ({ label, name, ...switchProps }) => (\n <div className=\"flex items-center justify-between py-3 first:pt-0 last:pb-0\">\n <Typography style=\"body2\">{label}</Typography>\n <Switch {...{ name, ...switchProps }} />\n </div>\n);\n\nexport default SwitchBlock;\n","import React, { 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 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) setFieldValue(`properties[${index}].value`, value);\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, setFieldValue);\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 onChange={handleColorChange(key)}\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 onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n )\n );\n }\n )}\n </div>\n </Card>\n );\n};\n\nexport default Properties;\n","import React from \"react\";\n\nimport { 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 React, { 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}) => {\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, isLoading: isCreating } = useCreateTheme();\n const { mutate: updateTheme, isLoading: 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 });\n onCreateTheme(theme);\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: () => resetForm({ values }),\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","import React from \"react\";\n\nconst 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=\"#4558F9\" 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 React from \"react\";\n\nimport 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 React, { 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 label: t(\"neetoThemes.common.edit\"),\n isVisible: isPresent(onEditTheme),\n onClick: handleEditTheme,\n },\n {\n key: \"clone\",\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: handleDeleteTheme,\n },\n ]}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import React, { 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 className=\"flex flex-col gap-4 px-4 pb-10 lg:px-5 xl:px-6\">\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\">\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 React from \"react\";\n\nimport { 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}) => {\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}\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 React, { memo, useCallback, useEffect, useRef, useState } from \"react\";\n\nimport { isNotPresent } 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 = ({ thumbnail, onPropertiesChange }) => {\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 } = 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();\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading: isCurrentThemeLoading,\n } = useShowThemeEntity(entityId);\n\n const { mutate: deleteTheme, isLoading: isDeleting } = useDeleteTheme();\n\n const { mutate: applyTheme, isLoading: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n setTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\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 = () => {\n setTheme(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 useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setTheme(currentTheme);\n }, [currentTheme, entityId]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({\n currentTheme,\n isCurrentThemeLoading,\n previewingTheme: currentTheme,\n });\n }, [currentTheme, isCurrentThemeLoading]);\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 />\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 }}\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 entityType,\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n </div>\n );\n};\n\nexport default Sidebar;\n","import React, { useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\n\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}) => {\n const { isCurrentThemeLoading } = useThemeStore.pick();\n const { setConfigState } = useConfigStore.pick();\n\n useEffect(() => {\n setConfigState({ entityType, entityId });\n }, []);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <Sidebar {...{ onPropertiesChange, thumbnail }} />\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":["useConfigStore","create","withImmutableActions","set","themePropertiesSchema","entityType","entityId","variableNamesMap","isFetchingSchema","setConfigState","useThemeStore","currentTheme","isCurrentThemeLoading","previewingTheme","setThemeState","scrollElementIntoView","elementId","elementToScroll","document","getElementById","scrollIntoView","behavior","isFunction","obj","hexToRgba","hex","result","exec","r","parseInt","g","b","a","Math","round","undefined","concat","BASE_URL","WHITE","BLACK","show","axios","get","entitiesApi","QUERY_KEYS","THEMES_LIST","THEME_DETAILS","SCHEMA_DETAILS","useShowThemeEntity","useQuery","THEME_ENTITY_DETAILS","enabled","list","id","payload","post","theme","update","_ref","put","destroy","clone","apply","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","root","querySelector","setVariable","name","value","variableName","style","setProperty","setTheme","themeConfig","isNotPresent","properties","forEach","property","attribute","snakeToCamelCase","key","kind","overlayOpacity","Number","abs","filterBy","_theme$attribute","url","schemasApi","useListSchema","useThemeUtils","prop","_useThemeStore","store","shallow","_useListSchema","_ref$schema","schema","_ref$variableNamesMap","isLoading","_useListSchema$data","data","_useListSchema$data2","_useListSchema$data2$","_useListSchema$data2$2","useEffect","setVariableUtil","setThemeUtil","POSITION_OPTIONS","label","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","buildInitialValues","isPresent","t","map","defaultValue","String","filter","isNot","buildImageData","values","reduce","acc","item","_values$snakeToCamelC","signedId","isPropertyVisible","formikValues","_findBy","findBy","conditionalKey","dependsOn","dependentProperty","_formikValues$snakeTo","buildLabel","Card","_ref$title","title","children","_jsxs","className","_jsx","Typography","lineHeight","weight","DESIGN_SCREENS","THEMES","Customize","ONE_MEGABYTE","ImageBlock","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","_useFormikContext","useFormikContext","setFieldValue","handleImageChange","image","isEmpty","joinHyphenCase","_createElement","ImageUploader","src","onUploadComplete","Images","ColorBlock","_ref$color","color","onChange","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","_ref$placeholder","placeholder","options","Select","menuPosition","styles","option","_objectSpread","fontFamily","SelectBlock","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","Switch","Properties","onPropertiesChange","_useTranslation","useTranslation","_useConfigStore","_useThemeUtils","handleColorChange","rgb","handleChange","variableValue","index","findIndexBy","handleOverlayChange","overlayColorVariable","_ref3","_ref4","_ref5","_ref6","negate","opacity","_ref7","toLabelAndValue","_ref8","checked","e","target","ThemeMeta","withT","Input","autoFocus","onCreateTheme","onApplyTheme","isApplyingTheme","_useState","useState","_useState2","_slicedToArray","popoverInstance","setPopoverInstance","isEditingCurrentlyAppliedTheme","submitBtnRef","useRef","_useCreateTheme","createTheme","mutate","isCreating","_useUpdateTheme","updateTheme","isUpdating","isSubmitting","onSubmit","resetForm","themeToSave","propertiesAttributes","Form","formikProps","initialValues","validationSchema","dirty","Button","disabled","type","loading","ref","Popover","appendTo","body","position","reference","trigger","content","icon","Close","size","onClick","_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","_theme$snakeToCamelCa","_findBy2","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","classnames","backgroundImage","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","thumbnail","appliedCount","handleCloneTheme","handleEditTheme","handleDeleteTheme","hidden","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","LeftArrow","iconPosition","tooltipProps","Plus","MemoizedAlert","Alert","Sidebar","_themeToEdit$current","_themeToEdit$current2","_themeToDelete$curren2","_themeToDelete$curren3","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","applyTheme","themeToDelete","themeToEdit","highlightTheme","createdTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","isOpen","message","count","onClose","NeetoThemesBuilder","withTitle"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../app/javascript/src/stores/useConfigStore.js","../app/javascript/src/stores/useThemeStore.js","../app/javascript/src/components/utils.js","../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/apis/themes.js","../app/javascript/src/hooks/reactQuery/useThemesApi.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/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/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/ColorBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/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":["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 isFetchingSchema: true,\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","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 axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = () => axios.get(`${BASE_URL}/api/v1/themes`);\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\";\n\nexport const useListThemes = () =>\n useQuery({\n queryKey: [QUERY_KEYS.THEMES_LIST],\n queryFn: themesApi.list,\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 { filterBy, isNotPresent, snakeToCamelCase } 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 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 (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 {\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 });\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 * 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 \"boolean\":\n return { value: String(defaultValue), kind: \"boolean\", key };\n case \"position_selector\":\n return { value: defaultValue, kind: \"position_selector\", 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 const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentProperty = findBy(\n { key: conditionalKey },\n themePropertiesSchema\n );\n\n if (dependentProperty.kind === \"image\") {\n return isPresent(formikValues[snakeToCamelCase(conditionalKey)]?.url);\n }\n\n return isPresent(\n findBy({ key: conditionalKey }, formikValues.properties)?.value\n );\n};\n\nexport const buildLabel = (key, kind) =>\n t(\n `neetoThemes.properties.${snakeToCamelCase(kind)}.${snakeToCamelCase(key)}`\n );\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ title = \"\", children }) => (\n <div className=\"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white space-y-3 border p-4\">\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","export const DESIGN_SCREENS = { THEMES: \"Themes\", Customize: \"Customize\" };\n\nexport const ONE_MEGABYTE = 1;\n","import React from \"react\";\n\nimport { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { useFormikContext } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n}) => {\n const { setFieldValue } = useFormikContext();\n\n const handleImageChange = image => {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n setFieldValue(name, { signedId: image.signedId, url: image.url });\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 <ImageUploader\n {...{ uploadConfig }}\n className=\"h-40 w-full\"\n key={imageData?.url}\n src={imageData?.url}\n onUploadComplete={handleImageChange}\n />\n </div>\n );\n};\n\nexport default ImageBlock;\n","import React from \"react\";\n\nimport { 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 {...{ imageData }} name={key} />\n </div>\n </Card>\n );\n};\n\nexport default Images;\n","import React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport { 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","import React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport { Typography, Switch } from \"neetoui\";\n\nconst SwitchBlock = ({ label, name, ...switchProps }) => (\n <div className=\"flex items-center justify-between py-3 first:pt-0 last:pb-0\">\n <Typography style=\"body2\">{label}</Typography>\n <Switch {...{ name, ...switchProps }} />\n </div>\n);\n\nexport default SwitchBlock;\n","import React, { 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 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) setFieldValue(`properties[${index}].value`, value);\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, setFieldValue);\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 onChange={handleColorChange(key)}\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 onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n )\n );\n }\n )}\n </div>\n </Card>\n );\n};\n\nexport default Properties;\n","import React from \"react\";\n\nimport { 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 React, { 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}) => {\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 });\n onCreateTheme(theme);\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: () => resetForm({ values }),\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","import React from \"react\";\n\nconst 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=\"#4558F9\" 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 React from \"react\";\n\nimport 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 React, { 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 label: t(\"neetoThemes.common.edit\"),\n isVisible: isPresent(onEditTheme),\n onClick: handleEditTheme,\n },\n {\n key: \"clone\",\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: handleDeleteTheme,\n },\n ]}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import React, { 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 className=\"flex flex-col gap-4 px-4 pb-10 lg:px-5 xl:px-6\">\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\">\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 React from \"react\";\n\nimport { 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}) => {\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}\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 React, { memo, useCallback, useEffect, useRef, useState } from \"react\";\n\nimport { isNotPresent } 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 = ({ thumbnail, onPropertiesChange }) => {\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 } = 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();\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, isLoading: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n setTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\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 = () => {\n setTheme(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 useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setTheme(currentTheme);\n }, [currentTheme, entityId]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({\n currentTheme,\n isCurrentThemeLoading,\n previewingTheme: currentTheme,\n });\n }, [currentTheme, isCurrentThemeLoading]);\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 />\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 }}\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 entityType,\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n </div>\n );\n};\n\nexport default Sidebar;\n","import React, { useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\n\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}) => {\n const { isCurrentThemeLoading } = useThemeStore.pick();\n const { setConfigState } = useConfigStore.pick();\n\n useEffect(() => {\n setConfigState({ entityType, entityId });\n }, []);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <Sidebar {...{ onPropertiesChange, thumbnail }} />\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":["useConfigStore","create","withImmutableActions","set","themePropertiesSchema","entityType","entityId","variableNamesMap","isFetchingSchema","setConfigState","useThemeStore","currentTheme","isCurrentThemeLoading","previewingTheme","setThemeState","scrollElementIntoView","elementId","elementToScroll","document","getElementById","scrollIntoView","behavior","isFunction","obj","hexToRgba","hex","result","exec","r","parseInt","g","b","a","Math","round","undefined","concat","BASE_URL","WHITE","BLACK","show","axios","get","entitiesApi","QUERY_KEYS","THEMES_LIST","THEME_DETAILS","SCHEMA_DETAILS","useShowThemeEntity","useQuery","queryKey","THEME_ENTITY_DETAILS","queryFn","enabled","list","id","payload","post","theme","update","_ref","put","destroy","clone","apply","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","root","querySelector","setVariable","name","value","variableName","style","setProperty","setTheme","themeConfig","isNotPresent","properties","forEach","property","attribute","snakeToCamelCase","key","kind","overlayOpacity","Number","abs","filterBy","_theme$attribute","url","schemasApi","useListSchema","useThemeUtils","prop","_useThemeStore","store","shallow","_useListSchema","isLoading","data","_ref$schema","schema","_ref$variableNamesMap","useEffect","setVariableUtil","setThemeUtil","POSITION_OPTIONS","label","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","buildInitialValues","isPresent","t","map","defaultValue","String","filter","isNot","buildImageData","values","reduce","acc","item","_values$snakeToCamelC","signedId","isPropertyVisible","formikValues","_findBy","findBy","conditionalKey","dependsOn","dependentProperty","_formikValues$snakeTo","buildLabel","Card","_ref$title","title","children","_jsxs","className","_jsx","Typography","lineHeight","weight","DESIGN_SCREENS","THEMES","Customize","ONE_MEGABYTE","ImageBlock","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","_useFormikContext","useFormikContext","setFieldValue","handleImageChange","image","isEmpty","joinHyphenCase","_createElement","ImageUploader","src","onUploadComplete","Images","ColorBlock","_ref$color","color","onChange","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","_ref$placeholder","placeholder","options","Select","menuPosition","styles","option","_objectSpread","fontFamily","SelectBlock","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","Switch","Properties","onPropertiesChange","_useTranslation","useTranslation","_useConfigStore","_useThemeUtils","handleColorChange","rgb","handleChange","variableValue","index","findIndexBy","handleOverlayChange","overlayColorVariable","_ref3","_ref4","_ref5","_ref6","negate","opacity","_ref7","toLabelAndValue","_ref8","checked","e","target","ThemeMeta","withT","Input","autoFocus","onCreateTheme","onApplyTheme","isApplyingTheme","_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","Button","disabled","type","loading","ref","Popover","appendTo","body","position","reference","trigger","content","icon","Close","size","onClick","_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","_theme$snakeToCamelCa","_findBy2","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","classnames","backgroundImage","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","thumbnail","appliedCount","handleCloneTheme","handleEditTheme","handleDeleteTheme","hidden","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","LeftArrow","iconPosition","tooltipProps","Plus","MemoizedAlert","Alert","Sidebar","_themeToEdit$current","_themeToEdit$current2","_themeToDelete$curren2","_themeToDelete$curren3","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","applyTheme","themeToDelete","themeToEdit","highlightTheme","createdTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","isOpen","message","count","onClose","NeetoThemesBuilder","withTitle"],"mappings":"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"}
|