@bigbinary/neeto-themes-frontend 2.1.2 → 2.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/javascript/src/translations/en.json +1 -1
- package/dist/NeetoThemesBuilder.js +98 -66
- package/dist/NeetoThemesBuilder.js.map +1 -1
- package/dist/cjs/NeetoThemesBuilder.js +99 -66
- package/dist/cjs/NeetoThemesBuilder.js.map +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +14 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeetoThemesBuilder.js","sources":["../app/javascript/src/apis/entities.js","../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../app/javascript/src/apis/themes.js","../app/javascript/src/hooks/reactQuery/useThemesApi.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/constants.js","../app/javascript/src/components/NeetoThemesBuilder/constants.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/utils.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/CustomCSS.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Check.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityId => axios.get(`${BASE_URL}/api/v1/entities/${entityId}`);\n\nconst entitiesApi = { show };\n\nexport default entitiesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = entityId =>\n axios.get(`${BASE_URL}/api/v1/themes`, { params: { entity_id: entityId } });\n\nconst show = id => axios.get(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst create = payload =>\n axios.post(`${BASE_URL}/api/v1/themes`, { theme: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/api/v1/themes/${id}`, { theme: payload });\n\nconst destroy = id => axios.delete(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst clone = id => axios.post(`${BASE_URL}/api/v1/themes/${id}/clone`);\n\nconst apply = ({ themeId, ...payload }) =>\n axios.post(`${BASE_URL}/api/v1/themes/${themeId}/apply`, { entity: payload });\n\nconst themesApi = { list, show, create, update, destroy, clone, apply };\n\nexport default themesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport themesApi from \"apis/themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nexport const useListThemes = entityId => {\n const { isTemplateThemesEnabled } = useConfigStore.pick();\n\n const queryKey = isTemplateThemesEnabled\n ? [QUERY_KEYS.THEMES_LIST, entityId]\n : [QUERY_KEYS.THEMES_LIST];\n\n return useQuery({\n queryKey,\n queryFn: () => themesApi.list(entityId),\n });\n};\n\nexport const useCreateTheme = () =>\n useMutationWithInvalidation(themesApi.create, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useUpdateTheme = themeId =>\n useMutationWithInvalidation(\n payload => themesApi.update({ id: themeId, payload }),\n {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n [QUERY_KEYS.THEME_DETAILS, themeId],\n ],\n }\n );\n\nexport const useDeleteTheme = () =>\n useMutationWithInvalidation(themesApi.destroy, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n });\n\nexport const useCloneTheme = () =>\n useMutationWithInvalidation(themesApi.clone, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useApplyTheme = ({ onSuccess }) =>\n useMutationWithInvalidation(themesApi.apply, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n onSuccess,\n });\n","import * as yup from \"yup\";\n\nexport const FIVE_MEGABYTES = 5;\n\nexport const IMAGE_UPLOAD_CONFIG = { maxImageSize: FIVE_MEGABYTES };\n\nexport const POSITION_OPTIONS = [\n { label: \"Left\", value: \"left\" },\n { label: \"Right\", value: \"right\" },\n];\n\nexport const FONT_OPTIONS = [\n {\n label: \"System UI\",\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n },\n {\n label: \"Cedarville Cursive\",\n value: \"'Cedarville Cursive', cursive\",\n },\n { label: \"Poppins\", value: \"Poppins, sans-serif\" },\n { label: \"Roboto\", value: \"Roboto, sans-serif\" },\n { label: \"Open Sans\", value: \"Open Sans, sans-serif\" },\n { label: \"Montserrat\", value: \"Montserrat, sans-serif\" },\n { label: \"Raleway\", value: \"Raleway, sans-serif\" },\n { label: \"Quicksand\", value: \"Quicksand, sans-serif\" },\n { label: \"Inter\", value: \"Inter, sans-serif\" },\n { label: \"Satoshi\", value: \"Satoshi, sans-serif\" },\n { label: \"Chillax\", value: \"Chillax, sans-serif\" },\n { label: \"Clash Display\", value: \"Clash Display, sans-serif\" },\n { label: \"General Sans\", value: \"General Sans, sans-serif\" },\n { label: \"Cabinet Grotesk\", value: \"Cabinet Grotesk, sans-serif\" },\n { label: \"Lora\", value: \"Lora, serif\" },\n { label: \"Merriweather\", value: \"Merriweather, serif\" },\n { label: \"Boska\", value: \"Boska, serif\" },\n { label: \"Playfair Display\", value: \"Playfair Display, serif\" },\n { label: \"Roboto Slab\", value: \"Roboto Slab, serif\" },\n { label: \"Dancing Script\", value: \"Dancing Script, cursive\" },\n];\n\nexport const THEME_VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(\"Name is required\"),\n});\n\nexport const OVERLAY_OPACITY_SLIDER_MARKS = { 0: \" \" };\nexport const HUNDRED = 100;\n","export const DESIGN_SCREENS = {\n THEMES: \"Themes\",\n Customize: \"Customize\",\n CustomCSS: \"CustomCSS\",\n};\n\nexport const ONE_MEGABYTE = 1;\n","import { hyphenate } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ title = \"\", children }) => (\n <div\n className=\"neeto-themes-nano-section neeto-ui-border-gray-200 mb-4 space-y-3 border-b pb-4\"\n data-cy={`theme-${hyphenate(title)}-properties`}\n >\n {title && (\n <div className=\"neeto-themes-nano-section__title flex items-center justify-between\">\n <Typography\n className=\"min-w-0 flex-grow\"\n data-cy=\"theme-properties\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </div>\n )}\n {children && (\n <div className=\"neeto-themes-nano-section__content w-full\">\n {children}\n </div>\n )}\n </div>\n);\n\nexport default Card;\n","import { DESIGN_SCREENS } from \"../constants\";\n\nexport const isScreenCustomCSS = screen => screen === DESIGN_SCREENS.CustomCSS;\n","import Editor from \"@monaco-editor/react\";\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { findBy, findIndexBy } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DESIGN_SCREENS } from \"components/NeetoThemesBuilder/constants\";\nimport { scrollElementIntoView } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { setCustomCSS } from \"utils\";\n\nimport Card from \"../commons/Card\";\nimport { isScreenCustomCSS } from \"../utils\";\n\nconst CustomCSS = ({ onEditCSSClick, currentScreen }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const customCSS = findBy({ kind: \"custom_css\" }, values.properties);\n\n if (!customCSS) return null;\n\n const parentElementClass = findBy(\n { kind: \"custom_css\" },\n themePropertiesSchema\n ).parentClass;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleEditorToggle = () => {\n if (!isCustomCssScreen) return onEditCSSClick(DESIGN_SCREENS.CustomCSS);\n onEditCSSClick(DESIGN_SCREENS.Customize);\n\n return setTimeout(() => {\n scrollElementIntoView(\"css-editor\");\n }, 400);\n };\n\n const handleChange = value => {\n const index = findIndexBy({ key: customCSS.key }, values.properties);\n\n if (index !== -1 && values.properties[index].value !== value) {\n setFieldValue(`properties[${index}].value`, value);\n setCustomCSS({\n css: value,\n elementId: customCSS.key,\n parentElementClass,\n });\n }\n };\n\n return (\n <div className=\"neeto-themes-sidebar__custom-css-wrapper\" id=\"css-editor\">\n <Card\n title={\n isCustomCssScreen\n ? \"\"\n : t(\"neetoThemes.build.leftSideBar.themes.customCSS\")\n }\n >\n <div className=\"neeto-themes-sidebar__custom-css-editor-header flex w-full justify-end gap-1 rounded-b-none p-2\">\n <Button\n size=\"small\"\n style=\"secondary\"\n label={\n isCustomCssScreen\n ? t(\"neetoThemes.buttons.minimizeEditor\")\n : t(\"neetoThemes.buttons.expandEditor\")\n }\n onClick={handleEditorToggle}\n />\n </div>\n <Editor\n language=\"css\"\n options={{ scrollBeyondLastLine: false, minimap: { enabled: false } }}\n theme=\"vs-dark\"\n value={customCSS.value}\n className={classNames({\n rounded: true,\n \"css-editor-height__expanded\": isCustomCssScreen,\n \"css-editor-height__regular\": !isCustomCssScreen,\n })}\n onChange={handleChange}\n />\n </Card>\n </div>\n );\n};\n\nexport default CustomCSS;\n","import { t } from \"i18next\";\nimport {\n findBy,\n isNot,\n filterBy,\n isPresent,\n snakeToCamelCase,\n isNotPresent,\n} from \"neetocist\";\n\nexport const generateRandomColor = () => {\n const letters = \"0123456789ABCDEF\";\n let color = \"#\";\n for (let i = 0; i < 6; i++) {\n color += letters[Math.floor(Math.random() * 16)];\n }\n\n return color;\n};\n\nexport const buildInitialValues = (theme, themePropertiesSchema) => {\n if (isPresent(theme)) return theme;\n\n return {\n name: t(\"neetoThemes.build.leftSideBar.themes.createTheme.newThemeName\"),\n properties: themePropertiesSchema\n .map(({ key, kind, defaultValue, order = null }) => {\n switch (kind) {\n case \"color\":\n return {\n value: defaultValue,\n kind: \"color\",\n key,\n ...(order !== null && { order }),\n };\n case \"font_family\":\n return {\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n kind: \"font_family\",\n key,\n ...(order !== null && { order }),\n };\n case \"overlay_opacity\":\n return {\n value: 0,\n kind: \"overlay_opacity\",\n key,\n ...(order !== null && { order }),\n };\n case \"slider\":\n return {\n value: 0,\n kind: \"slider\",\n key,\n ...(order !== null && { order }),\n };\n case \"radius\":\n return {\n value: defaultValue,\n kind: \"radius\",\n key,\n ...(order !== null && { order }),\n };\n case \"boolean\":\n return {\n value: String(defaultValue),\n kind: \"boolean\",\n key,\n ...(order !== null && { order }),\n };\n case \"order_selector\":\n return {\n value: defaultValue,\n kind: \"order_selector\",\n key,\n ...(order !== null && { order }),\n };\n case \"alignment_block\":\n return {\n value: defaultValue,\n kind: \"alignment_block\",\n key,\n ...(order !== null && { order }),\n };\n case \"custom_css\":\n return {\n value: defaultValue,\n kind: \"custom_css\",\n key,\n ...(order !== null && { order }),\n };\n default:\n return null;\n }\n })\n .filter(isNot(null)),\n };\n};\n\nexport const buildImageData = (values, themePropertiesSchema) =>\n filterBy({ kind: \"image\" }, themePropertiesSchema).reduce((acc, item) => {\n const signedId = values[snakeToCamelCase(item.key)]?.signedId;\n acc[item.key] = signedId;\n\n return acc;\n }, {});\n\nexport const isPropertyVisible = (key, formikValues, themePropertiesSchema) => {\n const property = findBy({ key }, themePropertiesSchema);\n\n if (isNotPresent(property)) return false;\n\n if (property?.hidden) return false;\n\n const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentPropertySchema = findBy(\n { key: conditionalKey },\n themePropertiesSchema\n );\n\n const dependentProperty = findBy(\n { key: conditionalKey },\n formikValues.properties\n );\n\n if (dependentPropertySchema.kind === \"image\") {\n return isPresent(formikValues[snakeToCamelCase(conditionalKey)]?.url);\n } else if (dependentPropertySchema.kind === \"boolean\") {\n return dependentProperty?.value !== \"false\";\n }\n\n return isPresent(dependentProperty?.value);\n};\n\nexport const buildLabel = (key, kind) =>\n t(\n `neetoThemes.properties.${snakeToCamelCase(kind)}.${snakeToCamelCase(key)}`\n );\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"flex items-center justify-between py-2 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 { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, toLabelAndValue, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Toastr, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDominantColorFromUrl } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport SelectBlock from \"./SelectBlock\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\nimport { POSITION_OPTIONS } from \"../Customize/constants\";\nimport { buildLabel } from \"../Customize/utils\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n attribute,\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, values } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const propertySchema = findBy({ key: attribute }, themePropertiesSchema);\n\n const enablePositionChanger = propertySchema?.enablePositionChanger || false;\n const options = propertySchema?.options;\n\n const positionKeyInSchema = findBy(\n { key: `${name}_position` },\n themePropertiesSchema\n );\n\n const isPositionChangerVisible =\n enablePositionChanger && imageData?.url && isPresent(positionKeyInSchema);\n\n const positionKeyIndex = findIndexBy(\n { key: `${name}_position` },\n values.properties\n );\n\n const handleImageChange = async image => {\n try {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n const dominantColor = await getDominantColorFromUrl(image.url);\n\n setFieldValue(name, {\n signedId: image.signedId,\n url: image.url,\n dominantColor,\n });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n return (\n <div\n className=\"space-y-3 py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n {label && (\n <div className=\"flex items-center justify-between\">\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n </div>\n )}\n <div className=\"space-y-3\">\n <ImageUploader\n {...{ uploadConfig }}\n className=\"h-40 w-full\"\n key={imageData?.url}\n src={imageData?.url}\n onUploadComplete={handleImageChange}\n />\n {isPositionChangerVisible && (\n <SelectBlock\n label={buildLabel(`${name}Position`, \"image\")}\n options={options || POSITION_OPTIONS}\n placeholder={t(\"neetoThemes.common.left\")}\n value={toLabelAndValue(\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n )}\n onChange={option =>\n setFieldValue(\n `properties[${positionKeyIndex}].value`,\n option.value\n )\n }\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default ImageBlock;\n","import { useFormikContext } from \"formik\";\nimport { snakeToCamelCase } from \"neetocist\";\n\nimport { buildLabel } from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport ImageBlock from \"../commons/ImageBlock\";\n\nconst Images = ({ attribute }) => {\n const { values } = useFormikContext();\n\n const key = snakeToCamelCase(attribute);\n const title = buildLabel(key, \"image\");\n const imageData = values[key];\n\n return (\n <Card {...{ title }}>\n <ImageBlock {...{ attribute, imageData }} name={key} />\n </Card>\n );\n};\n\nexport default Images;\n","import { Field } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { CenterAlign, LeftAlign } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst AlignmentBlock = ({ label, name }) => (\n <div\n className=\"flex items-center justify-between gap-2 py-3 first:pt-0 last:pb-0\"\n data-cy={joinHyphenCase(label)}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <div className=\"flex items-center gap-3\">\n <Button\n data-cy=\"alignment-left\"\n icon={LeftAlign}\n size=\"large\"\n style={value === \"left\" ? \"primary\" : \"text\"}\n tooltipProps={{\n content: \"Left align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"left\")}\n />\n <Button\n data-cy=\"alignment-center\"\n icon={CenterAlign}\n size=\"large\"\n style={value === \"center\" ? \"primary\" : \"text\"}\n tooltipProps={{\n content: \"Center align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"center\")}\n />\n </div>\n )}\n </Field>\n </div>\n);\n\nexport default AlignmentBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { ColorPicker, Typography } from \"neetoui\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex items-center justify-between py-2 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 size=\"large\"\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst FontPickerBlock = ({\n label,\n placeholder = \"\",\n value,\n options,\n onChange,\n}) => (\n <div\n className=\"flex items-center justify-between py-2 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n menuPosition=\"fixed\"\n styles={{\n option: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n }}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { Slider } from \"antd\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nconst SliderBlock = ({ label, onChange, value, min, max, marks }) => (\n <div\n className=\"flex items-center justify-between gap-3 py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Slider\n {...{ marks, max, min, onChange, value }}\n className=\"my-2 w-20\"\n tooltip={{ formatter: null }}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Typography, Switch } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SwitchBlock = ({ label, name, ...switchProps }) => {\n const { t, i18n } = useTranslation();\n\n const translationKey = `neetoThemes.properties.boolean.${name}HelpText`;\n const doesHelpTextExist = i18n.exists(translationKey);\n\n return (\n <div className=\"flex items-center justify-between py-2 first:pt-0 last:pb-0\">\n <div className=\"inline-flex items-center gap-4\">\n <Typography\n data-cy=\"style-fields-labels\"\n style=\"body2\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Typography>\n {doesHelpTextExist && (\n <HelpPopover\n className=\"flex-shrink-0\"\n description={t(translationKey)}\n />\n )}\n </div>\n <Switch\n {...{ name, ...switchProps }}\n data-cy=\"enable-background-color-toggle\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport {\n toLabelAndValue,\n snakeToCamelCase,\n findIndexBy,\n findBy,\n} from \"neetocist\";\nimport { negate } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport {\n OVERLAY_OPACITY_SLIDER_MARKS,\n FONT_OPTIONS,\n HUNDRED,\n POSITION_OPTIONS,\n} from \"./constants\";\nimport { buildLabel, isPropertyVisible } from \"./utils\";\n\nimport AlignmentBlock from \"../commons/AlignmentBlock\";\nimport Card from \"../commons/Card\";\nimport ColorBlock from \"../commons/ColorBlock\";\nimport FontPickerBlock from \"../commons/FontPickerBlock\";\nimport SelectBlock from \"../commons/SelectBlock\";\nimport SliderBlock from \"../commons/SliderBlock\";\nimport SwitchBlock from \"../commons/SwitchBlock\";\n\nconst Properties = ({ onPropertiesChange }) => {\n const { t } = useTranslation();\n const { themePropertiesSchema } = useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n const { setFieldValue, values } = useFormikContext();\n const { setVariable, setTheme } = useThemeUtils();\n\n const handleColorChange =\n name =>\n ({ hex, rgb }) => {\n handleChange(name, hex, `${rgb.r}, ${rgb.g}, ${rgb.b}, ${rgb.a}`);\n };\n\n const handleChange = (name, value, variableValue) => {\n const index = findIndexBy({ key: name }, values.properties);\n if (index !== -1 && values.properties[index].value !== value) {\n setFieldValue(`properties[${index}].value`, value);\n }\n setVariable(snakeToCamelCase(name), variableValue ?? value);\n };\n\n const handleOverlayChange = (key, value) => {\n const index = findIndexBy({ key }, values.properties);\n const overlayColorVariable = `${key}_overlay_color`;\n\n setFieldValue(`properties[${index}].value`, value);\n setVariable(`${key}_overlay_opacity`, Math.abs(value / 100));\n if (value < 0) {\n handleChange(overlayColorVariable, \"#000000\", \"0, 0, 0\");\n } else {\n handleChange(overlayColorVariable, \"#ffffff\", \"255, 255, 255\");\n }\n };\n\n useEffect(() => {\n onPropertiesChange?.(values, handleChange, handleColorChange);\n setTheme(values);\n setThemeState({ previewingTheme: values });\n }, [values]);\n\n return (\n <Card title={t(\"neetoThemes.common.style\")}>\n {values.properties\n .sort((a, b) => (a.order ?? Infinity) - (b.order ?? Infinity))\n .map(({ key, value, kind }) => {\n const isCurrentPropertyVisible = isPropertyVisible(\n key,\n values,\n themePropertiesSchema\n );\n\n if (!isCurrentPropertyVisible) return null;\n\n switch (kind) {\n case \"font_family\":\n return (\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={findBy({ value: value || null }, FONT_OPTIONS)}\n onChange={({ value }) => handleChange(key, value)}\n />\n );\n\n case \"color\":\n return (\n <ColorBlock\n color={value}\n key={key}\n label={buildLabel(key, kind)}\n showTransparencyControl={\n findBy({ key }, themePropertiesSchema)\n ?.showTransparencyControl || false\n }\n onChange={handleColorChange(key)}\n />\n );\n\n case \"radius\":\n return (\n <SliderBlock\n key={key}\n label={buildLabel(key, kind)}\n max={50}\n min={0}\n value={Number(value) || 0}\n onChange={radius => handleChange(key, radius, `${radius}px`)}\n />\n );\n\n case \"overlay_opacity\":\n return (\n <SliderBlock\n key={key}\n label={buildLabel(key, kind)}\n marks={OVERLAY_OPACITY_SLIDER_MARKS}\n max={HUNDRED}\n min={negate(HUNDRED)}\n value={Number(value) || 0}\n onChange={opacity => handleOverlayChange(key, opacity)}\n />\n );\n\n case \"position_selector\": {\n const index = findIndexBy({ key }, values.properties);\n const options = findBy(\n { key },\n themePropertiesSchema\n )?.options?.map(toLabelAndValue);\n\n return (\n <SelectBlock\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n value={toLabelAndValue(value)}\n onChange={option =>\n setFieldValue(`properties[${index}].value`, option.value)\n }\n />\n );\n }\n\n case \"boolean\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n <SwitchBlock\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n );\n }\n\n case \"alignment_block\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n <AlignmentBlock\n label={buildLabel(key, kind)}\n name={`properties[${index}].value`}\n />\n );\n }\n\n default:\n return null;\n }\n })}\n </Card>\n );\n};\n\nexport default Properties;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Input } from \"neetoui/formik\";\n\nimport Card from \"../commons/Card\";\n\nconst ThemeMeta = withT(({ t }) => (\n <Card title={t(\"neetoThemes.common.name\")}>\n <Input autoFocus data-cy=\"theme-name-property\" name=\"name\" />\n </Card>\n));\n\nexport default ThemeMeta;\n","import { useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\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 CustomCSS from \"./CustomCSS\";\nimport Images from \"./Images\";\nimport Properties from \"./Properties\";\nimport ThemeMeta from \"./ThemeMeta\";\nimport { buildImageData, buildInitialValues } from \"./utils\";\n\nimport { isScreenCustomCSS } from \"../utils\";\n\nconst Customize = ({\n themeId,\n theme,\n onCreateTheme,\n onApplyTheme,\n isApplyingTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n onEditCSSClick,\n currentScreen,\n}) => {\n const { t } = useTranslation();\n const [popoverInstance, setPopoverInstance] = useState({});\n const { themePropertiesSchema, entityType } = useConfigStore.pick();\n\n const { currentTheme } = useThemeUtils();\n\n const isEditingCurrentlyAppliedTheme = themeId === currentTheme?.id;\n\n const submitBtnRef = useRef(null);\n\n const { mutate: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutate: updateTheme, isPending: isUpdating } =\n useUpdateTheme(themeId);\n\n const isSubmitting = isCreating || isUpdating;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const onSubmit = (values, { resetForm }) => {\n const imageData = buildImageData(values, themePropertiesSchema);\n const themeToSave = {\n propertiesAttributes: values.properties,\n name: values.name,\n ...imageData,\n };\n\n if (!themeId) {\n return createTheme(themeToSave, {\n onSuccess: ({ theme }) => {\n resetForm({ values: theme });\n onCreateTheme(theme);\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: () => {\n resetForm({ values });\n onUpdateThemeSuccess?.(values);\n },\n });\n };\n\n return (\n <Form\n formikProps={{\n initialValues: buildInitialValues(theme, themePropertiesSchema),\n validationSchema: THEME_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n {({ dirty }) => (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"neeto-themes-sidebar__scroll-content flex flex-grow flex-col px-4 py-2 lg:px-5 xl:px-6\">\n <div className={classNames({ hidden: isCustomCssScreen })}>\n <ThemeMeta />\n </div>\n <div className={classNames({ hidden: isCustomCssScreen })}>\n <Properties {...{ onPropertiesChange }} />\n </div>\n <div\n className={classNames(\"flex flex-col gap-6\", {\n hidden: isCustomCssScreen,\n })}\n >\n {filterBy({ kind: \"image\" }, themePropertiesSchema).map(\n ({ key }) => (\n <Images attribute={key} key={key} />\n )\n )}\n </div>\n <CustomCSS {...{ currentScreen, onEditCSSClick }} />\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-shadow-s sticky bottom-0 left-0 right-0 flex justify-end gap-x-2 px-4 py-6\">\n <Button\n data-cy=\"reset-button\"\n disabled={!dirty || isSubmitting}\n label={t(\"neetoThemes.buttons.reset\")}\n style=\"text\"\n type=\"reset\"\n />\n <Button\n data-cy=\"save-changes-button\"\n disabled={(!dirty && theme?.id) || isSubmitting}\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n ref={submitBtnRef}\n type=\"submit\"\n />\n </div>\n <Popover\n appendTo={() => document.body}\n disabled={isEditingCurrentlyAppliedTheme}\n position=\"top\"\n reference={submitBtnRef}\n trigger=\"click\"\n content={\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute right-1 top-1 z-0\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => popoverInstance?.hide?.()}\n />\n <Typography className=\"w-72 pr-5\" style=\"body2\" weight=\"normal\">\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoThemes.build.leftSideBar.themes.notAppliedYet\"\n values={{ entityType }}\n />\n </Typography>\n <Button\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.buttons.applyThisTheme\")}\n loading={isApplyingTheme}\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n }\n onMount={setPopoverInstance}\n />\n </div>\n )}\n </Form>\n );\n};\n\nexport default Customize;\n","const Check = props => (\n <svg\n fill=\"none\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <g filter=\"url(#filter0_d_9519_161)\">\n <rect fill=\"#008068\" height=\"20\" rx=\"10\" width=\"20\" x=\"2\" y=\"2\" />\n <rect\n height=\"20\"\n rx=\"10\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n width=\"20\"\n x=\"2\"\n y=\"2\"\n />\n <path\n d=\"M16.375 9.5l-5.95 6.25-2.8-2.941\"\n stroke=\"#fff\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"1.25\"\n />\n </g>\n <defs>\n <filter\n colorInterpolationFilters=\"sRGB\"\n filterUnits=\"userSpaceOnUse\"\n height=\"23.5\"\n id=\"filter0_d_9519_161\"\n width=\"23.5\"\n x=\"0.25\"\n y=\"0.25\"\n >\n <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n <feColorMatrix\n in=\"SourceAlpha\"\n result=\"hardAlpha\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n />\n <feOffset />\n <feGaussianBlur stdDeviation=\"0.5\" />\n <feComposite in2=\"hardAlpha\" operator=\"out\" />\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.09 0\" />\n <feBlend\n in2=\"BackgroundImageFix\"\n result=\"effect1_dropShadow_9519_161\"\n />\n <feBlend\n in=\"SourceGraphic\"\n in2=\"effect1_dropShadow_9519_161\"\n result=\"shape\"\n />\n </filter>\n </defs>\n </svg>\n);\n\nexport default Check;\n","import classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nconst Thumbnail = ({ active, isPreviewing, isHighLightedTheme, theme }) => {\n const { themePropertiesSchema = [] } = useConfigStore.pick();\n\n const [colorObject1, colorObject2] = themePropertiesSchema;\n\n const primaryLabel = humanize(colorObject1?.key);\n const secondaryLabel = humanize(colorObject2?.key);\n\n const primaryColor = findBy(\n { key: colorObject1.key },\n theme.properties\n ).value;\n\n const secondaryColor = findBy(\n { key: colorObject2.key },\n theme.properties\n ).value;\n\n const backgroundImageUrl =\n theme[\n snakeToCamelCase(\n findBy({ useAsCardBackground: true }, themePropertiesSchema).key\n )\n ]?.url;\n\n const buttonBackgroundColor = findBy(\n {\n key: findBy({ useAsCardButtonBackground: true }, themePropertiesSchema)\n ?.key,\n },\n theme.properties\n )?.value;\n\n return (\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-400\": !active,\n \"neeto-ui-border-gray-800 neeto-themes-theme-thumbnail--active\":\n active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\": isHighLightedTheme,\n }\n )}\n style={{\n backgroundImage: backgroundImageUrl\n ? `url(${backgroundImageUrl})`\n : \"initial\",\n backgroundSize: \"cover\",\n }}\n >\n <div className=\"neeto-ui-rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"neeto-ui-rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography style=\"h3\" weight=\"semibold\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"neeto-ui-rounded-lg h-5 w-12\"\n style={{ backgroundColor: buttonBackgroundColor }}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Thumbnail;\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"components/utils\";\n\nimport Check from \"./Check\";\nimport DefaultThumbnail from \"./Thumbnail\";\n\nconst Card = ({\n active = false,\n isPreviewing,\n onSetPreviewTheme,\n onDeleteTheme,\n onEditTheme,\n theme,\n isApplyingTheme,\n onCloneTheme,\n isHighLightedTheme,\n onApplyTheme,\n thumbnail: Thumbnail,\n}) => {\n const { t } = useTranslation();\n\n const { id, name, appliedCount } = theme;\n\n const handleCloneTheme = () => onCloneTheme(theme);\n const handleEditTheme = () => onEditTheme(theme);\n const handleDeleteTheme = () => onDeleteTheme(id, name, appliedCount);\n\n return (\n <div\n className=\"group space-y-2 pt-0.5\"\n data-cy={active ? \"active-theme-card\" : \"theme-card\"}\n id={theme.id}\n >\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg cursor-pointer border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-200\": !active,\n \"neeto-themes-theme-thumbnail--active\": active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\":\n isHighLightedTheme,\n }\n )}\n onClick={() => onSetPreviewTheme(theme)}\n >\n <div className=\"neeto-ui-rounded-lg relative overflow-hidden rounded-bl-none rounded-br-none transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"absolute right-0 top-0 p-3\">\n {active ? (\n <Check className=\"flex-shrink-0\" data-cy=\"active-theme-label\" />\n ) : (\n <div\n className={classnames({\n hidden: !isPreviewing,\n \"group-hover:block\": true,\n })}\n >\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn flex-shrink-0\"\n data-cy=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.apply\")}\n loading={isApplyingTheme}\n size=\"small\"\n style=\"tertiary\"\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n )}\n </div>\n {Thumbnail ? (\n <Thumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n ) : (\n <DefaultThumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n )}\n </div>\n <div className=\"neeto-ui-border-gray-100 flex items-start justify-between gap-1 border-t p-2\">\n <Typography\n className=\"line-clamp-2 min-w-0 flex-grow break-words pt-1\"\n data-cy=\"theme-name\"\n lineHeight=\"snug\"\n style=\"body2\"\n >\n {name}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ size: \"small\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"edit\",\n \"data-cy\": \"edit-theme-menu-item\",\n label: t(\"neetoThemes.common.edit\"),\n isVisible: isPresent(onEditTheme),\n onClick: handleEditTheme,\n },\n {\n key: \"clone\",\n \"data-cy\": \"clone-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.clone\"\n ),\n onClick: handleCloneTheme,\n },\n {\n key: \"divider\",\n type: \"divider\",\n isVisible: isFunction(onDeleteTheme),\n },\n {\n key: \"delete\",\n \"data-cy\": \"delete-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.delete\"\n ),\n isVisible: isFunction(onDeleteTheme),\n onClick: e => {\n e.stopPropagation();\n handleDeleteTheme();\n },\n },\n ]}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import { useEffect, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useCloneTheme } from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Card from \"./Card\";\n\nconst Themes = ({\n onEditTheme,\n themes = [],\n defaultThemes = [],\n onDeleteTheme,\n themeToHighlight,\n didScrollActiveThemeIntoView,\n isLoading,\n currentTheme,\n isCurrentThemeLoading,\n thumbnail,\n themeBeingApplied,\n onApplyTheme,\n isApplyingTheme,\n}) => {\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n const { setThemeState, previewingTheme } = useThemeStore.pick();\n\n const [searchQuery, setSearchQuery] = useState(\"\");\n\n const { mutate: cloneTheme } = useCloneTheme();\n\n useEffect(() => {\n if (didScrollActiveThemeIntoView.current || !currentTheme?.id) return;\n\n didScrollActiveThemeIntoView.current = true;\n setTimeout(() => {\n scrollElementIntoView(currentTheme?.id);\n }, 100);\n }, [didScrollActiveThemeIntoView, currentTheme?.id]);\n\n const setPreviewTheme = theme => {\n setThemeState({ previewingTheme: theme });\n setTheme(theme);\n };\n\n const filteredDefaultThemes = defaultThemes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const filteredThemes = themes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const isSearchFieldVisible = themes?.length + defaultThemes?.length > 10;\n\n const handleCloneTheme = data => {\n cloneTheme(data.id, {\n onSuccess: ({ theme: clonedTheme }) => {\n onEditTheme(clonedTheme);\n },\n });\n };\n\n if (isLoading || isCurrentThemeLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"mb-6 space-y-3\">\n {isSearchFieldVisible && (\n <Search\n autoFocus\n autoComplete=\"off\"\n className=\"mb-4 mt-1 px-6\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n onSearch={setSearchQuery}\n />\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography className=\"text-center\" style=\"body2\">\n {t(\"neetoThemes.common.noResultsFound\")}\n </Typography>\n )}\n {isNotEmpty(filteredDefaultThemes) && (\n <>\n <Typography\n className=\"my-4 px-4 uppercase lg:px-5 xl:px-6\"\n data-cy=\"system-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.systemThemes\")}\n </Typography>\n <div\n className=\"flex flex-col gap-4 px-4 pb-10 lg:px-5 xl:px-6\"\n data-cy=\"system-themes\"\n >\n {filteredDefaultThemes.map(theme => (\n <Card\n {...{ onApplyTheme, theme, thumbnail }}\n active={currentTheme?.id === theme.id}\n isPreviewing={previewingTheme?.id === theme.id}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onCloneTheme={handleCloneTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n ))}\n </div>\n </>\n )}\n </div>\n {isNotEmpty(filteredThemes) && (\n <div className=\"mb-6 space-y-3\">\n <Typography\n className=\"my-4 px-6 uppercase\"\n data-cy=\"custom-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.customThemes\")}\n </Typography>\n <div className=\"flex flex-col gap-4 px-6\" data-cy=\"custom-themes\">\n {filteredThemes.map(theme => {\n const isActive = currentTheme?.id === theme.id;\n const isPreviewing = previewingTheme?.id === theme.id;\n\n return (\n <Card\n {...{\n isPreviewing,\n onApplyTheme,\n onEditTheme,\n theme,\n thumbnail,\n }}\n active={isActive}\n isHighLightedTheme={theme.id === themeToHighlight}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onCloneTheme={handleCloneTheme}\n onDeleteTheme={!isActive && onDeleteTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n );\n })}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Themes;\n","import { LeftArrow, Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst TitleBar = ({\n currentScreen,\n handleBackPress,\n handleCreateNewTheme,\n isNewTheme,\n themeToEdit,\n}) => {\n const { t } = useTranslation();\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n if (currentScreen === DESIGN_SCREENS.THEMES) {\n return (\n <div className=\"neeto-themes-sidebar__header px-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\n return (\n <div className=\"neeto-themes-sidebar__header px-4\">\n <div className=\"flex items-center justify-start space-x-2\">\n <Button\n data-cy=\"customize-themes-back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: isCustomCssScreen\n ? t(\"neetoThemes.buttons.backToEdit\")\n : t(\"neetoThemes.buttons.backToThemes\"),\n position: \"top\",\n }}\n onClick={() => handleBackPress(themeToEdit)}\n />\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {currentScreen === DESIGN_SCREENS.Customize &&\n (isNewTheme\n ? t(\"neetoThemes.build.leftSideBar.themes.createTheme.title\")\n : t(\"neetoThemes.build.leftSideBar.themes.editTheme.title\"))}\n {isCustomCssScreen &&\n t(\"neetoThemes.build.leftSideBar.themes.customCSS\")}\n </Typography>\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { memo, useCallback, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Alert } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport {\n useApplyTheme,\n useDeleteTheme,\n useListThemes,\n} from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Customize from \"./Customize\";\nimport Themes from \"./Themes\";\nimport TitleBar from \"./TitleBar\";\nimport { isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst MemoizedAlert = memo(Alert);\n\nconst Sidebar = ({\n thumbnail,\n onPropertiesChange,\n onApplyThemeSuccess,\n onUpdateThemeSuccess,\n}) => {\n const [currentScreen, setCurrentScreen] = useState(DESIGN_SCREENS.THEMES);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [themeToHighlight, setThemeToHighlight] = useState(null);\n const [themeBeingApplied, setThemeBeingApplied] = useState({});\n\n const { entityType, entityId, isFetchingSchema, defaultThemeName } =\n useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n\n const didScrollActiveThemeIntoView = useRef(null);\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n\n const { data: { themes = [], defaultThemes = [] } = {}, isLoading } =\n useListThemes(entityId);\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading: isCurrentThemeLoading,\n } = useShowThemeEntity(entityId);\n\n const { mutate: deleteTheme, isPending: isDeleting } = useDeleteTheme();\n\n const { mutate: applyTheme, isPending: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n setTheme(theme);\n highlightTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\n onApplyThemeSuccess?.(theme);\n },\n });\n\n const themeToDelete = useRef(null);\n const themeToEdit = useRef(null);\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleEditTheme = theme => {\n themeToEdit.current = theme;\n setCurrentScreen(DESIGN_SCREENS.Customize);\n };\n\n const onApplyTheme = theme => {\n if (isApplyingTheme) return;\n\n setThemeBeingApplied(theme);\n applyTheme({ themeId: theme.id, entityId, entityType });\n };\n\n const handleBackPress = theme => {\n setTheme(currentTheme);\n highlightTheme(isPresent(theme) ? theme : currentTheme);\n setThemeState({ previewingTheme: currentTheme });\n setCurrentScreen(\n isCustomCssScreen ? DESIGN_SCREENS.Customize : DESIGN_SCREENS.THEMES\n );\n themeToEdit.current = null;\n };\n\n const highlightTheme = themeToHighlight => {\n setTimeout(() => {\n scrollElementIntoView(themeToHighlight.id);\n }, 1500);\n\n setTimeout(() => {\n setThemeToHighlight(null);\n }, 4000);\n\n setThemeToHighlight(themeToHighlight.id);\n };\n\n const onCreateTheme = createdTheme => {\n themeToEdit.current = createdTheme;\n setTheme(createdTheme);\n setThemeState({ previewingTheme: createdTheme });\n };\n\n const handleDelete = (themeId, name, appliedCount) => {\n setIsDeleteAlertOpen(true);\n themeToDelete.current = { id: themeId, name, appliedCount };\n };\n\n const handleCloseDeleteAlert = useCallback(() => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n }, [themeToDelete]);\n\n const handleDeleteTheme = useCallback(() => {\n deleteTheme(themeToDelete.current?.id, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n },\n });\n }, [deleteTheme, themeToDelete]);\n\n return (\n <div\n className={classNames(\n \"neeto-themes-sidebar neeto-ui-border-gray-200 flex-shrink-0 border-r transition-all duration-300\",\n { \"neeto-themes-sidebar--expanded\": isCustomCssScreen }\n )}\n >\n <TitleBar\n {...{ currentScreen, handleBackPress }}\n handleCreateNewTheme={() => handleEditTheme({})}\n isNewTheme={!themeToEdit.current?.id}\n themeToEdit={themeToEdit.current}\n />\n {currentScreen === DESIGN_SCREENS.THEMES ? (\n <Themes\n {...{\n currentTheme,\n defaultThemes,\n didScrollActiveThemeIntoView,\n highlightTheme,\n isApplyingTheme,\n isCurrentThemeLoading,\n onApplyTheme,\n themeBeingApplied,\n themeToHighlight,\n themes,\n thumbnail,\n }}\n isLoading={isLoading || isFetchingSchema}\n onDeleteTheme={handleDelete}\n onEditTheme={handleEditTheme}\n />\n ) : (\n <Customize\n {...{\n currentScreen,\n isApplyingTheme,\n onApplyTheme,\n onCreateTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n }}\n theme={themeToEdit.current}\n themeId={themeToEdit.current?.id}\n onEditCSSClick={setCurrentScreen}\n />\n )}\n <MemoizedAlert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n title={t(\"neetoThemes.alerts.title.deleteTheme\")}\n message={t(\"neetoThemes.alerts.message.deleteTheme\", {\n name: themeToDelete.current?.name,\n count: themeToDelete.current?.appliedCount,\n defaultThemeName,\n entityType: t(`neetoThemes.entityType.${entityType.toLowerCase()}`, {\n count: themeToDelete.current?.appliedCount,\n }),\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n </div>\n );\n};\n\nexport default Sidebar;\n","import { useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { noop, isNotPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\n\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/themes.scss\";\n\nimport Sidebar from \"./Sidebar\";\n\nconst NeetoThemesBuilder = ({\n children,\n entityType,\n entityId,\n thumbnail,\n onPropertiesChange,\n isTemplateThemesEnabled = false,\n onApplyThemeSuccess = noop,\n onUpdateThemeSuccess = noop,\n}) => {\n const { setThemeState } = useThemeStore.pick();\n const { setTheme } = useThemeUtils();\n const { setConfigState } = useConfigStore.pick();\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading,\n isFetching: isFetchingCurrentTheme,\n } = useShowThemeEntity(entityId);\n\n const isCurrentThemeLoading = isLoading || isFetchingCurrentTheme;\n\n useEffect(() => {\n setConfigState({ entityType, entityId, isTemplateThemesEnabled });\n }, []);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ previewingTheme: currentTheme });\n setTheme(currentTheme);\n }, [isLoading, entityId]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ currentTheme, isCurrentThemeLoading });\n }, [currentTheme, isCurrentThemeLoading]);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <Sidebar\n {...{\n onApplyThemeSuccess,\n onPropertiesChange,\n onUpdateThemeSuccess,\n thumbnail,\n }}\n />\n <div className=\"neeto-themes-preview__wrapper\">\n {isCurrentThemeLoading ? (\n <div className=\"m-auto flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n children\n )}\n </div>\n </div>\n );\n};\n\nexport default withTitle(NeetoThemesBuilder, t(\"neetoThemes.common.design\"));\n"],"names":["show","entityId","axios","get","concat","BASE_URL","entitiesApi","useShowThemeEntity","useQuery","queryKey","QUERY_KEYS","THEME_ENTITY_DETAILS","queryFn","enabled","list","params","entity_id","id","create","payload","post","theme","update","_ref","put","destroy","clone","apply","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","_useConfigStore","useConfigStore","store","isTemplateThemesEnabled","shallow","THEMES_LIST","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","THEME_DETAILS","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","POSITION_OPTIONS","label","value","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","name","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","DESIGN_SCREENS","THEMES","Customize","CustomCSS","ONE_MEGABYTE","Card","_ref$title","title","children","_jsxs","className","hyphenate","_jsx","Typography","lineHeight","style","weight","isScreenCustomCSS","screen","onEditCSSClick","currentScreen","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","values","setFieldValue","themePropertiesSchema","customCSS","findBy","kind","properties","parentElementClass","parentClass","isCustomCssScreen","handleEditorToggle","setTimeout","scrollElementIntoView","handleChange","index","findIndexBy","key","setCustomCSS","css","elementId","Button","size","onClick","Editor","language","options","scrollBeyondLastLine","minimap","classNames","rounded","onChange","buildInitialValues","isPresent","map","defaultValue","_ref$order","order","_objectSpread","String","filter","isNot","buildImageData","filterBy","reduce","acc","item","_values$snakeToCamelC","signedId","snakeToCamelCase","isPropertyVisible","formikValues","property","isNotPresent","hidden","conditionalKey","dependsOn","dependentPropertySchema","dependentProperty","_formikValues$snakeTo","url","buildLabel","SelectBlock","_ref$placeholder","placeholder","joinHyphenCase","Select","ImageBlock","_findBy","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","dominantColor","wrap","_callee$","_context","prev","next","isEmpty","abrupt","getDominantColorFromUrl","sent","t0","Toastr","error","stop","_x","arguments","_createElement","ImageUploader","src","onUploadComplete","toLabelAndValue","option","Images","AlignmentBlock","Field","field","form","icon","LeftAlign","tooltipProps","content","position","CenterAlign","ColorBlock","_ref$color","color","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","menuPosition","styles","data","fontFamily","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","i18n","translationKey","doesHelpTextExist","exists","classnames","HelpPopover","description","Switch","Properties","onPropertiesChange","_useThemeStore","useThemeStore","setThemeState","_useThemeUtils","useThemeUtils","setVariable","setTheme","handleColorChange","hex","rgb","r","g","b","a","variableValue","handleOverlayChange","overlayColorVariable","Math","abs","useEffect","previewingTheme","sort","_a$order","_b$order","Infinity","_ref3","isCurrentPropertyVisible","_ref4","Number","radius","negate","opacity","_findBy2","checked","e","target","ThemeMeta","withT","Input","autoFocus","onCreateTheme","onApplyTheme","isApplyingTheme","onUpdateThemeSuccess","_useState","useState","_useState2","_slicedToArray","popoverInstance","setPopoverInstance","entityType","currentTheme","isEditingCurrentlyAppliedTheme","submitBtnRef","useRef","_useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","updateTheme","isUpdating","isSubmitting","onSubmit","resetForm","themeToSave","propertiesAttributes","Form","formikProps","initialValues","validationSchema","dirty","_ref5","disabled","type","loading","ref","Popover","appendTo","document","body","reference","trigger","Close","_popoverInstance$hide","hide","call","Trans","components","bold","i18nKey","onMount","Check","props","fill","height","viewBox","width","xmlns","rx","x","y","stroke","strokeWidth","d","strokeLinecap","strokeLinejoin","colorInterpolationFilters","filterUnits","floodOpacity","result","stdDeviation","in2","operator","Thumbnail","_theme$snakeToCamelCa","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","backgroundImage","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","thumbnail","appliedCount","handleCloneTheme","handleEditTheme","handleDeleteTheme","DefaultThumbnail","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","stopPropagation","menuItems","isVisible","isFunction","memo","Themes","_ref$themes","themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isLoading","isCurrentThemeLoading","themeBeingApplied","searchQuery","setSearchQuery","_useCloneTheme","cloneTheme","current","setPreviewTheme","filteredDefaultThemes","toLowerCase","includes","filteredThemes","isSearchFieldVisible","length","clonedTheme","Spinner","Search","autoComplete","onSearch","isNotEmpty","_Fragment","isActive","TitleBar","handleBackPress","handleCreateNewTheme","isNewTheme","themeToEdit","Plus","iconPosition","LeftArrow","MemoizedAlert","Alert","Sidebar","_themeToEdit$current","_themeToEdit$current2","_themeToDelete$curren2","_themeToDelete$curren3","_themeToDelete$curren4","onApplyThemeSuccess","setCurrentScreen","_useState3","_useState4","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","setThemeToHighlight","_useState7","_useState8","setThemeBeingApplied","isFetchingSchema","defaultThemeName","_useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","deleteTheme","isDeleting","_useApplyTheme","highlightTheme","applyTheme","themeToDelete","createdTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","isOpen","message","count","onClose","NeetoThemesBuilder","_ref$isTemplateThemes","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","setConfigState","isFetchingCurrentTheme","isFetching","withTitle"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeetoThemesBuilder.js","sources":["../app/javascript/src/apis/entities.js","../app/javascript/src/hooks/reactQuery/useEntitiesApi.js","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../app/javascript/src/apis/themes.js","../app/javascript/src/hooks/reactQuery/useThemesApi.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/constants.js","../app/javascript/src/components/NeetoThemesBuilder/constants.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/Card.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/utils.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/CustomCSS.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/utils.js","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SelectBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ImageBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Images.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/AlignmentBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/ColorBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/FontPickerBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SliderBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/commons/SwitchBlock.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/Properties.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/ThemeMeta.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Customize/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Check.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Thumbnail.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/Card.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/Themes/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/TitleBar.jsx","../app/javascript/src/components/NeetoThemesBuilder/Sidebar/index.jsx","../app/javascript/src/components/NeetoThemesBuilder/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst show = entityId => axios.get(`${BASE_URL}/api/v1/entities/${entityId}`);\n\nconst entitiesApi = { show };\n\nexport default entitiesApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport entitiesApi from \"apis/entities\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useShowThemeEntity = entityId =>\n useQuery({\n queryKey: [QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],\n queryFn: () => entitiesApi.show(entityId),\n enabled: !!entityId,\n });\n","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = entityId =>\n axios.get(`${BASE_URL}/api/v1/themes`, { params: { entity_id: entityId } });\n\nconst show = id => axios.get(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst create = payload =>\n axios.post(`${BASE_URL}/api/v1/themes`, { theme: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(`${BASE_URL}/api/v1/themes/${id}`, { theme: payload });\n\nconst destroy = id => axios.delete(`${BASE_URL}/api/v1/themes/${id}`);\n\nconst clone = id => axios.post(`${BASE_URL}/api/v1/themes/${id}/clone`);\n\nconst apply = ({ themeId, ...payload }) =>\n axios.post(`${BASE_URL}/api/v1/themes/${themeId}/apply`, { entity: payload });\n\nconst themesApi = { list, show, create, update, destroy, clone, apply };\n\nexport default themesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport themesApi from \"apis/themes\";\nimport { QUERY_KEYS } from \"src/constants/query\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nexport const useListThemes = entityId => {\n const { isTemplateThemesEnabled } = useConfigStore.pick();\n\n const queryKey = isTemplateThemesEnabled\n ? [QUERY_KEYS.THEMES_LIST, entityId]\n : [QUERY_KEYS.THEMES_LIST];\n\n return useQuery({\n queryKey,\n queryFn: () => themesApi.list(entityId),\n });\n};\n\nexport const useCreateTheme = () =>\n useMutationWithInvalidation(themesApi.create, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useUpdateTheme = themeId =>\n useMutationWithInvalidation(\n payload => themesApi.update({ id: themeId, payload }),\n {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n [QUERY_KEYS.THEME_DETAILS, themeId],\n ],\n }\n );\n\nexport const useDeleteTheme = () =>\n useMutationWithInvalidation(themesApi.destroy, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n });\n\nexport const useCloneTheme = () =>\n useMutationWithInvalidation(themesApi.clone, {\n keysToInvalidate: [QUERY_KEYS.THEMES_LIST],\n });\n\nexport const useApplyTheme = ({ onSuccess }) =>\n useMutationWithInvalidation(themesApi.apply, {\n keysToInvalidate: [\n [QUERY_KEYS.THEMES_LIST],\n [QUERY_KEYS.THEME_ENTITY_DETAILS],\n ],\n onSuccess,\n });\n","import * as yup from \"yup\";\n\nexport const FIVE_MEGABYTES = 5;\n\nexport const IMAGE_UPLOAD_CONFIG = { maxImageSize: FIVE_MEGABYTES };\n\nexport const POSITION_OPTIONS = [\n { label: \"Left\", value: \"left\" },\n { label: \"Right\", value: \"right\" },\n];\n\nexport const FONT_OPTIONS = [\n {\n label: \"System UI\",\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n },\n {\n label: \"Cedarville Cursive\",\n value: \"'Cedarville Cursive', cursive\",\n },\n { label: \"Poppins\", value: \"Poppins, sans-serif\" },\n { label: \"Roboto\", value: \"Roboto, sans-serif\" },\n { label: \"Open Sans\", value: \"Open Sans, sans-serif\" },\n { label: \"Montserrat\", value: \"Montserrat, sans-serif\" },\n { label: \"Raleway\", value: \"Raleway, sans-serif\" },\n { label: \"Quicksand\", value: \"Quicksand, sans-serif\" },\n { label: \"Inter\", value: \"Inter, sans-serif\" },\n { label: \"Satoshi\", value: \"Satoshi, sans-serif\" },\n { label: \"Chillax\", value: \"Chillax, sans-serif\" },\n { label: \"Clash Display\", value: \"Clash Display, sans-serif\" },\n { label: \"General Sans\", value: \"General Sans, sans-serif\" },\n { label: \"Cabinet Grotesk\", value: \"Cabinet Grotesk, sans-serif\" },\n { label: \"Lora\", value: \"Lora, serif\" },\n { label: \"Merriweather\", value: \"Merriweather, serif\" },\n { label: \"Boska\", value: \"Boska, serif\" },\n { label: \"Playfair Display\", value: \"Playfair Display, serif\" },\n { label: \"Roboto Slab\", value: \"Roboto Slab, serif\" },\n { label: \"Dancing Script\", value: \"Dancing Script, cursive\" },\n];\n\nexport const THEME_VALIDATION_SCHEMA = yup.object().shape({\n name: yup.string().required(\"Name is required\"),\n});\n\nexport const OVERLAY_OPACITY_SLIDER_MARKS = { 0: \" \" };\nexport const HUNDRED = 100;\n","export const DESIGN_SCREENS = {\n THEMES: \"Themes\",\n Customize: \"Customize\",\n CustomCSS: \"CustomCSS\",\n};\n\nexport const ONE_MEGABYTE = 1;\n","import { hyphenate } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ title = \"\", children }) => (\n <div\n className=\"neeto-themes-nano-section neeto-ui-border-gray-200 mb-4 space-y-3 border-b pb-4\"\n data-cy={`theme-${hyphenate(title)}-properties`}\n >\n {title && (\n <div className=\"neeto-themes-nano-section__title flex items-center justify-between\">\n <Typography\n className=\"min-w-0 flex-grow\"\n data-cy=\"theme-properties\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </div>\n )}\n {children && (\n <div className=\"neeto-themes-nano-section__content w-full\">\n {children}\n </div>\n )}\n </div>\n);\n\nexport default Card;\n","import { DESIGN_SCREENS } from \"../constants\";\n\nexport const isScreenCustomCSS = screen => screen === DESIGN_SCREENS.CustomCSS;\n","import Editor from \"@monaco-editor/react\";\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { findBy, findIndexBy } from \"neetocist\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DESIGN_SCREENS } from \"components/NeetoThemesBuilder/constants\";\nimport { scrollElementIntoView } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport { setCustomCSS } from \"utils\";\n\nimport Card from \"../commons/Card\";\nimport { isScreenCustomCSS } from \"../utils\";\n\nconst CustomCSS = ({ onEditCSSClick, currentScreen }) => {\n const { t } = useTranslation();\n const { values, setFieldValue } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const customCSS = findBy({ kind: \"custom_css\" }, values.properties);\n\n if (!customCSS) return null;\n\n const parentElementClass = findBy(\n { kind: \"custom_css\" },\n themePropertiesSchema\n ).parentClass;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleEditorToggle = () => {\n if (!isCustomCssScreen) return onEditCSSClick(DESIGN_SCREENS.CustomCSS);\n onEditCSSClick(DESIGN_SCREENS.Customize);\n\n return setTimeout(() => {\n scrollElementIntoView(\"css-editor\");\n }, 400);\n };\n\n const handleChange = value => {\n const index = findIndexBy({ key: customCSS.key }, values.properties);\n\n if (index !== -1 && values.properties[index].value !== value) {\n setFieldValue(`properties[${index}].value`, value);\n setCustomCSS({\n css: value,\n elementId: customCSS.key,\n parentElementClass,\n });\n }\n };\n\n return (\n <div className=\"neeto-themes-sidebar__custom-css-wrapper\" id=\"css-editor\">\n <Card\n title={\n isCustomCssScreen\n ? \"\"\n : t(\"neetoThemes.build.leftSideBar.themes.customCSS\")\n }\n >\n <div className=\"neeto-themes-sidebar__custom-css-editor-header w-full justify-end gap-1 rounded-b-none p-2\">\n <Button\n size=\"small\"\n style=\"secondary\"\n label={\n isCustomCssScreen\n ? t(\"neetoThemes.buttons.minimizeEditor\")\n : t(\"neetoThemes.buttons.expandEditor\")\n }\n onClick={handleEditorToggle}\n />\n </div>\n <Editor\n language=\"css\"\n options={{ scrollBeyondLastLine: false, minimap: { enabled: false } }}\n theme=\"vs-dark\"\n value={customCSS.value}\n className={classNames({\n rounded: true,\n \"css-editor-height__expanded\": isCustomCssScreen,\n \"css-editor-height__regular\": !isCustomCssScreen,\n })}\n onChange={handleChange}\n />\n </Card>\n </div>\n );\n};\n\nexport default CustomCSS;\n","import { t } from \"i18next\";\nimport {\n findBy,\n isNot,\n filterBy,\n isPresent,\n snakeToCamelCase,\n isNotPresent,\n} from \"neetocist\";\n\nexport const generateRandomColor = () => {\n const letters = \"0123456789ABCDEF\";\n let color = \"#\";\n for (let i = 0; i < 6; i++) {\n color += letters[Math.floor(Math.random() * 16)];\n }\n\n return color;\n};\n\nexport const buildInitialValues = (theme, themePropertiesSchema) => {\n if (isPresent(theme)) return theme;\n\n return {\n name: t(\"neetoThemes.build.leftSideBar.themes.createTheme.newThemeName\"),\n properties: themePropertiesSchema\n .map(({ key, kind, defaultValue, order = null }) => {\n switch (kind) {\n case \"color\":\n return {\n value: defaultValue,\n kind: \"color\",\n key,\n ...(order !== null && { order }),\n };\n case \"font_family\":\n return {\n value:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"',\n kind: \"font_family\",\n key,\n ...(order !== null && { order }),\n };\n case \"overlay_opacity\":\n return {\n value: 0,\n kind: \"overlay_opacity\",\n key,\n ...(order !== null && { order }),\n };\n case \"slider\":\n return {\n value: 0,\n kind: \"slider\",\n key,\n ...(order !== null && { order }),\n };\n case \"radius\":\n return {\n value: defaultValue,\n kind: \"radius\",\n key,\n ...(order !== null && { order }),\n };\n case \"boolean\":\n return {\n value: String(defaultValue),\n kind: \"boolean\",\n key,\n ...(order !== null && { order }),\n };\n case \"order_selector\":\n return {\n value: defaultValue,\n kind: \"order_selector\",\n key,\n ...(order !== null && { order }),\n };\n case \"alignment_block\":\n return {\n value: defaultValue,\n kind: \"alignment_block\",\n key,\n ...(order !== null && { order }),\n };\n case \"custom_css\":\n return {\n value: defaultValue,\n kind: \"custom_css\",\n key,\n ...(order !== null && { order }),\n };\n default:\n return null;\n }\n })\n .filter(isNot(null)),\n };\n};\n\nexport const buildImageData = (values, themePropertiesSchema) =>\n filterBy({ kind: \"image\" }, themePropertiesSchema).reduce((acc, item) => {\n const signedId = values[snakeToCamelCase(item.key)]?.signedId;\n acc[item.key] = signedId;\n\n return acc;\n }, {});\n\nexport const isPropertyVisible = (key, formikValues, themePropertiesSchema) => {\n const property = findBy({ key }, themePropertiesSchema);\n\n if (isNotPresent(property)) return false;\n\n if (property?.hidden) return false;\n\n const conditionalKey = property?.dependsOn;\n if (isNotPresent(conditionalKey)) return true;\n\n const dependentPropertySchema = findBy(\n { key: conditionalKey },\n themePropertiesSchema\n );\n\n const dependentProperty = findBy(\n { key: conditionalKey },\n formikValues.properties\n );\n\n if (dependentPropertySchema.kind === \"image\") {\n return isPresent(formikValues[snakeToCamelCase(conditionalKey)]?.url);\n } else if (dependentPropertySchema.kind === \"boolean\") {\n return dependentProperty?.value !== \"false\";\n }\n\n return isPresent(dependentProperty?.value);\n};\n\nexport const buildLabel = (key, kind) =>\n t(\n `neetoThemes.properties.${snakeToCamelCase(kind)}.${snakeToCamelCase(key)}`\n );\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst SelectBlock = ({ label, placeholder = \"\", value, options, onChange }) => (\n <div\n className=\"flex items-center justify-between py-2 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 { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { useFormikContext } from \"formik\";\nimport { findIndexBy, isPresent, toLabelAndValue, findBy } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Toastr, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDominantColorFromUrl } from \"components/utils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nimport SelectBlock from \"./SelectBlock\";\n\nimport { ONE_MEGABYTE } from \"../../constants\";\nimport { POSITION_OPTIONS } from \"../Customize/constants\";\nimport { buildLabel } from \"../Customize/utils\";\n\nconst ImageBlock = ({\n label,\n name,\n imageData = {},\n uploadConfig = { maxImageSize: ONE_MEGABYTE },\n attribute,\n}) => {\n const { t } = useTranslation();\n const { setFieldValue, values } = useFormikContext();\n const { themePropertiesSchema } = useConfigStore.pick();\n\n const propertySchema = findBy({ key: attribute }, themePropertiesSchema);\n\n const enablePositionChanger = propertySchema?.enablePositionChanger || false;\n const options = propertySchema?.options;\n\n const positionKeyInSchema = findBy(\n { key: `${name}_position` },\n themePropertiesSchema\n );\n\n const isPositionChangerVisible =\n enablePositionChanger && imageData?.url && isPresent(positionKeyInSchema);\n\n const positionKeyIndex = findIndexBy(\n { key: `${name}_position` },\n values.properties\n );\n\n const handleImageChange = async image => {\n try {\n if (isEmpty(image.signedId) || isEmpty(image.url)) {\n setFieldValue(name, { signedId: null, url: image.url });\n\n return;\n }\n\n const dominantColor = await getDominantColorFromUrl(image.url);\n\n setFieldValue(name, {\n signedId: image.signedId,\n url: image.url,\n dominantColor,\n });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n return (\n <div\n className=\"space-y-3 py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n {label && (\n <div className=\"flex items-center justify-between\">\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n </div>\n )}\n <div className=\"space-y-3\">\n <ImageUploader\n {...{ uploadConfig }}\n className=\"h-40 w-full\"\n key={imageData?.url}\n src={imageData?.url}\n onUploadComplete={handleImageChange}\n />\n {isPositionChangerVisible && (\n <SelectBlock\n label={buildLabel(`${name}Position`, \"image\")}\n options={options || POSITION_OPTIONS}\n placeholder={t(\"neetoThemes.common.left\")}\n value={toLabelAndValue(\n findBy({ key: `${name}_position` }, values.properties)?.value ||\n positionKeyInSchema?.defaultValue\n )}\n onChange={option =>\n setFieldValue(\n `properties[${positionKeyIndex}].value`,\n option.value\n )\n }\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default ImageBlock;\n","import { useFormikContext } from \"formik\";\nimport { snakeToCamelCase } from \"neetocist\";\n\nimport { buildLabel } from \"./utils\";\n\nimport Card from \"../commons/Card\";\nimport ImageBlock from \"../commons/ImageBlock\";\n\nconst Images = ({ attribute }) => {\n const { values } = useFormikContext();\n\n const key = snakeToCamelCase(attribute);\n const title = buildLabel(key, \"image\");\n const imageData = values[key];\n\n return (\n <Card {...{ title }}>\n <ImageBlock {...{ attribute, imageData }} name={key} />\n </Card>\n );\n};\n\nexport default Images;\n","import { Field } from \"formik\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { CenterAlign, LeftAlign } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nconst AlignmentBlock = ({ label, name }) => (\n <div\n className=\"flex items-center justify-between gap-2 py-3 first:pt-0 last:pb-0\"\n data-cy={joinHyphenCase(label)}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Field {...{ name }}>\n {({ field: { value }, form: { setFieldValue } }) => (\n <div className=\"flex items-center gap-3\">\n <Button\n data-cy=\"alignment-left\"\n icon={LeftAlign}\n size=\"large\"\n style={value === \"left\" ? \"primary\" : \"text\"}\n tooltipProps={{\n content: \"Left align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"left\")}\n />\n <Button\n data-cy=\"alignment-center\"\n icon={CenterAlign}\n size=\"large\"\n style={value === \"center\" ? \"primary\" : \"text\"}\n tooltipProps={{\n content: \"Center align\",\n position: \"bottom\",\n }}\n onClick={() => setFieldValue(name, \"center\")}\n />\n </div>\n )}\n </Field>\n </div>\n);\n\nexport default AlignmentBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { ColorPicker, Typography } from \"neetoui\";\n\nconst ColorBlock = ({\n label,\n color = \"#FFFFFF\",\n onChange,\n showTransparencyControl,\n}) => (\n <div\n className=\"flex items-center justify-between py-2 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 size=\"large\"\n />\n </div>\n);\n\nexport default ColorBlock;\n","import { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography, Select } from \"neetoui\";\n\nconst FontPickerBlock = ({\n label,\n placeholder = \"\",\n value,\n options,\n onChange,\n}) => (\n <div\n className=\"flex items-center justify-between py-2 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <div className=\"w-40\">\n <Select\n {...{ onChange, options, placeholder, value }}\n menuPosition=\"fixed\"\n styles={{\n option: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n }}\n />\n </div>\n </div>\n);\n\nexport default FontPickerBlock;\n","import { Slider } from \"antd\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nconst SliderBlock = ({ label, onChange, value, min, max, marks }) => (\n <div\n className=\"flex items-center justify-between gap-3 py-3 first:pt-0 last:pb-0\"\n data-cy={`theme-style-${joinHyphenCase(label)}`}\n >\n <Typography data-cy=\"style-fields-labels\" style=\"body2\">\n {label}\n </Typography>\n <Slider\n {...{ marks, max, min, onChange, value }}\n className=\"my-2 w-20\"\n tooltip={{ formatter: null }}\n />\n </div>\n);\n\nexport default SliderBlock;\n","import classnames from \"classnames\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Typography, Switch } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SwitchBlock = ({ label, name, ...switchProps }) => {\n const { t, i18n } = useTranslation();\n\n const translationKey = `neetoThemes.properties.boolean.${name}HelpText`;\n const doesHelpTextExist = i18n.exists(translationKey);\n\n return (\n <div className=\"flex items-center justify-between py-2 first:pt-0 last:pb-0\">\n <div className=\"inline-flex items-center gap-4\">\n <Typography\n data-cy=\"style-fields-labels\"\n style=\"body2\"\n className={classnames({\n \"w-32\": doesHelpTextExist,\n \"w-auto\": !doesHelpTextExist,\n })}\n >\n {label}\n </Typography>\n {doesHelpTextExist && (\n <HelpPopover\n className=\"flex-shrink-0\"\n description={t(translationKey)}\n />\n )}\n </div>\n <Switch\n {...{ name, ...switchProps }}\n data-cy=\"enable-background-color-toggle\"\n />\n </div>\n );\n};\n\nexport default SwitchBlock;\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport {\n toLabelAndValue,\n snakeToCamelCase,\n findIndexBy,\n findBy,\n} from \"neetocist\";\nimport { negate } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport {\n OVERLAY_OPACITY_SLIDER_MARKS,\n FONT_OPTIONS,\n HUNDRED,\n POSITION_OPTIONS,\n} from \"./constants\";\nimport { buildLabel, isPropertyVisible } from \"./utils\";\n\nimport AlignmentBlock from \"../commons/AlignmentBlock\";\nimport Card from \"../commons/Card\";\nimport ColorBlock from \"../commons/ColorBlock\";\nimport FontPickerBlock from \"../commons/FontPickerBlock\";\nimport SelectBlock from \"../commons/SelectBlock\";\nimport SliderBlock from \"../commons/SliderBlock\";\nimport SwitchBlock from \"../commons/SwitchBlock\";\n\nconst Properties = ({ onPropertiesChange }) => {\n const { t } = useTranslation();\n const { themePropertiesSchema } = useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n const { setFieldValue, values } = useFormikContext();\n const { setVariable, setTheme } = useThemeUtils();\n\n const handleColorChange =\n name =>\n ({ hex, rgb }) => {\n handleChange(name, hex, `${rgb.r}, ${rgb.g}, ${rgb.b}, ${rgb.a}`);\n };\n\n const handleChange = (name, value, variableValue) => {\n const index = findIndexBy({ key: name }, values.properties);\n if (index !== -1 && values.properties[index].value !== value) {\n setFieldValue(`properties[${index}].value`, value);\n }\n setVariable(snakeToCamelCase(name), variableValue ?? value);\n };\n\n const handleOverlayChange = (key, value) => {\n const index = findIndexBy({ key }, values.properties);\n const overlayColorVariable = `${key}_overlay_color`;\n\n setFieldValue(`properties[${index}].value`, value);\n setVariable(`${key}_overlay_opacity`, Math.abs(value / 100));\n if (value < 0) {\n handleChange(overlayColorVariable, \"#000000\", \"0, 0, 0\");\n } else {\n handleChange(overlayColorVariable, \"#ffffff\", \"255, 255, 255\");\n }\n };\n\n useEffect(() => {\n onPropertiesChange?.(values, handleChange, handleColorChange);\n setTheme(values);\n setThemeState({ previewingTheme: values });\n }, [values]);\n\n return (\n <Card title={t(\"neetoThemes.common.style\")}>\n {values.properties\n .sort((a, b) => {\n const order = key =>\n findBy({ key }, themePropertiesSchema)?.order || Infinity;\n\n return order(a.key) - order(b.key);\n })\n .map(({ key, value, kind }) => {\n const isCurrentPropertyVisible = isPropertyVisible(\n key,\n values,\n themePropertiesSchema\n );\n\n if (!isCurrentPropertyVisible) return null;\n\n switch (kind) {\n case \"font_family\":\n return (\n <FontPickerBlock\n key={key}\n label={buildLabel(key, kind)}\n options={FONT_OPTIONS}\n value={findBy({ value: value || null }, FONT_OPTIONS)}\n onChange={({ value }) => handleChange(key, value)}\n />\n );\n\n case \"color\":\n return (\n <ColorBlock\n color={value}\n key={key}\n label={buildLabel(key, kind)}\n showTransparencyControl={\n findBy({ key }, themePropertiesSchema)\n ?.showTransparencyControl || false\n }\n onChange={handleColorChange(key)}\n />\n );\n\n case \"radius\":\n return (\n <SliderBlock\n key={key}\n label={buildLabel(key, kind)}\n max={50}\n min={0}\n value={Number(value) || 0}\n onChange={radius => handleChange(key, radius, `${radius}px`)}\n />\n );\n\n case \"overlay_opacity\":\n return (\n <SliderBlock\n key={key}\n label={buildLabel(key, kind)}\n marks={OVERLAY_OPACITY_SLIDER_MARKS}\n max={HUNDRED}\n min={negate(HUNDRED)}\n value={Number(value) || 0}\n onChange={opacity => handleOverlayChange(key, opacity)}\n />\n );\n\n case \"position_selector\": {\n const index = findIndexBy({ key }, values.properties);\n const options = findBy(\n { key },\n themePropertiesSchema\n )?.options?.map(toLabelAndValue);\n\n return (\n <SelectBlock\n key={key}\n label={buildLabel(key, kind)}\n options={options || POSITION_OPTIONS}\n placeholder=\"left\"\n value={toLabelAndValue(value)}\n onChange={option =>\n setFieldValue(`properties[${index}].value`, option.value)\n }\n />\n );\n }\n\n case \"boolean\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n <SwitchBlock\n checked={value !== \"false\"}\n key={key}\n label={buildLabel(key, kind)}\n name={snakeToCamelCase(key)}\n onChange={e =>\n setFieldValue(\n `properties[${index}].value`,\n String(e.target.checked)\n )\n }\n />\n );\n }\n\n case \"alignment_block\": {\n const index = findIndexBy({ key }, values.properties);\n\n return (\n <AlignmentBlock\n label={buildLabel(key, kind)}\n name={`properties[${index}].value`}\n />\n );\n }\n\n default:\n return null;\n }\n })}\n </Card>\n );\n};\n\nexport default Properties;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Input } from \"neetoui/formik\";\n\nimport Card from \"../commons/Card\";\n\nconst ThemeMeta = withT(({ t }) => (\n <Card title={t(\"neetoThemes.common.name\")}>\n <Input autoFocus data-cy=\"theme-name-property\" name=\"name\" />\n </Card>\n));\n\nexport default ThemeMeta;\n","import { useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\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 CustomCSS from \"./CustomCSS\";\nimport Images from \"./Images\";\nimport Properties from \"./Properties\";\nimport ThemeMeta from \"./ThemeMeta\";\nimport { buildImageData, buildInitialValues } from \"./utils\";\n\nimport { isScreenCustomCSS } from \"../utils\";\n\nconst Customize = ({\n themeId,\n theme,\n onCreateTheme,\n onApplyTheme,\n isApplyingTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n onEditCSSClick,\n currentScreen,\n}) => {\n const { t } = useTranslation();\n const [popoverInstance, setPopoverInstance] = useState({});\n const { themePropertiesSchema, entityType } = useConfigStore.pick();\n\n const { currentTheme } = useThemeUtils();\n\n const isEditingCurrentlyAppliedTheme = themeId === currentTheme?.id;\n\n const submitBtnRef = useRef(null);\n\n const { mutate: createTheme, isPending: isCreating } = useCreateTheme();\n const { mutate: updateTheme, isPending: isUpdating } =\n useUpdateTheme(themeId);\n\n const isSubmitting = isCreating || isUpdating;\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const onSubmit = (values, { resetForm }) => {\n const imageData = buildImageData(values, themePropertiesSchema);\n const themeToSave = {\n propertiesAttributes: values.properties,\n name: values.name,\n ...imageData,\n };\n\n if (!themeId) {\n return createTheme(themeToSave, {\n onSuccess: ({ theme }) => {\n resetForm({ values: theme });\n onCreateTheme(theme);\n },\n });\n }\n\n return updateTheme(themeToSave, {\n onSuccess: () => {\n resetForm({ values });\n onUpdateThemeSuccess?.(values);\n },\n });\n };\n\n return (\n <Form\n formikProps={{\n initialValues: buildInitialValues(theme, themePropertiesSchema),\n validationSchema: THEME_VALIDATION_SCHEMA,\n onSubmit,\n }}\n >\n {({ dirty }) => (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"neeto-themes-sidebar__scroll-content flex flex-grow flex-col px-4 py-2 lg:px-5 xl:px-6\">\n <div className={classNames({ hidden: isCustomCssScreen })}>\n <ThemeMeta />\n </div>\n <div className={classNames({ hidden: isCustomCssScreen })}>\n <Properties {...{ onPropertiesChange }} />\n </div>\n <div\n className={classNames(\"flex flex-col gap-6\", {\n hidden: isCustomCssScreen,\n })}\n >\n {filterBy({ kind: \"image\" }, themePropertiesSchema).map(\n ({ key }) => (\n <Images attribute={key} key={key} />\n )\n )}\n </div>\n <CustomCSS {...{ currentScreen, onEditCSSClick }} />\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-shadow-s sticky bottom-0 left-0 right-0 flex justify-end gap-x-2 px-4 py-6\">\n <Button\n data-cy=\"reset-button\"\n disabled={!dirty || isSubmitting}\n label={t(\"neetoThemes.buttons.reset\")}\n style=\"text\"\n type=\"reset\"\n />\n <Button\n data-cy=\"save-changes-button\"\n disabled={(!dirty && theme?.id) || isSubmitting}\n label={t(\"neetoThemes.buttons.save\")}\n loading={isSubmitting}\n ref={submitBtnRef}\n type=\"submit\"\n />\n </div>\n <Popover\n appendTo={() => document.body}\n disabled={isEditingCurrentlyAppliedTheme}\n position=\"top\"\n reference={submitBtnRef}\n trigger=\"click\"\n content={\n <div className=\"flex flex-col items-start gap-2\">\n <Button\n className=\"absolute right-1 top-1 z-0\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={() => popoverInstance?.hide?.()}\n />\n <Typography className=\"w-72 pr-5\" style=\"body2\" weight=\"normal\">\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoThemes.build.leftSideBar.themes.notAppliedYet\"\n values={{ entityType }}\n />\n </Typography>\n <Button\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.buttons.applyThisTheme\")}\n loading={isApplyingTheme}\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n }\n onMount={setPopoverInstance}\n />\n </div>\n )}\n </Form>\n );\n};\n\nexport default Customize;\n","const Check = props => (\n <svg\n fill=\"none\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <g filter=\"url(#filter0_d_9519_161)\">\n <rect fill=\"#008068\" height=\"20\" rx=\"10\" width=\"20\" x=\"2\" y=\"2\" />\n <rect\n height=\"20\"\n rx=\"10\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n width=\"20\"\n x=\"2\"\n y=\"2\"\n />\n <path\n d=\"M16.375 9.5l-5.95 6.25-2.8-2.941\"\n stroke=\"#fff\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"1.25\"\n />\n </g>\n <defs>\n <filter\n colorInterpolationFilters=\"sRGB\"\n filterUnits=\"userSpaceOnUse\"\n height=\"23.5\"\n id=\"filter0_d_9519_161\"\n width=\"23.5\"\n x=\"0.25\"\n y=\"0.25\"\n >\n <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n <feColorMatrix\n in=\"SourceAlpha\"\n result=\"hardAlpha\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n />\n <feOffset />\n <feGaussianBlur stdDeviation=\"0.5\" />\n <feComposite in2=\"hardAlpha\" operator=\"out\" />\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.09 0\" />\n <feBlend\n in2=\"BackgroundImageFix\"\n result=\"effect1_dropShadow_9519_161\"\n />\n <feBlend\n in=\"SourceGraphic\"\n in2=\"effect1_dropShadow_9519_161\"\n result=\"shape\"\n />\n </filter>\n </defs>\n </svg>\n);\n\nexport default Check;\n","import classnames from \"classnames\";\nimport { findBy, humanize, snakeToCamelCase } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport useConfigStore from \"src/stores/useConfigStore\";\n\nconst Thumbnail = ({ active, isPreviewing, isHighLightedTheme, theme }) => {\n const { themePropertiesSchema = [] } = useConfigStore.pick();\n\n const [colorObject1, colorObject2] = themePropertiesSchema;\n\n const primaryLabel = humanize(colorObject1?.key);\n const secondaryLabel = humanize(colorObject2?.key);\n\n const primaryColor = findBy(\n { key: colorObject1.key },\n theme.properties\n ).value;\n\n const secondaryColor = findBy(\n { key: colorObject2.key },\n theme.properties\n ).value;\n\n const backgroundImageUrl =\n theme[\n snakeToCamelCase(\n findBy({ useAsCardBackground: true }, themePropertiesSchema).key\n )\n ]?.url;\n\n const buttonBackgroundColor = findBy(\n {\n key: findBy({ useAsCardButtonBackground: true }, themePropertiesSchema)\n ?.key,\n },\n theme.properties\n )?.value;\n\n return (\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-400\": !active,\n \"neeto-ui-border-gray-800 neeto-themes-theme-thumbnail--active\":\n active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\": isHighLightedTheme,\n }\n )}\n style={{\n backgroundImage: backgroundImageUrl\n ? `url(${backgroundImageUrl})`\n : \"initial\",\n backgroundSize: \"cover\",\n }}\n >\n <div className=\"neeto-ui-rounded-lg cursor-pointer p-3 transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"neeto-ui-rounded-lg p-3\">\n <div className=\"mb-3\">\n <Typography style=\"h3\" weight=\"semibold\">\n <span style={{ color: primaryColor }}>{primaryLabel}</span>\n </Typography>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n <span style={{ color: secondaryColor }}>{secondaryLabel}</span>\n </Typography>\n </div>\n <div\n className=\"neeto-ui-rounded-lg h-5 w-12\"\n style={{ backgroundColor: buttonBackgroundColor }}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default Thumbnail;\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"components/utils\";\n\nimport Check from \"./Check\";\nimport DefaultThumbnail from \"./Thumbnail\";\n\nconst Card = ({\n active = false,\n isPreviewing,\n onSetPreviewTheme,\n onDeleteTheme,\n onEditTheme,\n theme,\n isApplyingTheme,\n onCloneTheme,\n isHighLightedTheme,\n onApplyTheme,\n thumbnail: Thumbnail,\n}) => {\n const { t } = useTranslation();\n\n const { id, name, appliedCount } = theme;\n\n const handleCloneTheme = () => onCloneTheme(theme);\n const handleEditTheme = () => onEditTheme(theme);\n const handleDeleteTheme = () => onDeleteTheme(id, name, appliedCount);\n\n return (\n <div\n className=\"group space-y-2 pt-0.5\"\n data-cy={active ? \"active-theme-card\" : \"theme-card\"}\n id={theme.id}\n >\n <div\n className={classnames(\n \"neeto-themes-theme-thumbnail neeto-ui-rounded-lg cursor-pointer border transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-border-gray-200\": !active,\n \"neeto-themes-theme-thumbnail--active\": active,\n \"neeto-themes-theme-thumbnail--preview-active\": isPreviewing,\n \"neeto-themes-theme-thumbnail--highlight-active\":\n isHighLightedTheme,\n }\n )}\n onClick={() => onSetPreviewTheme(theme)}\n >\n <div className=\"neeto-ui-rounded-lg relative overflow-hidden rounded-bl-none rounded-br-none transition-all duration-300 ease-in-out group-hover:opacity-85\">\n <div className=\"absolute right-0 top-0 p-3\">\n {active ? (\n <Check className=\"flex-shrink-0\" data-cy=\"active-theme-label\" />\n ) : (\n <div\n className={classnames({\n hidden: !isPreviewing,\n \"group-hover:block\": true,\n })}\n >\n <Button\n className=\"neeto-themes-theme-thumbnail__apply-btn flex-shrink-0\"\n data-cy=\"apply-theme-button\"\n disabled={isApplyingTheme}\n label={t(\"neetoThemes.common.apply\")}\n loading={isApplyingTheme}\n size=\"small\"\n style=\"tertiary\"\n onClick={() => onApplyTheme(theme)}\n />\n </div>\n )}\n </div>\n {Thumbnail ? (\n <Thumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n ) : (\n <DefaultThumbnail\n {...{ active, isHighLightedTheme, isPreviewing, theme }}\n />\n )}\n </div>\n <div className=\"neeto-ui-border-gray-100 flex items-start justify-between gap-1 border-t p-2\">\n <Typography\n className=\"line-clamp-2 min-w-0 flex-grow break-words pt-1\"\n data-cy=\"theme-name\"\n lineHeight=\"snug\"\n style=\"body2\"\n >\n {name}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ size: \"small\" }}\n dropdownProps={{\n strategy: \"fixed\",\n onClick: e => e.stopPropagation(),\n }}\n menuItems={[\n {\n key: \"edit\",\n \"data-cy\": \"edit-theme-menu-item\",\n label: t(\"neetoThemes.common.edit\"),\n isVisible: isPresent(onEditTheme),\n onClick: handleEditTheme,\n },\n {\n key: \"clone\",\n \"data-cy\": \"clone-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.clone\"\n ),\n onClick: handleCloneTheme,\n },\n {\n key: \"divider\",\n type: \"divider\",\n isVisible: isFunction(onDeleteTheme),\n },\n {\n key: \"delete\",\n \"data-cy\": \"delete-theme-menu-item\",\n label: t(\n \"neetoThemes.build.leftSideBar.themes.themeOptions.delete\"\n ),\n isVisible: isFunction(onDeleteTheme),\n onClick: e => {\n e.stopPropagation();\n handleDeleteTheme();\n },\n },\n ]}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(Card);\n","import { useEffect, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useCloneTheme } from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Card from \"./Card\";\n\nconst Themes = ({\n onEditTheme,\n themes = [],\n defaultThemes = [],\n onDeleteTheme,\n themeToHighlight,\n didScrollActiveThemeIntoView,\n isLoading,\n currentTheme,\n isCurrentThemeLoading,\n thumbnail,\n themeBeingApplied,\n onApplyTheme,\n isApplyingTheme,\n}) => {\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n const { setThemeState, previewingTheme } = useThemeStore.pick();\n\n const [searchQuery, setSearchQuery] = useState(\"\");\n\n const { mutate: cloneTheme } = useCloneTheme();\n\n useEffect(() => {\n if (didScrollActiveThemeIntoView.current || !currentTheme?.id) return;\n\n didScrollActiveThemeIntoView.current = true;\n setTimeout(() => {\n scrollElementIntoView(currentTheme?.id);\n }, 100);\n }, [didScrollActiveThemeIntoView, currentTheme?.id]);\n\n const setPreviewTheme = theme => {\n setThemeState({ previewingTheme: theme });\n setTheme(theme);\n };\n\n const filteredDefaultThemes = defaultThemes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const filteredThemes = themes.filter(theme =>\n theme.name.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const isSearchFieldVisible = themes?.length + defaultThemes?.length > 10;\n\n const handleCloneTheme = data => {\n cloneTheme(data.id, {\n onSuccess: ({ theme: clonedTheme }) => {\n onEditTheme(clonedTheme);\n },\n });\n };\n\n if (isLoading || isCurrentThemeLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__scroll\">\n <div className=\"mb-6 space-y-3\">\n {isSearchFieldVisible && (\n <Search\n autoFocus\n autoComplete=\"off\"\n className=\"mb-4 mt-1 px-6\"\n placeholder={t(\"neetoThemes.common.searchThemes\")}\n onSearch={setSearchQuery}\n />\n )}\n {isEmpty(filteredThemes) && isEmpty(filteredDefaultThemes) && (\n <Typography className=\"text-center\" style=\"body2\">\n {t(\"neetoThemes.common.noResultsFound\")}\n </Typography>\n )}\n {isNotEmpty(filteredDefaultThemes) && (\n <>\n <Typography\n className=\"my-4 px-6 uppercase lg:px-5 xl:px-6\"\n data-cy=\"system-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.systemThemes\")}\n </Typography>\n <div\n className=\"flex flex-col gap-4 px-6 pb-10 lg:px-5 xl:px-6\"\n data-cy=\"system-themes\"\n >\n {filteredDefaultThemes.map(theme => (\n <Card\n {...{ onApplyTheme, theme, thumbnail }}\n active={currentTheme?.id === theme.id}\n isPreviewing={previewingTheme?.id === theme.id}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onCloneTheme={handleCloneTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n ))}\n </div>\n </>\n )}\n </div>\n {isNotEmpty(filteredThemes) && (\n <div className=\"mb-6 space-y-3\">\n <Typography\n className=\"my-4 px-6 uppercase\"\n data-cy=\"custom-themes-header\"\n style=\"h6\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.themes.customThemes\")}\n </Typography>\n <div className=\"flex flex-col gap-4 px-6\" data-cy=\"custom-themes\">\n {filteredThemes.map(theme => {\n const isActive = currentTheme?.id === theme.id;\n const isPreviewing = previewingTheme?.id === theme.id;\n\n return (\n <Card\n {...{\n isPreviewing,\n onApplyTheme,\n onEditTheme,\n theme,\n thumbnail,\n }}\n active={isActive}\n isHighLightedTheme={theme.id === themeToHighlight}\n key={theme.id}\n isApplyingTheme={\n isApplyingTheme && themeBeingApplied?.id === theme.id\n }\n onCloneTheme={handleCloneTheme}\n onDeleteTheme={!isActive && onDeleteTheme}\n onSetPreviewTheme={setPreviewTheme}\n />\n );\n })}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Themes;\n","import { LeftArrow, Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst TitleBar = ({\n currentScreen,\n handleBackPress,\n handleCreateNewTheme,\n isNewTheme,\n themeToEdit,\n}) => {\n const { t } = useTranslation();\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n if (currentScreen === DESIGN_SCREENS.THEMES) {\n return (\n <div className=\"neeto-themes-sidebar__header px-6 lg:px-5 xl:px-6\">\n <div className=\"flex items-center justify-between space-x-2\">\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoThemes.build.leftSideBar.headerTabs.themes\")}\n </Typography>\n <div className=\"self-end\">\n <Button\n data-cy=\"customize-themes-add-theme-button\"\n icon={Plus}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoThemes.buttons.addNewTheme\"),\n position: \"top\",\n }}\n onClick={handleCreateNewTheme}\n />\n </div>\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"neeto-themes-sidebar__header px-4\">\n <div className=\"flex items-center justify-start space-x-2\">\n <Button\n data-cy=\"customize-themes-back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n style=\"text\"\n tooltipProps={{\n content: isCustomCssScreen\n ? t(\"neetoThemes.buttons.backToEdit\")\n : t(\"neetoThemes.buttons.backToThemes\"),\n position: \"top\",\n }}\n onClick={() => handleBackPress(themeToEdit)}\n />\n <Typography\n data-cy=\"themes-header\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {currentScreen === DESIGN_SCREENS.Customize &&\n (isNewTheme\n ? t(\"neetoThemes.build.leftSideBar.themes.createTheme.title\")\n : t(\"neetoThemes.build.leftSideBar.themes.editTheme.title\"))}\n {isCustomCssScreen &&\n t(\"neetoThemes.build.leftSideBar.themes.customCSS\")}\n </Typography>\n </div>\n </div>\n );\n};\n\nexport default TitleBar;\n","import { memo, useCallback, useRef, useState, useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport { Collapse } from \"neetoicons\";\nimport { Alert, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { scrollElementIntoView } from \"components/utils\";\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport {\n useApplyTheme,\n useDeleteTheme,\n useListThemes,\n} from \"hooks/reactQuery/useThemesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n\nimport Customize from \"./Customize\";\nimport Themes from \"./Themes\";\nimport TitleBar from \"./TitleBar\";\nimport { isScreenCustomCSS } from \"./utils\";\n\nimport { DESIGN_SCREENS } from \"../constants\";\n\nconst MemoizedAlert = memo(Alert);\n\nconst Sidebar = ({\n thumbnail,\n onPropertiesChange,\n onApplyThemeSuccess,\n onUpdateThemeSuccess,\n}) => {\n const [currentScreen, setCurrentScreen] = useState(DESIGN_SCREENS.THEMES);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [themeToHighlight, setThemeToHighlight] = useState(null);\n const [themeBeingApplied, setThemeBeingApplied] = useState({});\n const { isSize } = useBreakpoints();\n const isLargerScreen = !isSize(\"mobile\");\n\n const [isThemesSidebarCollapsed, setIsThemesSidebarCollapsed] = useState(\n !isLargerScreen\n );\n\n useEffect(() => {\n setIsThemesSidebarCollapsed(!isLargerScreen);\n }, [isLargerScreen]);\n\n const { entityType, entityId, isFetchingSchema, defaultThemeName } =\n useConfigStore.pick();\n const { setThemeState } = useThemeStore.pick();\n\n const didScrollActiveThemeIntoView = useRef(null);\n const { t } = useTranslation();\n const { setTheme } = useThemeUtils();\n\n const { data: { themes = [], defaultThemes = [] } = {}, isLoading } =\n useListThemes(entityId);\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading: isCurrentThemeLoading,\n } = useShowThemeEntity(entityId);\n\n const { mutate: deleteTheme, isPending: isDeleting } = useDeleteTheme();\n\n const { mutate: applyTheme, isPending: isApplyingTheme } = useApplyTheme({\n onSuccess: ({ theme }) => {\n setTheme(theme);\n highlightTheme(theme);\n setThemeState({ previewingTheme: theme });\n setThemeBeingApplied({});\n setCurrentScreen(DESIGN_SCREENS.THEMES);\n onApplyThemeSuccess?.(theme);\n },\n });\n\n const themeToDelete = useRef(null);\n const themeToEdit = useRef(null);\n\n const isCustomCssScreen = isScreenCustomCSS(currentScreen);\n\n const handleEditTheme = theme => {\n themeToEdit.current = theme;\n setCurrentScreen(DESIGN_SCREENS.Customize);\n };\n\n const onApplyTheme = theme => {\n if (isApplyingTheme) return;\n\n setThemeBeingApplied(theme);\n applyTheme({ themeId: theme.id, entityId, entityType });\n };\n\n const handleBackPress = theme => {\n setTheme(currentTheme);\n highlightTheme(isPresent(theme) ? theme : currentTheme);\n setThemeState({ previewingTheme: currentTheme });\n setCurrentScreen(\n isCustomCssScreen ? DESIGN_SCREENS.Customize : DESIGN_SCREENS.THEMES\n );\n themeToEdit.current = null;\n };\n\n const highlightTheme = themeToHighlight => {\n setTimeout(() => {\n scrollElementIntoView(themeToHighlight.id);\n }, 1500);\n\n setTimeout(() => {\n setThemeToHighlight(null);\n }, 4000);\n\n setThemeToHighlight(themeToHighlight.id);\n };\n\n const onCreateTheme = createdTheme => {\n themeToEdit.current = createdTheme;\n setTheme(createdTheme);\n setThemeState({ previewingTheme: createdTheme });\n };\n\n const handleDelete = (themeId, name, appliedCount) => {\n setIsDeleteAlertOpen(true);\n themeToDelete.current = { id: themeId, name, appliedCount };\n };\n\n const handleCloseDeleteAlert = useCallback(() => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n }, [themeToDelete]);\n\n const handleDeleteTheme = useCallback(() => {\n deleteTheme(themeToDelete.current?.id, {\n onSuccess: () => {\n setIsDeleteAlertOpen(false);\n themeToDelete.current = null;\n },\n });\n }, [deleteTheme, themeToDelete]);\n\n return (\n <>\n {!isThemesSidebarCollapsed && (\n <div\n className=\"neeto-themes-sidebar__backdrop\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n )}\n <div\n className={classNames(\n \"neeto-themes-sidebar neeto-ui-border-gray-200 flex-shrink-0 border-r transition-all duration-300\",\n { \"neeto-themes-sidebar--expanded\": isCustomCssScreen },\n {\n \"neeto-themes-sidebar--collapsed\": isThemesSidebarCollapsed,\n }\n )}\n >\n <TitleBar\n {...{ currentScreen, handleBackPress }}\n handleCreateNewTheme={() => handleEditTheme({})}\n isNewTheme={!themeToEdit.current?.id}\n themeToEdit={themeToEdit.current}\n />\n {currentScreen === DESIGN_SCREENS.THEMES ? (\n <Themes\n {...{\n currentTheme,\n defaultThemes,\n didScrollActiveThemeIntoView,\n highlightTheme,\n isApplyingTheme,\n isCurrentThemeLoading,\n onApplyTheme,\n themeBeingApplied,\n themeToHighlight,\n themes,\n thumbnail,\n }}\n isLoading={isLoading || isFetchingSchema}\n onDeleteTheme={handleDelete}\n onEditTheme={handleEditTheme}\n />\n ) : (\n <Customize\n {...{\n currentScreen,\n isApplyingTheme,\n onApplyTheme,\n onCreateTheme,\n onPropertiesChange,\n onUpdateThemeSuccess,\n }}\n theme={themeToEdit.current}\n themeId={themeToEdit.current?.id}\n onEditCSSClick={setCurrentScreen}\n />\n )}\n <MemoizedAlert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n title={t(\"neetoThemes.alerts.title.deleteTheme\")}\n message={t(\"neetoThemes.alerts.message.deleteTheme\", {\n name: themeToDelete.current?.name,\n count: themeToDelete.current?.appliedCount,\n defaultThemeName,\n entityType: t(\n `neetoThemes.entityType.${entityType.toLowerCase()}`,\n { count: themeToDelete.current?.appliedCount }\n ),\n })}\n onClose={handleCloseDeleteAlert}\n onSubmit={handleDeleteTheme}\n />\n <Button\n className=\"neeto-themes-sidebar__toggler\"\n icon={Collapse}\n style=\"secondary\"\n onClick={() => {\n setIsThemesSidebarCollapsed(!isThemesSidebarCollapsed);\n }}\n />\n </div>\n </>\n );\n};\n\nexport default Sidebar;\n","import { useEffect } from \"react\";\n\nimport { t } from \"i18next\";\nimport { noop, isNotPresent } from \"neetocist\";\nimport { withTitle } from \"neetocommons/react-utils\";\nimport { Spinner } from \"neetoui\";\n\nimport { useShowThemeEntity } from \"hooks/reactQuery/useEntitiesApi\";\nimport useThemeUtils from \"hooks/useThemeUtils\";\nimport useConfigStore from \"src/stores/useConfigStore\";\nimport useThemeStore from \"src/stores/useThemeStore\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/components/themes.scss\";\n\nimport Sidebar from \"./Sidebar\";\n\nconst NeetoThemesBuilder = ({\n children,\n entityType,\n entityId,\n thumbnail,\n onPropertiesChange,\n isTemplateThemesEnabled = false,\n onApplyThemeSuccess = noop,\n onUpdateThemeSuccess = noop,\n}) => {\n const { setThemeState } = useThemeStore.pick();\n const { setTheme } = useThemeUtils();\n const { setConfigState } = useConfigStore.pick();\n\n const {\n data: { theme: currentTheme = {} } = {},\n isLoading,\n isFetching: isFetchingCurrentTheme,\n } = useShowThemeEntity(entityId);\n\n const isCurrentThemeLoading = isLoading || isFetchingCurrentTheme;\n\n useEffect(() => {\n setConfigState({ entityType, entityId, isTemplateThemesEnabled });\n }, []);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ previewingTheme: currentTheme });\n setTheme(currentTheme);\n }, [isLoading, entityId]);\n\n useEffect(() => {\n if (isNotPresent(currentTheme)) return;\n\n setThemeState({ currentTheme, isCurrentThemeLoading });\n }, [currentTheme, isCurrentThemeLoading]);\n\n return (\n <div className=\"neeto-themes__wrapper\">\n <Sidebar\n {...{\n onApplyThemeSuccess,\n onPropertiesChange,\n onUpdateThemeSuccess,\n thumbnail,\n }}\n />\n <div className=\"neeto-themes-preview__wrapper\">\n {isCurrentThemeLoading ? (\n <div className=\"m-auto flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n children\n )}\n </div>\n </div>\n );\n};\n\nexport default withTitle(NeetoThemesBuilder, t(\"neetoThemes.common.theme\"));\n"],"names":["show","entityId","axios","get","concat","BASE_URL","entitiesApi","useShowThemeEntity","useQuery","queryKey","QUERY_KEYS","THEME_ENTITY_DETAILS","queryFn","enabled","list","params","entity_id","id","create","payload","post","theme","update","_ref","put","destroy","clone","apply","_ref2","themeId","_objectWithoutProperties","_excluded","entity","themesApi","useListThemes","_useConfigStore","useConfigStore","store","isTemplateThemesEnabled","shallow","THEMES_LIST","useCreateTheme","useMutationWithInvalidation","keysToInvalidate","useUpdateTheme","THEME_DETAILS","useDeleteTheme","useCloneTheme","useApplyTheme","onSuccess","POSITION_OPTIONS","label","value","FONT_OPTIONS","THEME_VALIDATION_SCHEMA","yup","object","shape","name","string","required","OVERLAY_OPACITY_SLIDER_MARKS","HUNDRED","DESIGN_SCREENS","THEMES","Customize","CustomCSS","ONE_MEGABYTE","Card","_ref$title","title","children","_jsxs","className","hyphenate","_jsx","Typography","lineHeight","style","weight","isScreenCustomCSS","screen","onEditCSSClick","currentScreen","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","values","setFieldValue","themePropertiesSchema","customCSS","findBy","kind","properties","parentElementClass","parentClass","isCustomCssScreen","handleEditorToggle","setTimeout","scrollElementIntoView","handleChange","index","findIndexBy","key","setCustomCSS","css","elementId","Button","size","onClick","Editor","language","options","scrollBeyondLastLine","minimap","classNames","rounded","onChange","buildInitialValues","isPresent","map","defaultValue","_ref$order","order","_objectSpread","String","filter","isNot","buildImageData","filterBy","reduce","acc","item","_values$snakeToCamelC","signedId","snakeToCamelCase","isPropertyVisible","formikValues","property","isNotPresent","hidden","conditionalKey","dependsOn","dependentPropertySchema","dependentProperty","_formikValues$snakeTo","url","buildLabel","SelectBlock","_ref$placeholder","placeholder","joinHyphenCase","Select","ImageBlock","_findBy","_ref$imageData","imageData","_ref$uploadConfig","uploadConfig","maxImageSize","attribute","propertySchema","enablePositionChanger","positionKeyInSchema","isPositionChangerVisible","positionKeyIndex","handleImageChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","dominantColor","wrap","_callee$","_context","prev","next","isEmpty","abrupt","getDominantColorFromUrl","sent","t0","Toastr","error","stop","_x","arguments","_createElement","ImageUploader","src","onUploadComplete","toLabelAndValue","option","Images","AlignmentBlock","Field","field","form","icon","LeftAlign","tooltipProps","content","position","CenterAlign","ColorBlock","_ref$color","color","showTransparencyControl","ColorPicker","showEyeDropper","FontPickerBlock","menuPosition","styles","data","fontFamily","SliderBlock","min","max","marks","Slider","tooltip","formatter","SwitchBlock","switchProps","i18n","translationKey","doesHelpTextExist","exists","classnames","HelpPopover","description","Switch","Properties","onPropertiesChange","_useThemeStore","useThemeStore","setThemeState","_useThemeUtils","useThemeUtils","setVariable","setTheme","handleColorChange","hex","rgb","r","g","b","a","variableValue","handleOverlayChange","overlayColorVariable","Math","abs","useEffect","previewingTheme","sort","Infinity","_ref3","_findBy2","isCurrentPropertyVisible","_ref4","Number","radius","negate","opacity","_findBy3","checked","e","target","ThemeMeta","withT","Input","autoFocus","onCreateTheme","onApplyTheme","isApplyingTheme","onUpdateThemeSuccess","_useState","useState","_useState2","_slicedToArray","popoverInstance","setPopoverInstance","entityType","currentTheme","isEditingCurrentlyAppliedTheme","submitBtnRef","useRef","_useCreateTheme","createTheme","mutate","isCreating","isPending","_useUpdateTheme","updateTheme","isUpdating","isSubmitting","onSubmit","resetForm","themeToSave","propertiesAttributes","Form","formikProps","initialValues","validationSchema","dirty","_ref5","disabled","type","loading","ref","Popover","appendTo","document","body","reference","trigger","Close","_popoverInstance$hide","hide","call","Trans","components","bold","i18nKey","onMount","Check","props","fill","height","viewBox","width","xmlns","rx","x","y","stroke","strokeWidth","d","strokeLinecap","strokeLinejoin","colorInterpolationFilters","filterUnits","floodOpacity","result","stdDeviation","in2","operator","Thumbnail","_theme$snakeToCamelCa","active","isPreviewing","isHighLightedTheme","_useConfigStore$theme","_themePropertiesSchem","colorObject1","colorObject2","primaryLabel","humanize","secondaryLabel","primaryColor","secondaryColor","backgroundImageUrl","useAsCardBackground","buttonBackgroundColor","useAsCardButtonBackground","backgroundImage","backgroundSize","backgroundColor","_ref$active","onSetPreviewTheme","onDeleteTheme","onEditTheme","onCloneTheme","thumbnail","appliedCount","handleCloneTheme","handleEditTheme","handleDeleteTheme","DefaultThumbnail","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","stopPropagation","menuItems","isVisible","isFunction","memo","Themes","_ref$themes","themes","_ref$defaultThemes","defaultThemes","themeToHighlight","didScrollActiveThemeIntoView","isLoading","isCurrentThemeLoading","themeBeingApplied","searchQuery","setSearchQuery","_useCloneTheme","cloneTheme","current","setPreviewTheme","filteredDefaultThemes","toLowerCase","includes","filteredThemes","isSearchFieldVisible","length","clonedTheme","Spinner","Search","autoComplete","onSearch","isNotEmpty","_Fragment","isActive","TitleBar","handleBackPress","handleCreateNewTheme","isNewTheme","themeToEdit","Plus","iconPosition","LeftArrow","MemoizedAlert","Alert","Sidebar","_themeToEdit$current","_themeToEdit$current2","_themeToDelete$curren2","_themeToDelete$curren3","_themeToDelete$curren4","onApplyThemeSuccess","setCurrentScreen","_useState3","_useState4","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState5","_useState6","setThemeToHighlight","_useState7","_useState8","setThemeBeingApplied","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_useState9","_useState10","isThemesSidebarCollapsed","setIsThemesSidebarCollapsed","isFetchingSchema","defaultThemeName","_useListThemes","_useListThemes$data","_useListThemes$data2","_useListThemes$data2$","_useListThemes$data2$2","_useShowThemeEntity","_useShowThemeEntity$d","_useShowThemeEntity$d2","_useShowThemeEntity$d3","_useDeleteTheme","deleteTheme","isDeleting","_useApplyTheme","highlightTheme","applyTheme","themeToDelete","createdTheme","handleDelete","handleCloseDeleteAlert","useCallback","_themeToDelete$curren","isOpen","message","count","onClose","Collapse","NeetoThemesBuilder","_ref$isTemplateThemes","_ref$onApplyThemeSucc","noop","_ref$onUpdateThemeSuc","setConfigState","isFetchingCurrentTheme","isFetching","withTitle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAMA,MAAI,GAAG,SAAPA,IAAIA,CAAGC,QAAQ,EAAA;AAAA,EAAA,OAAIC,KAAK,CAACC,GAAG,CAAA,EAAA,CAAAC,MAAA,CAAIC,QAAQ,EAAA,mBAAA,CAAA,CAAAD,MAAA,CAAoBH,QAAQ,CAAE,CAAC,CAAA;AAAA,CAAA,CAAA;AAE7E,IAAMK,WAAW,GAAG;AAAEN,EAAAA,IAAI,EAAJA,MAAAA;AAAK,CAAC;;ACDrB,IAAMO,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGN,QAAQ,EAAA;AAAA,EAAA,OACxCO,QAAQ,CAAC;AACPC,IAAAA,QAAQ,EAAE,CAACC,UAAU,CAACC,oBAAoB,EAAEV,QAAQ,CAAC;IACrDW,OAAO,EAAE,SAAAA,OAAA,GAAA;AAAA,MAAA,OAAMN,WAAW,CAACN,IAAI,CAACC,QAAQ,CAAC,CAAA;AAAA,KAAA;IACzCY,OAAO,EAAE,CAAC,CAACZ,QAAAA;AACb,GAAC,CAAC,CAAA;AAAA,CAAA;;ACVJ,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAC,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;;ACIruB,IAAMa,IAAI,GAAG,SAAPA,IAAIA,CAAGb,QAAQ,EAAA;AAAA,EAAA,OACnBC,KAAK,CAACC,GAAG,IAAAC,MAAA,CAAIC,QAAQ,EAAkB,gBAAA,CAAA,EAAA;AAAEU,IAAAA,MAAM,EAAE;AAAEC,MAAAA,SAAS,EAAEf,QAAAA;AAAS,KAAA;AAAE,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAE7E,IAAMD,IAAI,GAAG,SAAPA,IAAIA,CAAGiB,EAAE,EAAA;AAAA,EAAA,OAAIf,KAAK,CAACC,GAAG,CAAA,EAAA,CAAAC,MAAA,CAAIC,QAAQ,EAAA,iBAAA,CAAA,CAAAD,MAAA,CAAkBa,EAAE,CAAE,CAAC,CAAA;AAAA,CAAA,CAAA;AAE/D,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAGC,OAAO,EAAA;AAAA,EAAA,OACpBjB,KAAK,CAACkB,IAAI,IAAAhB,MAAA,CAAIC,QAAQ,EAAkB,gBAAA,CAAA,EAAA;AAAEgB,IAAAA,KAAK,EAAEF,OAAAA;AAAQ,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAE7D,IAAMG,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMN,EAAE,GAAAM,IAAA,CAAFN,EAAE;IAAEE,OAAO,GAAAI,IAAA,CAAPJ,OAAO,CAAA;EAAA,OAC3BjB,KAAK,CAACsB,GAAG,CAAApB,EAAAA,CAAAA,MAAA,CAAIC,QAAQ,EAAAD,iBAAAA,CAAAA,CAAAA,MAAA,CAAkBa,EAAE,CAAI,EAAA;AAAEI,IAAAA,KAAK,EAAEF,OAAAA;AAAQ,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAElE,IAAMM,OAAO,GAAG,SAAVA,OAAOA,CAAGR,EAAE,EAAA;EAAA,OAAIf,KAAK,CAAO,QAAA,CAAA,CAAA,EAAA,CAAAE,MAAA,CAAIC,QAAQ,EAAA,iBAAA,CAAA,CAAAD,MAAA,CAAkBa,EAAE,CAAE,CAAC,CAAA;AAAA,CAAA,CAAA;AAErE,IAAMS,KAAK,GAAG,SAARA,KAAKA,CAAGT,EAAE,EAAA;AAAA,EAAA,OAAIf,KAAK,CAACkB,IAAI,CAAA,EAAA,CAAAhB,MAAA,CAAIC,QAAQ,EAAA,iBAAA,CAAA,CAAAD,MAAA,CAAkBa,EAAE,EAAA,QAAA,CAAQ,CAAC,CAAA;AAAA,CAAA,CAAA;AAEvE,IAAMU,KAAK,GAAG,SAARA,KAAKA,CAAAC,KAAA,EAAA;AAAA,EAAA,IAAMC,OAAO,GAAAD,KAAA,CAAPC,OAAO;AAAKV,IAAAA,OAAO,GAAAW,wBAAA,CAAAF,KAAA,EAAAG,WAAA,CAAA,CAAA;EAAA,OAClC7B,KAAK,CAACkB,IAAI,CAAAhB,EAAAA,CAAAA,MAAA,CAAIC,QAAQ,EAAAD,iBAAAA,CAAAA,CAAAA,MAAA,CAAkByB,OAAO,EAAU,QAAA,CAAA,EAAA;AAAEG,IAAAA,MAAM,EAAEb,OAAAA;AAAQ,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAE/E,IAAMc,SAAS,GAAG;AAAEnB,EAAAA,IAAI,EAAJA,IAAI;AAAEd,EAAAA,IAAI,EAAJA,IAAI;AAAEkB,EAAAA,MAAM,EAANA,MAAM;AAAEI,EAAAA,MAAM,EAANA,MAAM;AAAEG,EAAAA,OAAO,EAAPA,OAAO;AAAEC,EAAAA,KAAK,EAALA,KAAK;AAAEC,EAAAA,KAAK,EAALA,KAAAA;AAAM,CAAC;;ACfhE,IAAMO,aAAa,GAAG,SAAhBA,aAAaA,CAAGjC,QAAQ,EAAI;AACvC,EAAA,IAAAkC,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,uBAAuB,EAAAD,KAAA,CAAA,yBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAvBD,uBAAuB,GAAAH,eAAA,CAAvBG,uBAAuB,CAAA;AAE/B,EAAA,IAAM7B,QAAQ,GAAG6B,uBAAuB,GACpC,CAAC5B,UAAU,CAAC8B,WAAW,EAAEvC,QAAQ,CAAC,GAClC,CAACS,UAAU,CAAC8B,WAAW,CAAC,CAAA;AAE5B,EAAA,OAAOhC,QAAQ,CAAC;AACdC,IAAAA,QAAQ,EAARA,QAAQ;IACRG,OAAO,EAAE,SAAAA,OAAA,GAAA;AAAA,MAAA,OAAMqB,SAAS,CAACnB,IAAI,CAACb,QAAQ,CAAC,CAAA;AAAA,KAAA;AACzC,GAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAEM,IAAMwC,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,EAAA,OACzBC,2BAA2B,CAACT,SAAS,CAACf,MAAM,EAAE;AAC5CyB,IAAAA,gBAAgB,EAAE,CAACjC,UAAU,CAAC8B,WAAW,CAAA;AAC3C,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAEG,IAAMI,cAAc,GAAG,SAAjBA,cAAcA,CAAGf,OAAO,EAAA;EAAA,OACnCa,2BAA2B,CACzB,UAAAvB,OAAO,EAAA;IAAA,OAAIc,SAAS,CAACX,MAAM,CAAC;AAAEL,MAAAA,EAAE,EAAEY,OAAO;AAAEV,MAAAA,OAAO,EAAPA,OAAAA;AAAQ,KAAC,CAAC,CAAA;GACrD,EAAA;IACEwB,gBAAgB,EAAE,CAChB,CAACjC,UAAU,CAAC8B,WAAW,CAAC,EACxB,CAAC9B,UAAU,CAACC,oBAAoB,CAAC,EACjC,CAACD,UAAU,CAACmC,aAAa,EAAEhB,OAAO,CAAC,CAAA;AAEvC,GACF,CAAC,CAAA;AAAA,CAAA,CAAA;AAEI,IAAMiB,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,EAAA,OACzBJ,2BAA2B,CAACT,SAAS,CAACR,OAAO,EAAE;AAC7CkB,IAAAA,gBAAgB,EAAE,CAChB,CAACjC,UAAU,CAAC8B,WAAW,CAAC,EACxB,CAAC9B,UAAU,CAACC,oBAAoB,CAAC,CAAA;AAErC,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAEG,IAAMoC,aAAa,GAAG,SAAhBA,aAAaA,GAAA;AAAA,EAAA,OACxBL,2BAA2B,CAACT,SAAS,CAACP,KAAK,EAAE;AAC3CiB,IAAAA,gBAAgB,EAAE,CAACjC,UAAU,CAAC8B,WAAW,CAAA;AAC3C,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAEG,IAAMQ,aAAa,GAAG,SAAhBA,aAAaA,CAAAzB,IAAA,EAAA;AAAA,EAAA,IAAM0B,SAAS,GAAA1B,IAAA,CAAT0B,SAAS,CAAA;AAAA,EAAA,OACvCP,2BAA2B,CAACT,SAAS,CAACN,KAAK,EAAE;AAC3CgB,IAAAA,gBAAgB,EAAE,CAChB,CAACjC,UAAU,CAAC8B,WAAW,CAAC,EACxB,CAAC9B,UAAU,CAACC,oBAAoB,CAAC,CAClC;AACDsC,IAAAA,SAAS,EAATA,SAAAA;AACF,GAAC,CAAC,CAAA;AAAA,CAAA;;ACnDG,IAAMC,gBAAgB,GAAG,CAC9B;AAAEC,EAAAA,KAAK,EAAE,MAAM;AAAEC,EAAAA,KAAK,EAAE,MAAA;AAAO,CAAC,EAChC;AAAED,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,KAAK,EAAE,OAAA;AAAQ,CAAC,CACnC,CAAA;AAEM,IAAMC,YAAY,GAAG,CAC1B;AACEF,EAAAA,KAAK,EAAE,WAAW;AAClBC,EAAAA,KAAK,EACH,+IAAA;AACJ,CAAC,EACD;AACED,EAAAA,KAAK,EAAE,oBAAoB;AAC3BC,EAAAA,KAAK,EAAE,+BAAA;AACT,CAAC,EACD;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE,qBAAA;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,QAAQ;AAAEC,EAAAA,KAAK,EAAE,oBAAA;AAAqB,CAAC,EAChD;AAAED,EAAAA,KAAK,EAAE,WAAW;AAAEC,EAAAA,KAAK,EAAE,uBAAA;AAAwB,CAAC,EACtD;AAAED,EAAAA,KAAK,EAAE,YAAY;AAAEC,EAAAA,KAAK,EAAE,wBAAA;AAAyB,CAAC,EACxD;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE,qBAAA;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,WAAW;AAAEC,EAAAA,KAAK,EAAE,uBAAA;AAAwB,CAAC,EACtD;AAAED,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,KAAK,EAAE,mBAAA;AAAoB,CAAC,EAC9C;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE,qBAAA;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,SAAS;AAAEC,EAAAA,KAAK,EAAE,qBAAA;AAAsB,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,eAAe;AAAEC,EAAAA,KAAK,EAAE,2BAAA;AAA4B,CAAC,EAC9D;AAAED,EAAAA,KAAK,EAAE,cAAc;AAAEC,EAAAA,KAAK,EAAE,0BAAA;AAA2B,CAAC,EAC5D;AAAED,EAAAA,KAAK,EAAE,iBAAiB;AAAEC,EAAAA,KAAK,EAAE,6BAAA;AAA8B,CAAC,EAClE;AAAED,EAAAA,KAAK,EAAE,MAAM;AAAEC,EAAAA,KAAK,EAAE,aAAA;AAAc,CAAC,EACvC;AAAED,EAAAA,KAAK,EAAE,cAAc;AAAEC,EAAAA,KAAK,EAAE,qBAAA;AAAsB,CAAC,EACvD;AAAED,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,KAAK,EAAE,cAAA;AAAe,CAAC,EACzC;AAAED,EAAAA,KAAK,EAAE,kBAAkB;AAAEC,EAAAA,KAAK,EAAE,yBAAA;AAA0B,CAAC,EAC/D;AAAED,EAAAA,KAAK,EAAE,aAAa;AAAEC,EAAAA,KAAK,EAAE,oBAAA;AAAqB,CAAC,EACrD;AAAED,EAAAA,KAAK,EAAE,gBAAgB;AAAEC,EAAAA,KAAK,EAAE,yBAAA;AAA0B,CAAC,CAC9D,CAAA;AAEM,IAAME,uBAAuB,GAAGC,GAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EACxDC,IAAI,EAAEH,GAAG,CAACI,MAAM,EAAE,CAACC,QAAQ,CAAC,kBAAkB,CAAA;AAChD,CAAC,CAAC,CAAA;AAEK,IAAMC,4BAA4B,GAAG;AAAE,EAAA,CAAC,EAAE,GAAA;AAAI,CAAC,CAAA;AAC/C,IAAMC,OAAO,GAAG,GAAG;;AC9CnB,IAAMC,cAAc,GAAG;AAC5BC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,SAAS,EAAE,WAAA;AACb,CAAC,CAAA;AAEM,IAAMC,YAAY,GAAG,CAAC;;ACH7B,IAAMC,MAAI,GAAG,SAAPA,IAAIA,CAAA7C,IAAA,EAAA;AAAA,EAAA,IAAA8C,UAAA,GAAA9C,IAAA,CAAM+C,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAEE,QAAQ,GAAAhD,IAAA,CAARgD,QAAQ,CAAA;AAAA,EAAA,oBAClCC,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,iFAAiF;AAC3F,IAAA,SAAA,EAAA,QAAA,CAAArE,MAAA,CAAkBsE,SAAS,CAACJ,KAAK,CAAC,EAAc,aAAA,CAAA;IAAAC,QAAA,EAAA,CAE/CD,KAAK,iBACJK,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,oEAAoE;MAAAF,QAAA,eACjFI,GAAA,CAACC,UAAU,EAAA;AACTH,QAAAA,SAAS,EAAC,mBAAmB;AAC7B,QAAA,SAAA,EAAQ,kBAAkB;AAC1BI,QAAAA,UAAU,EAAC,QAAQ;AACnBC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;AAAAR,QAAAA,QAAA,EAEhBD,KAAAA;OACS,CAAA;AAAC,KACV,CACN,EACAC,QAAQ,iBACPI,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,2CAA2C;AAAAF,MAAAA,QAAA,EACvDA,QAAAA;AAAQ,KACN,CACN,CAAA;AAAA,GACE,CAAC,CAAA;AAAA,CACP;;ACzBM,IAAMS,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,MAAM,EAAA;AAAA,EAAA,OAAIA,MAAM,KAAKlB,cAAc,CAACG,SAAS,CAAA;AAAA,CAAA;;ACa9E,IAAMA,SAAS,GAAG,SAAZA,SAASA,CAAA3C,IAAA,EAA0C;AAAA,EAAA,IAApC2D,cAAc,GAAA3D,IAAA,CAAd2D,cAAc;IAAEC,aAAa,GAAA5D,IAAA,CAAb4D,aAAa,CAAA;AAChD,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAAC,iBAAA,GAAkCC,gBAAgB,EAAE;IAA5CC,MAAM,GAAAF,iBAAA,CAANE,MAAM;IAAEC,aAAa,GAAAH,iBAAA,CAAbG,aAAa,CAAA;AAC7B,EAAA,IAAAvD,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQsD,QAAAA,qBAAqB,EAAAtD,KAAA,CAAA,uBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAArBoD,qBAAqB,GAAAxD,eAAA,CAArBwD,qBAAqB,CAAA;EAE7B,IAAMC,SAAS,GAAGC,MAAM,CAAC;AAAEC,IAAAA,IAAI,EAAE,YAAA;AAAa,GAAC,EAAEL,MAAM,CAACM,UAAU,CAAC,CAAA;AAEnE,EAAA,IAAI,CAACH,SAAS,EAAE,OAAO,IAAI,CAAA;EAE3B,IAAMI,kBAAkB,GAAGH,MAAM,CAC/B;AAAEC,IAAAA,IAAI,EAAE,YAAA;AAAa,GAAC,EACtBH,qBACF,CAAC,CAACM,WAAW,CAAA;AAEb,EAAA,IAAMC,iBAAiB,GAAGlB,iBAAiB,CAACG,aAAa,CAAC,CAAA;AAE1D,EAAA,IAAMgB,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;IAC/B,IAAI,CAACD,iBAAiB,EAAE,OAAOhB,cAAc,CAACnB,cAAc,CAACG,SAAS,CAAC,CAAA;AACvEgB,IAAAA,cAAc,CAACnB,cAAc,CAACE,SAAS,CAAC,CAAA;IAExC,OAAOmC,UAAU,CAAC,YAAM;MACtBC,qBAAqB,CAAC,YAAY,CAAC,CAAA;KACpC,EAAE,GAAG,CAAC,CAAA;GACR,CAAA;AAED,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGlD,KAAK,EAAI;IAC5B,IAAMmD,KAAK,GAAGC,WAAW,CAAC;MAAEC,GAAG,EAAEb,SAAS,CAACa,GAAAA;AAAI,KAAC,EAAEhB,MAAM,CAACM,UAAU,CAAC,CAAA;AAEpE,IAAA,IAAIQ,KAAK,KAAK,CAAC,CAAC,IAAId,MAAM,CAACM,UAAU,CAACQ,KAAK,CAAC,CAACnD,KAAK,KAAKA,KAAK,EAAE;AAC5DsC,MAAAA,aAAa,eAAAtF,MAAA,CAAemG,KAAK,EAAA,SAAA,CAAA,EAAWnD,KAAK,CAAC,CAAA;AAClDsD,MAAAA,YAAY,CAAC;AACXC,QAAAA,GAAG,EAAEvD,KAAK;QACVwD,SAAS,EAAEhB,SAAS,CAACa,GAAG;AACxBT,QAAAA,kBAAkB,EAAlBA,kBAAAA;AACF,OAAC,CAAC,CAAA;AACJ,KAAA;GACD,CAAA;AAED,EAAA,oBACErB,GAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAC,0CAA0C;AAACxD,IAAAA,EAAE,EAAC,YAAY;IAAAsD,QAAA,eACvEC,IAAA,CAACJ,MAAI,EAAA;MACHE,KAAK,EACH4B,iBAAiB,GACb,EAAE,GACFZ,CAAC,CAAC,gDAAgD,CACvD;AAAAf,MAAAA,QAAA,gBAEDI,GAAA,CAAA,KAAA,EAAA;AAAKF,QAAAA,SAAS,EAAC,4FAA4F;QAAAF,QAAA,eACzGI,GAAA,CAACkC,MAAM,EAAA;AACLC,UAAAA,IAAI,EAAC,OAAO;AACZhC,UAAAA,KAAK,EAAC,WAAW;UACjB3B,KAAK,EACH+C,iBAAiB,GACbZ,CAAC,CAAC,oCAAoC,CAAC,GACvCA,CAAC,CAAC,kCAAkC,CACzC;AACDyB,UAAAA,OAAO,EAAEZ,kBAAAA;SACV,CAAA;AAAC,OACC,CAAC,eACNxB,GAAA,CAACqC,MAAM,EAAA;AACLC,QAAAA,QAAQ,EAAC,KAAK;AACdC,QAAAA,OAAO,EAAE;AAAEC,UAAAA,oBAAoB,EAAE,KAAK;AAAEC,UAAAA,OAAO,EAAE;AAAEvG,YAAAA,OAAO,EAAE,KAAA;AAAM,WAAA;SAAI;AACtEQ,QAAAA,KAAK,EAAC,SAAS;QACf+B,KAAK,EAAEwC,SAAS,CAACxC,KAAM;QACvBqB,SAAS,EAAE4C,UAAU,CAAC;AACpBC,UAAAA,OAAO,EAAE,IAAI;AACb,UAAA,6BAA6B,EAAEpB,iBAAiB;AAChD,UAAA,4BAA4B,EAAE,CAACA,iBAAAA;AACjC,SAAC,CAAE;AACHqB,QAAAA,QAAQ,EAAEjB,YAAAA;AAAa,OACxB,CAAC,CAAA;KACE,CAAA;AAAC,GACJ,CAAC,CAAA;AAEV,CAAC;;;;ACrEM,IAAMkB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAInG,KAAK,EAAEsE,qBAAqB,EAAK;AAClE,EAAA,IAAI8B,SAAS,CAACpG,KAAK,CAAC,EAAE,OAAOA,KAAK,CAAA;EAElC,OAAO;AACLqC,IAAAA,IAAI,EAAE4B,GAAC,CAAC,+DAA+D,CAAC;AACxES,IAAAA,UAAU,EAAEJ,qBAAqB,CAC9B+B,GAAG,CAAC,UAAAnG,IAAA,EAA+C;AAAA,MAAA,IAA5CkF,GAAG,GAAAlF,IAAA,CAAHkF,GAAG;QAAEX,IAAI,GAAAvE,IAAA,CAAJuE,IAAI;QAAE6B,YAAY,GAAApG,IAAA,CAAZoG,YAAY;QAAAC,UAAA,GAAArG,IAAA,CAAEsG,KAAK;AAALA,QAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,UAAA,CAAA;AAC3C,MAAA,QAAQ9B,IAAI;AACV,QAAA,KAAK,OAAO;AACV,UAAA,OAAAgC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAEuE,YAAY;AACnB7B,YAAAA,IAAI,EAAE,OAAO;AACbW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,aAAa;AAChB,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EACH,+IAA+I;AACjJ0C,YAAAA,IAAI,EAAE,aAAa;AACnBW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,iBAAiB;AACpB,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAE,CAAC;AACR0C,YAAAA,IAAI,EAAE,iBAAiB;AACvBW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,QAAQ;AACX,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAE,CAAC;AACR0C,YAAAA,IAAI,EAAE,QAAQ;AACdW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,QAAQ;AACX,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAEuE,YAAY;AACnB7B,YAAAA,IAAI,EAAE,QAAQ;AACdW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,SAAS;AACZ,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAE2E,MAAM,CAACJ,YAAY,CAAC;AAC3B7B,YAAAA,IAAI,EAAE,SAAS;AACfW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,gBAAgB;AACnB,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAEuE,YAAY;AACnB7B,YAAAA,IAAI,EAAE,gBAAgB;AACtBW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,iBAAiB;AACpB,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAEuE,YAAY;AACnB7B,YAAAA,IAAI,EAAE,iBAAiB;AACvBW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA,KAAK,YAAY;AACf,UAAA,OAAAC,eAAA,CAAA;AACE1E,YAAAA,KAAK,EAAEuE,YAAY;AACnB7B,YAAAA,IAAI,EAAE,YAAY;AAClBW,YAAAA,GAAG,EAAHA,GAAAA;WACIoB,EAAAA,KAAK,KAAK,IAAI,IAAI;AAAEA,YAAAA,KAAK,EAALA,KAAAA;WAAO,CAAA,CAAA;AAEnC,QAAA;AACE,UAAA,OAAO,IAAI,CAAA;AACf,OAAA;AACF,KAAC,CAAC,CACDG,MAAM,CAACC,KAAK,CAAC,IAAI,CAAC,CAAA;GACtB,CAAA;AACH,CAAC,CAAA;AAEM,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAIzC,MAAM,EAAEE,qBAAqB,EAAA;AAAA,EAAA,OAC1DwC,QAAQ,CAAC;AAAErC,IAAAA,IAAI,EAAE,OAAA;GAAS,EAAEH,qBAAqB,CAAC,CAACyC,MAAM,CAAC,UAACC,GAAG,EAAEC,IAAI,EAAK;AAAA,IAAA,IAAAC,qBAAA,CAAA;AACvE,IAAA,IAAMC,QAAQ,GAAAD,CAAAA,qBAAA,GAAG9C,MAAM,CAACgD,gBAAgB,CAACH,IAAI,CAAC7B,GAAG,CAAC,CAAC,MAAA,IAAA,IAAA8B,qBAAA,KAAlCA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAoCC,QAAQ,CAAA;AAC7DH,IAAAA,GAAG,CAACC,IAAI,CAAC7B,GAAG,CAAC,GAAG+B,QAAQ,CAAA;AAExB,IAAA,OAAOH,GAAG,CAAA;GACX,EAAE,EAAE,CAAC,CAAA;AAAA,CAAA,CAAA;AAED,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIjC,GAAG,EAAEkC,YAAY,EAAEhD,qBAAqB,EAAK;EAC7E,IAAMiD,QAAQ,GAAG/C,MAAM,CAAC;AAAEY,IAAAA,GAAG,EAAHA,GAAAA;GAAK,EAAEd,qBAAqB,CAAC,CAAA;AAEvD,EAAA,IAAIkD,YAAY,CAACD,QAAQ,CAAC,EAAE,OAAO,KAAK,CAAA;EAExC,IAAIA,QAAQ,aAARA,QAAQ,KAAA,KAAA,CAAA,IAARA,QAAQ,CAAEE,MAAM,EAAE,OAAO,KAAK,CAAA;EAElC,IAAMC,cAAc,GAAGH,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAEI,SAAS,CAAA;AAC1C,EAAA,IAAIH,YAAY,CAACE,cAAc,CAAC,EAAE,OAAO,IAAI,CAAA;EAE7C,IAAME,uBAAuB,GAAGpD,MAAM,CACpC;AAAEY,IAAAA,GAAG,EAAEsC,cAAAA;GAAgB,EACvBpD,qBACF,CAAC,CAAA;EAED,IAAMuD,iBAAiB,GAAGrD,MAAM,CAC9B;AAAEY,IAAAA,GAAG,EAAEsC,cAAAA;AAAe,GAAC,EACvBJ,YAAY,CAAC5C,UACf,CAAC,CAAA;AAED,EAAA,IAAIkD,uBAAuB,CAACnD,IAAI,KAAK,OAAO,EAAE;AAAA,IAAA,IAAAqD,qBAAA,CAAA;AAC5C,IAAA,OAAO1B,SAAS,CAAA0B,CAAAA,qBAAA,GAACR,YAAY,CAACF,gBAAgB,CAACM,cAAc,CAAC,CAAC,MAAAI,IAAAA,IAAAA,qBAAA,uBAA9CA,qBAAA,CAAgDC,GAAG,CAAC,CAAA;AACvE,GAAC,MAAM,IAAIH,uBAAuB,CAACnD,IAAI,KAAK,SAAS,EAAE;IACrD,OAAO,CAAAoD,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,uBAAjBA,iBAAiB,CAAE9F,KAAK,MAAK,OAAO,CAAA;AAC7C,GAAA;EAEA,OAAOqE,SAAS,CAACyB,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAE9F,KAAK,CAAC,CAAA;AAC5C,CAAC,CAAA;AAEM,IAAMiG,UAAU,GAAG,SAAbA,UAAUA,CAAI5C,GAAG,EAAEX,IAAI,EAAA;AAAA,EAAA,OAClCR,GAAC,CAAAlF,yBAAAA,CAAAA,MAAA,CAC2BqI,gBAAgB,CAAC3C,IAAI,CAAC,EAAA1F,GAAAA,CAAAA,CAAAA,MAAA,CAAIqI,gBAAgB,CAAChC,GAAG,CAAC,CAC3E,CAAC,CAAA;AAAA,CAAA;;ACzIH,IAAM6C,WAAW,GAAG,SAAdA,WAAWA,CAAA/H,IAAA,EAAA;AAAA,EAAA,IAAM4B,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IAAAoG,gBAAA,GAAAhI,IAAA,CAAEiI,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,gBAAA;IAAEnG,KAAK,GAAA7B,IAAA,CAAL6B,KAAK;IAAE8D,OAAO,GAAA3F,IAAA,CAAP2F,OAAO;IAAEK,QAAQ,GAAAhG,IAAA,CAARgG,QAAQ,CAAA;AAAA,EAAA,oBACtE/C,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,6DAA6D;AACvE,IAAA,SAAA,EAAA,cAAA,CAAArE,MAAA,CAAwBqJ,cAAc,CAACtG,KAAK,CAAC,CAAG;IAAAoB,QAAA,EAAA,cAEhDI,GAAA,CAACC,UAAU,EAAA;AAAC,MAAA,SAAA,EAAQ,mBAAmB;AAACE,MAAAA,KAAK,EAAC,OAAO;AAAAP,MAAAA,QAAA,EAClDpB,KAAAA;KACS,CAAC,eACbwB,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,MAAM;MAAAF,QAAA,eACnBI,GAAA,CAAC+E,MAAM,EAAA;AAAOnC,QAAAA,QAAQ,EAARA,QAAQ;AAAEL,QAAAA,OAAO,EAAPA,OAAO;AAAEsC,QAAAA,WAAW,EAAXA,WAAW;AAAEpG,QAAAA,KAAK,EAALA,KAAAA;OAAU,CAAA;AAAC,KACtD,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAAA,CACP;;ACED,IAAMuG,UAAU,GAAG,SAAbA,UAAUA,CAAApI,IAAA,EAMV;AAAA,EAAA,IAAAqI,OAAA,CAAA;AAAA,EAAA,IALJzG,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IACLO,IAAI,GAAAnC,IAAA,CAAJmC,IAAI;IAAAmG,cAAA,GAAAtI,IAAA,CACJuI,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,cAAA;IAAAE,iBAAA,GAAAxI,IAAA,CACdyI,YAAY;IAAZA,YAAY,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA;AAAEE,MAAAA,YAAY,EAAE9F,YAAAA;AAAa,KAAC,GAAA4F,iBAAA;IAC7CG,SAAS,GAAA3I,IAAA,CAAT2I,SAAS,CAAA;AAET,EAAA,IAAA9E,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAAC,iBAAA,GAAkCC,gBAAgB,EAAE;IAA5CE,aAAa,GAAAH,iBAAA,CAAbG,aAAa;IAAED,MAAM,GAAAF,iBAAA,CAANE,MAAM,CAAA;AAC7B,EAAA,IAAAtD,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQsD,QAAAA,qBAAqB,EAAAtD,KAAA,CAAA,uBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAArBoD,qBAAqB,GAAAxD,eAAA,CAArBwD,qBAAqB,CAAA;EAE7B,IAAMwE,cAAc,GAAGtE,MAAM,CAAC;AAAEY,IAAAA,GAAG,EAAEyD,SAAAA;GAAW,EAAEvE,qBAAqB,CAAC,CAAA;EAExE,IAAMyE,qBAAqB,GAAG,CAAAD,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEC,qBAAqB,KAAI,KAAK,CAAA;EAC5E,IAAMlD,OAAO,GAAGiD,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAdA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,cAAc,CAAEjD,OAAO,CAAA;EAEvC,IAAMmD,mBAAmB,GAAGxE,MAAM,CAChC;IAAEY,GAAG,EAAA,EAAA,CAAArG,MAAA,CAAKsD,IAAI,EAAA,WAAA,CAAA;GAAa,EAC3BiC,qBACF,CAAC,CAAA;AAED,EAAA,IAAM2E,wBAAwB,GAC5BF,qBAAqB,KAAIN,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEV,GAAG,CAAA,IAAI3B,SAAS,CAAC4C,mBAAmB,CAAC,CAAA;EAE3E,IAAME,gBAAgB,GAAG/D,WAAW,CAClC;IAAEC,GAAG,EAAA,EAAA,CAAArG,MAAA,CAAKsD,IAAI,EAAA,WAAA,CAAA;AAAY,GAAC,EAC3B+B,MAAM,CAACM,UACT,CAAC,CAAA;AAED,EAAA,IAAMyE,iBAAiB,gBAAA,YAAA;IAAA,IAAA5I,KAAA,GAAA6I,iBAAA,eAAAC,mBAAA,CAAAC,IAAA,CAAG,SAAAC,OAAAA,CAAMC,KAAK,EAAA;AAAA,MAAA,IAAAC,aAAA,CAAA;AAAA,MAAA,OAAAJ,mBAAA,CAAAK,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,UAAA,KAAA,CAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA,CAAA;AAAA,YAAA,IAAA,EAE7BE,OAAO,CAACP,KAAK,CAACrC,QAAQ,CAAC,IAAI4C,OAAO,CAACP,KAAK,CAACzB,GAAG,CAAC,CAAA,EAAA;AAAA6B,cAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA,CAAA;AAAA,cAAA,MAAA;AAAA,aAAA;YAC/CzF,aAAa,CAAChC,IAAI,EAAE;AAAE8E,cAAAA,QAAQ,EAAE,IAAI;cAAEY,GAAG,EAAEyB,KAAK,CAACzB,GAAAA;AAAI,aAAC,CAAC,CAAA;YAAC,OAAA6B,QAAA,CAAAI,MAAA,CAAA,QAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAAAJ,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA,CAAA;AAAA,YAAA,OAK9BG,uBAAuB,CAACT,KAAK,CAACzB,GAAG,CAAC,CAAA;AAAA,UAAA,KAAA,CAAA;YAAxD0B,aAAa,GAAAG,QAAA,CAAAM,IAAA,CAAA;YAEnB7F,aAAa,CAAChC,IAAI,EAAE;cAClB8E,QAAQ,EAAEqC,KAAK,CAACrC,QAAQ;cACxBY,GAAG,EAAEyB,KAAK,CAACzB,GAAG;AACd0B,cAAAA,aAAa,EAAbA,aAAAA;AACF,aAAC,CAAC,CAAA;AAACG,YAAAA,QAAA,CAAAE,IAAA,GAAA,EAAA,CAAA;AAAA,YAAA,MAAA;AAAA,UAAA,KAAA,EAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,EAAA,CAAA;YAAAD,QAAA,CAAAO,EAAA,GAAAP,QAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEHQ,YAAAA,MAAM,CAACC,KAAK,CAAAT,QAAA,CAAAO,EAAM,CAAC,CAAA;AAAC,UAAA,KAAA,EAAA,CAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAAP,QAAA,CAAAU,IAAA,EAAA,CAAA;AAAA,SAAA;AAAA,OAAA,EAAAf,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA;KAEvB,CAAA,CAAA,CAAA;IAAA,OAlBKJ,SAAAA,iBAAiBA,CAAAoB,EAAA,EAAA;AAAA,MAAA,OAAAhK,KAAA,CAAAD,KAAA,CAAA,IAAA,EAAAkK,SAAA,CAAA,CAAA;AAAA,KAAA,CAAA;GAkBtB,EAAA,CAAA;AAED,EAAA,oBACErH,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,qCAAqC;AAC/C,IAAA,SAAA,EAAA,cAAA,CAAArE,MAAA,CAAwBqJ,cAAc,CAACtG,KAAK,CAAC,CAAG;IAAAoB,QAAA,EAAA,CAE/CpB,KAAK,iBACJwB,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,mCAAmC;MAAAF,QAAA,eAChDI,GAAA,CAACC,UAAU,EAAA;AAAC,QAAA,SAAA,EAAQ,qBAAqB;AAACE,QAAAA,KAAK,EAAC,OAAO;AAAAP,QAAAA,QAAA,EACpDpB,KAAAA;OACS,CAAA;KACT,CACN,eACDqB,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,WAAW;MAAAF,QAAA,EAAA,cACxBuH,aAAA,CAACC,aAAa,EAAA;AACN/B,QAAAA,YAAY,EAAZA,YAAY;AAClBvF,QAAAA,SAAS,EAAC,aAAa;AACvBgC,QAAAA,GAAG,EAAEqD,SAAS,KAAA,IAAA,IAATA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEV,GAAI;AACpB4C,QAAAA,GAAG,EAAElC,SAAS,KAAA,IAAA,IAATA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEV,GAAI;AACpB6C,QAAAA,gBAAgB,EAAEzB,iBAAAA;AAAkB,OACrC,CAAC,EACDF,wBAAwB,iBACvB3F,GAAA,CAAC2E,WAAW,EAAA;QACVnG,KAAK,EAAEkG,UAAU,CAAAjJ,EAAAA,CAAAA,MAAA,CAAIsD,IAAI,EAAA,UAAA,CAAA,EAAY,OAAO,CAAE;QAC9CwD,OAAO,EAAEA,OAAO,IAAIhE,gBAAiB;AACrCsG,QAAAA,WAAW,EAAElE,CAAC,CAAC,yBAAyB,CAAE;AAC1ClC,QAAAA,KAAK,EAAE8I,eAAe,CACpB,EAAAtC,OAAA,GAAA/D,MAAM,CAAC;UAAEY,GAAG,EAAA,EAAA,CAAArG,MAAA,CAAKsD,IAAI,EAAA,WAAA,CAAA;SAAa,EAAE+B,MAAM,CAACM,UAAU,CAAC,MAAA6D,IAAAA,IAAAA,OAAA,uBAAtDA,OAAA,CAAwDxG,KAAK,MAC3DiH,mBAAmB,aAAnBA,mBAAmB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAnBA,mBAAmB,CAAE1C,YAAY,CACrC,CAAE;QACFJ,QAAQ,EAAE,SAAAA,QAAAA,CAAA4E,MAAM,EAAA;UAAA,OACdzG,aAAa,eAAAtF,MAAA,CACGmK,gBAAgB,EAC9B4B,SAAAA,CAAAA,EAAAA,MAAM,CAAC/I,KACT,CAAC,CAAA;AAAA,SAAA;AACF,OACF,CACF,CAAA;AAAA,KACE,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,CAAC;;AClGD,IAAMgJ,MAAM,GAAG,SAATA,MAAMA,CAAA7K,IAAA,EAAsB;AAAA,EAAA,IAAhB2I,SAAS,GAAA3I,IAAA,CAAT2I,SAAS,CAAA;AACzB,EAAA,IAAA3E,iBAAA,GAAmBC,gBAAgB,EAAE;IAA7BC,MAAM,GAAAF,iBAAA,CAANE,MAAM,CAAA;AAEd,EAAA,IAAMgB,GAAG,GAAGgC,gBAAgB,CAACyB,SAAS,CAAC,CAAA;AACvC,EAAA,IAAM5F,KAAK,GAAG+E,UAAU,CAAC5C,GAAG,EAAE,OAAO,CAAC,CAAA;AACtC,EAAA,IAAMqD,SAAS,GAAGrE,MAAM,CAACgB,GAAG,CAAC,CAAA;EAE7B,oBACE9B,GAAA,CAACP,MAAI,EAAA;AAAOE,IAAAA,KAAK,EAALA,KAAK;IAAAC,QAAA,eACfI,GAAA,CAACgF,UAAU,EAAA;AAAOO,MAAAA,SAAS,EAATA,SAAS;AAAEJ,MAAAA,SAAS,EAATA,SAAS;AAAIpG,MAAAA,IAAI,EAAE+C,GAAAA;KAAM,CAAA;AAAC,GACnD,CAAC,CAAA;AAEX,CAAC;;ACfD,IAAM4F,cAAc,GAAG,SAAjBA,cAAcA,CAAA9K,IAAA,EAAA;AAAA,EAAA,IAAM4B,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IAAEO,IAAI,GAAAnC,IAAA,CAAJmC,IAAI,CAAA;AAAA,EAAA,oBACnCc,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,mEAAmE;IAC7E,SAASgF,EAAAA,cAAc,CAACtG,KAAK,CAAE;IAAAoB,QAAA,EAAA,cAE/BI,GAAA,CAACC,UAAU,EAAA;AAAC,MAAA,SAAA,EAAQ,qBAAqB;AAACE,MAAAA,KAAK,EAAC,OAAO;AAAAP,MAAAA,QAAA,EACpDpB,KAAAA;AAAK,KACI,CAAC,eACbwB,GAAA,CAAC2H,KAAK,EAAA;AAAO5I,MAAAA,IAAI,EAAJA,IAAI;MAAAa,QAAA,EACd,SAAAA,QAAAA,CAAA3C,KAAA,EAAA;AAAA,QAAA,IAAYwB,KAAK,GAAAxB,KAAA,CAAd2K,KAAK,CAAInJ,KAAK;AAAYsC,UAAAA,aAAa,GAAA9D,KAAA,CAArB4K,IAAI,CAAI9G,aAAa,CAAA;AAAA,QAAA,oBACzClB,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,yBAAyB;UAAAF,QAAA,EAAA,cACtCI,GAAA,CAACkC,MAAM,EAAA;AACL,YAAA,SAAA,EAAQ,gBAAgB;AACxB4F,YAAAA,IAAI,EAAEC,SAAU;AAChB5F,YAAAA,IAAI,EAAC,OAAO;AACZhC,YAAAA,KAAK,EAAE1B,KAAK,KAAK,MAAM,GAAG,SAAS,GAAG,MAAO;AAC7CuJ,YAAAA,YAAY,EAAE;AACZC,cAAAA,OAAO,EAAE,YAAY;AACrBC,cAAAA,QAAQ,EAAE,QAAA;aACV;YACF9F,OAAO,EAAE,SAAAA,OAAA,GAAA;AAAA,cAAA,OAAMrB,aAAa,CAAChC,IAAI,EAAE,MAAM,CAAC,CAAA;AAAA,aAAA;AAAC,WAC5C,CAAC,eACFiB,GAAA,CAACkC,MAAM,EAAA;AACL,YAAA,SAAA,EAAQ,kBAAkB;AAC1B4F,YAAAA,IAAI,EAAEK,WAAY;AAClBhG,YAAAA,IAAI,EAAC,OAAO;AACZhC,YAAAA,KAAK,EAAE1B,KAAK,KAAK,QAAQ,GAAG,SAAS,GAAG,MAAO;AAC/CuJ,YAAAA,YAAY,EAAE;AACZC,cAAAA,OAAO,EAAE,cAAc;AACvBC,cAAAA,QAAQ,EAAE,QAAA;aACV;YACF9F,OAAO,EAAE,SAAAA,OAAA,GAAA;AAAA,cAAA,OAAMrB,aAAa,CAAChC,IAAI,EAAE,QAAQ,CAAC,CAAA;AAAA,aAAA;AAAC,WAC9C,CAAC,CAAA;AAAA,SACC,CAAC,CAAA;AAAA,OAAA;AACP,KACI,CAAC,CAAA;AAAA,GACL,CAAC,CAAA;AAAA,CACP;;ACvCD,IAAMqJ,UAAU,GAAG,SAAbA,UAAUA,CAAAxL,IAAA,EAAA;AAAA,EAAA,IACd4B,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IAAA6J,UAAA,GAAAzL,IAAA,CACL0L,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,UAAA;IACjBzF,QAAQ,GAAAhG,IAAA,CAARgG,QAAQ;IACR2F,uBAAuB,GAAA3L,IAAA,CAAvB2L,uBAAuB,CAAA;AAAA,EAAA,oBAEvB1I,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,6DAA6D;AACvE,IAAA,SAAA,EAAA,cAAA,CAAArE,MAAA,CAAwBqJ,cAAc,CAACtG,KAAK,CAAC,CAAG;IAAAoB,QAAA,EAAA,cAEhDI,GAAA,CAACC,UAAU,EAAA;AAAC,MAAA,SAAA,EAAQ,qBAAqB;AAACE,MAAAA,KAAK,EAAC,OAAO;AAAAP,MAAAA,QAAA,EACpDpB,KAAAA;AAAK,KACI,CAAC,eACbwB,GAAA,CAACwI,WAAW,EAAA;AACJF,MAAAA,KAAK,EAALA,KAAK;AAAE1F,MAAAA,QAAQ,EAARA,QAAQ;AAAE2F,MAAAA,uBAAuB,EAAvBA,uBAAuB;MAC9CE,cAAc,EAAA,IAAA;AACdtG,MAAAA,IAAI,EAAC,OAAA;AAAO,KACb,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAAA,CACP;;;;ACnBD,IAAMuG,eAAe,GAAG,SAAlBA,eAAeA,CAAA9L,IAAA,EAAA;AAAA,EAAA,IACnB4B,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IAAAoG,gBAAA,GAAAhI,IAAA,CACLiI,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,gBAAA;IAChBnG,KAAK,GAAA7B,IAAA,CAAL6B,KAAK;IACL8D,OAAO,GAAA3F,IAAA,CAAP2F,OAAO;IACPK,QAAQ,GAAAhG,IAAA,CAARgG,QAAQ,CAAA;AAAA,EAAA,oBAER/C,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,6DAA6D;AACvE,IAAA,SAAA,EAAA,cAAA,CAAArE,MAAA,CAAwBqJ,cAAc,CAACtG,KAAK,CAAC,CAAG;IAAAoB,QAAA,EAAA,cAEhDI,GAAA,CAACC,UAAU,EAAA;AAAC,MAAA,SAAA,EAAQ,qBAAqB;AAACE,MAAAA,KAAK,EAAC,OAAO;AAAAP,MAAAA,QAAA,EACpDpB,KAAAA;KACS,CAAC,eACbwB,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,MAAM;MAAAF,QAAA,eACnBI,GAAA,CAAC+E,MAAM,EAAA;AACCnC,QAAAA,QAAQ,EAARA,QAAQ;AAAEL,QAAAA,OAAO,EAAPA,OAAO;AAAEsC,QAAAA,WAAW,EAAXA,WAAW;AAAEpG,QAAAA,KAAK,EAALA,KAAK;AAC3CkK,QAAAA,YAAY,EAAC,OAAO;AACpBC,QAAAA,MAAM,EAAE;AACNpB,UAAAA,MAAM,EAAE,SAAAA,MAACoB,CAAAA,MAAM,EAAA3L,KAAA,EAAA;AAAA,YAAA,IAAI4L,IAAI,GAAA5L,KAAA,CAAJ4L,IAAI,CAAA;AAAA,YAAA,OAAA1F,eAAA,CAAAA,eAAA,CAAA,EAAA,EAClByF,MAAM,CAAA,EAAA,EAAA,EAAA;cACTE,UAAU,EAAED,IAAI,CAACpK,KAAAA;AAAK,aAAA,CAAA,CAAA;AAAA,WAAA;AAE1B,SAAA;OACD,CAAA;AAAC,KACC,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAAA,CACP;;AC1BD,IAAMsK,WAAW,GAAG,SAAdA,WAAWA,CAAAnM,IAAA,EAAA;AAAA,EAAA,IAAM4B,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IAAEoE,QAAQ,GAAAhG,IAAA,CAARgG,QAAQ;IAAEnE,KAAK,GAAA7B,IAAA,CAAL6B,KAAK;IAAEuK,GAAG,GAAApM,IAAA,CAAHoM,GAAG;IAAEC,GAAG,GAAArM,IAAA,CAAHqM,GAAG;IAAEC,KAAK,GAAAtM,IAAA,CAALsM,KAAK,CAAA;AAAA,EAAA,oBAC5DrJ,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,mEAAmE;AAC7E,IAAA,SAAA,EAAA,cAAA,CAAArE,MAAA,CAAwBqJ,cAAc,CAACtG,KAAK,CAAC,CAAG;IAAAoB,QAAA,EAAA,cAEhDI,GAAA,CAACC,UAAU,EAAA;AAAC,MAAA,SAAA,EAAQ,qBAAqB;AAACE,MAAAA,KAAK,EAAC,OAAO;AAAAP,MAAAA,QAAA,EACpDpB,KAAAA;AAAK,KACI,CAAC,eACbwB,GAAA,CAACmJ,MAAM,EAAA;AACCD,MAAAA,KAAK,EAALA,KAAK;AAAED,MAAAA,GAAG,EAAHA,GAAG;AAAED,MAAAA,GAAG,EAAHA,GAAG;AAAEpG,MAAAA,QAAQ,EAARA,QAAQ;AAAEnE,MAAAA,KAAK,EAALA,KAAK;AACtCqB,MAAAA,SAAS,EAAC,WAAW;AACrBsJ,MAAAA,OAAO,EAAE;AAAEC,QAAAA,SAAS,EAAE,IAAA;AAAK,OAAA;AAAE,KAC9B,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAAA,CACP;;;;;ACbD,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA1M,IAAA,EAAwC;AAAA,EAAA,IAAlC4B,KAAK,GAAA5B,IAAA,CAAL4B,KAAK;IAAEO,IAAI,GAAAnC,IAAA,CAAJmC,IAAI;AAAKwK,IAAAA,WAAW,GAAApM,wBAAA,CAAAP,IAAA,EAAAQ,SAAA,CAAA,CAAA;AAChD,EAAA,IAAAqD,eAAA,GAAoBC,cAAc,EAAE;IAA5BC,CAAC,GAAAF,eAAA,CAADE,CAAC;IAAE6I,IAAI,GAAA/I,eAAA,CAAJ+I,IAAI,CAAA;AAEf,EAAA,IAAMC,cAAc,GAAA,iCAAA,CAAAhO,MAAA,CAAqCsD,IAAI,EAAU,UAAA,CAAA,CAAA;AACvE,EAAA,IAAM2K,iBAAiB,GAAGF,IAAI,CAACG,MAAM,CAACF,cAAc,CAAC,CAAA;AAErD,EAAA,oBACE5J,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,6DAA6D;AAAAF,IAAAA,QAAA,gBAC1EC,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gCAAgC;MAAAF,QAAA,EAAA,cAC7CI,GAAA,CAACC,UAAU,EAAA;AACT,QAAA,SAAA,EAAQ,qBAAqB;AAC7BE,QAAAA,KAAK,EAAC,OAAO;QACbL,SAAS,EAAE8J,UAAU,CAAC;AACpB,UAAA,MAAM,EAAEF,iBAAiB;AACzB,UAAA,QAAQ,EAAE,CAACA,iBAAAA;AACb,SAAC,CAAE;AAAA9J,QAAAA,QAAA,EAEFpB,KAAAA;AAAK,OACI,CAAC,EACZkL,iBAAiB,iBAChB1J,GAAA,CAAC6J,WAAW,EAAA;AACV/J,QAAAA,SAAS,EAAC,eAAe;QACzBgK,WAAW,EAAEnJ,CAAC,CAAC8I,cAAc,CAAA;AAAE,OAChC,CACF,CAAA;KACE,CAAC,eACNzJ,GAAA,CAAC+J,MAAM,EAAA5G,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAAA,eAAA,CAAA;AACCpE,MAAAA,IAAI,EAAJA,IAAAA;AAAI,KAAA,EAAKwK,WAAW,CAAA,CAAA,EAAA,EAAA,EAAA;MAC1B,SAAQ,EAAA,gCAAA;AAAgC,KAAA,CACzC,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAEV,CAAC;;ACLD,IAAMS,UAAU,GAAG,SAAbA,UAAUA,CAAApN,IAAA,EAA+B;AAAA,EAAA,IAAzBqN,kBAAkB,GAAArN,IAAA,CAAlBqN,kBAAkB,CAAA;AACtC,EAAA,IAAAxJ,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAAnD,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQsD,QAAAA,qBAAqB,EAAAtD,KAAA,CAAA,uBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAArBoD,qBAAqB,GAAAxD,eAAA,CAArBwD,qBAAqB,CAAA;AAC7B,EAAA,IAAAkJ,cAAA,GAAAC,aAAA,CAAA,UAAAzM,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQ0M,QAAAA,aAAa,EAAA1M,KAAA,CAAA,eAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAbwM,aAAa,GAAAF,cAAA,CAAbE,aAAa,CAAA;AACrB,EAAA,IAAAxJ,iBAAA,GAAkCC,gBAAgB,EAAE;IAA5CE,aAAa,GAAAH,iBAAA,CAAbG,aAAa;IAAED,MAAM,GAAAF,iBAAA,CAANE,MAAM,CAAA;AAC7B,EAAA,IAAAuJ,cAAA,GAAkCC,aAAa,EAAE;IAAzCC,WAAW,GAAAF,cAAA,CAAXE,WAAW;IAAEC,QAAQ,GAAAH,cAAA,CAARG,QAAQ,CAAA;AAE7B,EAAA,IAAMC,iBAAiB,GACrB,SADIA,iBAAiBA,CACrB1L,IAAI,EAAA;IAAA,OACJ,UAAA9B,KAAA,EAAkB;AAAA,MAAA,IAAfyN,GAAG,GAAAzN,KAAA,CAAHyN,GAAG;QAAEC,GAAG,GAAA1N,KAAA,CAAH0N,GAAG,CAAA;AACThJ,MAAAA,YAAY,CAAC5C,IAAI,EAAE2L,GAAG,EAAAjP,EAAAA,CAAAA,MAAA,CAAKkP,GAAG,CAACC,CAAC,EAAAnP,IAAAA,CAAAA,CAAAA,MAAA,CAAKkP,GAAG,CAACE,CAAC,EAAApP,IAAAA,CAAAA,CAAAA,MAAA,CAAKkP,GAAG,CAACG,CAAC,EAAArP,IAAAA,CAAAA,CAAAA,MAAA,CAAKkP,GAAG,CAACI,CAAC,CAAE,CAAC,CAAA;KAClE,CAAA;AAAA,GAAA,CAAA;EAEH,IAAMpJ,YAAY,GAAG,SAAfA,YAAYA,CAAI5C,IAAI,EAAEN,KAAK,EAAEuM,aAAa,EAAK;IACnD,IAAMpJ,KAAK,GAAGC,WAAW,CAAC;AAAEC,MAAAA,GAAG,EAAE/C,IAAAA;AAAK,KAAC,EAAE+B,MAAM,CAACM,UAAU,CAAC,CAAA;AAC3D,IAAA,IAAIQ,KAAK,KAAK,CAAC,CAAC,IAAId,MAAM,CAACM,UAAU,CAACQ,KAAK,CAAC,CAACnD,KAAK,KAAKA,KAAK,EAAE;AAC5DsC,MAAAA,aAAa,eAAAtF,MAAA,CAAemG,KAAK,EAAA,SAAA,CAAA,EAAWnD,KAAK,CAAC,CAAA;AACpD,KAAA;AACA8L,IAAAA,WAAW,CAACzG,gBAAgB,CAAC/E,IAAI,CAAC,EAAEiM,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,GAAbA,aAAa,GAAIvM,KAAK,CAAC,CAAA;GAC5D,CAAA;EAED,IAAMwM,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAInJ,GAAG,EAAErD,KAAK,EAAK;IAC1C,IAAMmD,KAAK,GAAGC,WAAW,CAAC;AAAEC,MAAAA,GAAG,EAAHA,GAAAA;AAAI,KAAC,EAAEhB,MAAM,CAACM,UAAU,CAAC,CAAA;AACrD,IAAA,IAAM8J,oBAAoB,GAAA,EAAA,CAAAzP,MAAA,CAAMqG,GAAG,EAAgB,gBAAA,CAAA,CAAA;AAEnDf,IAAAA,aAAa,eAAAtF,MAAA,CAAemG,KAAK,EAAA,SAAA,CAAA,EAAWnD,KAAK,CAAC,CAAA;AAClD8L,IAAAA,WAAW,CAAA9O,EAAAA,CAAAA,MAAA,CAAIqG,GAAG,EAAoBqJ,kBAAAA,CAAAA,EAAAA,IAAI,CAACC,GAAG,CAAC3M,KAAK,GAAG,GAAG,CAAC,CAAC,CAAA;IAC5D,IAAIA,KAAK,GAAG,CAAC,EAAE;AACbkD,MAAAA,YAAY,CAACuJ,oBAAoB,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAC1D,KAAC,MAAM;AACLvJ,MAAAA,YAAY,CAACuJ,oBAAoB,EAAE,SAAS,EAAE,eAAe,CAAC,CAAA;AAChE,KAAA;GACD,CAAA;AAEDG,EAAAA,SAAS,CAAC,YAAM;IACdpB,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAA,KAAA,CAAA,IAAlBA,kBAAkB,CAAGnJ,MAAM,EAAEa,YAAY,EAAE8I,iBAAiB,CAAC,CAAA;IAC7DD,QAAQ,CAAC1J,MAAM,CAAC,CAAA;AAChBsJ,IAAAA,aAAa,CAAC;AAAEkB,MAAAA,eAAe,EAAExK,MAAAA;AAAO,KAAC,CAAC,CAAA;AAC5C,GAAC,EAAE,CAACA,MAAM,CAAC,CAAC,CAAA;EAEZ,oBACEd,GAAA,CAACP,MAAI,EAAA;AAACE,IAAAA,KAAK,EAAEgB,CAAC,CAAC,0BAA0B,CAAE;IAAAf,QAAA,EACxCkB,MAAM,CAACM,UAAU,CACfmK,IAAI,CAAC,UAACR,CAAC,EAAED,CAAC,EAAK;AACd,MAAA,IAAM5H,KAAK,GAAG,SAARA,KAAKA,CAAGpB,GAAG,EAAA;AAAA,QAAA,IAAAmD,OAAA,CAAA;AAAA,QAAA,OACf,CAAAA,CAAAA,OAAA,GAAA/D,MAAM,CAAC;AAAEY,UAAAA,GAAG,EAAHA,GAAAA;SAAK,EAAEd,qBAAqB,CAAC,MAAAiE,IAAAA,IAAAA,OAAA,uBAAtCA,OAAA,CAAwC/B,KAAK,KAAIsI,QAAQ,CAAA;AAAA,OAAA,CAAA;AAE3D,MAAA,OAAOtI,KAAK,CAAC6H,CAAC,CAACjJ,GAAG,CAAC,GAAGoB,KAAK,CAAC4H,CAAC,CAAChJ,GAAG,CAAC,CAAA;AACpC,KAAC,CAAC,CACDiB,GAAG,CAAC,UAAA0I,KAAA,EAA0B;AAAA,MAAA,IAAAC,QAAA,CAAA;AAAA,MAAA,IAAvB5J,GAAG,GAAA2J,KAAA,CAAH3J,GAAG;QAAErD,KAAK,GAAAgN,KAAA,CAALhN,KAAK;QAAE0C,IAAI,GAAAsK,KAAA,CAAJtK,IAAI,CAAA;MACtB,IAAMwK,wBAAwB,GAAG5H,iBAAiB,CAChDjC,GAAG,EACHhB,MAAM,EACNE,qBACF,CAAC,CAAA;AAED,MAAA,IAAI,CAAC2K,wBAAwB,EAAE,OAAO,IAAI,CAAA;AAE1C,MAAA,QAAQxK,IAAI;AACV,QAAA,KAAK,aAAa;UAChB,oBACEnB,GAAA,CAAC0I,eAAe,EAAA;AAEdlK,YAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;AAC7BoB,YAAAA,OAAO,EAAE7D,YAAa;YACtBD,KAAK,EAAEyC,MAAM,CAAC;cAAEzC,KAAK,EAAEA,KAAK,IAAI,IAAA;aAAM,EAAEC,YAAY,CAAE;YACtDkE,QAAQ,EAAE,SAAAA,QAAAA,CAAAgJ,KAAA,EAAA;AAAA,cAAA,IAAGnN,KAAK,GAAAmN,KAAA,CAALnN,KAAK,CAAA;AAAA,cAAA,OAAOkD,YAAY,CAACG,GAAG,EAAErD,KAAK,CAAC,CAAA;AAAA,aAAA;AAAC,WAAA,EAJ7CqD,GAKN,CAAC,CAAA;AAGN,QAAA,KAAK,OAAO;UACV,oBACE9B,GAAA,CAACoI,UAAU,EAAA;AACTE,YAAAA,KAAK,EAAE7J,KAAM;AAEbD,YAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;AAC7BoH,YAAAA,uBAAuB,EACrB,CAAA,CAAAmD,QAAA,GAAAxK,MAAM,CAAC;AAAEY,cAAAA,GAAG,EAAHA,GAAAA;aAAK,EAAEd,qBAAqB,CAAC,MAAA0K,IAAAA,IAAAA,QAAA,uBAAtCA,QAAA,CACInD,uBAAuB,KAAI,KAChC;YACD3F,QAAQ,EAAE6H,iBAAiB,CAAC3I,GAAG,CAAA;AAAE,WAAA,EAN5BA,GAON,CAAC,CAAA;AAGN,QAAA,KAAK,QAAQ;UACX,oBACE9B,GAAA,CAAC+I,WAAW,EAAA;AAEVvK,YAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;AAC7B8H,YAAAA,GAAG,EAAE,EAAG;AACRD,YAAAA,GAAG,EAAE,CAAE;AACPvK,YAAAA,KAAK,EAAEoN,MAAM,CAACpN,KAAK,CAAC,IAAI,CAAE;YAC1BmE,QAAQ,EAAE,SAAAA,QAAAA,CAAAkJ,MAAM,EAAA;cAAA,OAAInK,YAAY,CAACG,GAAG,EAAEgK,MAAM,KAAArQ,MAAA,CAAKqQ,MAAM,EAAA,IAAA,CAAI,CAAC,CAAA;AAAA,aAAA;AAAC,WAAA,EALxDhK,GAMN,CAAC,CAAA;AAGN,QAAA,KAAK,iBAAiB;UACpB,oBACE9B,GAAA,CAAC+I,WAAW,EAAA;AAEVvK,YAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;AAC7B+H,YAAAA,KAAK,EAAEhK,4BAA6B;AACpC+J,YAAAA,GAAG,EAAE9J,OAAQ;AACb6J,YAAAA,GAAG,EAAE+C,MAAM,CAAC5M,OAAO,CAAE;AACrBV,YAAAA,KAAK,EAAEoN,MAAM,CAACpN,KAAK,CAAC,IAAI,CAAE;YAC1BmE,QAAQ,EAAE,SAAAA,QAAAA,CAAAoJ,OAAO,EAAA;AAAA,cAAA,OAAIf,mBAAmB,CAACnJ,GAAG,EAAEkK,OAAO,CAAC,CAAA;AAAA,aAAA;AAAC,WAAA,EANlDlK,GAON,CAAC,CAAA;AAGN,QAAA,KAAK,mBAAmB;AAAE,UAAA;AAAA,YAAA,IAAAmK,QAAA,CAAA;YACxB,IAAMrK,KAAK,GAAGC,WAAW,CAAC;AAAEC,cAAAA,GAAG,EAAHA,GAAAA;AAAI,aAAC,EAAEhB,MAAM,CAACM,UAAU,CAAC,CAAA;AACrD,YAAA,IAAMmB,OAAO,GAAA,CAAA0J,QAAA,GAAG/K,MAAM,CACpB;AAAEY,cAAAA,GAAG,EAAHA,GAAAA;AAAI,aAAC,EACPd,qBACF,CAAC,cAAAiL,QAAA,KAAA,KAAA,CAAA,IAAA,CAAAA,QAAA,GAHeA,QAAA,CAGb1J,OAAO,MAAA,IAAA,IAAA0J,QAAA,KAHMA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAA,CAGJlJ,GAAG,CAACwE,eAAe,CAAC,CAAA;YAEhC,oBACEvH,GAAA,CAAC2E,WAAW,EAAA;AAEVnG,cAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;cAC7BoB,OAAO,EAAEA,OAAO,IAAIhE,gBAAiB;AACrCsG,cAAAA,WAAW,EAAC,MAAM;AAClBpG,cAAAA,KAAK,EAAE8I,eAAe,CAAC9I,KAAK,CAAE;cAC9BmE,QAAQ,EAAE,SAAAA,QAAAA,CAAA4E,MAAM,EAAA;gBAAA,OACdzG,aAAa,eAAAtF,MAAA,CAAemG,KAAK,EAAW4F,SAAAA,CAAAA,EAAAA,MAAM,CAAC/I,KAAK,CAAC,CAAA;AAAA,eAAA;AAC1D,aAAA,EAPIqD,GAQN,CAAC,CAAA;AAEN,WAAA;AAEA,QAAA,KAAK,SAAS;AAAE,UAAA;YACd,IAAMF,MAAK,GAAGC,WAAW,CAAC;AAAEC,cAAAA,GAAG,EAAHA,GAAAA;AAAI,aAAC,EAAEhB,MAAM,CAACM,UAAU,CAAC,CAAA;YAErD,oBACEpB,GAAA,CAACsJ,WAAW,EAAA;cACV4C,OAAO,EAAEzN,KAAK,KAAK,OAAQ;AAE3BD,cAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;AAC7BpC,cAAAA,IAAI,EAAE+E,gBAAgB,CAAChC,GAAG,CAAE;cAC5Bc,QAAQ,EAAE,SAAAA,QAAAA,CAAAuJ,CAAC,EAAA;AAAA,gBAAA,OACTpL,aAAa,CAAA,aAAA,CAAAtF,MAAA,CACGmG,MAAK,EACnBwB,SAAAA,CAAAA,EAAAA,MAAM,CAAC+I,CAAC,CAACC,MAAM,CAACF,OAAO,CACzB,CAAC,CAAA;AAAA,eAAA;AACF,aAAA,EARIpK,GASN,CAAC,CAAA;AAEN,WAAA;AAEA,QAAA,KAAK,iBAAiB;AAAE,UAAA;YACtB,IAAMF,OAAK,GAAGC,WAAW,CAAC;AAAEC,cAAAA,GAAG,EAAHA,GAAAA;AAAI,aAAC,EAAEhB,MAAM,CAACM,UAAU,CAAC,CAAA;YAErD,oBACEpB,GAAA,CAAC0H,cAAc,EAAA;AACblJ,cAAAA,KAAK,EAAEkG,UAAU,CAAC5C,GAAG,EAAEX,IAAI,CAAE;cAC7BpC,IAAI,EAAA,aAAA,CAAAtD,MAAA,CAAgBmG,OAAK,EAAA,SAAA,CAAA;AAAU,aACpC,CAAC,CAAA;AAEN,WAAA;AAEA,QAAA;AACE,UAAA,OAAO,IAAI,CAAA;AACf,OAAA;KACD,CAAA;AAAC,GACA,CAAC,CAAA;AAEX,CAAC;;ACjMD,IAAMyK,SAAS,GAAGC,KAAK,CAAC,UAAA1P,IAAA,EAAA;AAAA,EAAA,IAAG+D,CAAC,GAAA/D,IAAA,CAAD+D,CAAC,CAAA;EAAA,oBAC1BX,GAAA,CAACP,MAAI,EAAA;AAACE,IAAAA,KAAK,EAAEgB,CAAC,CAAC,yBAAyB,CAAE;IAAAf,QAAA,eACxCI,GAAA,CAACuM,KAAK,EAAA;MAACC,SAAS,EAAA,IAAA;AAAC,MAAA,SAAA,EAAQ,qBAAqB;AAACzN,MAAAA,IAAI,EAAC,MAAA;KAAQ,CAAA;AAAC,GACzD,CAAC,CAAA;AAAA,CACR,CAAC;;;;ACgBF,IAAMO,SAAS,GAAG,SAAZA,SAASA,CAAA1C,IAAA,EAUT;AAAA,EAAA,IATJM,OAAO,GAAAN,IAAA,CAAPM,OAAO;IACPR,KAAK,GAAAE,IAAA,CAALF,KAAK;IACL+P,aAAa,GAAA7P,IAAA,CAAb6P,aAAa;IACbC,YAAY,GAAA9P,IAAA,CAAZ8P,YAAY;IACZC,eAAe,GAAA/P,IAAA,CAAf+P,eAAe;IACf1C,kBAAkB,GAAArN,IAAA,CAAlBqN,kBAAkB;IAClB2C,oBAAoB,GAAAhQ,IAAA,CAApBgQ,oBAAoB;IACpBrM,cAAc,GAAA3D,IAAA,CAAd2D,cAAc;IACdC,aAAa,GAAA5D,IAAA,CAAb4D,aAAa,CAAA;AAEb,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAAkM,SAAA,GAA8CC,QAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAnDI,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,kBAAkB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAAvP,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQsD,QAAAA,qBAAqB,EAAAtD,KAAA,CAAA,uBAAA,CAAA;AAAEyP,QAAAA,UAAU,EAAAzP,KAAA,CAAA,YAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAjCoD,qBAAqB,GAAAxD,eAAA,CAArBwD,qBAAqB;IAAEmM,UAAU,GAAA3P,eAAA,CAAV2P,UAAU,CAAA;AAEzC,EAAA,IAAA9C,cAAA,GAAyBC,aAAa,EAAE;IAAhC8C,YAAY,GAAA/C,cAAA,CAAZ+C,YAAY,CAAA;EAEpB,IAAMC,8BAA8B,GAAGnQ,OAAO,MAAKkQ,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAE9Q,EAAE,CAAA,CAAA;AAEnE,EAAA,IAAMgR,YAAY,GAAGC,MAAM,CAAC,IAAI,CAAC,CAAA;AAEjC,EAAA,IAAAC,eAAA,GAAuD1P,cAAc,EAAE;IAAvD2P,WAAW,GAAAD,eAAA,CAAnBE,MAAM;IAA0BC,UAAU,GAAAH,eAAA,CAArBI,SAAS,CAAA;AACtC,EAAA,IAAAC,eAAA,GACE5P,cAAc,CAACf,OAAO,CAAC;IADT4Q,WAAW,GAAAD,eAAA,CAAnBH,MAAM;IAA0BK,UAAU,GAAAF,eAAA,CAArBD,SAAS,CAAA;AAGtC,EAAA,IAAMI,YAAY,GAAGL,UAAU,IAAII,UAAU,CAAA;AAE7C,EAAA,IAAMxM,iBAAiB,GAAGlB,iBAAiB,CAACG,aAAa,CAAC,CAAA;EAE1D,IAAMyN,QAAQ,GAAG,SAAXA,QAAQA,CAAInN,MAAM,EAAA7D,KAAA,EAAoB;AAAA,IAAA,IAAhBiR,SAAS,GAAAjR,KAAA,CAATiR,SAAS,CAAA;AACnC,IAAA,IAAM/I,SAAS,GAAG5B,cAAc,CAACzC,MAAM,EAAEE,qBAAqB,CAAC,CAAA;IAC/D,IAAMmN,WAAW,GAAAhL,eAAA,CAAA;MACfiL,oBAAoB,EAAEtN,MAAM,CAACM,UAAU;MACvCrC,IAAI,EAAE+B,MAAM,CAAC/B,IAAAA;AAAI,KAAA,EACdoG,SAAS,CACb,CAAA;IAED,IAAI,CAACjI,OAAO,EAAE;MACZ,OAAOuQ,WAAW,CAACU,WAAW,EAAE;AAC9B7P,QAAAA,SAAS,EAAE,SAAAA,SAAAmN,CAAAA,KAAA,EAAe;AAAA,UAAA,IAAZ/O,KAAK,GAAA+O,KAAA,CAAL/O,KAAK,CAAA;AACjBwR,UAAAA,SAAS,CAAC;AAAEpN,YAAAA,MAAM,EAAEpE,KAAAA;AAAM,WAAC,CAAC,CAAA;UAC5B+P,aAAa,CAAC/P,KAAK,CAAC,CAAA;AACtB,SAAA;AACF,OAAC,CAAC,CAAA;AACJ,KAAA;IAEA,OAAOoR,WAAW,CAACK,WAAW,EAAE;MAC9B7P,SAAS,EAAE,SAAAA,SAAAA,GAAM;AACf4P,QAAAA,SAAS,CAAC;AAAEpN,UAAAA,MAAM,EAANA,MAAAA;AAAO,SAAC,CAAC,CAAA;AACrB8L,QAAAA,oBAAoB,aAApBA,oBAAoB,KAAA,KAAA,CAAA,IAApBA,oBAAoB,CAAG9L,MAAM,CAAC,CAAA;AAChC,OAAA;AACF,KAAC,CAAC,CAAA;GACH,CAAA;EAED,oBACEd,GAAA,CAACqO,IAAI,EAAA;AACHC,IAAAA,WAAW,EAAE;AACXC,MAAAA,aAAa,EAAE1L,kBAAkB,CAACnG,KAAK,EAAEsE,qBAAqB,CAAC;AAC/DwN,MAAAA,gBAAgB,EAAE7P,uBAAuB;AACzCsP,MAAAA,QAAQ,EAARA,QAAAA;KACA;IAAArO,QAAA,EAED,SAAAA,QAAAA,CAAAgM,KAAA,EAAA;AAAA,MAAA,IAAG6C,KAAK,GAAA7C,KAAA,CAAL6C,KAAK,CAAA;AAAA,MAAA,oBACP5O,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,8BAA8B;AAAAF,QAAAA,QAAA,gBAC3CC,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,wFAAwF;AAAAF,UAAAA,QAAA,gBACrGI,GAAA,CAAA,KAAA,EAAA;YAAKF,SAAS,EAAE4C,UAAU,CAAC;AAAEyB,cAAAA,MAAM,EAAE5C,iBAAAA;AAAkB,aAAC,CAAE;AAAA3B,YAAAA,QAAA,eACxDI,GAAA,CAACqM,SAAS,EAAE,EAAA,CAAA;WACT,CAAC,eACNrM,GAAA,CAAA,KAAA,EAAA;YAAKF,SAAS,EAAE4C,UAAU,CAAC;AAAEyB,cAAAA,MAAM,EAAE5C,iBAAAA;AAAkB,aAAC,CAAE;YAAA3B,QAAA,eACxDI,GAAA,CAACgK,UAAU,EAAA;AAAOC,cAAAA,kBAAkB,EAAlBA,kBAAAA;aAAuB,CAAA;WACtC,CAAC,eACNjK,GAAA,CAAA,KAAA,EAAA;AACEF,YAAAA,SAAS,EAAE4C,UAAU,CAAC,qBAAqB,EAAE;AAC3CyB,cAAAA,MAAM,EAAE5C,iBAAAA;AACV,aAAC,CAAE;YAAA3B,QAAA,EAEF4D,QAAQ,CAAC;AAAErC,cAAAA,IAAI,EAAE,OAAA;AAAQ,aAAC,EAAEH,qBAAqB,CAAC,CAAC+B,GAAG,CACrD,UAAA2L,KAAA,EAAA;AAAA,cAAA,IAAG5M,GAAG,GAAA4M,KAAA,CAAH5M,GAAG,CAAA;cAAA,oBACJ9B,GAAA,CAACyH,MAAM,EAAA;AAAClC,gBAAAA,SAAS,EAAEzD,GAAAA;AAAI,eAAA,EAAMA,GAAM,CAAC,CAAA;aAExC,CAAA;AAAC,WACE,CAAC,eACN9B,GAAA,CAACT,SAAS,EAAA;AAAOiB,YAAAA,aAAa,EAAbA,aAAa;AAAED,YAAAA,cAAc,EAAdA,cAAAA;AAAc,WAAK,CAAC,CAAA;SACjD,CAAC,eACNV,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,uGAAuG;UAAAF,QAAA,EAAA,cACpHI,GAAA,CAACkC,MAAM,EAAA;AACL,YAAA,SAAA,EAAQ,cAAc;AACtByM,YAAAA,QAAQ,EAAE,CAACF,KAAK,IAAIT,YAAa;AACjCxP,YAAAA,KAAK,EAAEmC,CAAC,CAAC,2BAA2B,CAAE;AACtCR,YAAAA,KAAK,EAAC,MAAM;AACZyO,YAAAA,IAAI,EAAC,OAAA;AAAO,WACb,CAAC,eACF5O,GAAA,CAACkC,MAAM,EAAA;AACL,YAAA,SAAA,EAAQ,qBAAqB;AAC7ByM,YAAAA,QAAQ,EAAG,CAACF,KAAK,KAAI/R,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEJ,EAAE,CAAA,IAAK0R,YAAa;AAChDxP,YAAAA,KAAK,EAAEmC,CAAC,CAAC,0BAA0B,CAAE;AACrCkO,YAAAA,OAAO,EAAEb,YAAa;AACtBc,YAAAA,GAAG,EAAExB,YAAa;AAClBsB,YAAAA,IAAI,EAAC,QAAA;AAAQ,WACd,CAAC,CAAA;AAAA,SACC,CAAC,eACN5O,GAAA,CAAC+O,OAAO,EAAA;UACNC,QAAQ,EAAE,SAAAA,QAAA,GAAA;YAAA,OAAMC,QAAQ,CAACC,IAAI,CAAA;WAAC;AAC9BP,UAAAA,QAAQ,EAAEtB,8BAA+B;AACzCnF,UAAAA,QAAQ,EAAC,KAAK;AACdiH,UAAAA,SAAS,EAAE7B,YAAa;AACxB8B,UAAAA,OAAO,EAAC,OAAO;AACfnH,UAAAA,OAAO,eACLpI,IAAA,CAAA,KAAA,EAAA;AAAKC,YAAAA,SAAS,EAAC,iCAAiC;YAAAF,QAAA,EAAA,cAC9CI,GAAA,CAACkC,MAAM,EAAA;AACLpC,cAAAA,SAAS,EAAC,4BAA4B;AACtCgI,cAAAA,IAAI,EAAEuH,KAAM;AACZlN,cAAAA,IAAI,EAAC,OAAO;AACZhC,cAAAA,KAAK,EAAC,MAAM;cACZiC,OAAO,EAAE,SAAAA,OAAA,GAAA;AAAA,gBAAA,IAAAkN,qBAAA,CAAA;AAAA,gBAAA,OAAMrC,eAAe,KAAfA,IAAAA,IAAAA,eAAe,KAAAqC,KAAAA,CAAAA,IAAAA,CAAAA,qBAAA,GAAfrC,eAAe,CAAEsC,IAAI,MAAA,IAAA,IAAAD,qBAAA,KAArBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAAE,IAAA,CAAAvC,eAAwB,CAAC,CAAA;AAAA,eAAA;AAAC,aAC1C,CAAC,eACFjN,GAAA,CAACC,UAAU,EAAA;AAACH,cAAAA,SAAS,EAAC,WAAW;AAACK,cAAAA,KAAK,EAAC,OAAO;AAACC,cAAAA,MAAM,EAAC,QAAQ;cAAAR,QAAA,eAC7DI,GAAA,CAACyP,KAAK,EAAA;AACJC,gBAAAA,UAAU,EAAE;kBAAEC,IAAI,eAAE3P,GAAA,CAAS,QAAA,EAAA,EAAA,CAAA;iBAAI;AACjC4P,gBAAAA,OAAO,EAAC,oDAAoD;AAC5D9O,gBAAAA,MAAM,EAAE;AAAEqM,kBAAAA,UAAU,EAAVA,UAAAA;AAAW,iBAAA;eACtB,CAAA;AAAC,aACQ,CAAC,eACbnN,GAAA,CAACkC,MAAM,EAAA;AACLyM,cAAAA,QAAQ,EAAEhC,eAAgB;AAC1BnO,cAAAA,KAAK,EAAEmC,CAAC,CAAC,oCAAoC,CAAE;AAC/CkO,cAAAA,OAAO,EAAElC,eAAgB;cACzBvK,OAAO,EAAE,SAAAA,OAAA,GAAA;gBAAA,OAAMsK,YAAY,CAAChQ,KAAK,CAAC,CAAA;AAAA,eAAA;AAAC,aACpC,CAAC,CAAA;AAAA,WACC,CACN;AACDmT,UAAAA,OAAO,EAAE3C,kBAAAA;AAAmB,SAC7B,CAAC,CAAA;AAAA,OACC,CAAC,CAAA;AAAA,KAAA;AACP,GACG,CAAC,CAAA;AAEX,CAAC;;;;AClKD,IAAM4C,KAAK,GAAG,SAARA,KAAKA,CAAGC,KAAK,EAAA;AAAA,EAAA,oBACjBlQ,IAAA,CAAA,KAAA,EAAAsD,aAAA,CAAAA,aAAA,CAAA;AACE6M,IAAAA,IAAI,EAAC,MAAM;AACXC,IAAAA,MAAM,EAAC,IAAI;AACXC,IAAAA,OAAO,EAAC,WAAW;AACnBC,IAAAA,KAAK,EAAC,IAAI;AACVC,IAAAA,KAAK,EAAC,4BAAA;AAA4B,GAAA,EAC9BL,KAAK,CAAA,EAAA,EAAA,EAAA;AAAAnQ,IAAAA,QAAA,gBAETC,IAAA,CAAA,GAAA,EAAA;AAAGwD,MAAAA,MAAM,EAAC,0BAA0B;AAAAzD,MAAAA,QAAA,gBAClCI,GAAA,CAAA,MAAA,EAAA;AAAMgQ,QAAAA,IAAI,EAAC,SAAS;AAACC,QAAAA,MAAM,EAAC,IAAI;AAACI,QAAAA,EAAE,EAAC,IAAI;AAACF,QAAAA,KAAK,EAAC,IAAI;AAACG,QAAAA,CAAC,EAAC,GAAG;AAACC,QAAAA,CAAC,EAAC,GAAA;OAAK,CAAC,eAClEvQ,GAAA,CAAA,MAAA,EAAA;AACEiQ,QAAAA,MAAM,EAAC,IAAI;AACXI,QAAAA,EAAE,EAAC,IAAI;AACPG,QAAAA,MAAM,EAAC,MAAM;AACbC,QAAAA,WAAW,EAAC,KAAK;AACjBN,QAAAA,KAAK,EAAC,IAAI;AACVG,QAAAA,CAAC,EAAC,GAAG;AACLC,QAAAA,CAAC,EAAC,GAAA;OACH,CAAC,eACFvQ,GAAA,CAAA,MAAA,EAAA;AACE0Q,QAAAA,CAAC,EAAC,kCAAkC;AACpCF,QAAAA,MAAM,EAAC,MAAM;AACbG,QAAAA,aAAa,EAAC,OAAO;AACrBC,QAAAA,cAAc,EAAC,OAAO;AACtBH,QAAAA,WAAW,EAAC,MAAA;AAAM,OACnB,CAAC,CAAA;KACD,CAAC,eACJzQ,GAAA,CAAA,MAAA,EAAA;AAAAJ,MAAAA,QAAA,eACEC,IAAA,CAAA,QAAA,EAAA;AACEgR,QAAAA,yBAAyB,EAAC,MAAM;AAChCC,QAAAA,WAAW,EAAC,gBAAgB;AAC5Bb,QAAAA,MAAM,EAAC,MAAM;AACb3T,QAAAA,EAAE,EAAC,oBAAoB;AACvB6T,QAAAA,KAAK,EAAC,MAAM;AACZG,QAAAA,CAAC,EAAC,MAAM;AACRC,QAAAA,CAAC,EAAC,MAAM;AAAA3Q,QAAAA,QAAA,gBAERI,GAAA,CAAA,SAAA,EAAA;AAAS+Q,UAAAA,YAAY,EAAC,GAAG;AAACC,UAAAA,MAAM,EAAC,oBAAA;SAAsB,CAAC,eACxDhR,GAAA,CAAA,eAAA,EAAA;AACE,UAAA,IAAA,EAAG,aAAa;AAChBgR,UAAAA,MAAM,EAAC,WAAW;AAClBlQ,UAAAA,MAAM,EAAC,2CAAA;AAA2C,SACnD,CAAC,eACFd,GAAA,CAAW,UAAA,EAAA,EAAA,CAAC,eACZA,GAAA,CAAA,gBAAA,EAAA;AAAgBiR,UAAAA,YAAY,EAAC,KAAA;SAAO,CAAC,eACrCjR,GAAA,CAAA,aAAA,EAAA;AAAakR,UAAAA,GAAG,EAAC,WAAW;AAACC,UAAAA,QAAQ,EAAC,KAAA;SAAO,CAAC,eAC9CnR,GAAA,CAAA,eAAA,EAAA;AAAec,UAAAA,MAAM,EAAC,4CAAA;SAA8C,CAAC,eACrEd,GAAA,CAAA,SAAA,EAAA;AACEkR,UAAAA,GAAG,EAAC,oBAAoB;AACxBF,UAAAA,MAAM,EAAC,6BAAA;SACR,CAAC,eACFhR,GAAA,CAAA,SAAA,EAAA;AACE,UAAA,IAAA,EAAG,eAAe;AAClBkR,UAAAA,GAAG,EAAC,6BAA6B;AACjCF,UAAAA,MAAM,EAAC,OAAA;AAAO,SACf,CAAC,CAAA;OACI,CAAA;AAAC,KACL,CAAC,CAAA;AAAA,GAAA,CACJ,CAAC,CAAA;AAAA,CACP;;ACtDD,IAAMI,SAAS,GAAG,SAAZA,SAASA,CAAAxU,IAAA,EAA4D;AAAA,EAAA,IAAAyU,qBAAA,EAAApM,OAAA,EAAAyG,QAAA,CAAA;AAAA,EAAA,IAAtD4F,MAAM,GAAA1U,IAAA,CAAN0U,MAAM;IAAEC,YAAY,GAAA3U,IAAA,CAAZ2U,YAAY;IAAEC,kBAAkB,GAAA5U,IAAA,CAAlB4U,kBAAkB;IAAE9U,KAAK,GAAAE,IAAA,CAALF,KAAK,CAAA;AAClE,EAAA,IAAAc,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQsD,QAAAA,qBAAqB,EAAAtD,KAAA,CAAA,uBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAA6T,qBAAA,GAAAjU,eAAA,CAArBwD,qBAAqB;AAArBA,IAAAA,qBAAqB,GAAAyQ,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA,CAAA;AAElC,EAAA,IAAAC,qBAAA,GAAA1E,cAAA,CAAqChM,qBAAqB,EAAA,CAAA,CAAA;AAAnD2Q,IAAAA,YAAY,GAAAD,qBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,YAAY,GAAAF,qBAAA,CAAA,CAAA,CAAA,CAAA;EAEjC,IAAMG,YAAY,GAAGC,QAAQ,CAACH,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAE7P,GAAG,CAAC,CAAA;EAChD,IAAMiQ,cAAc,GAAGD,QAAQ,CAACF,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAE9P,GAAG,CAAC,CAAA;EAElD,IAAMkQ,YAAY,GAAG9Q,MAAM,CACzB;IAAEY,GAAG,EAAE6P,YAAY,CAAC7P,GAAAA;AAAI,GAAC,EACzBpF,KAAK,CAAC0E,UACR,CAAC,CAAC3C,KAAK,CAAA;EAEP,IAAMwT,cAAc,GAAG/Q,MAAM,CAC3B;IAAEY,GAAG,EAAE8P,YAAY,CAAC9P,GAAAA;AAAI,GAAC,EACzBpF,KAAK,CAAC0E,UACR,CAAC,CAAC3C,KAAK,CAAA;EAEP,IAAMyT,kBAAkB,IAAAb,qBAAA,GACtB3U,KAAK,CACHoH,gBAAgB,CACd5C,MAAM,CAAC;AAAEiR,IAAAA,mBAAmB,EAAE,IAAA;AAAK,GAAC,EAAEnR,qBAAqB,CAAC,CAACc,GAC/D,CAAC,CACF,MAAA,IAAA,IAAAuP,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAJDA,qBAAA,CAIG5M,GAAG,CAAA;AAER,EAAA,IAAM2N,qBAAqB,GAAA,CAAAnN,OAAA,GAAG/D,MAAM,CAClC;AACEY,IAAAA,GAAG,EAAA4J,CAAAA,QAAA,GAAExK,MAAM,CAAC;AAAEmR,MAAAA,yBAAyB,EAAE,IAAA;AAAK,KAAC,EAAErR,qBAAqB,CAAC,cAAA0K,QAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAlEA,QAAA,CACD5J,GAAAA;GACL,EACDpF,KAAK,CAAC0E,UACR,CAAC,cAAA6D,OAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAN6BA,OAAA,CAM3BxG,KAAK,CAAA;AAER,EAAA,oBACEuB,GAAA,CAAA,KAAA,EAAA;AACEF,IAAAA,SAAS,EAAE8J,UAAU,CACnB,iGAAiG,EACjG;MACE,0BAA0B,EAAE,CAAC0H,MAAM;AACnC,MAAA,+DAA+D,EAC7DA,MAAM;AACR,MAAA,8CAA8C,EAAEC,YAAY;AAC5D,MAAA,gDAAgD,EAAEC,kBAAAA;AACpD,KACF,CAAE;AACFrR,IAAAA,KAAK,EAAE;AACLmS,MAAAA,eAAe,EAAEJ,kBAAkB,GAAA,MAAA,CAAAzW,MAAA,CACxByW,kBAAkB,SACzB,SAAS;AACbK,MAAAA,cAAc,EAAE,OAAA;KAChB;AAAA3S,IAAAA,QAAA,eAEFI,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,uGAAuG;AAAAF,MAAAA,QAAA,eACpHC,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,yBAAyB;AAAAF,QAAAA,QAAA,gBACtCC,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,MAAM;UAAAF,QAAA,EAAA,cACnBI,GAAA,CAACC,UAAU,EAAA;AAACE,YAAAA,KAAK,EAAC,IAAI;AAACC,YAAAA,MAAM,EAAC,UAAU;AAAAR,YAAAA,QAAA,eACtCI,GAAA,CAAA,MAAA,EAAA;AAAMG,cAAAA,KAAK,EAAE;AAAEmI,gBAAAA,KAAK,EAAE0J,YAAAA;eAAe;AAAApS,cAAAA,QAAA,EAAEiS,YAAAA;aAAmB,CAAA;AAAC,WACjD,CAAC,eACb7R,GAAA,CAACC,UAAU,EAAA;AAACH,YAAAA,SAAS,EAAC,wBAAwB;AAACK,YAAAA,KAAK,EAAC,OAAO;AAAAP,YAAAA,QAAA,eAC1DI,GAAA,CAAA,MAAA,EAAA;AAAMG,cAAAA,KAAK,EAAE;AAAEmI,gBAAAA,KAAK,EAAE2J,cAAAA;eAAiB;AAAArS,cAAAA,QAAA,EAAEmS,cAAAA;aAAqB,CAAA;AAAC,WACrD,CAAC,CAAA;SACV,CAAC,eACN/R,GAAA,CAAA,KAAA,EAAA;AACEF,UAAAA,SAAS,EAAC,8BAA8B;AACxCK,UAAAA,KAAK,EAAE;AAAEqS,YAAAA,eAAe,EAAEJ,qBAAAA;AAAsB,WAAA;AAAE,SACnD,CAAC,CAAA;OACC,CAAA;KACF,CAAA;AAAC,GACH,CAAC,CAAA;AAEV,CAAC;;AC/DD,IAAM3S,IAAI,GAAG,SAAPA,IAAIA,CAAA7C,IAAA,EAYJ;AAAA,EAAA,IAAA6V,WAAA,GAAA7V,IAAA,CAXJ0U,MAAM;AAANA,IAAAA,MAAM,GAAAmB,WAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,WAAA;IACdlB,YAAY,GAAA3U,IAAA,CAAZ2U,YAAY;IACZmB,iBAAiB,GAAA9V,IAAA,CAAjB8V,iBAAiB;IACjBC,aAAa,GAAA/V,IAAA,CAAb+V,aAAa;IACbC,WAAW,GAAAhW,IAAA,CAAXgW,WAAW;IACXlW,KAAK,GAAAE,IAAA,CAALF,KAAK;IACLiQ,eAAe,GAAA/P,IAAA,CAAf+P,eAAe;IACfkG,YAAY,GAAAjW,IAAA,CAAZiW,YAAY;IACZrB,kBAAkB,GAAA5U,IAAA,CAAlB4U,kBAAkB;IAClB9E,YAAY,GAAA9P,IAAA,CAAZ8P,YAAY;IACD0E,WAAS,GAAAxU,IAAA,CAApBkW,SAAS,CAAA;AAET,EAAA,IAAArS,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAQrE,EAAE,GAAyBI,KAAK,CAAhCJ,EAAE;IAAEyC,IAAI,GAAmBrC,KAAK,CAA5BqC,IAAI;IAAEgU,YAAY,GAAKrW,KAAK,CAAtBqW,YAAY,CAAA;AAE9B,EAAA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAA;IAAA,OAASH,YAAY,CAACnW,KAAK,CAAC,CAAA;AAAA,GAAA,CAAA;AAClD,EAAA,IAAMuW,eAAe,GAAG,SAAlBA,eAAeA,GAAA;IAAA,OAASL,WAAW,CAAClW,KAAK,CAAC,CAAA;AAAA,GAAA,CAAA;AAChD,EAAA,IAAMwW,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAA;AAAA,IAAA,OAASP,aAAa,CAACrW,EAAE,EAAEyC,IAAI,EAAEgU,YAAY,CAAC,CAAA;AAAA,GAAA,CAAA;AAErE,EAAA,oBACE/S,GAAA,CAAA,KAAA,EAAA;AACEF,IAAAA,SAAS,EAAC,wBAAwB;AAClC,IAAA,SAAA,EAASwR,MAAM,GAAG,mBAAmB,GAAG,YAAa;IACrDhV,EAAE,EAAEI,KAAK,CAACJ,EAAG;AAAAsD,IAAAA,QAAA,eAEbC,IAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAE8J,UAAU,CACnB,gHAAgH,EAChH;QACE,0BAA0B,EAAE,CAAC0H,MAAM;AACnC,QAAA,sCAAsC,EAAEA,MAAM;AAC9C,QAAA,8CAA8C,EAAEC,YAAY;AAC5D,QAAA,gDAAgD,EAC9CC,kBAAAA;AACJ,OACF,CAAE;MACFpP,OAAO,EAAE,SAAAA,OAAA,GAAA;QAAA,OAAMsQ,iBAAiB,CAAChW,KAAK,CAAC,CAAA;OAAC;AAAAkD,MAAAA,QAAA,gBAExCC,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,6IAA6I;AAAAF,QAAAA,QAAA,gBAC1JI,GAAA,CAAA,KAAA,EAAA;AAAKF,UAAAA,SAAS,EAAC,4BAA4B;AAAAF,UAAAA,QAAA,EACxC0R,MAAM,gBACLtR,GAAA,CAAC8P,KAAK,EAAA;AAAChQ,YAAAA,SAAS,EAAC,eAAe;YAAC,SAAQ,EAAA,oBAAA;WAAsB,CAAC,gBAEhEE,GAAA,CAAA,KAAA,EAAA;YACEF,SAAS,EAAE8J,UAAU,CAAC;cACpBzF,MAAM,EAAE,CAACoN,YAAY;AACrB,cAAA,mBAAmB,EAAE,IAAA;AACvB,aAAC,CAAE;YAAA3R,QAAA,eAEHI,GAAA,CAACkC,MAAM,EAAA;AACLpC,cAAAA,SAAS,EAAC,uDAAuD;AACjE,cAAA,SAAA,EAAQ,oBAAoB;AAC5B6O,cAAAA,QAAQ,EAAEhC,eAAgB;AAC1BnO,cAAAA,KAAK,EAAEmC,CAAC,CAAC,0BAA0B,CAAE;AACrCkO,cAAAA,OAAO,EAAElC,eAAgB;AACzBxK,cAAAA,IAAI,EAAC,OAAO;AACZhC,cAAAA,KAAK,EAAC,UAAU;cAChBiC,OAAO,EAAE,SAAAA,OAAA,GAAA;gBAAA,OAAMsK,YAAY,CAAChQ,KAAK,CAAC,CAAA;AAAA,eAAA;aACnC,CAAA;WACE,CAAA;AACN,SACE,CAAC,EACL0U,WAAS,gBACRpR,GAAA,CAACoR,WAAS,EAAA;AACFE,UAAAA,MAAM,EAANA,MAAM;AAAEE,UAAAA,kBAAkB,EAAlBA,kBAAkB;AAAED,UAAAA,YAAY,EAAZA,YAAY;AAAE7U,UAAAA,KAAK,EAALA,KAAAA;AAAK,SACtD,CAAC,gBAEFsD,GAAA,CAACmT,SAAgB,EAAA;AACT7B,UAAAA,MAAM,EAANA,MAAM;AAAEE,UAAAA,kBAAkB,EAAlBA,kBAAkB;AAAED,UAAAA,YAAY,EAAZA,YAAY;AAAE7U,UAAAA,KAAK,EAALA,KAAAA;AAAK,SACtD,CACF,CAAA;OACE,CAAC,eACNmD,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,8EAA8E;QAAAF,QAAA,EAAA,cAC3FI,GAAA,CAACC,UAAU,EAAA;AACTH,UAAAA,SAAS,EAAC,iDAAiD;AAC3D,UAAA,SAAA,EAAQ,YAAY;AACpBI,UAAAA,UAAU,EAAC,MAAM;AACjBC,UAAAA,KAAK,EAAC,OAAO;AAAAP,UAAAA,QAAA,EAEZb,IAAAA;AAAI,SACK,CAAC,eACbiB,GAAA,CAACoT,YAAY,EAAA;AACXC,UAAAA,mBAAmB,EAAE;AAAElR,YAAAA,IAAI,EAAE,OAAA;WAAU;AACvCmR,UAAAA,aAAa,EAAE;AACbC,YAAAA,QAAQ,EAAE,OAAO;YACjBnR,OAAO,EAAE,SAAAA,OAAAA,CAAA+J,CAAC,EAAA;AAAA,cAAA,OAAIA,CAAC,CAACqH,eAAe,EAAE,CAAA;AAAA,aAAA;WACjC;AACFC,UAAAA,SAAS,EAAE,CACT;AACE3R,YAAAA,GAAG,EAAE,MAAM;AACX,YAAA,SAAS,EAAE,sBAAsB;AACjCtD,YAAAA,KAAK,EAAEmC,CAAC,CAAC,yBAAyB,CAAC;AACnC+S,YAAAA,SAAS,EAAE5Q,SAAS,CAAC8P,WAAW,CAAC;AACjCxQ,YAAAA,OAAO,EAAE6Q,eAAAA;AACX,WAAC,EACD;AACEnR,YAAAA,GAAG,EAAE,OAAO;AACZ,YAAA,SAAS,EAAE,uBAAuB;AAClCtD,YAAAA,KAAK,EAAEmC,CAAC,CACN,yDACF,CAAC;AACDyB,YAAAA,OAAO,EAAE4Q,gBAAAA;AACX,WAAC,EACD;AACElR,YAAAA,GAAG,EAAE,SAAS;AACd8M,YAAAA,IAAI,EAAE,SAAS;YACf8E,SAAS,EAAEC,UAAU,CAAChB,aAAa,CAAA;AACrC,WAAC,EACD;AACE7Q,YAAAA,GAAG,EAAE,QAAQ;AACb,YAAA,SAAS,EAAE,wBAAwB;AACnCtD,YAAAA,KAAK,EAAEmC,CAAC,CACN,0DACF,CAAC;AACD+S,YAAAA,SAAS,EAAEC,UAAU,CAAChB,aAAa,CAAC;AACpCvQ,YAAAA,OAAO,EAAE,SAAAA,OAAA+J,CAAAA,CAAC,EAAI;cACZA,CAAC,CAACqH,eAAe,EAAE,CAAA;AACnBN,cAAAA,iBAAiB,EAAE,CAAA;AACrB,aAAA;WACD,CAAA;AACD,SACH,CAAC,CAAA;AAAA,OACC,CAAC,CAAA;KACH,CAAA;AAAC,GACH,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,aAAeU,aAAAA,IAAI,CAACnU,IAAI,CAAC;;AChIzB,IAAMoU,MAAM,GAAG,SAATA,MAAMA,CAAAjX,IAAA,EAcN;AAAA,EAAA,IAbJgW,WAAW,GAAAhW,IAAA,CAAXgW,WAAW;IAAAkB,WAAA,GAAAlX,IAAA,CACXmX,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,WAAA;IAAAE,kBAAA,GAAApX,IAAA,CACXqX,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,kBAAA;IAClBrB,aAAa,GAAA/V,IAAA,CAAb+V,aAAa;IACbuB,gBAAgB,GAAAtX,IAAA,CAAhBsX,gBAAgB;IAChBC,4BAA4B,GAAAvX,IAAA,CAA5BuX,4BAA4B;IAC5BC,SAAS,GAAAxX,IAAA,CAATwX,SAAS;IACThH,YAAY,GAAAxQ,IAAA,CAAZwQ,YAAY;IACZiH,qBAAqB,GAAAzX,IAAA,CAArByX,qBAAqB;IACrBvB,SAAS,GAAAlW,IAAA,CAATkW,SAAS;IACTwB,iBAAiB,GAAA1X,IAAA,CAAjB0X,iBAAiB;IACjB5H,YAAY,GAAA9P,IAAA,CAAZ8P,YAAY;IACZC,eAAe,GAAA/P,IAAA,CAAf+P,eAAe,CAAA;AAEf,EAAA,IAAAlM,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAA0J,cAAA,GAAqBC,aAAa,EAAE;IAA5BE,QAAQ,GAAAH,cAAA,CAARG,QAAQ,CAAA;AAChB,EAAA,IAAAN,cAAA,GAAAC,aAAA,CAAA,UAAAzM,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQ0M,QAAAA,aAAa,EAAA1M,KAAA,CAAA,eAAA,CAAA;AAAE4N,QAAAA,eAAe,EAAA5N,KAAA,CAAA,iBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAA9BwM,aAAa,GAAAF,cAAA,CAAbE,aAAa;IAAEkB,eAAe,GAAApB,cAAA,CAAfoB,eAAe,CAAA;AAEtC,EAAA,IAAAuB,SAAA,GAAsCC,QAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA3C0H,IAAAA,WAAW,GAAAxH,UAAA,CAAA,CAAA,CAAA;AAAEyH,IAAAA,cAAc,GAAAzH,UAAA,CAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAA0H,cAAA,GAA+BrW,aAAa,EAAE;IAA9BsW,UAAU,GAAAD,cAAA,CAAlB/G,MAAM,CAAA;AAEdrC,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI8I,4BAA4B,CAACQ,OAAO,IAAI,EAACvH,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,IAAAA,YAAY,CAAE9Q,EAAE,CAAE,EAAA,OAAA;IAE/D6X,4BAA4B,CAACQ,OAAO,GAAG,IAAI,CAAA;AAC3ClT,IAAAA,UAAU,CAAC,YAAM;MACfC,qBAAqB,CAAC0L,YAAY,KAAZA,IAAAA,IAAAA,YAAY,uBAAZA,YAAY,CAAE9Q,EAAE,CAAC,CAAA;KACxC,EAAE,GAAG,CAAC,CAAA;AACT,GAAC,EAAE,CAAC6X,4BAA4B,EAAE/G,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAE9Q,EAAE,CAAC,CAAC,CAAA;AAEpD,EAAA,IAAMsY,eAAe,GAAG,SAAlBA,eAAeA,CAAGlY,KAAK,EAAI;AAC/B0N,IAAAA,aAAa,CAAC;AAAEkB,MAAAA,eAAe,EAAE5O,KAAAA;AAAM,KAAC,CAAC,CAAA;IACzC8N,QAAQ,CAAC9N,KAAK,CAAC,CAAA;GAChB,CAAA;AAED,EAAA,IAAMmY,qBAAqB,GAAGZ,aAAa,CAAC5Q,MAAM,CAAC,UAAA3G,KAAK,EAAA;AAAA,IAAA,OACtDA,KAAK,CAACqC,IAAI,CAAC+V,WAAW,EAAE,CAACC,QAAQ,CAACR,WAAW,CAACO,WAAW,EAAE,CAAC,CAAA;AAAA,GAC9D,CAAC,CAAA;AAED,EAAA,IAAME,cAAc,GAAGjB,MAAM,CAAC1Q,MAAM,CAAC,UAAA3G,KAAK,EAAA;AAAA,IAAA,OACxCA,KAAK,CAACqC,IAAI,CAAC+V,WAAW,EAAE,CAACC,QAAQ,CAACR,WAAW,CAACO,WAAW,EAAE,CAAC,CAAA;AAAA,GAC9D,CAAC,CAAA;AAED,EAAA,IAAMG,oBAAoB,GAAG,CAAAlB,MAAM,KAANA,IAAAA,IAAAA,MAAM,uBAANA,MAAM,CAAEmB,MAAM,KAAGjB,aAAa,aAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAEiB,MAAM,IAAG,EAAE,CAAA;AAExE,EAAA,IAAMlC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGnK,IAAI,EAAI;AAC/B6L,IAAAA,UAAU,CAAC7L,IAAI,CAACvM,EAAE,EAAE;AAClBgC,MAAAA,SAAS,EAAE,SAAAA,SAAArB,CAAAA,KAAA,EAA4B;AAAA,QAAA,IAAlBkY,WAAW,GAAAlY,KAAA,CAAlBP,KAAK,CAAA;QACjBkW,WAAW,CAACuC,WAAW,CAAC,CAAA;AAC1B,OAAA;AACF,KAAC,CAAC,CAAA;GACH,CAAA;EAED,IAAIf,SAAS,IAAIC,qBAAqB,EAAE;AACtC,IAAA,oBACErU,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,gDAAgD;AAAAF,MAAAA,QAAA,eAC7DI,GAAA,CAACoV,OAAO,EAAE,EAAA,CAAA;AAAC,KACR,CAAC,CAAA;AAEV,GAAA;AAEA,EAAA,oBACEvV,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,8BAA8B;AAAAF,IAAAA,QAAA,gBAC3CC,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gBAAgB;AAAAF,MAAAA,QAAA,EAC5BqV,CAAAA,oBAAoB,iBACnBjV,GAAA,CAACqV,MAAM,EAAA;QACL7I,SAAS,EAAA,IAAA;AACT8I,QAAAA,YAAY,EAAC,KAAK;AAClBxV,QAAAA,SAAS,EAAC,gBAAgB;AAC1B+E,QAAAA,WAAW,EAAElE,CAAC,CAAC,iCAAiC,CAAE;AAClD4U,QAAAA,QAAQ,EAAEf,cAAAA;AAAe,OAC1B,CACF,EACA/N,OAAO,CAACuO,cAAc,CAAC,IAAIvO,OAAO,CAACoO,qBAAqB,CAAC,iBACxD7U,GAAA,CAACC,UAAU,EAAA;AAACH,QAAAA,SAAS,EAAC,aAAa;AAACK,QAAAA,KAAK,EAAC,OAAO;QAAAP,QAAA,EAC9Ce,CAAC,CAAC,mCAAmC,CAAA;OAC5B,CACb,EACA6U,UAAU,CAACX,qBAAqB,CAAC,iBAChChV,IAAA,CAAA4V,QAAA,EAAA;QAAA7V,QAAA,EAAA,cACEI,GAAA,CAACC,UAAU,EAAA;AACTH,UAAAA,SAAS,EAAC,qCAAqC;AAC/C,UAAA,SAAA,EAAQ,sBAAsB;AAC9BK,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAR,QAAA,EAEhBe,CAAC,CAAC,mDAAmD,CAAA;SAC5C,CAAC,eACbX,GAAA,CAAA,KAAA,EAAA;AACEF,UAAAA,SAAS,EAAC,gDAAgD;AAC1D,UAAA,SAAA,EAAQ,eAAe;AAAAF,UAAAA,QAAA,EAEtBiV,qBAAqB,CAAC9R,GAAG,CAAC,UAAArG,KAAK,EAAA;YAAA,oBAC9ByK,aAAA,CAAC1H,MAAI,EAAA;AACGiN,cAAAA,YAAY,EAAZA,YAAY;AAAEhQ,cAAAA,KAAK,EAALA,KAAK;AAAEoW,cAAAA,SAAS,EAATA,SAAS;AACpCxB,cAAAA,MAAM,EAAE,CAAAlE,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAE9Q,EAAE,MAAKI,KAAK,CAACJ,EAAG;AACtCiV,cAAAA,YAAY,EAAE,CAAAjG,eAAe,KAAA,IAAA,IAAfA,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAe,CAAEhP,EAAE,MAAKI,KAAK,CAACJ,EAAG;cAC/CwF,GAAG,EAAEpF,KAAK,CAACJ,EAAG;AACdqQ,cAAAA,eAAe,EACbA,eAAe,IAAI,CAAA2H,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAEhY,EAAE,MAAKI,KAAK,CAACJ,EACpD;AACDuW,cAAAA,YAAY,EAAEG,gBAAiB;AAC/BN,cAAAA,iBAAiB,EAAEkC,eAAAA;AAAgB,aACpC,CAAC,CAAA;WACH,CAAA;AAAC,SACC,CAAC,CAAA;AAAA,OACN,CACH,CAAA;AAAA,KACE,CAAC,EACLY,UAAU,CAACR,cAAc,CAAC,iBACzBnV,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gBAAgB;MAAAF,QAAA,EAAA,cAC7BI,GAAA,CAACC,UAAU,EAAA;AACTH,QAAAA,SAAS,EAAC,qBAAqB;AAC/B,QAAA,SAAA,EAAQ,sBAAsB;AAC9BK,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAR,QAAA,EAEhBe,CAAC,CAAC,mDAAmD,CAAA;OAC5C,CAAC,eACbX,GAAA,CAAA,KAAA,EAAA;AAAKF,QAAAA,SAAS,EAAC,0BAA0B;AAAC,QAAA,SAAA,EAAQ,eAAe;AAAAF,QAAAA,QAAA,EAC9DoV,cAAc,CAACjS,GAAG,CAAC,UAAArG,KAAK,EAAI;AAC3B,UAAA,IAAMgZ,QAAQ,GAAG,CAAAtI,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAE9Q,EAAE,MAAKI,KAAK,CAACJ,EAAE,CAAA;AAC9C,UAAA,IAAMiV,YAAY,GAAG,CAAAjG,eAAe,KAAfA,IAAAA,IAAAA,eAAe,KAAfA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,eAAe,CAAEhP,EAAE,MAAKI,KAAK,CAACJ,EAAE,CAAA;UAErD,oBACE6K,aAAA,CAAC1H,MAAI,EAAA;AAED8R,YAAAA,YAAY,EAAZA,YAAY;AACZ7E,YAAAA,YAAY,EAAZA,YAAY;AACZkG,YAAAA,WAAW,EAAXA,WAAW;AACXlW,YAAAA,KAAK,EAALA,KAAK;AACLoW,YAAAA,SAAS,EAATA,SAAS;AAEXxB,YAAAA,MAAM,EAAEoE,QAAS;AACjBlE,YAAAA,kBAAkB,EAAE9U,KAAK,CAACJ,EAAE,KAAK4X,gBAAiB;YAClDpS,GAAG,EAAEpF,KAAK,CAACJ,EAAG;AACdqQ,YAAAA,eAAe,EACbA,eAAe,IAAI,CAAA2H,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAEhY,EAAE,MAAKI,KAAK,CAACJ,EACpD;AACDuW,YAAAA,YAAY,EAAEG,gBAAiB;AAC/BL,YAAAA,aAAa,EAAE,CAAC+C,QAAQ,IAAI/C,aAAc;AAC1CD,YAAAA,iBAAiB,EAAEkC,eAAAA;AAAgB,WACpC,CAAC,CAAA;SAEL,CAAA;AAAC,OACC,CAAC,CAAA;AAAA,KACH,CACN,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC;;AC/JD,IAAMe,QAAQ,GAAG,SAAXA,QAAQA,CAAA/Y,IAAA,EAMR;AAAA,EAAA,IALJ4D,aAAa,GAAA5D,IAAA,CAAb4D,aAAa;IACboV,eAAe,GAAAhZ,IAAA,CAAfgZ,eAAe;IACfC,oBAAoB,GAAAjZ,IAAA,CAApBiZ,oBAAoB;IACpBC,UAAU,GAAAlZ,IAAA,CAAVkZ,UAAU;IACVC,WAAW,GAAAnZ,IAAA,CAAXmZ,WAAW,CAAA;AAEX,EAAA,IAAAtV,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMY,iBAAiB,GAAGlB,iBAAiB,CAACG,aAAa,CAAC,CAAA;AAE1D,EAAA,IAAIA,aAAa,KAAKpB,cAAc,CAACC,MAAM,EAAE;AAC3C,IAAA,oBACEW,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,mDAAmD;AAAAF,MAAAA,QAAA,eAChEC,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,6CAA6C;QAAAF,QAAA,EAAA,cAC1DI,GAAA,CAACC,UAAU,EAAA;AACT,UAAA,SAAA,EAAQ,eAAe;AACvBC,UAAAA,UAAU,EAAC,QAAQ;AACnBC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC,UAAU;UAAAR,QAAA,EAEhBe,CAAC,CAAC,iDAAiD,CAAA;SAC1C,CAAC,eACbX,GAAA,CAAA,KAAA,EAAA;AAAKF,UAAAA,SAAS,EAAC,UAAU;UAAAF,QAAA,eACvBI,GAAA,CAACkC,MAAM,EAAA;AACL,YAAA,SAAA,EAAQ,mCAAmC;AAC3C4F,YAAAA,IAAI,EAAEkO,IAAK;AACXC,YAAAA,YAAY,EAAC,MAAM;AACnB9V,YAAAA,KAAK,EAAC,MAAM;AACZ6H,YAAAA,YAAY,EAAE;AACZC,cAAAA,OAAO,EAAEtH,CAAC,CAAC,iCAAiC,CAAC;AAC7CuH,cAAAA,QAAQ,EAAE,KAAA;aACV;AACF9F,YAAAA,OAAO,EAAEyT,oBAAAA;WACV,CAAA;AAAC,SACC,CAAC,CAAA;OACH,CAAA;AAAC,KACH,CAAC,CAAA;AAEV,GAAA;AAEA,EAAA,oBACE7V,GAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAC,mCAAmC;AAAAF,IAAAA,QAAA,eAChDC,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,2CAA2C;MAAAF,QAAA,EAAA,cACxDI,GAAA,CAACkC,MAAM,EAAA;AACL,QAAA,SAAA,EAAQ,8BAA8B;AACtC4F,QAAAA,IAAI,EAAEoO,SAAU;AAChBD,QAAAA,YAAY,EAAC,MAAM;AACnB9V,QAAAA,KAAK,EAAC,MAAM;AACZ6H,QAAAA,YAAY,EAAE;UACZC,OAAO,EAAE1G,iBAAiB,GACtBZ,CAAC,CAAC,gCAAgC,CAAC,GACnCA,CAAC,CAAC,kCAAkC,CAAC;AACzCuH,UAAAA,QAAQ,EAAE,KAAA;SACV;QACF9F,OAAO,EAAE,SAAAA,OAAA,GAAA;UAAA,OAAMwT,eAAe,CAACG,WAAW,CAAC,CAAA;AAAA,SAAA;AAAC,OAC7C,CAAC,eACFlW,IAAA,CAACI,UAAU,EAAA;AACT,QAAA,SAAA,EAAQ,eAAe;AACvBC,QAAAA,UAAU,EAAC,QAAQ;AACnBC,QAAAA,KAAK,EAAC,IAAI;AACVC,QAAAA,MAAM,EAAC,UAAU;QAAAR,QAAA,EAAA,CAEhBY,aAAa,KAAKpB,cAAc,CAACE,SAAS,KACxCwW,UAAU,GACPnV,CAAC,CAAC,wDAAwD,CAAC,GAC3DA,CAAC,CAAC,sDAAsD,CAAC,CAAC,EAC/DY,iBAAiB,IAChBZ,CAAC,CAAC,gDAAgD,CAAC,CAAA;AAAA,OAC3C,CAAC,CAAA;KACV,CAAA;AAAC,GACH,CAAC,CAAA;AAEV,CAAC;;ACtDD,IAAMwV,aAAa,gBAAGvC,IAAI,CAACwC,KAAK,CAAC,CAAA;AAEjC,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAAzZ,IAAA,EAKP;EAAA,IAAA0Z,oBAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,CAAA;AAAA,EAAA,IAJJ5D,SAAS,GAAAlW,IAAA,CAATkW,SAAS;IACT7I,kBAAkB,GAAArN,IAAA,CAAlBqN,kBAAkB;IAClB0M,mBAAmB,GAAA/Z,IAAA,CAAnB+Z,mBAAmB;IACnB/J,oBAAoB,GAAAhQ,IAAA,CAApBgQ,oBAAoB,CAAA;AAEpB,EAAA,IAAAC,SAAA,GAA0CC,QAAQ,CAAC1N,cAAc,CAACC,MAAM,CAAC;IAAA0N,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAlErM,IAAAA,aAAa,GAAAuM,UAAA,CAAA,CAAA,CAAA;AAAE6J,IAAAA,gBAAgB,GAAA7J,UAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAA8J,UAAA,GAAkD/J,QAAQ,CAAC,KAAK,CAAC;IAAAgK,UAAA,GAAA9J,cAAA,CAAA6J,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,UAAA,GAAgDnK,QAAQ,CAAC,IAAI,CAAC;IAAAoK,UAAA,GAAAlK,cAAA,CAAAiK,UAAA,EAAA,CAAA,CAAA;AAAvD/C,IAAAA,gBAAgB,GAAAgD,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,mBAAmB,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAAE,UAAA,GAAkDtK,QAAQ,CAAC,EAAE,CAAC;IAAAuK,UAAA,GAAArK,cAAA,CAAAoK,UAAA,EAAA,CAAA,CAAA;AAAvD9C,IAAAA,iBAAiB,GAAA+C,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,oBAAoB,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAE,eAAA,GAAmBC,cAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM,CAAA;AACd,EAAA,IAAMC,cAAc,GAAG,CAACD,MAAM,CAAC,QAAQ,CAAC,CAAA;AAExC,EAAA,IAAAE,UAAA,GAAgE7K,QAAQ,CACtE,CAAC4K,cACH,CAAC;IAAAE,WAAA,GAAA5K,cAAA,CAAA2K,UAAA,EAAA,CAAA,CAAA;AAFME,IAAAA,wBAAwB,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,2BAA2B,GAAAF,WAAA,CAAA,CAAA,CAAA,CAAA;AAI5DvM,EAAAA,SAAS,CAAC,YAAM;IACdyM,2BAA2B,CAAC,CAACJ,cAAc,CAAC,CAAA;AAC9C,GAAC,EAAE,CAACA,cAAc,CAAC,CAAC,CAAA;AAEpB,EAAA,IAAAla,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQyP,QAAAA,UAAU,EAAAzP,KAAA,CAAA,YAAA,CAAA;AAAEpC,QAAAA,QAAQ,EAAAoC,KAAA,CAAA,UAAA,CAAA;AAAEqa,QAAAA,gBAAgB,EAAAra,KAAA,CAAA,kBAAA,CAAA;AAAEsa,QAAAA,gBAAgB,EAAAta,KAAA,CAAA,kBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAxDuP,UAAU,GAAA3P,eAAA,CAAV2P,UAAU;IAAE7R,QAAQ,GAAAkC,eAAA,CAARlC,QAAQ;IAAEyc,gBAAgB,GAAAva,eAAA,CAAhBua,gBAAgB;IAAEC,gBAAgB,GAAAxa,eAAA,CAAhBwa,gBAAgB,CAAA;AAEhE,EAAA,IAAA9N,cAAA,GAAAC,aAAA,CAAA,UAAAzM,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQ0M,QAAAA,aAAa,EAAA1M,KAAA,CAAA,eAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAbwM,aAAa,GAAAF,cAAA,CAAbE,aAAa,CAAA;AAErB,EAAA,IAAM+J,4BAA4B,GAAG5G,MAAM,CAAC,IAAI,CAAC,CAAA;AACjD,EAAA,IAAA9M,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AACT,EAAA,IAAA0J,cAAA,GAAqBC,aAAa,EAAE;IAA5BE,QAAQ,GAAAH,cAAA,CAARG,QAAQ,CAAA;AAEhB,EAAA,IAAAyN,cAAA,GACE1a,aAAa,CAACjC,QAAQ,CAAC;IAAA4c,mBAAA,GAAAD,cAAA,CADjBpP,IAAI;AAAAsP,IAAAA,oBAAA,GAAAD,mBAAA,KAAA,KAAA,CAAA,GAAwC,EAAE,GAAAA,mBAAA;IAAAE,qBAAA,GAAAD,oBAAA,CAAtCpE,MAAM;AAANA,IAAAA,MAAM,GAAAqE,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAAAC,sBAAA,GAAAF,oBAAA,CAAElE,aAAa;AAAbA,IAAAA,aAAa,GAAAoE,sBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,sBAAA;IAASjE,SAAS,GAAA6D,cAAA,CAAT7D,SAAS,CAAA;AAGjE,EAAA,IAAAkE,mBAAA,GAGI1c,kBAAkB,CAACN,QAAQ,CAAC;IAAAid,qBAAA,GAAAD,mBAAA,CAF9BzP,IAAI;AAAA2P,IAAAA,sBAAA,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAiC,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAA/B9b,KAAK;AAAE0Q,IAAAA,YAAY,GAAAqL,sBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,sBAAA;IACrBpE,qBAAqB,GAAAiE,mBAAA,CAAhClE,SAAS,CAAA;AAGX,EAAA,IAAAsE,eAAA,GAAuDva,cAAc,EAAE;IAAvDwa,WAAW,GAAAD,eAAA,CAAnBhL,MAAM;IAA0BkL,UAAU,GAAAF,eAAA,CAArB9K,SAAS,CAAA;EAEtC,IAAAiL,cAAA,GAA2Dxa,aAAa,CAAC;AACvEC,MAAAA,SAAS,EAAE,SAAAA,SAAArB,CAAAA,KAAA,EAAe;AAAA,QAAA,IAAZP,KAAK,GAAAO,KAAA,CAALP,KAAK,CAAA;QACjB8N,QAAQ,CAAC9N,KAAK,CAAC,CAAA;QACfoc,cAAc,CAACpc,KAAK,CAAC,CAAA;AACrB0N,QAAAA,aAAa,CAAC;AAAEkB,UAAAA,eAAe,EAAE5O,KAAAA;AAAM,SAAC,CAAC,CAAA;QACzC4a,oBAAoB,CAAC,EAAE,CAAC,CAAA;AACxBV,QAAAA,gBAAgB,CAACxX,cAAc,CAACC,MAAM,CAAC,CAAA;AACvCsX,QAAAA,mBAAmB,aAAnBA,mBAAmB,KAAA,KAAA,CAAA,IAAnBA,mBAAmB,CAAGja,KAAK,CAAC,CAAA;AAC9B,OAAA;AACF,KAAC,CAAC;IATcqc,UAAU,GAAAF,cAAA,CAAlBnL,MAAM;IAAyBf,eAAe,GAAAkM,cAAA,CAA1BjL,SAAS,CAAA;AAWrC,EAAA,IAAMoL,aAAa,GAAGzL,MAAM,CAAC,IAAI,CAAC,CAAA;AAClC,EAAA,IAAMwI,WAAW,GAAGxI,MAAM,CAAC,IAAI,CAAC,CAAA;AAEhC,EAAA,IAAMhM,iBAAiB,GAAGlB,iBAAiB,CAACG,aAAa,CAAC,CAAA;AAE1D,EAAA,IAAMyS,eAAe,GAAG,SAAlBA,eAAeA,CAAGvW,KAAK,EAAI;IAC/BqZ,WAAW,CAACpB,OAAO,GAAGjY,KAAK,CAAA;AAC3Bka,IAAAA,gBAAgB,CAACxX,cAAc,CAACE,SAAS,CAAC,CAAA;GAC3C,CAAA;AAED,EAAA,IAAMoN,YAAY,GAAG,SAAfA,YAAYA,CAAGhQ,KAAK,EAAI;AAC5B,IAAA,IAAIiQ,eAAe,EAAE,OAAA;IAErB2K,oBAAoB,CAAC5a,KAAK,CAAC,CAAA;AAC3Bqc,IAAAA,UAAU,CAAC;MAAE7b,OAAO,EAAER,KAAK,CAACJ,EAAE;AAAEhB,MAAAA,QAAQ,EAARA,QAAQ;AAAE6R,MAAAA,UAAU,EAAVA,UAAAA;AAAW,KAAC,CAAC,CAAA;GACxD,CAAA;AAED,EAAA,IAAMyI,eAAe,GAAG,SAAlBA,eAAeA,CAAGlZ,KAAK,EAAI;IAC/B8N,QAAQ,CAAC4C,YAAY,CAAC,CAAA;IACtB0L,cAAc,CAAChW,SAAS,CAACpG,KAAK,CAAC,GAAGA,KAAK,GAAG0Q,YAAY,CAAC,CAAA;AACvDhD,IAAAA,aAAa,CAAC;AAAEkB,MAAAA,eAAe,EAAE8B,YAAAA;AAAa,KAAC,CAAC,CAAA;IAChDwJ,gBAAgB,CACdrV,iBAAiB,GAAGnC,cAAc,CAACE,SAAS,GAAGF,cAAc,CAACC,MAChE,CAAC,CAAA;IACD0W,WAAW,CAACpB,OAAO,GAAG,IAAI,CAAA;GAC3B,CAAA;AAED,EAAA,IAAMmE,cAAc,GAAG,SAAjBA,cAAcA,CAAG5E,gBAAgB,EAAI;AACzCzS,IAAAA,UAAU,CAAC,YAAM;AACfC,MAAAA,qBAAqB,CAACwS,gBAAgB,CAAC5X,EAAE,CAAC,CAAA;KAC3C,EAAE,IAAI,CAAC,CAAA;AAERmF,IAAAA,UAAU,CAAC,YAAM;MACf0V,mBAAmB,CAAC,IAAI,CAAC,CAAA;KAC1B,EAAE,IAAI,CAAC,CAAA;AAERA,IAAAA,mBAAmB,CAACjD,gBAAgB,CAAC5X,EAAE,CAAC,CAAA;GACzC,CAAA;AAED,EAAA,IAAMmQ,aAAa,GAAG,SAAhBA,aAAaA,CAAGwM,YAAY,EAAI;IACpClD,WAAW,CAACpB,OAAO,GAAGsE,YAAY,CAAA;IAClCzO,QAAQ,CAACyO,YAAY,CAAC,CAAA;AACtB7O,IAAAA,aAAa,CAAC;AAAEkB,MAAAA,eAAe,EAAE2N,YAAAA;AAAa,KAAC,CAAC,CAAA;GACjD,CAAA;EAED,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIhc,OAAO,EAAE6B,IAAI,EAAEgU,YAAY,EAAK;IACpDiE,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC1BgC,aAAa,CAACrE,OAAO,GAAG;AAAErY,MAAAA,EAAE,EAAEY,OAAO;AAAE6B,MAAAA,IAAI,EAAJA,IAAI;AAAEgU,MAAAA,YAAY,EAAZA,YAAAA;KAAc,CAAA;GAC5D,CAAA;AAED,EAAA,IAAMoG,sBAAsB,GAAGC,WAAW,CAAC,YAAM;IAC/CpC,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAC3BgC,aAAa,CAACrE,OAAO,GAAG,IAAI,CAAA;AAC9B,GAAC,EAAE,CAACqE,aAAa,CAAC,CAAC,CAAA;AAEnB,EAAA,IAAM9F,iBAAiB,GAAGkG,WAAW,CAAC,YAAM;AAAA,IAAA,IAAAC,qBAAA,CAAA;AAC1CV,IAAAA,WAAW,CAAAU,CAAAA,qBAAA,GAACL,aAAa,CAACrE,OAAO,MAAA0E,IAAAA,IAAAA,qBAAA,KAArBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAuB/c,EAAE,EAAE;MACrCgC,SAAS,EAAE,SAAAA,SAAAA,GAAM;QACf0Y,oBAAoB,CAAC,KAAK,CAAC,CAAA;QAC3BgC,aAAa,CAACrE,OAAO,GAAG,IAAI,CAAA;AAC9B,OAAA;AACF,KAAC,CAAC,CAAA;AACJ,GAAC,EAAE,CAACgE,WAAW,EAAEK,aAAa,CAAC,CAAC,CAAA;EAEhC,oBACEnZ,IAAA,CAAA4V,QAAA,EAAA;AAAA7V,IAAAA,QAAA,EACG,CAAA,CAACiY,wBAAwB,iBACxB7X,GAAA,CAAA,KAAA,EAAA;AACEF,MAAAA,SAAS,EAAC,gCAAgC;MAC1CsC,OAAO,EAAE,SAAAA,OAAAA,GAAM;QACb0V,2BAA2B,CAAC,CAACD,wBAAwB,CAAC,CAAA;AACxD,OAAA;KACD,CACF,eACDhY,IAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAE4C,UAAU,CACnB,kGAAkG,EAClG;AAAE,QAAA,gCAAgC,EAAEnB,iBAAAA;AAAkB,OAAC,EACvD;AACE,QAAA,iCAAiC,EAAEsW,wBAAAA;AACrC,OACF,CAAE;MAAAjY,QAAA,EAAA,cAEFI,GAAA,CAAC2V,QAAQ,EAAA;AACDnV,QAAAA,aAAa,EAAbA,aAAa;AAAEoV,QAAAA,eAAe,EAAfA,eAAe;QACpCC,oBAAoB,EAAE,SAAAA,oBAAA,GAAA;AAAA,UAAA,OAAM5C,eAAe,CAAC,EAAE,CAAC,CAAA;SAAC;AAChD6C,QAAAA,UAAU,EAAE,EAAA,CAAAQ,oBAAA,GAACP,WAAW,CAACpB,OAAO,MAAA,IAAA,IAAA2B,oBAAA,KAAA,KAAA,CAAA,IAAnBA,oBAAA,CAAqBha,EAAE,CAAC;QACrCyZ,WAAW,EAAEA,WAAW,CAACpB,OAAAA;OAC1B,CAAC,EACDnU,aAAa,KAAKpB,cAAc,CAACC,MAAM,gBACtCW,GAAA,CAAC6T,MAAM,EAAA;AAEHzG,QAAAA,YAAY,EAAZA,YAAY;AACZ6G,QAAAA,aAAa,EAAbA,aAAa;AACbE,QAAAA,4BAA4B,EAA5BA,4BAA4B;AAC5B2E,QAAAA,cAAc,EAAdA,cAAc;AACdnM,QAAAA,eAAe,EAAfA,eAAe;AACf0H,QAAAA,qBAAqB,EAArBA,qBAAqB;AACrB3H,QAAAA,YAAY,EAAZA,YAAY;AACZ4H,QAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBJ,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBH,QAAAA,MAAM,EAANA,MAAM;AACNjB,QAAAA,SAAS,EAATA,SAAS;QAEXsB,SAAS,EAAEA,SAAS,IAAI2D,gBAAiB;AACzCpF,QAAAA,aAAa,EAAEuG,YAAa;AAC5BtG,QAAAA,WAAW,EAAEK,eAAAA;AAAgB,OAC9B,CAAC,gBAEFjT,GAAA,CAACV,SAAS,EAAA;AAENkB,QAAAA,aAAa,EAAbA,aAAa;AACbmM,QAAAA,eAAe,EAAfA,eAAe;AACfD,QAAAA,YAAY,EAAZA,YAAY;AACZD,QAAAA,aAAa,EAAbA,aAAa;AACbxC,QAAAA,kBAAkB,EAAlBA,kBAAkB;AAClB2C,QAAAA,oBAAoB,EAApBA,oBAAoB;QAEtBlQ,KAAK,EAAEqZ,WAAW,CAACpB,OAAQ;QAC3BzX,OAAO,EAAA,CAAAqZ,qBAAA,GAAER,WAAW,CAACpB,OAAO,MAAA,IAAA,IAAA4B,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAnBA,qBAAA,CAAqBja,EAAG;AACjCiE,QAAAA,cAAc,EAAEqW,gBAAAA;AAAiB,OAClC,CACF,eACD5W,GAAA,CAACmW,aAAa,EAAA;AACZmD,QAAAA,MAAM,EAAEvC,iBAAkB;AAC1B/I,QAAAA,YAAY,EAAE4K,UAAW;AACzBjZ,QAAAA,KAAK,EAAEgB,CAAC,CAAC,sCAAsC,CAAE;AACjD4Y,QAAAA,OAAO,EAAE5Y,CAAC,CAAC,wCAAwC,EAAE;UACnD5B,IAAI,EAAA,CAAAyX,sBAAA,GAAEwC,aAAa,CAACrE,OAAO,MAAA,IAAA,IAAA6B,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,sBAAA,CAAuBzX,IAAI;UACjCya,KAAK,EAAA,CAAA/C,sBAAA,GAAEuC,aAAa,CAACrE,OAAO,MAAA,IAAA,IAAA8B,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,sBAAA,CAAuB1D,YAAY;AAC1CiF,UAAAA,gBAAgB,EAAhBA,gBAAgB;UAChB7K,UAAU,EAAExM,CAAC,CAAA,yBAAA,CAAAlF,MAAA,CACe0R,UAAU,CAAC2H,WAAW,EAAE,CAClD,EAAA;YAAE0E,KAAK,EAAA,CAAA9C,sBAAA,GAAEsC,aAAa,CAACrE,OAAO,MAAA+B,IAAAA,IAAAA,sBAAA,KAArBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAAuB3D,YAAAA;WAClC,CAAA;AACF,SAAC,CAAE;AACH0G,QAAAA,OAAO,EAAEN,sBAAuB;AAChClL,QAAAA,QAAQ,EAAEiF,iBAAAA;AAAkB,OAC7B,CAAC,eACFlT,GAAA,CAACkC,MAAM,EAAA;AACLpC,QAAAA,SAAS,EAAC,+BAA+B;AACzCgI,QAAAA,IAAI,EAAE4R,QAAS;AACfvZ,QAAAA,KAAK,EAAC,WAAW;QACjBiC,OAAO,EAAE,SAAAA,OAAAA,GAAM;UACb0V,2BAA2B,CAAC,CAACD,wBAAwB,CAAC,CAAA;AACxD,SAAA;AAAE,OACH,CAAC,CAAA;AAAA,KACC,CAAC,CAAA;AAAA,GACN,CAAC,CAAA;AAEP,CAAC;;ACrND,IAAM8B,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA/c,IAAA,EASlB;AAAA,EAAA,IARJgD,QAAQ,GAAAhD,IAAA,CAARgD,QAAQ;IACRuN,UAAU,GAAAvQ,IAAA,CAAVuQ,UAAU;IACV7R,QAAQ,GAAAsB,IAAA,CAARtB,QAAQ;IACRwX,SAAS,GAAAlW,IAAA,CAATkW,SAAS;IACT7I,kBAAkB,GAAArN,IAAA,CAAlBqN,kBAAkB;IAAA2P,qBAAA,GAAAhd,IAAA,CAClBe,uBAAuB;AAAvBA,IAAAA,uBAAuB,GAAAic,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAC,qBAAA,GAAAjd,IAAA,CAC/B+Z,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAkD,qBAAA,KAAGC,KAAAA,CAAAA,GAAAA,IAAI,GAAAD,qBAAA;IAAAE,qBAAA,GAAAnd,IAAA,CAC1BgQ,oBAAoB;AAApBA,IAAAA,oBAAoB,GAAAmN,qBAAA,KAAGD,KAAAA,CAAAA,GAAAA,IAAI,GAAAC,qBAAA,CAAA;AAE3B,EAAA,IAAA7P,cAAA,GAAAC,aAAA,CAAA,UAAAzM,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQ0M,QAAAA,aAAa,EAAA1M,KAAA,CAAA,eAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAbwM,aAAa,GAAAF,cAAA,CAAbE,aAAa,CAAA;AACrB,EAAA,IAAAC,cAAA,GAAqBC,aAAa,EAAE;IAA5BE,QAAQ,GAAAH,cAAA,CAARG,QAAQ,CAAA;AAChB,EAAA,IAAAhN,eAAA,GAAAC,cAAA,CAAA,UAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQsc,QAAAA,cAAc,EAAAtc,KAAA,CAAA,gBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAAE,OAAA,CAAA;IAAdoc,cAAc,GAAAxc,eAAA,CAAdwc,cAAc,CAAA;AAEtB,EAAA,IAAA1B,mBAAA,GAII1c,kBAAkB,CAACN,QAAQ,CAAC;IAAAid,qBAAA,GAAAD,mBAAA,CAH9BzP,IAAI;AAAA2P,IAAAA,sBAAA,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAiC,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAA/B9b,KAAK;AAAE0Q,IAAAA,YAAY,GAAAqL,sBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,sBAAA;IAChCrE,SAAS,GAAAkE,mBAAA,CAATlE,SAAS;IACG6F,sBAAsB,GAAA3B,mBAAA,CAAlC4B,UAAU,CAAA;AAGZ,EAAA,IAAM7F,qBAAqB,GAAGD,SAAS,IAAI6F,sBAAsB,CAAA;AAEjE5O,EAAAA,SAAS,CAAC,YAAM;AACd2O,IAAAA,cAAc,CAAC;AAAE7M,MAAAA,UAAU,EAAVA,UAAU;AAAE7R,MAAAA,QAAQ,EAARA,QAAQ;AAAEqC,MAAAA,uBAAuB,EAAvBA,uBAAAA;AAAwB,KAAC,CAAC,CAAA;GAClE,EAAE,EAAE,CAAC,CAAA;AAEN0N,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAInH,YAAY,CAACkJ,YAAY,CAAC,EAAE,OAAA;AAEhChD,IAAAA,aAAa,CAAC;AAAEkB,MAAAA,eAAe,EAAE8B,YAAAA;AAAa,KAAC,CAAC,CAAA;IAChD5C,QAAQ,CAAC4C,YAAY,CAAC,CAAA;AACxB,GAAC,EAAE,CAACgH,SAAS,EAAE9Y,QAAQ,CAAC,CAAC,CAAA;AAEzB+P,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAInH,YAAY,CAACkJ,YAAY,CAAC,EAAE,OAAA;AAEhChD,IAAAA,aAAa,CAAC;AAAEgD,MAAAA,YAAY,EAAZA,YAAY;AAAEiH,MAAAA,qBAAqB,EAArBA,qBAAAA;AAAsB,KAAC,CAAC,CAAA;AACxD,GAAC,EAAE,CAACjH,YAAY,EAAEiH,qBAAqB,CAAC,CAAC,CAAA;AAEzC,EAAA,oBACExU,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,uBAAuB;IAAAF,QAAA,EAAA,cACpCI,GAAA,CAACqW,OAAO,EAAA;AAEJM,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnB1M,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClB2C,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBkG,MAAAA,SAAS,EAATA,SAAAA;KAEH,CAAC,eACF9S,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,+BAA+B;MAAAF,QAAA,EAC3CyU,qBAAqB,gBACpBrU,GAAA,CAAA,KAAA,EAAA;AAAKF,QAAAA,SAAS,EAAC,uDAAuD;AAAAF,QAAAA,QAAA,eACpEI,GAAA,CAACoV,OAAO,EAAE,EAAA,CAAA;AAAC,OACR,CAAC,GAENxV,QAAAA;AACD,KACE,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,YAAeua,SAAS,CAACR,kBAAkB,EAAEhZ,GAAC,CAAC,0BAA0B,CAAC,CAAC;;;;"}
|