@apia/theme 4.0.18 → 4.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-Dn_wc72C.js","sources":["../src/base/colors/util.ts","../src/base/colors/util/getColorState.ts","../src/base/colors/util/applyStatesGetColor.ts","../src/base/colors/util/applyStates.ts","../src/base/colors/types.ts","../src/base/colors/defaultPalette.ts","../src/util.ts","../src/base/colors/util/buildStateObject.ts","../src/base/colors/util/buildColorsObject.ts","../src/base/colors/util/getColorsByPath.ts","../src/base/colors/util/getColorsAndStatesByPath.ts","../src/base/colors/util/getColorStates.ts","../src/base/colors/util/getOneColorState.ts","../src/base/colors/util/getColorsByDefinition.ts","../src/base/colors/util/getColorsAndStatesByDefinition.ts","../src/base/colors/util/parsePalette.ts","../src/base/colors/schemas.ts","../src/base/colors/components.ts","../src/base/colors/index.ts","../src/util/getVariant.ts","../src/components/MaterialInput.tsx","../src/themeuiExports.tsx","../src/base/alerts.ts","../src/base/buttons.ts","../src/base/text.ts","../src/base/rootStyles/transitions.ts","../src/base/rootStyles/menu.ts","../src/base/rootStyles/rootStyles.ts","../src/base/baseTheme.ts","../src/base/forms/customCheckbox.ts","../src/base/forms/checkbox.ts","../src/base/forms/dateInput.ts","../src/base/forms/iconInput.ts","../src/base/forms/input.ts","../src/base/forms/label.ts","../src/base/forms/radio.ts","../src/base/forms/select.ts","../src/base/forms/selectMultiple.ts","../src/base/forms/switch.ts","../src/base/forms/textarea.ts","../src/base/forms/deletableInput.ts","../src/base/forms/index.ts","../src/base/layout/common/modals/overlay.ts","../src/base/layout/common/modals/apiaApi.ts","../src/base/layout/common/modals/confirm.ts","../src/base/layout/common/modals/table.ts","../src/base/layout/common/modals/tableModal.ts","../src/base/layout/common/modals/buttonsBar.ts","../src/base/layout/common/modals/apiaFinder.ts","../src/base/layout/common/modals/index.ts","../src/base/layout/common/tables/getSelectionStyles.ts","../src/base/layout/common/tables/primary.ts","../src/base/layout/common/tables/information.ts","../src/base/layout/common/tables/accordion.ts","../src/base/layout/common/tables/print.ts","../src/base/layout/common/tables/responsive.ts","../src/base/layout/common/tables/secondary.ts","../src/base/layout/common/tables/clean.ts","../src/base/layout/common/tables/index.ts","../src/base/layout/common/forms/captcha.ts","../src/base/layout/common/forms/materialInput.ts","../src/base/layout/common/forms/index.ts","../src/base/layout/common/trees/primary.ts","../src/base/layout/common/trees/mobx.ts","../src/base/layout/common/trees/index.ts","../src/base/layout/common/tooltips/primary.ts","../src/base/layout/common/tooltips/index.ts","../src/base/layout/common/components/pagination/common.ts","../src/base/layout/common/components/pagination/primary.ts","../src/base/layout/common/components/pagination/datagrid.ts","../src/base/layout/common/components/pagination/secondary.ts","../src/base/layout/common/components/pagination/index.ts","../src/base/layout/common/components/accordion.ts","../src/base/layout/common/components/chat.ts","../src/base/layout/common/components/toolbar.ts","../src/base/layout/common/components/autocomplete.ts","../src/base/layout/common/components/datePicker.ts","../src/base/layout/common/components/aiMessage.ts","../src/base/layout/common/components/infoButton.ts","../src/base/layout/common/components/filters/rangeFilter.ts","../src/base/layout/common/components/filters/index.ts","../src/base/layout/common/components/fileCard.ts","../src/base/layout/common/components/index.ts","../src/base/layout/common/boxes/labelBox.ts","../src/base/layout/common/boxes/index.ts","../src/base/layout/common/ai/execution/formsAssistant.ts","../src/base/layout/common/ai/execution/index.ts","../src/base/layout/common/ai/connectors/index.ts","../src/base/layout/common/ai/animations.ts","../src/base/layout/common/ai/semanticSearch.ts","../src/base/layout/common/ai/index.ts","../src/base/layout/common/chat/form.ts","../src/base/layout/common/chat/history.ts","../src/base/layout/common/chat/controller.ts","../src/base/layout/common/chat/attachments.ts","../src/base/layout/common/chat/message.ts","../src/base/layout/common/chat/assistant/index.ts","../src/base/layout/common/chat/index.ts","../src/base/layout/common/index.ts","../src/base/layout/util/collector.ts","../src/base/layout/util/speedui.ts","../src/base/layout/util/index.ts","../src/base/layout/charts/index.ts","../src/base/layout/validations/form.ts","../src/base/layout/validations/index.ts","../src/base/layout/index.ts","../src/methods/getMainTheme.ts","../src/methods/useMainTheme.ts","../src/methods/CustomThemeProvider.tsx","../src/methods/makeStyledComponent.tsx","../src/methods/injectStyles.ts","../src/methods/spacingLayout/index.ts","../src/ApiaThemeProvider.tsx","../src/markdown/help.ts","../src/markdown/types.ts","../src/markdown/extensions/error.ts","../src/markdown/extensions/header.ts","../src/markdown/extensions/success.ts","../src/markdown/extensions/table/index.ts","../src/markdown/extensions/warning.ts","../src/markdown/extensions/index.ts","../src/markdown/getRemarkable.ts","../src/markdown/parseMarkdown.ts","../src/markdown/builder/elements/MarkdownBlock.ts","../src/markdown/builder/elements/paragraph.ts","../src/markdown/builder/elements/dialogBox.ts","../src/markdown/builder/elements/header.ts","../src/markdown/builder/elements/list.ts","../src/markdown/builder/elements/table.ts","../src/markdown/builder/elements/tableOfContents.ts","../src/markdown/builder/MarkdownBuilder.ts"],"sourcesContent":["import clone from 'lodash-es/clone';\nimport tinycolor from 'tinycolor2';\n\nexport function defaultLighten(color: string, ratio?: number) {\n return tinycolor(color)\n .lighten(ratio ?? 20)\n .toRgbString();\n}\nexport function defaultDarken(color: string, ratio?: number) {\n return tinycolor(color)\n .darken(ratio ?? 20)\n .toRgbString();\n}\nexport function defaultGetContrastText(color: string) {\n const current = tinycolor(color);\n return tinycolor.readability('white', current) <\n tinycolor.readability('black', current)\n ? 'black'\n : 'white';\n}\n\nexport function getValueByPath(\n obj: Record<string, unknown>,\n path: string | string[],\n separator = '.',\n): unknown {\n const actualPath = typeof path === 'string' ? path.split(separator) : path;\n if (typeof obj !== 'object' || !obj) {\n if (actualPath.length === 0) return obj;\n return undefined;\n }\n const currentStep = actualPath.shift() as string;\n if (actualPath.length === 0) return obj[currentStep];\n return getValueByPath(\n obj[currentStep] as Record<string, unknown>,\n actualPath,\n separator,\n );\n}\n\nexport function setValueByPath(\n obj: Record<string, unknown>,\n path: string,\n value: unknown,\n) {\n if (path === '') return value as Record<string, unknown>;\n\n const steps = path.split('.');\n if (steps.length === 0) {\n console.warn(`An empty path was provoided ${path}`);\n return null;\n }\n const originalClonedObject = clone(obj ?? {});\n let currentObj = originalClonedObject;\n for (let i = 0; i < steps.length - 1; i++) {\n if (!currentObj[steps[i]]) currentObj[steps[i]] = {};\n if (typeof currentObj[steps[i]] === 'object') {\n currentObj = currentObj[steps[i]] as Record<string, unknown>;\n } else {\n console.info({\n originalObject: obj,\n originalPath: path,\n currentObj,\n currentStep: steps[i],\n });\n throw new Error(\n `The provided path ${path} cannot be applied due to it is not an object's path.`,\n );\n }\n }\n currentObj[steps.pop() as string] = value;\n return originalClonedObject;\n}\n","import tinycolor from 'tinycolor2';\r\nimport { TStateRetriever, TActionDefinition } from '../types';\r\nimport { getValueByPath } from '../util';\r\n\r\n/**\r\n * Este método acepta un objeto con backgroundColor y borderColor y aplica el\r\n * estado pasado como segundo parámetro de la siguiente manera:\r\n *\r\n * Si se pasa backgroundColor, se devuelve un backgroundColor y un color, que\r\n * corresponden al backgroundColor con el estado aplicado y un color calculado\r\n * con la función getContrastText.\r\n *\r\n * Si se pasa borderColor, se devuelve un nuevo borderColor calculado con el\r\n * estado aplicado.\r\n */\r\nconst getColorState: TStateRetriever = (definition, state, palette) => {\r\n if (state === 'default') return palette.buildColorsObject(definition);\r\n\r\n const opacity: number = palette.action[\r\n `${state}Opacity` as keyof TActionDefinition\r\n ] as number;\r\n\r\n const actualState = state === 'checked' ? 'selected' : state;\r\n\r\n // eslint-disable-next-line no-param-reassign\r\n definition = Object.fromEntries(\r\n Object.entries(definition).map(([name, value]) => {\r\n if (\r\n [\r\n 'backgroundColor',\r\n 'borderColor',\r\n 'borderLeftColor',\r\n 'borderRightColor',\r\n 'borderBottomColor',\r\n 'borderTopColor',\r\n 'color',\r\n ].includes(name) &&\r\n ((value ?? '') as string).startsWith('palette')\r\n )\r\n // eslint-disable-next-line no-param-reassign\r\n value = getValueByPath(\r\n palette,\r\n (value as string).slice('palette.'.length),\r\n ) as string;\r\n\r\n return [name, value];\r\n }),\r\n );\r\n\r\n const calculatedBackgroundColor = tinycolor\r\n .mix(\r\n (definition.backgroundColor ?? '') as string,\r\n tinycolor((definition.backgroundColor ?? '') as string).isLight()\r\n ? palette.action[actualState].light\r\n : palette.action[actualState].dark,\r\n 100 * opacity,\r\n )\r\n .toRgbString();\r\n\r\n return palette.buildColorsObject({\r\n ...(definition.backgroundColor\r\n ? {\r\n backgroundColor:\r\n state === 'checked'\r\n ? (definition.backgroundColor ?? '')\r\n : calculatedBackgroundColor,\r\n color:\r\n state === 'checked'\r\n ? tinycolor\r\n .mix(\r\n tinycolor((definition.color ?? 'black') as string),\r\n tinycolor(palette.action.selected.dark),\r\n 100 * palette.action.selectedOpacity,\r\n )\r\n .toRgbString()\r\n : palette.getContrastText(calculatedBackgroundColor),\r\n }\r\n : null),\r\n ...(definition.borderColor\r\n ? {\r\n borderColor: tinycolor\r\n .mix(\r\n definition.borderColor as string,\r\n tinycolor(definition.borderColor as string).isLight()\r\n ? palette.action[actualState].light\r\n : palette.action[actualState].dark,\r\n 100 * opacity,\r\n )\r\n .toRgbString(),\r\n }\r\n : null),\r\n });\r\n};\r\nexport default getColorState;\r\n","import cloneDeep from 'lodash-es/cloneDeep';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { TStatesRetriever } from '../types';\nimport getColorState from './getColorState';\n\n/**\n * Este método está pensado para usarse únicamente dentro de applyStates, si se\n * desea obtener un objeto con las propiedades correspondientes a un estado,\n * utilizar el método getColorStates.\n */\nconst applyStatesGetColor: TStatesRetriever = (definition, palette, states) => {\n const newStates: ThemeUICSSObject =\n states?.default !== false\n ? cloneDeep(definition)\n : ({} as ThemeUICSSObject);\n\n if (states?.active !== false) {\n newStates.active = getColorState(definition, 'active', palette);\n }\n if (states?.disabled !== false) {\n newStates.disabled = getColorState(definition, 'disabled', palette);\n }\n if (states?.focus !== false) {\n newStates.focus = getColorState(definition, 'focus', palette);\n }\n if (states?.hover !== false) {\n newStates.hover = getColorState(definition, 'hover', palette);\n }\n if (states?.readonly !== false) {\n newStates.readonly = getColorState(definition, 'readonly', palette);\n }\n if (states?.selected !== false) {\n newStates.selected = getColorState(definition, 'selected', palette);\n }\n if (states?.checked !== false) {\n newStates.checked = getColorState(definition, 'checked', palette);\n }\n return newStates;\n};\n\nexport default applyStatesGetColor;\n","import merge from 'lodash-es/merge';\nimport { TColorDefinition, TGetColorStateDefinition, TStates } from '../types';\nimport applyStatesGetColor from './applyStatesGetColor';\nimport { Theme } from 'theme-ui';\n\n/**\n * Esta función está pensada para ser utilizada dentro del objeto colors del\n * tema. Aplica recursivamente los distintos estados a todos los elementos\n * contenidos dentro de los objetos pasados como parámetro en properties.\n *\n * Es posible elegir cuáles estados se aplican y cuáles no mediante el segundo\n * parámetro, que es un objeto cuyas propiedades serán tomadas en cuenta\n * únicamente cuando tienen valor false, en cuyo caso no se aplicará el estado\n * correspondiente.\n *\n * @param properties\n * @param states\n */\nexport default function applyStates(\n properties: Record<string, string | TGetColorStateDefinition>[],\n theme: Theme,\n states?: TStates,\n) {\n properties.forEach?.((def) => {\n Object.entries(def).forEach(([key, value]) => {\n if (typeof value === 'string') return;\n const definition = value as Required<TColorDefinition>;\n\n if (typeof definition !== 'string' && !definition.preventParse) {\n if (!definition.active) definition.active = {};\n if (!definition.checked) definition.checked = {};\n if (!definition.focus) definition.focus = {};\n if (!definition.disabled) definition.disabled = {};\n if (!definition.hover) definition.hover = {};\n if (!definition.selected) definition.selected = {};\n\n const newDefinition = applyStatesGetColor(\n definition,\n theme.palette,\n states,\n );\n // eslint-disable-next-line no-param-reassign\n def[key] = merge(newDefinition, definition);\n }\n });\n });\n}\n","import { ResponsiveStyleValue, Theme, ThemeUICSSObject } from 'theme-ui';\nimport { responsive } from '../../util';\nimport getColorsAndStatesByPath, {\n TGetColorsAndStatesOptions,\n} from './util/getColorsAndStatesByPath';\n\n/* eslint-disable @typescript-eslint/naming-convention */\nexport function isColorDefinition(\n value:\n | IColorDefinition\n | TColorModifier\n | Record<string, unknown>\n | string\n | number\n | TActionDefinition\n | TStatesRetriever\n | ((index: number) => ResponsiveStyleValue<number>)\n | typeof responsive,\n): value is IColorDefinition {\n return !!value && typeof value === 'object' && 'main' in value;\n}\n\nexport interface IColorDefinition {\n main: string;\n light?: string;\n dark?: string;\n contrastText?: string;\n}\n\nexport interface IActionOpacity {\n light: string;\n dark: string;\n}\n\nexport interface TStates {\n active?: boolean;\n checked?: boolean;\n default?: boolean;\n disabled?: boolean;\n focus?: boolean;\n hover?: boolean;\n readonly?: boolean;\n selected?: boolean;\n}\n\nexport type TGetColorStateDefinition = Pick<\n ThemeUICSSObject,\n | 'backgroundColor'\n | 'borderColor'\n | 'borderLeftColor'\n | 'borderRightColor'\n | 'borderBottomColor'\n | 'borderTopColor'\n | 'color'\n>;\n\nexport type TParsedPaletteColorStateRetriever = (\n color: string,\n state: keyof TStates,\n) => string;\n\nexport type TColorStateRetriever = (\n color: string,\n state: keyof TStates,\n palette: TParsedPalette,\n) => string;\n\nexport type TParsedPaletteStateRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n state: keyof TStates,\n) => TGetColorStateDefinition;\n\nexport type TStateRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n state: keyof TStates,\n palette: TParsedPalette,\n) => TGetColorStateDefinition;\n\nexport type TParsedPaletteStatesRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n states?: TStates,\n) => ThemeUICSSObject;\n\nexport type TStatesRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n palette: TParsedPalette,\n states?: TStates,\n) => ThemeUICSSObject;\n\nexport type TParsedPaletteStatesByDefinition = (\n definition: Partial<TGetColorStateDefinition>,\n options?: TGetColorsAndStatesOptions,\n) => ThemeUICSSObject;\n\nexport type TStatesByDefinition = (\n definition: Partial<TGetColorStateDefinition>,\n theme: Theme,\n options?: TGetColorsAndStatesOptions,\n) => ThemeUICSSObject;\n\nexport type TApplyStates = (\n properties: Record<\n string,\n TColorDefinition | string | Record<string, unknown>\n >[],\n theme: Theme,\n states?: TStates,\n) => void;\n\nexport interface TActionDefinition<\n OpacityColor = undefined | string | IActionOpacity,\n> {\n active: OpacityColor;\n activeOpacity: number;\n disabled: OpacityColor;\n disabledOpacity: number;\n focus: OpacityColor;\n focusOpacity: number;\n hover: OpacityColor;\n hoverOpacity: number;\n readonly: OpacityColor;\n readonlyOpacity: number;\n selected: OpacityColor;\n selectedOpacity: number;\n}\n\nexport type TColorModifier = (color: string, ratio?: number) => string;\nexport interface TPalette<\n ColorDefinition = IColorDefinition,\n ColorModifier = TColorModifier,\n ActionDefinition = TActionDefinition,\n> {\n action: ActionDefinition;\n background: {\n default: string;\n overlay: string;\n paper: string;\n };\n border: {\n article: string;\n field: string;\n ghost: string;\n section: string;\n };\n common: {\n white: string;\n black: string;\n };\n error: ColorDefinition;\n gray?: {\n 100: string;\n 150: string;\n 200: string;\n 250: string;\n 300: string;\n 350: string;\n 400: string;\n 450: string;\n 500: string;\n 550: string;\n 600: string;\n 650: string;\n 700: string;\n 750: string;\n 800: string;\n 850: string;\n 900: string;\n 950: string;\n };\n info: ColorDefinition;\n primary: ColorDefinition;\n secondary: ColorDefinition;\n spacing: (index: number) => ResponsiveStyleValue<number>;\n success: ColorDefinition;\n text: {\n accent: string;\n disabled: string;\n icon: string;\n link: string;\n primary: string;\n secondary: string;\n title: string;\n };\n warning: ColorDefinition;\n\n lightenRatio?: number;\n darkenRatio?: number;\n /**\n * Acepta un ratio entre 0 y 100\n */\n lightenColor?: ColorModifier;\n /**\n * Acepta un ratio entre 0 y 100\n */\n darkenColor?: ColorModifier;\n getContrastText?: ColorModifier;\n responsive: typeof responsive;\n\n queryColumnsMultiplier?: number;\n}\n\nexport type TBuildStateObject = <T extends Partial<ThemeUICSSObject>>(\n props: T,\n state: keyof Required<TStates> | 'checked',\n) => ThemeUICSSObject;\n\nexport type TBuildColorsObject = (\n definition: Partial<TGetColorStateDefinition>,\n) => TGetColorStateDefinition;\n\nexport type TParsedPalette = Required<\n TPalette<\n Required<IColorDefinition>,\n TColorModifier,\n Required<TActionDefinition<IActionOpacity>>\n >\n> & {\n applyStates: TApplyStates;\n buildColorsObject: TBuildColorsObject;\n buildStateObject: TBuildStateObject;\n getColor: TParsedPaletteColorStateRetriever;\n getColorStates: TParsedPaletteStatesRetriever;\n getOneState: TParsedPaletteStateRetriever;\n getStatesForColors: TParsedPaletteStatesRetriever;\n getStatesFromDefinition: TParsedPaletteStatesByDefinition;\n getStatesFromPath: typeof getColorsAndStatesByPath;\n getSelectedColors: () => ThemeUICSSObject;\n getColorsByPath: (\n path: string,\n options?: {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n mergeObject?: Record<string, any>;\n },\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ) => TGetColorStateDefinition & Record<string, any>;\n};\n\nexport type TCustomPalette = Partial<TPalette> &\n Partial<\n Pick<\n TParsedPalette,\n | 'applyStates'\n | 'buildColorsObject'\n | 'buildStateObject'\n | 'getColor'\n | 'getColorStates'\n | 'getSelectedColors'\n | 'getContrastText'\n | 'getOneState'\n | 'getStatesForColors'\n | 'getStatesFromDefinition'\n | 'getStatesFromPath'\n >\n >;\n\nexport type TColorDefinitionPrimitive = Pick<\n ThemeUICSSObject,\n 'color' | 'backgroundColor' | 'borderColor'\n>;\n\nexport type TColorDefinition = TColorDefinitionPrimitive & {\n active?: TColorDefinitionPrimitive;\n checked?: TColorDefinitionPrimitive;\n disabled?: TColorDefinitionPrimitive;\n focus?: TColorDefinitionPrimitive;\n hover?: TColorDefinitionPrimitive;\n preventParse?: boolean;\n selected?: TColorDefinitionPrimitive;\n};\n\ndeclare global {\n interface Window {\n currentPalette: TParsedPalette;\n customPalettes?: TPalette[];\n defaultPalette?: TPalette;\n }\n}\n\nexport type TThemeModifier = (theme: Theme) => Theme;\n","import { responsive } from '../../util';\nimport { TPalette } from './types';\n\nconst actions = { dark: '#cce5ff', light: '#557' };\nconst spacingArray = Array(50)\n .fill(1)\n .map((_, i) => {\n return responsive<number>({\n 0: Math.ceil(i / 2.5),\n 1: Math.ceil(i / 2.1),\n 2: Math.ceil(i / 1.7),\n 3: Math.ceil(i / 1.3),\n 4: i,\n });\n });\n\nconst defaultPalette: TPalette = {\n action: {\n disabled: '#d9d9d9',\n disabledOpacity: 1,\n active: actions,\n activeOpacity: 0.45,\n focus: actions,\n focusOpacity: 0.05,\n hover: actions,\n hoverOpacity: 0.1,\n readonly: actions,\n readonlyOpacity: 0.4,\n selected: 'rgb(204 214 222)',\n selectedOpacity: 1,\n },\n background: {\n default: '#f4f4f4',\n overlay: 'rgba(0, 0, 0, 0.2)',\n paper: 'white',\n },\n border: {\n article: '#cacaca',\n field: '#444',\n ghost: '#f5f5f5',\n section: '#aaa',\n },\n common: {\n black: 'black',\n white: 'white',\n },\n info: {\n main: '#fff',\n },\n primary: {\n main: '#00496c',\n },\n secondary: {\n light: '#fcfcfc',\n main: '#6c757d',\n },\n spacing: (index: number) => {\n return spacingArray[index];\n },\n text: {\n accent: '#609',\n disabled: '#555',\n icon: 'white',\n link: '#00496c',\n primary: '#4a4a4a',\n secondary: 'white',\n title: '#00496c',\n },\n error: {\n main: 'rgb(187,12,15)',\n light: '#fff2f4',\n },\n success: {\n main: '#8bde8b',\n light: '#e7ffd9',\n },\n warning: {\n main: '#f8f588',\n light: '#fffdd9',\n },\n darkenRatio: 15,\n lightenRatio: 35,\n responsive,\n queryColumnsMultiplier: 2,\n};\nexport default defaultPalette;\n","import { ResponsiveStyleValue, ThemeUICSSObject } from 'theme-ui';\nimport defaultPalette from './base/colors/defaultPalette';\n\n/**\n * Esta función devuelve un array de valores para los distintos breakpoints.\n *\n * **Importante** Debido a un issue con ThemeUI, es necesario agregar un\n * breakpoint inicial de 0px para las vistas de impresión. El comportamiento por\n * defecto será, si se pasa un valor para el índice 4, esta será tomada como\n * vista de impresión, sino se tomará el valor de mayor índice menor que 4.\n *\n * @example\n *\n * display: responsive({0: 'none', 3: 'block'}) // display: ['block', 'none', null, null, 'block'];\n */\n\nexport function responsive<T>(values: {\n print?: T;\n [key: number]: undefined | T;\n}): ResponsiveStyleValue<T> {\n const returnArray = [];\n const max = 6;\n for (let i = 0; i <= max; i++) returnArray[i + 1] = values[i] ?? null;\n\n if (values.print) returnArray[0] = values.print;\n else {\n for (let i = 5; i >= 0; i--) {\n if (values[i] !== undefined) returnArray[0] = values[i];\n }\n }\n\n return returnArray;\n}\n\n/**\n * Este método permite aplicar espacios (gaps, márgenes y paddings) que se\n * tendrán un comportamiento responsivo por defecto. Esto es, cuando tenemos un\n * padding en una vista de escritorio, probablemente sea demasiado grande al\n * llevarlo a celular. Con esta función se elimina el problema de calcular para\n * cada elemento en forma individual y el problema se convierte en encontrar\n * una única fórmula que quede correcta para todos los breakpoints.\n *\n * @example\n *\n * '.wellPaddedElement': {\n * p: spacing(6),\n * pt: spacing(8)\n * }\n */\nexport function spacing(index: number): ResponsiveStyleValue<number> {\n return defaultPalette.spacing(index) ?? index;\n}\n\nexport const smallButton = {\n py: 2,\n px: 4,\n fontSize: '0.9em',\n};\n\nexport const focusOutline: ThemeUICSSObject = {\n outlineColor: 'outlineColor',\n outlineWidth: '3px',\n outlineStyle: 'solid',\n outlineOffset: '-3px',\n};\n","import merge from 'lodash-es/merge';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../../util';\nimport { TBuildStateObject } from '../types';\n\n/**\n * Dado un estado, se devuelven las propiedades necesarias para garantizar que\n * dicho estado se aplique en variadas circunstancias.\n */\nconst buildStateObject: TBuildStateObject = (props, state) => {\n switch (state) {\n case 'active':\n return {\n '&:active': props,\n 'input[role]:active ~ &': props,\n 'input[role]:active ~ & path': props,\n };\n case 'checked':\n return {\n '&:checked': props,\n 'input[role]:checked ~ &': props,\n 'input[role]:checked ~ & path': props,\n };\n case 'disabled':\n return {\n '&:disabled': props,\n 'input[role]:disabled ~ &': props,\n 'input[role]:disabled ~ & path': props,\n };\n case 'focus': {\n const focusObject = merge({}, focusOutline, props);\n return {\n '&:focus': focusObject,\n 'input[role]:focus ~ &': focusObject,\n };\n }\n case 'hover': {\n return {\n '&:hover:not([readonly], :disabled,[aria-selected=\"true\"],:active)':\n props,\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"])':\n props,\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"]) path':\n props,\n };\n }\n case 'readonly':\n return {\n '&[readonly]': props,\n 'input[role][readonly] ~ &': props,\n 'input[role][readonly] ~ & path': props,\n '&.readonly input ~ &, &.readOnly input ~ &': props,\n '&.readonly input ~ & path, &.readOnly input ~ & path': props,\n '&.readonly, &.readOnly': props,\n };\n case 'selected':\n return {\n '&:selected': props,\n 'input[role]:selected ~ &': props,\n 'input[role]:selected ~ & path': props,\n '&[aria-selected=\"true\"]': props,\n };\n default:\n return props as unknown as ThemeUICSSObject;\n }\n};\nexport default buildStateObject;\n","import { TGetColorStateDefinition } from '../types';\n\n/**\n * Básicamente agrega la definición de borderLeftColor, borderRightColor, etc.\n */\nfunction buildColorsObject(definition: Partial<TGetColorStateDefinition>) {\n return {\n ...definition,\n ...(definition.borderColor\n ? {\n borderLeftColor: definition.borderColor,\n borderRightColor: definition.borderColor,\n borderBottomColor: definition.borderColor,\n borderTopColor: definition.borderColor,\n }\n : undefined),\n } as TGetColorStateDefinition;\n}\n\nexport default buildColorsObject;\n","import merge from 'lodash-es/merge';\nimport buildColorsObject from './buildColorsObject';\n\n/**\n * Esta función NO CALCULA ningún color, simplemente devuelve un objeto con las\n * rutas de color con el formato de ThemeUI. Es útil cuando se desea aplicar\n * colores definidos en el objeto colors.\n *\n * Si se desea generar un objeto con los colores a partir de una definición de\n * colores del tipo TGetColorStateDefinition se debe utilizar el método\n * getColorsByDefinition.\n */\nexport default function getColorsByPath(\n path: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: { mergeObject?: Record<string, any> },\n) {\n return merge(\n buildColorsObject({\n color: `${path}.color`,\n backgroundColor: `${path}.backgroundColor`,\n borderColor: `${path}.borderColor`,\n }),\n options?.mergeObject,\n );\n}\n","import { ThemeUICSSObject } from 'theme-ui';\nimport merge from 'lodash-es/merge';\nimport buildStateObject from './buildStateObject';\nimport getColorsByPath from './getColorsByPath';\n// import buildColorsObject from './buildColorsObject';\n// import getColorState from './getColorState';\n\nexport interface TGetColorsAndStatesOptions {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n mergeObject?: Record<string, any>;\n states?: {\n active?: boolean;\n checked?: boolean;\n default?: boolean;\n disabled?: boolean;\n focus?: boolean;\n hover?: boolean;\n readonly?: boolean;\n path?: boolean;\n selected?: boolean;\n };\n}\n\n/**\n * Esta función es útil para devolver los estados calculados por la aplicación\n * dentro del objeto colors de ThemeUI. Si se desea calcular los estados en\n * base a un color, se debe utilizar el método getColorsAndStatesByColor.\n */\nexport default function getColorsAndStatesByPath(\n incomingPath: string,\n options?: TGetColorsAndStatesOptions,\n) {\n const active = getColorsByPath(`${incomingPath}.active`, options);\n const checked = getColorsByPath(`${incomingPath}.checked`, options);\n const disabled = {\n cursor: 'not-allowed',\n ...getColorsByPath(`${incomingPath}.disabled`, options),\n };\n const hover = getColorsByPath(`${incomingPath}.hover`, options);\n const focus =\n options?.states?.focus !== false\n ? getColorsByPath(`${incomingPath}.focus`, options)\n : {};\n const readonly = {\n cursor: 'notAllowed',\n ...getColorsByPath(`${incomingPath}.readonly`, options),\n };\n const selected = getColorsByPath(`${incomingPath}.selected`, options);\n\n return merge(\n {\n ...(options?.states?.default !== false\n ? getColorsByPath(incomingPath, options)\n : null),\n ...(options?.states?.checked !== false\n ? buildStateObject(checked, 'checked')\n : null),\n ...buildStateObject(focus, 'focus'),\n ...(options?.states?.hover !== false\n ? buildStateObject(hover, 'hover')\n : null),\n ...(options?.states?.selected !== false\n ? buildStateObject(selected, 'selected')\n : null),\n ...(options?.states?.active !== false\n ? buildStateObject(active, 'active')\n : null),\n ...(options?.states?.disabled !== false\n ? buildStateObject(disabled, 'disabled')\n : null),\n ...(options?.states?.readonly !== false\n ? buildStateObject(readonly, 'readonly')\n : null),\n ...(options?.states?.path !== false\n ? { path: { fill: `currentColor` } }\n : null),\n },\n options?.mergeObject,\n ) as Record<string, ThemeUICSSObject>;\n}\n","import { TStatesRetriever } from '../types';\nimport buildStateObject from './buildStateObject';\nimport getColorState from './getColorState';\n\n/**\n * Con este método es posible construir un objeto con las propiedades\n * necesarias para aplicar los colores correspondientes a los estados deseados\n * a partir de la definición provista.\n */\nconst getColorStates: TStatesRetriever = (definition, palette, states) => {\n return {\n ...(states?.default !== false ? definition : null),\n ...(states?.checked !== false\n ? buildStateObject(\n getColorState(definition, 'checked', palette),\n 'checked',\n )\n : null),\n ...buildStateObject(getColorState(definition, 'focus', palette), 'focus'),\n ...(states?.selected !== false\n ? buildStateObject(\n getColorState(definition, 'selected', palette),\n 'selected',\n )\n : null),\n ...(states?.hover !== false\n ? buildStateObject(getColorState(definition, 'hover', palette), 'hover')\n : null),\n ...(states?.active !== false\n ? buildStateObject(getColorState(definition, 'active', palette), 'active')\n : null),\n ...(states?.disabled !== false\n ? buildStateObject(\n getColorState(definition, 'disabled', palette),\n 'disabled',\n )\n : null),\n ...(states?.readonly !== false\n ? buildStateObject(\n getColorState(definition, 'readonly', palette),\n 'readonly',\n )\n : null),\n };\n};\n\nexport default getColorStates;\n","import tinycolor from 'tinycolor2';\n\nimport { TColorStateRetriever, TActionDefinition } from '../types';\n\n/**\n\n * Este método acepta un color y aplica el estado pasado como segundo\n\n * parámetro. De esta forma se puede obtener el color correspondiente al estado\n\n * calculado automáticamente por la aplicación.\n\n */\n\nconst getOneColorState: TColorStateRetriever = (color, state, palette) => {\n if (typeof color !== 'string') return '';\n if (state === 'default') return color;\n\n const actualState = state === 'checked' ? 'selected' : state;\n\n const opacity: number = palette.action[\n `${state}Opacity` as keyof TActionDefinition\n ] as number;\n\n return tinycolor\n\n .mix(\n color,\n\n tinycolor(color).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n\n 100 * opacity,\n )\n\n .toRgbString();\n};\n\nexport default getOneColorState;\n","import merge from 'lodash-es/merge';\nimport { TGetColorStateDefinition } from '../types';\nimport buildColorsObject from './buildColorsObject';\n\n/**\n * Esta función arma un objeto con los colores que se deben aplicar para\n * garantizar que el resultado sea el esperado, por ejemplo, al aplicar un\n * color a un border. Esto es así ya que en ThemeUI hay situaciones en las que\n * si no se aplican el color de borde a cada uno de los lados, no se aplica el\n * color deseado.\n *\n * Ejemplo de lo antedicho es:\n *\n * borderRight: '1px solid',\n * borderColor: 'red'.\n *\n * En este caso, el borde derecho no será rojo como se espera, ya que la\n * propiedad borderRight aplicará un borderRightColor: 'initial', que solamente\n * puede ser reescrito por borderRightColor: 'red'.\n */\nexport default function getColorsByDefinition(\n definition: Partial<TGetColorStateDefinition>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: { mergeObject?: Record<string, any> },\n) {\n return merge(\n buildColorsObject({\n ...(definition.color ? { color: definition.color } : null),\n ...(definition.backgroundColor\n ? { backgroundColor: definition.backgroundColor }\n : null),\n ...(definition.borderColor\n ? {\n borderColor: definition.borderColor,\n }\n : null),\n }),\n options?.mergeObject,\n );\n}\n","import merge from 'lodash-es/merge';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { TGetColorStateDefinition, TParsedPalette } from '../types';\nimport buildStateObject from './buildStateObject';\nimport { TGetColorsAndStatesOptions } from './getColorsAndStatesByPath';\nimport getColorsByDefinition from './getColorsByDefinition';\nimport getColorState from './getColorState';\n\n/**\n * Esta función calcula los colores de los estados a partir de la definición\n * pasada.\n */\nexport default function getColorsAndStatesByDefinition(\n definition: Partial<TGetColorStateDefinition>,\n\n palette: TParsedPalette,\n options?: TGetColorsAndStatesOptions,\n) {\n const active = getColorState(definition, 'active', palette);\n const checked = getColorState(definition, 'checked', palette);\n const disabled = getColorState(definition, 'disabled', palette);\n const focus = options?.states?.focus\n ? getColorState(definition, 'focus', palette)\n : {};\n const hover = getColorState(definition, 'hover', palette);\n const readonly = getColorState(definition, 'readonly', palette);\n const selected = getColorState(definition, 'selected', palette);\n\n return merge(\n options?.states?.default !== false\n ? getColorsByDefinition(definition)\n : null,\n options?.states?.checked !== false\n ? buildStateObject(checked, 'checked')\n : {},\n options?.states?.focus !== false ? buildStateObject(focus, 'focus') : {},\n options?.states?.hover !== false ? buildStateObject(hover, 'hover') : {},\n options?.states?.active !== false ? buildStateObject(active, 'active') : {},\n options?.states?.selected !== false\n ? buildStateObject(selected, 'selected')\n : {},\n options?.states?.disabled !== false\n ? buildStateObject(disabled, 'disabled')\n : {},\n options?.states?.readonly !== false\n ? buildStateObject(readonly, 'readonly')\n : {},\n options?.mergeObject,\n ) as ThemeUICSSObject;\n}\n","/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport cloneDeep from 'lodash-es/cloneDeep';\nimport {\n TParsedPalette,\n isColorDefinition,\n IActionOpacity,\n IColorDefinition,\n TCustomPalette,\n} from '../types';\nimport { defaultLighten, defaultDarken, defaultGetContrastText } from '../util';\nimport applyStatesGetColor from './applyStatesGetColor';\nimport buildStateObject from './buildStateObject';\nimport getColorsAndStatesByPath from './getColorsAndStatesByPath';\nimport getColorState from './getColorState';\nimport getColorStates from './getColorStates';\nimport getOneColorState from './getOneColorState';\nimport buildColorsObject from './buildColorsObject';\nimport applyStates from './applyStates';\nimport getColorsAndStatesByDefinition from './getColorsAndStatesByDefinition';\nimport { getSelectedColors } from '..';\nimport getColorsByPath from './getColorsByPath';\n\nfunction paletteFunction(callback: (...args: any[]) => unknown): any {\n return (...args: any[]) => {\n const firstParameter = args[0];\n let isFirstParameterATheme = false;\n\n const themeProps = [\n 'fontSizes',\n 'breakpoints',\n 'fonts',\n 'lineHeights',\n 'letterSpacings',\n 'radii',\n 'zIndices',\n 'useRootStyles',\n ];\n /**\n * In this block, I must decide if the first argument is a theme or\n * not\n */\n if (firstParameter instanceof Object && firstParameter !== null) {\n const firstParameterKeys = Object.keys(firstParameter);\n for (const key of firstParameterKeys) {\n if (themeProps.includes(key)) {\n isFirstParameterATheme = true;\n break;\n }\n }\n }\n\n if (isFirstParameterATheme) {\n /** Do nothing */\n } else {\n return callback(...args);\n }\n };\n}\n\nexport default function parsePalette(palette: TCustomPalette) {\n const newPalette: TParsedPalette = cloneDeep(palette) as TParsedPalette;\n\n // Put methods\n newPalette.lightenColor = paletteFunction(\n palette.lightenColor ??\n ((color: string, ratio?: number) => {\n return defaultLighten(color, ratio ?? palette.lightenRatio);\n }),\n );\n newPalette.darkenColor = paletteFunction(\n palette.darkenColor ??\n ((color: string, ratio?: number) => {\n return defaultDarken(color, ratio ?? palette.darkenRatio);\n }),\n );\n newPalette.getContrastText = paletteFunction(\n palette.getContrastText ?? defaultGetContrastText,\n );\n\n // Fill colors\n Object.entries(palette).forEach(([key, value]) => {\n const castedValue = value as string | number | IColorDefinition;\n if (isColorDefinition(castedValue)) {\n (newPalette as Record<string, unknown>)[key] = {\n main: castedValue.main,\n light: castedValue.light ?? newPalette.lightenColor(castedValue.main),\n dark: castedValue.dark ?? newPalette.darkenColor(castedValue.main),\n contrastText:\n castedValue.contrastText ??\n newPalette.getContrastText(castedValue.main),\n };\n } else {\n (newPalette as Record<string, unknown>)[key] = value;\n }\n });\n\n // Draw borders\n newPalette.border.article =\n newPalette.border.article ?? newPalette.secondary.main;\n newPalette.border.field = newPalette.border.field ?? newPalette.text.primary;\n newPalette.border.section =\n newPalette.border.section ?? newPalette.primary.main;\n\n // Define actions\n function parseAction(action: string | IActionOpacity): IActionOpacity {\n if (typeof action === 'string')\n return {\n dark: action,\n light: action,\n };\n return {\n dark: action.dark ?? action.light,\n light: action.light ?? action.dark,\n };\n }\n\n newPalette.action.active = parseAction(newPalette.action.active);\n newPalette.action.disabled = parseAction(newPalette.action.disabled);\n newPalette.action.focus = parseAction(newPalette.action.focus);\n newPalette.action.hover = parseAction(newPalette.action.hover);\n newPalette.action.readonly = parseAction(newPalette.action.readonly);\n newPalette.action.selected = parseAction(newPalette.action.selected);\n\n newPalette.gray = newPalette.gray ?? {};\n for (let i = 1; i <= 18; i++) {\n const index = Math.round(((255 - 255 / 18) / 18) * i);\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] =\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] ??\n `rgb(${index},${index},${index})`;\n }\n\n newPalette.applyStates = paletteFunction(applyStates);\n newPalette.buildColorsObject = paletteFunction(buildColorsObject);\n newPalette.buildStateObject = paletteFunction(buildStateObject);\n newPalette.getColor = paletteFunction((color, state) =>\n getOneColorState(color, state, newPalette),\n );\n newPalette.getStatesForColors = paletteFunction((definition, states) =>\n applyStatesGetColor(definition, newPalette, states),\n );\n newPalette.getOneState = paletteFunction((definition, state) =>\n getColorState(definition, state, newPalette),\n );\n newPalette.getColorStates = paletteFunction((definition, state) =>\n getColorStates(definition, newPalette, state),\n );\n newPalette.getStatesFromDefinition = paletteFunction((definition, states) =>\n getColorsAndStatesByDefinition(definition, newPalette, states),\n );\n newPalette.getStatesFromPath = paletteFunction(getColorsAndStatesByPath);\n newPalette.getSelectedColors = paletteFunction(() =>\n getSelectedColors(newPalette),\n );\n newPalette.getColorsByPath = paletteFunction(getColorsByPath);\n return newPalette;\n}\n","export const schemas: Record<string, string[]> = {\n ocean: ['#008E1B', '#009155', '#009187', '#008EB1', '#006872', '#2F4858'],\n sunset: ['#ae76de', '#D65DB1', '#FF6F91', '#FF9671', '#FFC75F', '#F9F871'],\n red: ['#dc143c', '#ff2400', '#800020', '#b22222', '#e52b50', '#ff7f50'],\n orange: ['#F76E11', '#FF9F45', '#FFBC80', '#FC4F4F', '#eb9605', '#964000'],\n green: ['#a4de02', '#76ba1b', '#4c9a2a', '#acdf87', '#68bb59', '#1e5631'],\n blue: ['#00496C', '#45bdee', '#28a7ea', '#006cbb', '#034698', '#032f64'],\n violet: ['#80007e', '#a02d9c', '#c37ecd', '#9e5fb8', '#7f3e98', '#4c197f'],\n turquoise: ['#0ddbcc', '#43ebff', '#19ceeb', '#28acea', '#388ee9', '#3d76e0'],\n yellow: ['#fff700', '#ffff9f', '#fef54f', '#f9e231', '#f6c616', '#eab200'],\n grey: ['#b1b5ba', '#d2d5d6', '#dee0e0', '#bdbdbb', '#9fa19c', '#686e67'],\n};\n","import { Theme } from 'theme-ui';\r\nimport { TGetColorStateDefinition } from './types';\r\nimport tinycolor from 'tinycolor2';\r\n\r\nconst components: (\r\n theme: Theme,\r\n) => Record<string, Record<string, string | TGetColorStateDefinition>> = (\r\n theme: Theme,\r\n) => {\r\n const palette = theme.palette;\r\n\r\n return {\r\n datagrid: {\r\n borderColor: palette.background.default,\r\n header: {\r\n backgroundColor: palette.background.default,\r\n color: palette.text.primary,\r\n borderColor: palette.background.default,\r\n },\r\n body: {\r\n preventParse: true,\r\n backgroundColor: palette.background.paper,\r\n evenRowsBackgroundColor: palette.darkenColor(\r\n palette.background.paper,\r\n 3,\r\n ),\r\n color: palette.text.primary,\r\n borderColor: palette.gray['800'],\r\n\r\n selectedRows: {\r\n borderColor: palette.gray['800'],\r\n backgroundColor: palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor,\r\n color: palette.getContrastText(\r\n palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor as string,\r\n ),\r\n },\r\n },\r\n },\r\n paginationPrimary: {\r\n backgroundColor: palette.primary.main,\r\n icons: {\r\n backgroundColor: palette.primary.main,\r\n borderColor: palette.primary.main,\r\n color: palette.primary.contrastText,\r\n },\r\n pagesBox: {\r\n preventParse: true,\r\n backgroundColor: palette.background.paper,\r\n borderColor: palette.border.field,\r\n color: palette.text.primary,\r\n },\r\n },\r\n paginationSecondary: {\r\n backgroundColor: palette.background.default,\r\n icons: {\r\n backgroundColor: palette.background.default,\r\n borderColor: palette.background.default,\r\n color: palette.text.primary,\r\n },\r\n pagesBox: {\r\n preventParse: true,\r\n backgroundColor: palette.background.paper,\r\n borderColor: palette.border.field,\r\n color: palette.text.primary,\r\n },\r\n },\r\n paginationDatagrid: {\r\n backgroundColor: palette.background.default,\r\n icons: {\r\n backgroundColor: palette.background.default,\r\n borderColor: palette.background.default,\r\n color: palette.text.primary,\r\n },\r\n pagesBox: {\r\n preventParse: true,\r\n backgroundColor: palette.background.paper,\r\n borderColor: palette.border.field,\r\n color: palette.text.primary,\r\n },\r\n },\r\n primaryTable: {\r\n borderColor: palette.background.paper,\r\n header: {\r\n backgroundColor: palette.primary.main,\r\n color: palette.text.secondary,\r\n borderColor: palette.primary.main,\r\n },\r\n body: {\r\n preventParse: true,\r\n backgroundColor: palette.background.paper,\r\n evenRowsBackgroundColor: palette.darkenColor(\r\n palette.background.paper,\r\n 3,\r\n ),\r\n color: palette.text.primary,\r\n borderColor: palette.gray['800'],\r\n selectedRows: {\r\n borderColor: palette.gray['800'],\r\n backgroundColor: palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor,\r\n color: palette.getContrastText(\r\n palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor as string,\r\n ),\r\n },\r\n },\r\n },\r\n cleanTable: {\r\n borderColor: palette.background.paper,\r\n header: {\r\n backgroundColor: palette.background.paper,\r\n color: palette.text.primary,\r\n borderColor: palette.primary.main,\r\n },\r\n body: {\r\n preventParse: true,\r\n\r\n backgroundColor: palette.background.paper,\r\n borderColor: palette.border.ghost,\r\n color: palette.text.primary,\r\n\r\n evenRowsBackgroundColor: palette.background.paper,\r\n additionalInfoButton: {\r\n backgroundColor: palette.secondary.light,\r\n color: '#4e4e4e',\r\n borderColor: 'transparent',\r\n },\r\n selectedRows: {\r\n borderColor: palette.gray['800'],\r\n backgroundColor: palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor,\r\n color: palette.getContrastText(\r\n palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor as string,\r\n ),\r\n },\r\n },\r\n },\r\n secondaryTable: {\r\n borderColor: palette.background.paper,\r\n header: {\r\n backgroundColor: palette.darkenColor(palette.background.default, 2),\r\n color: palette.text.primary,\r\n borderColor: palette.background.default,\r\n },\r\n body: {\r\n preventParse: true,\r\n backgroundColor: palette.background.paper,\r\n evenRowsBackgroundColor: palette.darkenColor(\r\n palette.background.paper,\r\n 2,\r\n ),\r\n color: palette.text.primary,\r\n borderColor: palette.darkenColor(palette.background.paper, 5),\r\n\r\n selectedRows: {\r\n borderColor: palette.darkenColor(palette.background.paper, 5),\r\n backgroundColor: palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor,\r\n color: palette.getContrastText(\r\n palette.getOneState(\r\n { backgroundColor: palette.background.paper },\r\n 'selected',\r\n ).backgroundColor as string,\r\n ),\r\n },\r\n },\r\n },\r\n /**\r\n * Paneles de dashboards\r\n */\r\n panel: {\r\n header: {\r\n color: '', //components.panel.header.color\r\n backgroundColor: '',\r\n borderColor: '',\r\n },\r\n content: {\r\n color: '',\r\n backgroundColor: '',\r\n borderColor: '',\r\n },\r\n footer: {\r\n color: '',\r\n backgroundColor: '',\r\n borderColor: '',\r\n },\r\n },\r\n desktop: {\r\n windowHeader: tinycolor(theme.palette.primary.main)\r\n .setAlpha(0.8)\r\n .toRgbString(),\r\n },\r\n };\r\n};\r\n\r\nexport default components;\r\n","import tinycolor from 'tinycolor2';\r\nimport { TGetColorStateDefinition, TParsedPalette } from './types';\r\nimport applyStates from './util/applyStates';\r\nimport applyStatesGetColor from './util/applyStatesGetColor';\r\nimport parsePalette from './util/parsePalette';\r\nimport { schemas } from './schemas';\r\nimport components from './components';\r\nimport { ColorModesScale, Theme } from '@theme-ui/css';\r\nimport merge from 'lodash-es/merge';\r\n\r\n// Colors\r\nconst white = 'white';\r\nexport { parsePalette };\r\nexport function getSelectedColors(palette: TParsedPalette) {\r\n return palette.getColorStates(\r\n {\r\n backgroundColor: palette.background.paper,\r\n color: palette.text.primary,\r\n },\r\n {\r\n active: false,\r\n checked: false,\r\n default: false,\r\n disabled: false,\r\n focus: false,\r\n readonly: false,\r\n },\r\n );\r\n}\r\n\r\nexport function getThemeColorsObject(theme: Theme): ColorModesScale {\r\n const colors = merge(\r\n {},\r\n {\r\n palette: {\r\n ...theme.palette,\r\n lightenColor: undefined,\r\n darkenColor: undefined,\r\n getContrastText: undefined,\r\n\r\n buildStateObject: undefined,\r\n getColor: undefined,\r\n getOneState: undefined,\r\n getStatesForColors: undefined,\r\n getStatesFromDefinition: undefined,\r\n getStatesFromPath: undefined,\r\n },\r\n accordion: {\r\n borderColor: theme.palette.border.section,\r\n },\r\n buttons: {\r\n accordion: {\r\n backgroundColor: theme.palette.primary.main,\r\n borderColor: theme.palette.border.section,\r\n color: theme.palette.primary.contrastText,\r\n },\r\n accordionPrimary: {\r\n backgroundColor: theme.palette.primary.main,\r\n borderColor: theme.palette.border.section,\r\n color: theme.palette.primary.contrastText,\r\n },\r\n close: {\r\n ...applyStatesGetColor(\r\n {\r\n color: theme.palette.text.primary,\r\n backgroundColor: theme.palette.background.paper,\r\n },\r\n theme.palette,\r\n ),\r\n backgroundColor: 'transparent',\r\n },\r\n collapsibleAsidePanelTitle: {\r\n color: theme.palette.text.primary,\r\n },\r\n deletableInputButton: {\r\n ...applyStatesGetColor(\r\n {\r\n backgroundColor: 'transparent',\r\n color: theme.palette.secondary.main,\r\n },\r\n theme.palette,\r\n ),\r\n\r\n active: {\r\n color: theme.palette.darkenColor(theme.palette.secondary.main, 40),\r\n },\r\n disabled: {\r\n color: theme.palette.secondary.main,\r\n },\r\n focus: {\r\n color: theme.palette.darkenColor(theme.palette.secondary.main, 20),\r\n },\r\n hover: {\r\n color: theme.palette.darkenColor(theme.palette.secondary.main, 20),\r\n },\r\n },\r\n icon: {\r\n backgroundColor: theme.palette.secondary.main,\r\n color: theme.palette.text.icon,\r\n\r\n hover: {\r\n color: theme.palette.secondary.contrastText,\r\n },\r\n\r\n focus: {\r\n color: theme.palette.secondary.contrastText,\r\n },\r\n },\r\n iconAlert: {\r\n backgroundColor: 'transparent',\r\n color: theme.palette.text.icon,\r\n\r\n active: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor('#e5c200').darken(10).toRgbString(),\r\n },\r\n\r\n focus: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor('#e5c200').darken(5).toRgbString(),\r\n },\r\n\r\n hover: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor('#e5c200').darken(5).toRgbString(),\r\n },\r\n },\r\n iconPrimary: {\r\n backgroundColor: theme.palette.primary.main,\r\n color: theme.palette.primary.contrastText,\r\n\r\n active: {\r\n color: theme.palette.primary.contrastText,\r\n },\r\n\r\n focus: {\r\n color: theme.palette.primary.contrastText,\r\n },\r\n\r\n hover: {\r\n color: theme.palette.primary.contrastText,\r\n },\r\n\r\n disabled: {\r\n color: theme.palette.gray['500'],\r\n },\r\n },\r\n iconToggled: {\r\n backgroundColor: theme.palette.primary.main,\r\n color: theme.palette.primary.contrastText,\r\n\r\n active: {\r\n color: theme.palette.primary.contrastText,\r\n },\r\n\r\n focus: {\r\n color: theme.palette.common.white,\r\n },\r\n\r\n hover: {\r\n color: theme.palette.common.white,\r\n },\r\n },\r\n iconOutline: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.primary.main,\r\n borderColor: theme.palette.border.article,\r\n },\r\n iconOnly: {\r\n backgroundColor: 'transparent',\r\n color: theme.palette.primary.main,\r\n borderColor: theme.palette.background.paper,\r\n hover: {\r\n color: theme.palette.primary.main,\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.background.paper,\r\n 10,\r\n ),\r\n },\r\n active: {\r\n color: theme.palette.primary.main,\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.background.paper,\r\n 15,\r\n ),\r\n },\r\n focus: {\r\n color: theme.palette.primary.main,\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.background.paper,\r\n 10,\r\n ),\r\n },\r\n },\r\n imagePreview: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.border.article,\r\n },\r\n link: {\r\n backgroundColor: 'transparent',\r\n color: theme.palette.text.primary,\r\n borderColor: 'transparent',\r\n\r\n active: {\r\n color: theme.palette.text.primary,\r\n },\r\n\r\n focus: {\r\n color: theme.palette.text.primary,\r\n },\r\n\r\n hover: {\r\n color: theme.palette.text.primary,\r\n },\r\n },\r\n openTab: {\r\n backgroundColor: theme.palette.primary.main,\r\n color: theme.palette.primary.contrastText,\r\n borderColor: theme.palette.primary.dark,\r\n },\r\n outline: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.primary.main,\r\n },\r\n outlineDanger: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.primary.main,\r\n\r\n active: {\r\n borderColor: theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.activeOpacity * 80,\r\n ),\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.activeOpacity * 80,\r\n ),\r\n color: theme.palette.getContrastText(\r\n theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.activeOpacity * 80,\r\n ),\r\n ),\r\n },\r\n\r\n focus: {\r\n borderColor: theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.focusOpacity * 60,\r\n ),\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.focusOpacity * 60,\r\n ),\r\n color: theme.palette.getContrastText(\r\n theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.focusOpacity * 60,\r\n ),\r\n ),\r\n },\r\n\r\n hover: {\r\n borderColor: theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.hoverOpacity * 10,\r\n ),\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.hoverOpacity * 10,\r\n ),\r\n color: theme.palette.getContrastText(\r\n theme.palette.darkenColor(\r\n theme.palette.error.dark,\r\n theme.palette.action.hoverOpacity * 10,\r\n ),\r\n ),\r\n },\r\n },\r\n outlineWarning: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.primary.main,\r\n\r\n active: {\r\n borderColor: theme.palette.warning.main,\r\n backgroundColor: theme.palette.warning.main,\r\n color: theme.palette.warning.contrastText,\r\n },\r\n\r\n focus: {\r\n borderColor: theme.palette.warning.main,\r\n backgroundColor: theme.palette.warning.main,\r\n color: theme.palette.warning.contrastText,\r\n },\r\n\r\n hover: {\r\n borderColor: theme.palette.warning.main,\r\n backgroundColor: theme.palette.warning.main,\r\n color: theme.palette.warning.contrastText,\r\n },\r\n },\r\n paper: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.background.paper,\r\n },\r\n primary: {\r\n backgroundColor: theme.palette.primary.main,\r\n color: theme.palette.primary.contrastText,\r\n borderColor: theme.palette.primary.main,\r\n },\r\n secondary: {\r\n backgroundColor: theme.palette.secondary.main,\r\n color: theme.palette.secondary.contrastText,\r\n borderColor: theme.palette.secondary.main,\r\n },\r\n tab: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.border.article,\r\n },\r\n toggleIcon: {\r\n color: theme.palette.secondary.contrastText,\r\n backgroundColor: theme.palette.secondary.main,\r\n borderColor: theme.palette.border.field,\r\n\r\n danger: {\r\n backgroundColor: theme.palette.error.main,\r\n borderColor: theme.palette.border.field,\r\n color: theme.palette.error.contrastText,\r\n },\r\n toggled: {\r\n backgroundColor: theme.palette.primary.main,\r\n borderColor: theme.palette.border.field,\r\n color: theme.palette.primary.contrastText,\r\n },\r\n },\r\n transparentIcon: {\r\n backgroundColor: 'transparent',\r\n color: theme.palette.text.primary,\r\n\r\n hover: {\r\n color: theme.palette.primary.main,\r\n },\r\n\r\n focus: {\r\n color: theme.palette.primary.main,\r\n },\r\n },\r\n },\r\n components: components(theme),\r\n dropzone: {\r\n backgroundColor: theme.palette.background.paper,\r\n borderColor: theme.palette.border.section,\r\n color: theme.palette.background.default,\r\n },\r\n form: {\r\n backgroundColor: theme.palette.background.paper,\r\n\r\n fields: {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.border.field,\r\n },\r\n\r\n radio: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(15)\r\n .toRgbString(),\r\n borderColor: theme.palette.text.primary,\r\n active: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(0)\r\n .toRgbString(),\r\n },\r\n checked: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(15)\r\n .toRgbString(),\r\n },\r\n disabled: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(55)\r\n .toRgbString(),\r\n },\r\n focus: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(10)\r\n .toRgbString(),\r\n },\r\n hover: {\r\n backgroundColor: 'transparent',\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(7)\r\n .toRgbString(),\r\n },\r\n readonly: {\r\n color: tinycolor(theme.palette.text.primary)\r\n .lighten(38)\r\n .toRgbString(),\r\n backgroundColor: 'transparent',\r\n },\r\n },\r\n },\r\n modal: {\r\n borderColor: theme.palette.border.section,\r\n backgroundColor: theme.palette.background.paper,\r\n },\r\n notifications: {\r\n error: {\r\n backgroundColor: theme.palette.error.light,\r\n color: theme.palette.getContrastText(theme.palette.error.light),\r\n borderColor: theme.palette.error.main,\r\n },\r\n info: {\r\n backgroundColor: '#fdfdfd',\r\n color: theme.palette.text.primary,\r\n borderColor: theme.palette.primary.main,\r\n },\r\n success: {\r\n backgroundColor: theme.palette.success.light,\r\n color: theme.palette.getContrastText(theme.palette.success.light),\r\n borderColor: theme.palette.success.main,\r\n },\r\n warning: {\r\n backgroundColor: theme.palette.warning.light,\r\n color: theme.palette.getContrastText(theme.palette.warning.light),\r\n borderColor: theme.palette.warning.main,\r\n },\r\n },\r\n printView: {\r\n main: {\r\n backgroundColor: theme.palette.background.default,\r\n\r\n page: {\r\n backgroundColor: theme.palette.background.paper,\r\n borderColor: theme.palette.border.article,\r\n },\r\n },\r\n list: {\r\n table: {\r\n borderColor: theme.palette.border.section,\r\n },\r\n th: { backgroundColor: '#eee' },\r\n cell: {\r\n borderColor: theme.palette.border.article,\r\n },\r\n },\r\n },\r\n schemas,\r\n scrollbars: {\r\n bar: {\r\n color: theme.palette.secondary.main,\r\n backgroundColor: theme.palette.background.default,\r\n\r\n hover: {\r\n backgroundColor: theme.palette.lightenColor(\r\n theme.palette.background.default,\r\n 10,\r\n ),\r\n color: theme.palette.lightenColor(theme.palette.secondary.main, 10),\r\n },\r\n\r\n active: {\r\n backgroundColor: theme.palette.lightenColor(\r\n theme.palette.background.default,\r\n 10,\r\n ),\r\n color: theme.palette.lightenColor(theme.palette.secondary.main, 20),\r\n },\r\n } /*\r\n buttons: {\r\n backgroundColor: theme.palette.secondary.main,\r\n\r\n hover: {\r\n color: theme.palette.lightenColor(theme.palette.secondary.main, 10),\r\n },\r\n\r\n active: {\r\n color: theme.palette.lightenColor(theme.palette.secondary.main, 20),\r\n },\r\n }, */,\r\n },\r\n tab: {\r\n backgroundColor: theme.palette.background.paper,\r\n borderColor: theme.palette.border.section,\r\n },\r\n topBar: {\r\n backgroundColor: theme.palette.primary.main,\r\n },\r\n\r\n // Default ThemeUI colors\r\n accent: theme.palette.text.accent,\r\n background: theme.palette.background.default,\r\n iconWarning: 'rgb(246 222 87)',\r\n muted: theme.palette.text.disabled,\r\n primary: theme.palette.primary.main,\r\n secondary: theme.palette.secondary.main,\r\n text: theme.palette.text.primary,\r\n warning: theme.palette.warning.main,\r\n danger: theme.palette.error.main,\r\n link: theme.palette.text.accent,\r\n success: theme.palette.success.main,\r\n title: theme.palette.text.title,\r\n selected: theme.palette.getOneState(\r\n { backgroundColor: theme.palette.background.paper },\r\n 'selected',\r\n ).backgroundColor,\r\n\r\n acquiredColor: '#2b2bd0',\r\n acquiredColorDisabled: '#7f7fd4',\r\n\r\n // Borders\r\n outlineColor: '#00a8f6',\r\n touchedBorderColor: 'orange',\r\n\r\n // Other colors\r\n favorite: '#e5c200',\r\n\r\n // States\r\n overdueDanger: 'rgb(189, 0, 3)',\r\n overdueWarning: 'hsl(50.53deg 100% 26.06%)',\r\n overdueWarningBackground: '#fffdd7',\r\n\r\n priorityNone: 'gray',\r\n priorityLow: theme.palette.success.main,\r\n priorityNormal: 'rgb(255 211 34)',\r\n priorityHigh: 'rgb(255 150 0)',\r\n priorityUrgent: 'red',\r\n\r\n // Common\r\n white,\r\n },\r\n theme.colors ?? {},\r\n );\r\n\r\n applyStates(\r\n [\r\n colors?.buttons as Record<string, TGetColorStateDefinition>,\r\n colors?.form as Record<string, TGetColorStateDefinition>,\r\n colors?.components as Record<string, TGetColorStateDefinition>,\r\n ],\r\n theme,\r\n );\r\n\r\n Object.entries(colors.components ?? {}).forEach(([name]) => {\r\n applyStates([colors.components[name]], theme);\r\n });\r\n\r\n return colors;\r\n}\r\n","export function getVariant(variant: string) {\r\n return { variant, 'data-variant': variant };\r\n}\r\n","import { FC } from 'react';\r\nimport { Box, BoxProps, InputProps } from 'theme-ui';\r\nimport { getVariant } from '../util/getVariant';\r\n\r\nconst MaterialInput: FC<\r\n InputProps & { label: string; boxProperties?: BoxProps }\r\n> = ({ title, label, boxProperties, ...props }) => (\r\n <Box\r\n {...getVariant('layout.common.forms.materialInput')}\r\n {...boxProperties}\r\n className={`${props.value ? 'filled' : ''} ${boxProperties?.className || ''}`}\r\n >\r\n <span>{label}:</span>\r\n <input {...props} aria-label={label} title={label} />\r\n </Box>\r\n);\r\n\r\nexport default MaterialInput;\r\n","import { forwardRef } from 'react';\r\nimport { Box, SxProp, Theme } from 'theme-ui';\r\n\r\nexport type CustomTheme = Omit<Theme, 'palette'>;\r\n\r\nexport type {\r\n AlertProps,\r\n AspectImageProps,\r\n AspectRatioProps,\r\n AvatarProps,\r\n BadgeProps,\r\n BoxOwnProps,\r\n BoxProps,\r\n ButtonProps,\r\n CSSObject,\r\n CSSProperties,\r\n CSSPseudoSelectorProps,\r\n CardProps,\r\n CheckboxProps,\r\n CloseProps,\r\n ColorMode,\r\n ColorModesScale,\r\n ContainerProps,\r\n DividerProps,\r\n DonutProps,\r\n EmbedProps,\r\n Field,\r\n FieldOwnProps,\r\n FieldProps,\r\n FlexOwnProps,\r\n FlexProps,\r\n GridProps,\r\n HeadingProps,\r\n IconButtonProps,\r\n ImageProps,\r\n InputProps,\r\n LabelProps,\r\n LinkProps,\r\n MenuButtonProps,\r\n MessageProps,\r\n NavLinkProps,\r\n ParagraphProps,\r\n ProgressProps,\r\n RadioProps,\r\n ResponsiveStyleValue,\r\n SelectProps,\r\n SliderProps,\r\n SpinnerProps,\r\n StylePropertyValue,\r\n SwitchProps,\r\n SxProp,\r\n TLengthStyledSystem,\r\n TextProps,\r\n TextareaProps,\r\n Theme,\r\n ThemeStyles,\r\n ThemeUICSSObject,\r\n ThemeUICSSProperties,\r\n ThemeUIContextValue,\r\n ThemeUIStyleObject,\r\n} from 'theme-ui';\r\n\r\nexport {\r\n Alert,\r\n AspectImage,\r\n AspectRatio,\r\n Avatar,\r\n Badge,\r\n BaseStyles,\r\n Box,\r\n Button,\r\n Card,\r\n Checkbox,\r\n Close,\r\n CloseIcon,\r\n Container,\r\n Divider,\r\n Donut,\r\n Embed,\r\n Flex,\r\n Global,\r\n Grid,\r\n Heading,\r\n IconButton,\r\n Image,\r\n InitializeColorMode,\r\n Input,\r\n Label,\r\n Link,\r\n MenuButton,\r\n MenuIcon,\r\n Message,\r\n NavLink,\r\n Paragraph,\r\n Progress,\r\n Radio,\r\n Select,\r\n Slider,\r\n Spinner,\r\n Switch,\r\n Text,\r\n Textarea,\r\n createElement,\r\n css,\r\n get,\r\n merge,\r\n useColorMode,\r\n useThemeUI,\r\n} from 'theme-ui';\r\n//\r\n\r\nexport const Form = (\r\n props: React.DetailedHTMLProps<\r\n React.FormHTMLAttributes<HTMLFormElement>,\r\n HTMLFormElement\r\n >,\r\n) => <Box as=\"form\" {...(props as any)} />;\r\n\r\nexport const Table = forwardRef(\r\n (\r\n props: React.ClassAttributes<HTMLTableElement> &\r\n React.TableHTMLAttributes<HTMLTableElement> &\r\n SxProp,\r\n ref,\r\n ) => <Box as=\"table\" ref={ref} {...(props as any)} />,\r\n);\r\n","import { ThemeUIStyleObject } from 'theme-ui';\r\nimport { focusOutline, spacing } from '../util';\r\nimport getColorsByPath from './colors/util/getColorsByPath';\r\n\r\nexport const alerts: Record<string, ThemeUIStyleObject> = {\r\n primary: {\r\n border: '1px solid',\r\n borderLeft: '12px solid',\r\n borderRadius: 'alerts',\r\n\r\n display: 'flex',\r\n flexDirection: 'column',\r\n fontWeight: 'normal',\r\n\r\n maxHeight: '60vh',\r\n overflow: 'auto',\r\n overflowX: 'hidden',\r\n p: 0,\r\n\r\n '&:focus': {\r\n outline: 'none',\r\n },\r\n\r\n '.notification__header': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n position: 'sticky',\r\n top: 0,\r\n width: '100%',\r\n p: spacing(5),\r\n },\r\n\r\n '.notification__title': {\r\n fontSize: 18,\r\n fontWeight: 'bold',\r\n color: 'palette.text.primary',\r\n display: 'flex',\r\n gap: spacing(5),\r\n alignItems: 'center',\r\n },\r\n\r\n '.notification__closeButton': {\r\n flexShrink: 0,\r\n },\r\n\r\n '.notification__body': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n gap: spacing(5),\r\n width: '100%',\r\n p: spacing(5),\r\n },\r\n\r\n '.notification__header ~ .notification__body': {\r\n pt: 0,\r\n },\r\n\r\n '.notification__content': {\r\n display: 'flex',\r\n alignItems: 'stretch',\r\n flexDirection: 'column',\r\n gap: spacing(5),\r\n width: '100%',\r\n },\r\n\r\n '.notification__icon': {\r\n flexShrink: 0,\r\n height: 'iconMd',\r\n svg: {\r\n height: 'iconMd',\r\n width: 'iconMd',\r\n },\r\n },\r\n\r\n '.notification__message': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n fontWeight: 'normal',\r\n gap: spacing(3),\r\n width: '100%',\r\n wordBreak: 'break-word',\r\n\r\n ul: {\r\n listStyle: 'disc',\r\n ml: '20px',\r\n },\r\n },\r\n\r\n '.notification__trace': {\r\n maxWidth: '100%',\r\n overflow: 'hidden',\r\n maxHeight: '30vh',\r\n flexShrink: 0,\r\n backgroundColor: 'rgba(10,10,10,0.02)',\r\n pt: spacing(5),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n '.notification__traceLabel': {\r\n pl: spacing(5),\r\n display: 'flex',\r\n gap: 2,\r\n },\r\n '.notification__traceText': {\r\n fontWeight: 'normal',\r\n p: spacing(5),\r\n maxHeight: '30vh',\r\n overflow: 'auto',\r\n maxWidth: '100%',\r\n position: 'relative',\r\n },\r\n },\r\n\r\n '&:focus .notification__closeButton': focusOutline,\r\n },\r\n warning: {\r\n variant: 'alerts.primary',\r\n\r\n '&, & .notification__header': {\r\n ...getColorsByPath('notifications.warning'),\r\n },\r\n },\r\n danger: {\r\n variant: 'alerts.primary',\r\n '&, & .notification__header': {\r\n ...getColorsByPath('notifications.error'),\r\n },\r\n },\r\n success: {\r\n variant: 'alerts.primary',\r\n '&, & .notification__header': {\r\n ...getColorsByPath('notifications.success'),\r\n },\r\n },\r\n info: {\r\n variant: 'alerts.primary',\r\n '&, & .notification__header': {\r\n ...getColorsByPath('notifications.info'),\r\n },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive, smallButton, spacing } from '../util';\nimport getColorsAndStatesByPath from './colors/util/getColorsAndStatesByPath';\n\nconst buttons: Record<string, ThemeUICSSObject> = {\n inherit: {\n color: 'inherit',\n background: 'inherit',\n border: 'none',\n borderRadius: 0,\n font: 'inherit',\n cursor: 'pointer',\n padding: 0,\n margin: 0,\n },\n 'inherit-sm': {\n variant: 'buttons.inherit',\n ...smallButton,\n },\n collapsibleAsidePanelTitle: {\n variant: 'buttons.inherit',\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n width: '100%',\n ...getColorsAndStatesByPath('buttons.collapsibleAsidePanelTitle'),\n },\n primary: {\n borderWidth: '2px',\n borderStyle: 'solid',\n variant: 'text.default',\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 5, 4: 6 }),\n display: 'inline-block',\n width: responsive({ 0: '100%', 1: 'auto' }),\n cursor: 'pointer',\n borderRadius: 'buttons',\n fontWeight: 'normal',\n userSelect: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n wordBreak: 'keep-all',\n\n ...getColorsAndStatesByPath('buttons.primary'),\n\n '&:focus, &:focus-visible': {\n outlineColor: '#00daff',\n },\n },\n 'primary-sm': {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n ...smallButton,\n },\n secondary: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n borderWidth: '0px',\n borderStyle: 'solid',\n\n ...getColorsAndStatesByPath('buttons.secondary'),\n },\n 'secondary-sm': {\n variant: 'buttons.secondary',\n ...smallButton,\n },\n 'light-secondary': {\n variant: 'buttons.secondary',\n\n ...getColorsAndStatesByPath('buttons.lightSecondary'),\n },\n danger: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.danger'),\n },\n 'danger-sm': {\n variant: 'buttons.danger',\n ...smallButton,\n },\n warning: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.warning'),\n },\n 'warning-sm': {\n variant: 'buttons.warning',\n ...smallButton,\n },\n close: {\n cursor: 'pointer',\n ml: 'auto',\n mr: '2',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.close'),\n },\n accordion: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n cursor: 'pointer',\n m: spacing(0),\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 5, 4: 6 }),\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n borderRadius: 'buttons',\n textAlign: 'left',\n fontFamily: 'heading',\n fontSize: 'text.default',\n textDecoration: 'none',\n textTransform: 'none',\n fontWeight: 'bold',\n border: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n userSelect: 'text',\n\n '&, *': getColorsAndStatesByPath('buttons.accordion'),\n\n 'h2.toggleAccordionElementLabel': {\n variant: 'text.default',\n\n color: 'inherit',\n margin: 0,\n wordBreak: 'break-word',\n },\n },\n 'accordion-primary': {\n variant: 'buttons.accordion',\n border: 'none',\n\n ...getColorsAndStatesByPath('buttons.accordionPrimary'),\n },\n icon: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n p: spacing(0),\n m: spacing(0),\n bg: 'secondary',\n cursor: 'pointer',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n borderRadius: 'buttons',\n border: 'none',\n color: 'inherit',\n ...getColorsAndStatesByPath('buttons.icon'),\n\n '&.isToggled': {\n ...getColorsAndStatesByPath('buttons.iconToggled'),\n },\n },\n 'icon-primary': {\n variant: 'buttons.icon',\n ...getColorsAndStatesByPath('buttons.iconPrimary'),\n },\n 'icon-outline': {\n variant: 'buttons.icon',\n bg: 'white',\n border: '1px solid',\n borderRadius: '4px',\n // border: 'none',\n\n ...getColorsAndStatesByPath('buttons.iconOutline'),\n },\n 'icon-outline-danger': {\n variant: 'buttons.icon',\n border: '1px solid',\n\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\n },\n 'icon-only': {\n variant: 'buttons.icon',\n\n ...getColorsAndStatesByPath('buttons.iconOnly'),\n },\n link: {\n variant: 'inherit',\n width: 'auto',\n border: 'none',\n background: 'transparent',\n textDecoration: 'underline',\n px: 2,\n py: 1,\n borderRadius: 'buttons',\n cursor: 'pointer',\n textTransform: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n\n ...getColorsAndStatesByPath('buttons.link'),\n },\n 'link-sm': {\n variant: 'buttons.link',\n ...smallButton,\n },\n outline: {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n '&:focus, &:focus-visible': {},\n ...getColorsAndStatesByPath('buttons.outline', {\n states: {\n active: false,\n checked: false,\n disabled: false,\n focus: false,\n hover: false,\n readonly: false,\n selected: false,\n },\n }),\n },\n 'outline-sm': {\n variant: 'buttons.outline',\n ...smallButton,\n },\n 'transparent-sm': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n bg: 'transparent',\n color: 'inherit',\n border: 'none',\n font: 'inherit',\n textTransform: 'inherit',\n ...smallButton,\n },\n transparentIcon: {\n ...getColorsAndStatesByPath('buttons.transparentIcon'),\n cursor: 'pointer',\n },\n 'outline-danger': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\n },\n 'outline-danger-sm': {\n variant: 'buttons.outline-danger',\n ...smallButton,\n },\n 'outline-warning': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.outlineWarning'),\n },\n 'outline-warning-sm': {\n variant: 'buttons.outline-warning',\n ...smallButton,\n },\n 'outline-extended': {\n variant: 'buttons.outline',\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n 'outline-danger-extended': {\n variant: 'buttons.outline-danger',\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n 'primary-extended': {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n query: {\n extended: {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n gridColumnStart: 1,\n gridColumnEnd: 3,\n },\n },\n tableAccordion: {\n variant: 'buttons.accordion',\n fontSize: 'text.default',\n p: spacing(3),\n wordBreak: 'keep-all',\n a: {\n color: 'background',\n },\n\n ...getColorsAndStatesByPath('buttons.tableAccordion'),\n },\n tableHeader: {\n variant: 'buttons.tableAccordion',\n alignItems: 'center',\n justifyContent: 'center',\n height: '100%',\n border: 'none',\n svg: {\n ml: spacing(2),\n },\n ...getColorsAndStatesByPath('buttons.tableHeader'),\n },\n paper: {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.paper'),\n },\n 'paper-sm': {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.paper'),\n ...smallButton,\n },\n};\n\nexport default buttons;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../util';\n\nconst text: Record<string, ThemeUICSSObject> = {\n default: {\n color: 'palette.text.primary',\n fontFamily: 'body',\n fontWeight: 'body',\n fontSize: 16,\n m: spacing(0),\n width: '100%',\n },\n title: {\n letterSpacing: 'heading',\n wordBreak: 'normal',\n color: 'title',\n fontFamily: 'heading',\n lineHeight: 'heading',\n fontWeight: 'heading',\n },\n};\n\nexport default text;\n","import { ThemeUIStyleObject } from 'theme-ui';\n\nexport const transitions: ThemeUIStyleObject = {\n '@keyframes growHorizontal': {\n from: { transform: 'scaleX(0)' },\n to: { transform: 'scaleY(100%)' },\n },\n '.hamburguerMenu': { display: 'none' },\n '.hamburguerMenu-enter,\\n.hamburguerMenu-appear': {\n display: 'block',\n transform: 'scale(0.7)',\n opacity: 0,\n },\n '.hamburguerMenu-enter-active,\\n.hamburguerMenu-appear-active': {\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transformOrigin: 'right top',\n opacity: 1,\n },\n '.hamburguerMenu-enter-done,\\n.hamburguerMenu-appear-done': {\n display: 'block',\n },\n '.hamburguerMenu-exit': {\n display: 'block',\n transform: 'scale(1)',\n opacity: 1,\n },\n '.hamburguerMenu-exit-active': {\n transform: 'scale(0.7) translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n display: 'block',\n opacity: 0,\n transformOrigin: 'right top',\n },\n '.hamburguerMenu-exit-done': { display: 'none' },\n '.modal-enter,\\n.modal-appear': { opacity: 0, transform: 'scale(0.8)' },\n '.modal-enter-active,\\n.modal-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.modal-exit': { opacity: 0 },\n '.modal-exit-done': { opacity: 0, display: 'none' },\n '.modal-exit-active': {\n opacity: 0,\n transform: 'scale(100)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.overlayAnimation-enter .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear .overlayAnimation:not(.not-released)':\n {\n opacity: 0,\n },\n '.overlayAnimation-enter-active .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear-active .overlayAnimation:not(.not-released)':\n {\n opacity: 1,\n transition: 'opacity 150ms',\n },\n '.overlayAnimation-exit': { opacity: 1 },\n '.overlayAnimation-exit-active': { opacity: 0, transition: 'opacity 150ms' },\n '.fromRight-enter,\\n.fromRight-appear': { transform: 'translateX(550px)' },\n '.fromRight-enter-active,\\n.fromRight-appear-active': {\n transition: 'transform 150ms',\n transform: 'translateX(0)',\n },\n '.fromRight-exit': { transform: 'translateX(0)' },\n '.fromRight-exit-active': {\n transition: 'transform 150ms',\n transform: 'translateX(550px)',\n },\n '.notification-enter,\\n.notification-appear': {\n opacity: 0,\n transform: 'scale(0.8)',\n },\n '.notification-enter-active,\\n.notification-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.notification-exit': { opacity: 1 },\n '.notification-exit-active': {\n opacity: 0,\n transform: 'scale(0.8)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n};\n","import { ThemeUICSSObject } from '@apia/theme';\r\n\r\nconst menu: ThemeUICSSObject = {\r\n '.szh-menu': (theme) => ({\r\n margin: '0',\r\n padding: '0.5rem 0',\r\n listStyle: 'none',\r\n boxSizing: 'border-box',\r\n width: 'max-content',\r\n zIndex: 'contextMenu',\r\n border: '1px solid #656565',\r\n backgroundColor: theme.palette.background.paper,\r\n userSelect: 'none',\r\n color: theme.palette.text.primary,\r\n // 'var(--theme-ui-colors-palette-text-primary)',\r\n borderRadius: '0.25rem',\r\n boxShadow: '0 3px 7px rgba(0, 0, 0, 0.133), 0 0.6px 2px rgba(0, 0, 0, 0.1)',\r\n minWidth: '10rem',\r\n }),\r\n '.szh-menu__arrow': (theme) => ({\r\n boxSizing: 'border-box',\r\n width: '0.75rem',\r\n height: '0.75rem',\r\n backgroundColor: theme.palette.background.paper,\r\n border: '1px solid transparent',\r\n borderLeftColor: 'rgba(0, 0, 0, 0.1)',\r\n borderTopColor: 'rgba(0, 0, 0, 0.1)',\r\n zIndex: -1,\r\n }),\r\n '.szh-menu__arrow--dir-left': {\r\n right: '-0.375rem',\r\n transform: 'translateY(-50%) rotate(135deg)',\r\n },\r\n '.szh-menu__arrow--dir-right': {\r\n left: '-0.375rem',\r\n transform: 'translateY(-50%) rotate(-45deg)',\r\n },\r\n '.szh-menu__arrow--dir-top': {\r\n bottom: '-0.375rem',\r\n transform: 'translateX(-50%) rotate(-135deg)',\r\n },\r\n '.szh-menu__arrow--dir-bottom': {\r\n top: '-0.375rem',\r\n transform: 'translateX(-50%) rotate(45deg)',\r\n },\r\n '.szh-menu__item': {\r\n cursor: 'pointer',\r\n display: 'flex',\r\n alignItems: 'center',\r\n position: 'relative',\r\n padding: '0.375rem 1.5rem',\r\n paddingLeft: '2.2rem',\r\n '&:has(> div.menu_item)': { paddingLeft: '10px' },\r\n '.menu_item': {\r\n padding: '0px 4px',\r\n display: 'flex',\r\n gap: '12px',\r\n justifyContent: 'flex-start',\r\n alignItems: 'center',\r\n width: '100%',\r\n\r\n '.children_box': {},\r\n '.icon_box': {\r\n textAlign: 'center',\r\n marginTop: '3px',\r\n\r\n flexShrink: '0',\r\n width: '32px',\r\n\r\n '.icon': {\r\n marginLeft: 0,\r\n flexShrink: 0,\r\n alignSelf: 'flex-start',\r\n },\r\n },\r\n },\r\n },\r\n '.szh-menu__item--hover': (theme) => ({\r\n backgroundColor: theme.palette.background.default,\r\n }),\r\n '.szh-menu__item--focusable': {\r\n cursor: 'default',\r\n },\r\n '.szh-menu__item--disabled': {\r\n cursor: 'default',\r\n color: '#ccc',\r\n },\r\n '.szh-menu__group': { boxSizing: 'border-box' },\r\n '.szh-menu__radio-group': {\r\n margin: '0',\r\n padding: '0',\r\n listStyle: 'none',\r\n },\r\n '.szh-menu__divider': {\r\n height: '1px',\r\n margin: '0.5rem 0',\r\n backgroundColor: 'rgba(0, 0, 0, 0.12)',\r\n },\r\n '.szh-menu-button': { boxSizing: 'border-box' },\r\n '.szh-menu-container--itemTransition .szh-menu__item': {\r\n transitionProperty: 'background-color, color',\r\n transitionDuration: '0.15s',\r\n transitionTimingFunction: 'ease-in-out',\r\n },\r\n '.szh-menu__item--type-radio': { paddingLeft: '2.2rem' },\r\n '.szh-menu__item--type-radio::before': {\r\n content: '\"○\"',\r\n position: 'absolute',\r\n left: '0.8rem',\r\n top: '0.55rem',\r\n fontSize: '0.8rem',\r\n },\r\n '.szh-menu__item--type-radio.szh-menu__item--checked::before': {\r\n content: '\"●\"',\r\n },\r\n '.szh-menu__item--type-checkbox': { paddingLeft: '2.2rem' },\r\n '.szh-menu__item--type-checkbox::before': {\r\n position: 'absolute',\r\n left: '0.8rem',\r\n },\r\n '.szh-menu__item--type-checkbox.szh-menu__item--checked::before': {\r\n content: '\"✔\"',\r\n },\r\n '.szh-menu__submenu.with-icon>.szh-menu__item': {\r\n paddingLeft: '58px',\r\n },\r\n '.szh-menu__submenu>.szh-menu__item': { paddingRight: '2.5rem' },\r\n '.szh-menu__submenu>.szh-menu__item::after': {\r\n content: '\"❯\"',\r\n position: 'absolute',\r\n right: '1rem',\r\n },\r\n '.szh-menu__header': {\r\n color: '#888',\r\n fontSize: '0.8rem',\r\n padding: '0.2rem 1.5rem',\r\n textTransform: 'uppercase',\r\n },\r\n '.szh-menu__item--anchor,\\n.szh-menu__item--anchor:hover,\\n.szh-menu__item--anchor:focus,\\n.szh-menu__item--anchor:active':\r\n (theme) => ({\r\n paddingLeft: '2.2rem',\r\n textDecoration: 'none',\r\n color: theme.palette.text.primary,\r\n }),\r\n};\r\nexport default menu;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline, responsive, spacing } from '../../util';\r\nimport { transitions } from './transitions';\r\nimport menu from './menu';\r\n\r\nexport const root: ThemeUICSSObject = {\r\n ...menu,\r\n height: '100%',\r\n '*': {\r\n fontFamily: 'body',\r\n fontWeight: 'body',\r\n\r\n code: {\r\n fontFamily: 'monospace',\r\n },\r\n\r\n '&:focus': focusOutline,\r\n },\r\n\r\n body: {\r\n // minHeight: '100vh',\r\n },\r\n\r\n //cambia el estilo del scroll\r\n 'div::-webkit-scrollbar': {\r\n width: '8px',\r\n height: '8px!important',\r\n },\r\n 'div::-webkit-scrollbar-track': {\r\n background: '#f1f1f1',\r\n borderRadius: '7px',\r\n },\r\n 'div::-webkit-scrollbar-thumb': {\r\n background: '#888',\r\n borderRadius: '7px',\r\n },\r\n '::-webkit-scrollbar:hover, * ::-webkit-scrollbar:hover': {\r\n width: '12px',\r\n height: '12px!important',\r\n },\r\n\r\n h1: {\r\n fontSize: responsive({ 0: 26, 3: 32 }),\r\n },\r\n h2: {\r\n fontSize: responsive({ 0: 22, 3: 28 }),\r\n },\r\n h3: {\r\n fontSize: responsive({ 0: 19, 3: 25 }),\r\n },\r\n h4: {\r\n fontSize: responsive({ 0: 18, 3: 22 }),\r\n },\r\n h5: {\r\n fontSize: responsive({ 0: 18, 3: 22 }),\r\n },\r\n h6: {\r\n fontSize: responsive({ 0: 17, 3: 17 }),\r\n },\r\n\r\n 'h1,h2,h3,h4,h5,h6': {\r\n letterSpacing: 'heading',\r\n lineHeight: 'heading',\r\n variant: 'text.title',\r\n },\r\n '*:not(h1, h2, h3, h4, h5, h6, code)': {\r\n fontFamily: 'body',\r\n fontSize: 16,\r\n fontWeight: 'body',\r\n letterSpacing: 'body',\r\n lineHeight: 'body',\r\n },\r\n a: {\r\n textDecoration: 'underline',\r\n },\r\n 'textarea,a': {\r\n transition: 'color 200ms ease-out',\r\n ':focus': {\r\n ...focusOutline,\r\n },\r\n ':focus-visible': {\r\n ...focusOutline,\r\n },\r\n },\r\n '*:focus': focusOutline,\r\n ul: {\r\n listStyle: 'none',\r\n listStyleType: 'none',\r\n margin: 0,\r\n padding: 0,\r\n },\r\n\r\n abbr: {\r\n '&.required': {\r\n textDecoration: 'none',\r\n border: 'none',\r\n mx: 1,\r\n alignSelf: 'baseline',\r\n fontWeight: 'bold',\r\n color: 'danger',\r\n },\r\n },\r\n table: {\r\n borderCollapse: 'separate',\r\n borderSpacing: 0,\r\n },\r\n\r\n '& label': {\r\n display: 'flex',\r\n\r\n '& > span': {\r\n mb: spacing(1),\r\n fontWeight: 'bold',\r\n },\r\n\r\n '&.required': {\r\n position: 'relative',\r\n '&::before': {\r\n color: 'danger',\r\n position: 'absolute',\r\n content: '\"*\"',\r\n top: 0,\r\n left: '-10px',\r\n },\r\n\r\n '*:invalid': {\r\n borderColor: 'danger',\r\n },\r\n },\r\n },\r\n\r\n '.bold': {\r\n fontWeight: 'bold',\r\n },\r\n '.light': {\r\n fontWeight: 'light',\r\n },\r\n\r\n '.Left': {\r\n textAlign: 'left !important' as unknown as 'left',\r\n },\r\n '.Center': {\r\n textAlign: 'center !important' as unknown as 'left',\r\n },\r\n '.Right': {\r\n textAlign: 'right !important' as unknown as 'left',\r\n },\r\n '.Justify': {\r\n textAlign: 'justify !important' as unknown as 'left',\r\n },\r\n\r\n '.Bottom': {\r\n verticalAlign: 'bottom !important',\r\n },\r\n\r\n '.Middle': {\r\n verticalAlign: 'middle !important',\r\n },\r\n\r\n '.Top': {\r\n verticalAlign: 'top !important',\r\n },\r\n\r\n '.hidden': {\r\n display: 'none',\r\n },\r\n\r\n '.field__withError': {\r\n borderLeftStyle: 'solid',\r\n borderLeftWidth: '4px',\r\n borderLeftColor: 'danger',\r\n },\r\n\r\n '.field__touched': {\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n borderColor: 'touchedBorderColor',\r\n },\r\n\r\n '.noPadding': {\r\n padding: 0,\r\n },\r\n\r\n 'input[type=\"radio\"] ~ svg': {\r\n background: 'transparent !important',\r\n },\r\n\r\n '.windowModal__active': {\r\n zIndex: 'tooltip',\r\n },\r\n\r\n ...transitions,\r\n};\r\n","import { ColorModesScale, Theme } from 'theme-ui';\r\nimport { alerts } from './alerts';\r\nimport buttons from './buttons';\r\nimport text from './text';\r\nimport { root } from './rootStyles/rootStyles';\r\n\r\nexport const baseTheme: () => Omit<Theme, 'palette'> = () => {\r\n return {\r\n alerts,\r\n breakpoints: [\r\n '0px',\r\n '250px',\r\n '500px',\r\n '700px',\r\n '1000px',\r\n '1260px',\r\n '1580px',\r\n ],\r\n buttons,\r\n colors: {} as ColorModesScale,\r\n fonts: {\r\n body: '\"InterVariable\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Helvetica Neue\", sans-serif, Roboto',\r\n heading: 'inherit',\r\n monospace: 'Menlo, monospace',\r\n },\r\n fontSizes: Array(60)\r\n .fill(1)\r\n .map((_, i) => {\r\n return i;\r\n }),\r\n fontWeights: {\r\n default: 'normal',\r\n heading: 'bold',\r\n },\r\n forms: {},\r\n layout: {\r\n root,\r\n },\r\n lineHeights: {\r\n body: 1.5,\r\n heading: 1.125,\r\n },\r\n letterSpacings: {\r\n body: '0.01em',\r\n heading: '-0.015em',\r\n },\r\n radii: {\r\n alerts: 0,\r\n buttons: 0,\r\n default: '0px',\r\n panel: '7px',\r\n modals: '7px',\r\n tooltips: '7px',\r\n chatMessage: '7px',\r\n elementBox: '4px',\r\n },\r\n shadows: {\r\n default:\r\n 'rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;',\r\n dataGridHeader: 'rgba(0, 0, 0, 0.173) 0px 1px 7px 0px',\r\n modals: 'rgba(0, 0, 0, 0.16) 0px 1px 4px;',\r\n tabs: '',\r\n panel:\r\n 'rgba(50, 50, 105, 0.15) 0px 2px 5px 0px, rgba(0, 0, 0, 0.05) 0px 1px 1px 0px',\r\n table:\r\n 'rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;',\r\n tableFilters: '1px 2px 3px rgba(0,0,0,0.2)',\r\n toolbar: '3px 3px 3px rgba(0,0,0,0.1)',\r\n desktop: {\r\n windowElement:\r\n 'rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px',\r\n },\r\n sharp: '0px 1px 1px #c7c7c7',\r\n neum: 'rgb(204, 219, 232) 0px 0px 5px inset, rgba(255, 255, 255, 0.5) 0px 0px 3px inset;',\r\n },\r\n space: [0, 2, 4, 8, 12, 16, 24, 32, 40, 48, 64, 80, 96, 112, 128],\r\n sizes: {\r\n // Layout\r\n applicationMenu: '350px',\r\n floatingNotifications: 'min(550px, calc(100vw - 30px))',\r\n root: '992px',\r\n mainImage: '64px',\r\n twoColumns: 'calc(992px + 350px)',\r\n twoColumnsCentered: 'calc(992px + 350px + 16px)',\r\n\r\n // Icons\r\n iconXs: '12px',\r\n iconSm: '16px',\r\n iconMd: '22px',\r\n iconLg: '32px',\r\n iconXl: '48px',\r\n },\r\n text,\r\n zIndices: {\r\n stickyElements: 600,\r\n menu: 1000,\r\n maximizedTables: 1100,\r\n modal: 1200,\r\n tooltip: 1400,\r\n notifications: 1600,\r\n contextMenu: 1800,\r\n },\r\n useRootStyles: true,\r\n };\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst customCheckbox: ThemeUICSSObject = {\n display: 'inline-flex',\n borderRadius: 'default',\n flexBasis: '32px',\n flexShrink: 0,\n width: '32px',\n height: '32px',\n alignItems: 'center',\n justifyContent: 'center',\n p: '3px',\n border: '1px solid',\n svg: {\n width: '20px',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n path: false,\n },\n }),\n\n /* PREPEND HERE */\n};\n\nexport default customCheckbox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst checkbox: ThemeUICSSObject = {\n borderRadius: 'default',\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n focus: false,\n hover: false,\n },\n }),\n backgroundColor: 'unset',\n alignItems: 'center',\n\n '&.nativeCheckbox': {\n appearance: 'none',\n width: '25px',\n height: '25px',\n border: 'solid 1px #cccccc',\n marginRight: '8px',\n position: 'relative',\n cursor: 'pointer',\n\n '&:checked::before': {\n content: '\"✓\"',\n color: 'palette.text.primary',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n fontSize: 'larger',\n fontWeight: 'bolder',\n borderRadius: '5px',\n cursor: 'pointer',\n },\n\n '&:indeterminate::before': {\n content: '\"-\"',\n color: 'palette.text.primary',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n top: '-1px',\n left: 0,\n right: 0,\n bottom: 0,\n fontSize: 'xx-large',\n fontWeight: '600',\n borderRadius: '5px',\n cursor: 'pointer',\n },\n },\n};\n\nexport default checkbox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst dateInput: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n justifyContent: 'stretch',\n gap: spacing(2),\n width: '100%',\n\n '&.readOnly': {\n input: {\n color: 'Text.fields',\n bg: 'Background.fields',\n },\n },\n\n '.iconInput': {\n width: '100%',\n position: 'relative',\n },\n\n 'input:hover~.delete_date_button:not(:disabled,[aria-selected=\"true\"]), input:hover~.delete_date_button:not(:disabled,[aria-selected=\"true\"]) path, .delete_date_button':\n {\n position: 'absolute',\n right: '59px',\n padding: 0,\n top: 'calc(50% - 10px)',\n margin: 0,\n marginRight: 0,\n borderRadius: '100%',\n width: '20px',\n height: '20px',\n\n ...getColorsAndStatesByPath('buttons.icon-outline'),\n },\n\n input: {\n flexShrink: 1,\n },\n\n '& > div': {\n display: 'flex',\n gap: spacing(2),\n flexShrink: 0,\n width: 'auto',\n maxWidth: '100%',\n minWidth: 0,\n\n button: {\n width: '45px',\n flexShrink: 0,\n },\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n hover: false,\n active: false,\n focus: false,\n },\n }),\n\n backgroundColor: undefined,\n};\n\nexport default dateInput;\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../util';\r\nimport getColorsByPath from '../colors/util/getColorsByPath';\r\n/* IMPORT HERE */\r\n\r\nconst iconInput: ThemeUICSSObject = {\r\n display: 'flex',\r\n gap: spacing(1),\r\n justifyContent: 'stretch',\r\n alignItems: 'center',\r\n '&.readOnly': {\r\n input: {\r\n ...getColorsByPath('form.fields'),\r\n },\r\n },\r\n '&.disabled, &.disabled:hover': {\r\n '.iconButton': {\r\n backgroundColor: 'form.fields.disabled.backgroundColor',\r\n color: 'palette.text.primary',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n cursor: 'not-allowed',\r\n },\r\n },\r\n\r\n input: {\r\n height: '50px',\r\n width: '100%',\r\n },\r\n\r\n button: {\r\n display: 'flex',\r\n width: '45px',\r\n flexShrink: 0,\r\n height: '50px',\r\n border: 'none',\r\n },\r\n};\r\n\r\nexport default iconInput;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { responsive } from '../../util';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n/* IMPORT HERE */\r\n\r\nconst input: ThemeUICSSObject = {\r\n variant: 'text.default',\r\n border: '1px solid',\r\n borderRadius: 'default',\r\n padding: responsive({ 0: 3, 3: 4 }),\r\n '::placeholder': {\r\n color: '#b0b0b0',\r\n },\r\n ...getColorsAndStatesByPath('form.fields', {\r\n states: {\r\n active: false,\r\n hover: false,\r\n focus: false,\r\n },\r\n }),\r\n\r\n material: {\r\n input: {\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n borderTop: 'none',\r\n borderBottomColor: 'palette.border.section',\r\n\r\n '& + .input__underline': {\r\n transform: 'scale(1)',\r\n },\r\n\r\n '&:focus': {\r\n outline: 'none',\r\n\r\n '~::after': {\r\n animationName: 'growHorizontal',\r\n animationDuration: '150ms',\r\n animationTimingFunction: 'ease-out',\r\n content: '\"\"',\r\n display: 'block',\r\n height: '0',\r\n outlineColor: 'palette.primary.main',\r\n outlineStyle: 'solid',\r\n outlineWidth: '1.5px',\r\n outlineOffset: 0,\r\n position: 'fixed',\r\n transformOrigin: 'center center',\r\n width: '100%',\r\n },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default input;\r\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\n/* IMPORT HERE */\n\nconst label: ThemeUICSSObject = {\n variant: 'text.default',\n alignItems: 'center',\n width: 'auto',\n textTransform: 'none',\n cursor: 'pointer',\n\n '&:not(.radio-label)': {\n fontWeight: 'bold',\n },\n\n '&.required': {\n position: 'relative',\n '&::before': {\n color: 'danger',\n position: 'absolute',\n content: '\"*\"',\n top: 0,\n left: '-10px',\n },\n },\n\n '&:last-of-type': {\n 'input, textarea, select': {\n mb: spacing(0),\n },\n },\n};\n\nexport default label;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst radio: ThemeUICSSObject = {\n width: '32px',\n height: '32px',\n input: {\n height: '32px !important',\n },\n ...getColorsAndStatesByPath('form.radio'),\n path: {\n fill: 'inherit',\n },\n};\n\nexport default radio;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst select: ThemeUICSSObject = {\n variant: 'text.default',\n display: 'inline-block',\n fontFamily: 'body',\n p: spacing(4),\n pr: 7,\n borderRadius: 'default',\n width: '100%',\n maxWidth: '100%',\n '& ~ svg': {\n background: 'palette.background.paper',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n\n '&[multiple] ~ svg': {\n display: 'none',\n },\n};\n\nexport default select;\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { getSelectedColors } from '../colors/index';\n/* IMPORT HERE */\n\nfunction selectMultiple(theme: Theme): ThemeUICSSObject {\n return {\n variant: 'text.default',\n height: '100%',\n padding: '4px',\n borderRadius: 'default',\n border: '1px solid',\n width: '100%',\n transition: 'background-color 100ms ease-out, color 100ms ease-out',\n overflow: 'auto',\n option: {\n padding: 2,\n ...getSelectedColors(theme.palette),\n\n '&:checked': {\n backgroundColor: theme.palette.getColor(\n theme.palette.background.paper,\n 'selected',\n ),\n color: theme.palette.getContrastText(\n theme.palette.getColor(theme.palette.background.paper, 'selected'),\n ),\n },\n },\n '+ svg': {\n display: 'none',\n },\n ...theme.palette.getStatesFromPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n };\n}\n\nexport default selectMultiple;\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nconst Switch: ThemeUICSSObject = {\n '+ span': {\n fontSize: 14,\n fontWeight: 'normal',\n wordBreak: 'break-all',\n },\n backgroundColor: 'form.fields.checked.borderColor',\n};\n\nexport default Switch;\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nconst textarea: ThemeUICSSObject = {\n height: '100%',\n minHeight: '130px',\n resize: 'vertical',\n\n variant: 'forms.input',\n};\n\nexport default textarea;\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline } from '../../util';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n\r\nconst deletableInput: ThemeUICSSObject = {\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n display: 'inline-block',\r\n position: 'relative',\r\n pr: '45px',\r\n\r\n '.deletableInput__input': {\r\n border: 'none',\r\n },\r\n\r\n '.deletableInput__deleteButton': {\r\n height: '80%',\r\n outlineOffset: '-2px',\r\n position: 'absolute',\r\n right: 0,\r\n top: 0,\r\n width: '40px',\r\n\r\n ...getColorsAndStatesByPath('buttons.deletableInputButton', {\r\n states: { path: true },\r\n }),\r\n },\r\n\r\n '&:focus-within:not(.asMaterial)': {\r\n ...focusOutline,\r\n\r\n '.deletableInput__input:focus': {\r\n outline: 'none',\r\n },\r\n\r\n '.deletableInput__deleteButton:focus': {\r\n outline: 'none',\r\n },\r\n },\r\n\r\n '&.asMaterial': {\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n borderTop: 'none',\r\n borderBottomColor: 'palette.border.section',\r\n\r\n '& + .input__underline': {\r\n transform: 'scale(1)',\r\n },\r\n\r\n '.deletableInput__input:focus': {\r\n outline: 'none',\r\n\r\n '~.input__underline::after': {\r\n animationName: 'growHorizontal',\r\n animationDuration: '150ms',\r\n animationTimingFunction: 'ease-out',\r\n content: '\"\"',\r\n display: 'block',\r\n height: '0',\r\n outlineColor: 'palette.primary.main',\r\n outlineStyle: 'solid',\r\n outlineWidth: '1.5px',\r\n outlineOffset: 0,\r\n position: 'absolute',\r\n transformOrigin: 'center center',\r\n left: 0,\r\n right: 0,\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default deletableInput;\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport customCheckbox from './customCheckbox';\nimport checkbox from './checkbox';\nimport dateInput from './dateInput';\nimport iconInput from './iconInput';\nimport input from './input';\nimport label from './label';\nimport radio from './radio';\nimport select from './select';\nimport selectMultiple from './selectMultiple';\nimport Switch from './switch';\nimport textarea from './textarea';\nimport deletableInput from './deletableInput';\n/* IMPORT HERE */\n\nconst forms: (theme: Theme) => Record<string, ThemeUICSSObject> = (theme) => {\n return {\n checkbox,\n customCheckbox,\n dateInput,\n deletableInput,\n iconInput,\n input,\n label,\n radio,\n select,\n selectMultiple: selectMultiple(theme),\n switch: Switch,\n textarea,\n /* PREPEND HERE */\n 'input[type=\"date\"]': {\n variant: 'forms.input',\n },\n };\n};\n\nexport default forms;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive } from '../../../../util';\n\nexport const overlay: Record<string, ThemeUICSSObject> = {\n overlay: {\n position: 'fixed',\n overflow: 'hidden',\n top: '0',\n right: '0',\n bottom: '0',\n left: '0',\n width: '100vw',\n height: '100vh',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: `palette.background.overlay`,\n zIndex: 'modal',\n\n '&:not(.screenLock) .modal-enter-done': {\n boxShadow: 'modals',\n },\n },\n\n windowModal: {\n zIndex: 'modal',\n },\n\n 'overlay--stretch': {\n variant: 'layout.common.modals.overlay',\n alignItems: responsive({ 0: 'stretch', 2: 'center' }),\n },\n};\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\n/* IMPORT HERE */\n\nexport const apiaApi: ThemeUICSSObject = {\n margin: 'auto',\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n overflow: 'hidden',\n width: '100%',\n\n '.modal__content': {\n overflow: 'hidden',\n\n '& > div': {\n display: 'flex',\n flexShrink: 1,\n flexDirection: 'column',\n },\n },\n\n '.handler__form': {\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n gap: spacing(6),\n\n '.toggleAccordionElement': {\n position: 'sticky',\n top: 0,\n },\n\n '.handler__form__elements': {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n overflowY: 'auto',\n maxHeight: '60vh',\n gap: spacing(3),\n pr: spacing(3),\n },\n\n '.handler__form__elements__section__content': {\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n background: 'palette.background.paper',\n p: 0,\n gap: spacing(3),\n },\n\n '.content .handler__form__elements__section__content': {\n border: '1px solid',\n borderColor: 'palette.border.section',\n borderTop: 'none',\n p: spacing(6),\n },\n\n '.handler__form__buttons': {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'right',\n p: 0,\n gap: '0px',\n textAlign: 'center',\n },\n\n '.radio': {\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'wrap',\n listStyle: 'none',\n variant: 'layout.execution.form.fields.radio',\n },\n\n '.handler__checkbox, .handler__radio': {\n 'label span': {\n fontWeight: 'normal',\n },\n },\n\n '.checkbox': {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n justifyContent: 'start',\n gap: spacing(4),\n '.semicolon': {\n display: 'none',\n },\n input: {\n width: '100%',\n },\n },\n\n '.handler__hidden': {\n display: 'none',\n },\n\n 'label.select > div': {\n width: '100%',\n },\n\n '.spacer': {\n height: spacing(7),\n },\n },\n '.progressBox': {\n p: spacing(5),\n pt: spacing(0),\n },\n /* PREPEND HERE */\n};\n\nexport default apiaApi;\n","import { spacing, ThemeUICSSObject } from '@apia/theme';\n\nconst confirm: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(6),\n height: '100%',\n width: '100%',\n overflow: 'auto',\n\n '.confirm__content': {\n overflow: 'auto',\n flexBasis: '100%',\n wordBreak: 'break-word',\n display: 'flex',\n flexDirection: 'column',\n },\n\n '.confirm__buttonBar': {\n display: 'flex',\n justifyContent: 'space-between',\n flexBasis: '40px',\n flexGrow: 0,\n flexShrink: 0,\n\n '.confirm__defaultButtons': {\n display: 'flex',\n gap: spacing(3),\n },\n '.confirm__customButtons': {\n width: 'auto',\n },\n },\n};\n\nexport default confirm;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nconst table: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n height: 'calc(100vh - 300px)',\n width: '100%',\n overflow: 'auto',\n position: 'relative',\n '.selection__keyHandler': {\n overflow: 'visible',\n position: 'inherit',\n },\n // overflow: 'auto',\n // flexBasis: '100%',\n // wordBreak: 'break-word',\n // display: 'flex',\n // flexDirection: 'column',\n\n '.confirm__buttonBar': {\n display: 'flex',\n justifyContent: 'space-between',\n flexBasis: '40px',\n flexGrow: 0,\n flexShrink: 0,\n\n '.confirm__defaultButtons': {\n display: 'flex',\n gap: spacing(3),\n },\n '.confirm__customButtons': {\n width: 'auto',\n },\n },\n};\n\nexport default table;\n","import { responsive, spacing } from '../../../../util';\nimport { ThemeUICSSObject } from 'theme-ui';\n\nconst tableModal: ThemeUICSSObject = {\n additionalFiltersModal: {\n '.modal__content': {\n overflow: 'hidden',\n\n '&.modal__content': {\n flexDirection: 'column',\n gap: spacing(4),\n\n '.additionalFilters__navbar': {\n display: 'flex',\n justifyContent: 'end',\n gap: spacing(4),\n },\n },\n },\n '.additionalFiltersContent': {\n width: '100%',\n minWidth: 'min(600px, 75vw)',\n maxWidth: '600px',\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n maxHeight: '100%',\n gap: spacing(3),\n\n '.accordion__item': {\n maxHeight: '100%',\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 100,\n mb: spacing(0),\n\n '.accordion__item__content': {\n overflow: 'auto',\n\n '&>div': {\n border: '1px solid',\n borderColor: 'palette.border.article',\n p: spacing(5),\n '& label': {\n flexDirection: 'column',\n justifyContent: 'stretch',\n textAlign: 'left',\n alignItems: 'stretch',\n\n span: {\n mb: spacing(1),\n },\n },\n },\n },\n },\n '#FilterTypes_content': {\n '& label': {\n mb: spacing(4),\n },\n '.confirmRow': {\n textAlign: 'right',\n },\n },\n },\n },\n\n '.modal__main': {\n maxHeight: responsive({ 0: '100vh', 5: '85vh', 6: '75vh' }),\n maxWidth: 'max-content',\n resize: 'horizontal',\n\n '&[style*=\"width\"]': {\n maxWidth: 'unset',\n },\n\n '.confirm__content': {\n justifyContent: 'space-between',\n maxHeight: '100%',\n overflow: 'hidden',\n width: '100%',\n display: 'flex',\n flexDirection: 'column',\n\n '.finder__content': {\n maxWidth: '100%',\n flexGrow: 100,\n border: '1px solid',\n borderColor: 'palette.border.section',\n overflow: 'auto',\n\n '.selection__keyHandler': {\n width: '100%',\n },\n },\n\n '.finder__statistics': {\n flexShrink: 0,\n },\n },\n },\n\n '.results': {\n mt: '7px',\n },\n};\n\nexport default tableModal;\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\n/* IMPORT HERE */\n\nconst buttonsBar: ThemeUICSSObject = {\n flexDirection: 'row',\n display: 'flex',\n justifyContent: 'flex-end',\n gap: spacing(3),\n mb: spacing(0),\n};\n\nexport default buttonsBar;\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\n\nconst apiaFinder: ThemeUICSSObject = {\n additionalFiltersModal: {\n resize: 'none',\n\n '.modal__main': {\n resize: 'none',\n },\n\n '.modal__content': {\n overflow: 'hidden',\n\n '&.modal__content': {\n flexDirection: 'column',\n gap: spacing(4),\n\n '.additionalFilters__navbar': {\n display: 'flex',\n justifyContent: 'end',\n gap: spacing(4),\n },\n },\n },\n '.additionalFiltersContent': {\n width: '100%',\n minWidth: 'min(600px, 75vw)',\n maxWidth: '600px',\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n maxHeight: '100%',\n gap: spacing(3),\n\n '.accordionElement, .accordion__item': {\n maxHeight: '100%',\n overflow: 'hidden',\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 100,\n mb: spacing(0),\n\n '.content, .accordion__item__content': {\n overflow: 'auto',\n\n '&>div': {\n border: '1px solid',\n borderColor: 'palette.border.article',\n p: spacing(5),\n '& label': {\n flexDirection: 'column',\n justifyContent: 'stretch',\n textAlign: 'left',\n alignItems: 'stretch',\n\n span: {\n mb: spacing(1),\n },\n },\n },\n },\n },\n '#FilterTypes_content': {\n '& label': {\n mb: spacing(4),\n },\n '.confirmRow': {\n textAlign: 'right',\n },\n },\n },\n },\n\n '.modal__main': {\n maxHeight: responsive({ 0: '100vh', 5: '85vh', 6: '75vh' }),\n maxWidth: 'max-content',\n\n '&[style*=\"width\"]': {\n maxWidth: 'unset',\n },\n\n '.confirm__content': {\n justifyContent: 'space-between',\n maxHeight: '100%',\n overflow: 'hidden',\n width: '100%',\n display: 'flex',\n flexDirection: 'column',\n\n '.finder__content': {\n maxWidth: '100%',\n flexGrow: 100,\n border: '1px solid',\n borderColor: 'palette.border.section',\n overflow: 'auto',\n\n '.selection__keyHandler': {\n width: '100%',\n },\n },\n\n '.finder__statistics': {\n flexShrink: 0,\n },\n },\n },\n\n '.results': {\n mt: '7px',\n },\n};\n\nexport default apiaFinder;\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { overlay } from './overlay';\r\nimport { spacing, responsive } from '../../../../util';\r\nimport getColorsByPath from '../../../colors/util/getColorsByPath';\r\nimport { apiaApi } from './apiaApi';\r\nimport confirm from './confirm';\r\nimport table from './table';\r\nimport tableModal from './tableModal';\r\nimport buttonsBar from './buttonsBar';\r\nimport apiaFinder from './apiaFinder';\r\n/* IMPORT HERE */\r\n\r\nexport const modals: ThemeUICSSObject = {\r\n apiaApi,\r\n buttonsBar,\r\n confirm,\r\n ...overlay,\r\n table,\r\n tableModal,\r\n apiaFinder,\r\n\r\n main: {\r\n boxShadow: 'modals',\r\n borderRadius: 'modals',\r\n zIndex: 'modal',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n justifyItems: 'center',\r\n maxHeight: '100vh',\r\n maxWidth: 'calc(100vw - 10px)',\r\n resize: 'both',\r\n overflow: 'auto',\r\n border: '1px solid',\r\n gap: '0px !important',\r\n\r\n '&>div>div': {\r\n flexGrow: 0,\r\n p: '3px',\r\n width: '100%',\r\n },\r\n 'div.modal__header': {\r\n alignItems: responsive({ 0: 'end', 4: 'center' }),\r\n flexShrink: 0,\r\n overflow: 'visible',\r\n p: '16px 20px',\r\n\r\n borderBottom: '1px solid lightgray',\r\n\r\n '.modal__headerBar': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n },\r\n },\r\n 'div.modal__content': {\r\n overflow: 'auto',\r\n width: '100%',\r\n flexBasis: '100%',\r\n flexDirection: 'column',\r\n flexShrink: 1,\r\n display: 'flex',\r\n justifyContent: 'stretch',\r\n alignItems: 'stretch',\r\n p: '20px',\r\n },\r\n 'div.modal__content>form': {\r\n overflow: 'auto',\r\n width: '100%',\r\n flexBasis: '100%',\r\n flexShrink: 1,\r\n display: 'flex',\r\n justifyContent: 'stretch',\r\n alignItems: 'stretch',\r\n },\r\n ...getColorsByPath('modal'),\r\n },\r\n\r\n finder: {\r\n variant: 'layout.common.modals.main',\r\n height: responsive({ 0: '100vh', 3: '80vh' }),\r\n width: responsive({ 0: '95vw', 3: '80vw', 4: '70vw' }),\r\n\r\n '.modal__content': {\r\n overflow: 'hidden',\r\n\r\n '.confirm__content': {\r\n overflow: 'hidden',\r\n\r\n '.finder__content': {\r\n display: 'flex',\r\n alignItems: 'stretch',\r\n },\r\n\r\n '.selection__keyHandler': {\r\n overflow: 'hidden',\r\n height: '100%',\r\n\r\n '.responsiveTable__wrapper': {\r\n height: '100%',\r\n\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n backgroundColor: 'palette.background.default',\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.responsiveTableContext__wrapper': {\r\n overflow: 'hidden',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n\r\n '.responsiveTable__wrapper': {\r\n height: '100%',\r\n },\r\n\r\n '& > *:first-child': {\r\n height: '100%',\r\n },\r\n },\r\n },\r\n sm: {\r\n variant: 'layout.common.modals.main',\r\n maxWidth: 'min(350px, calc(100vw - 10px))',\r\n },\r\n md: {\r\n variant: 'layout.common.modals.main',\r\n maxWidth: 'min(500px, calc(100vw - 10px))',\r\n },\r\n 'md-fixed': {\r\n variant: 'layout.common.modals.main',\r\n width: 'min(500px, calc(100vw - 10px))',\r\n maxHeight: responsive({ 0: '95vh', 2: '80vh' }),\r\n },\r\n lg: {\r\n variant: 'layout.common.modals.main',\r\n maxWidth: 'min(640px, calc(100vw - 10px))',\r\n },\r\n 'lg-fixed': {\r\n variant: 'layout.common.modals.main',\r\n width: '640px',\r\n height: '60vh',\r\n },\r\n xl: {\r\n variant: 'layout.common.modals.main',\r\n maxWidth: 'min(730px, calc(100vw - 10px))',\r\n },\r\n 'xl-fixed': {\r\n variant: 'layout.common.modals.main',\r\n width: responsive({ 0: '95vw', 2: '60vw' }),\r\n height: responsive({ 0: '95vh', 2: '80vh' }),\r\n },\r\n xxl: {\r\n variant: 'layout.common.modals.main',\r\n width: responsive({ 0: '95vw', 2: '80vw' }),\r\n maxHeight: responsive({ 0: '95vh', 2: '80vh' }),\r\n },\r\n 'xxl-fixed': {\r\n variant: 'layout.common.modals.main',\r\n width: responsive({ 0: '95vw', 2: '80vw' }),\r\n height: responsive({ 0: '95vh', 2: '80vh' }),\r\n },\r\n xxxl: {\r\n variant: 'layout.common.modals.main',\r\n width: responsive({ 0: '95vw', 2: '95vw' }),\r\n maxHeight: responsive({ 0: '95vh', 2: '95vh' }),\r\n },\r\n 'xxxl-fixed': {\r\n variant: 'layout.common.modals.main',\r\n width: responsive({ 0: '95vw', 2: '95vw' }),\r\n height: responsive({ 0: '95vh', 2: '95vh' }),\r\n },\r\n flex: {\r\n variant: 'layout.common.modals.main',\r\n maxWidth: '95vw',\r\n maxHeight: '95vh',\r\n '.modal__content': {\r\n p: spacing(2),\r\n overflow: 'auto',\r\n },\r\n },\r\n cal: {\r\n variant: 'layout.common.modals.sm',\r\n width: '400px',\r\n maxWidth: '400px',\r\n },\r\n editGrid: {\r\n variant: 'layout.common.modals.main',\r\n width: 'root',\r\n maxHeight: '90vh',\r\n },\r\n fileModal: {\r\n variant: 'layout.common.modals.main',\r\n width: '750px',\r\n maxHeight: '97vh',\r\n maxWidth: '95vw',\r\n },\r\n /* PREPEND HERE */\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../../../util';\n\nexport function getSelectionStyles() {\n return {\n 'td[data-focused=\"false\"], th[data-focused=\"false\"]': {\n '*:focus-visible, &:focus, &:focus-visible': {\n outline: 'none',\n },\n\n '*:focus': {\n ...focusOutline,\n },\n },\n '[data-focused=\"true\"]:not(.row__separator__cell)': {\n '&:not([data-editionmode=\"true\"])': {\n '&:focus, & > *:focus, *:focus-visible': {\n ...focusOutline,\n\n '&.cell__download__document': {\n outlineOffset: 0,\n },\n },\n },\n '&[data-editionmode=\"true\"]': {\n '&:focus, *:focus, *:focus-visible': {\n ...focusOutline,\n outlineStyle: 'dotted',\n outlineWidth: '6px',\n outlineOffset: '-4px',\n },\n },\n },\n '[data-focused=\"true\"].row__separator__cell': {\n backgroundColor: 'palette.secondary.main',\n outline: 'none',\n },\n } as ThemeUICSSObject;\n}\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { responsive, spacing } from '../../../../util';\r\nimport { getSelectedColors } from '../../../colors';\r\nimport { getSelectionStyles } from './getSelectionStyles';\r\n\r\nexport const primary: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n variant: 'colors.tables.primary',\r\n width: '100%',\r\n backgroundColor: 'components.primaryTable.body.backgroundColor',\r\n border: '1px solid',\r\n borderColor: 'components.primaryTable.borderColor',\r\n borderCollapse: 'separate',\r\n borderSpacing: 0,\r\n tableLayout: 'fixed',\r\n\r\n thead: {\r\n zIndex: 1,\r\n position: 'sticky',\r\n insetBlockStart: 0,\r\n backgroundColor: 'palette.background.paper',\r\n\r\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\r\n 'th, td': {\r\n variant: 'buttons.primary',\r\n py: responsive({ 0: 3, 4: 4 }),\r\n px: responsive({ 0: 3, 4: 4 }),\r\n width: 'breakWidth',\r\n backgroundColor: 'palette.primary.main',\r\n borderColor: 'palette.primary.dark',\r\n borderRadius: 0,\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n color: 'palette.primary.contrastText',\r\n display: 'table-cell',\r\n verticalAlign: 'center',\r\n wordBreak: 'break-word',\r\n textAlign: 'left',\r\n\r\n '&.additional-column': {\r\n width: '50px',\r\n textAlign: 'center',\r\n verticalAlign: 'middle',\r\n },\r\n\r\n '&[role=\"presentation\"]': {\r\n display: 'none',\r\n },\r\n\r\n ...theme.palette.getStatesFromPath('components.primaryTable.header'),\r\n\r\n '& *': {\r\n color: 'inherit',\r\n },\r\n\r\n '.headButton__label': {\r\n textAlign: 'left',\r\n d: '',\r\n },\r\n '.headButton__resizer': {\r\n width: '20px',\r\n cursor: 'ew-resize',\r\n zIndex: 1000,\r\n position: 'absolute',\r\n right: '-10px',\r\n height: '100%',\r\n },\r\n '&:last-of-type .headButton__resizer': {\r\n right: '0px',\r\n },\r\n\r\n '&.additionalColumn': {\r\n minWidth: '50px',\r\n maxWidth: '50px',\r\n width: '50px',\r\n p: 0,\r\n textAlign: 'center',\r\n verticalAlign: 'center',\r\n },\r\n\r\n '.headButton__container': {\r\n width: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n gap: 3,\r\n\r\n svg: {\r\n flexShrink: 0,\r\n },\r\n },\r\n\r\n '&:not(:last-of-type)': {\r\n '&>div': {\r\n borderRightWidth: '1px',\r\n },\r\n },\r\n },\r\n 'th.requiredFilterColumn': {\r\n borderLeft: '4px solid !important',\r\n borderLeftColor: 'palette.error.main !important',\r\n },\r\n },\r\n 'tr.filtersRow, tr.responsiveTable__filters__row': {\r\n backgroundColor: 'components.primaryTable.body.backgroundColor',\r\n boxShadow: 'tableFilters',\r\n\r\n 'th.noFilter': {\r\n background: 'transparent',\r\n },\r\n 'td.requiredFilter__Border': {\r\n borderLeftStyle: 'solid !important',\r\n borderLeftWidth: '4px !important',\r\n borderLeftColor: 'palette.error.main',\r\n },\r\n\r\n td: {\r\n 'input:not([disabled]), select:not([disabled])': {\r\n border: '1px solid white',\r\n },\r\n background: 'transparent',\r\n border: '1px solid',\r\n borderColor: 'components.primaryTable.body.borderColor',\r\n p: 0,\r\n },\r\n\r\n transition: 'height 0.3s',\r\n\r\n '&.hidden': {\r\n height: '0',\r\n overflow: 'hidden',\r\n p: spacing(0),\r\n border: 'none',\r\n\r\n '& *': {\r\n height: '0',\r\n overflow: 'hidden',\r\n fontSize: 0,\r\n lineHeight: 0,\r\n p: spacing(0),\r\n border: 'none',\r\n },\r\n },\r\n },\r\n },\r\n tbody: {\r\n tr: {\r\n borderBottomWidth: '1px',\r\n borderBottomStyle: 'solid',\r\n ...theme.palette.getColorsByPath('components.primaryTable.body'),\r\n '&:nth-of-type(2n)': {\r\n backgroundColor:\r\n 'components.primaryTable.body.evenRowsBackgroundColor',\r\n },\r\n\r\n '&.non-selectable': {\r\n cursor: 'not-allowed',\r\n },\r\n\r\n '&.hidden': {\r\n display: 'none',\r\n },\r\n\r\n ...getSelectedColors(theme.palette),\r\n\r\n '&.draggingRow': {\r\n outline: '3px dotted',\r\n outlineColor: 'components.primaryTable.header.borderColor',\r\n outlineOffset: '-3px',\r\n\r\n '*': {\r\n outline: 'none !important',\r\n },\r\n },\r\n\r\n borderColor: 'components.primaryTable.body.borderColor',\r\n\r\n '.rowStatesList': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n alignItems: 'center',\r\n\r\n svg: {\r\n width: 'smallIcon',\r\n height: 'smallIcon',\r\n cursor: 'pointer',\r\n },\r\n },\r\n\r\n td: {\r\n verticalAlign: 'top',\r\n wordBreak: 'break-word',\r\n\r\n border: 'none',\r\n borderBottom: '1px solid',\r\n background: 'transparent',\r\n borderColor: 'components.primaryTable.body.borderColor',\r\n\r\n '&.additional-column': {\r\n width: '50px',\r\n textAlign: 'center',\r\n padding: 4,\r\n\r\n button: {\r\n margin: 'auto',\r\n },\r\n },\r\n\r\n '&.stickyColumn': {\r\n position: 'sticky',\r\n left: 0,\r\n backgroundColor: 'components.primaryTable.body.backgroundColor',\r\n },\r\n\r\n '.moreInformationButton': {\r\n width: '30px',\r\n height: '30px',\r\n padding: '3px',\r\n border: 'none',\r\n background: 'transparent',\r\n },\r\n },\r\n '&.locked': {\r\n ...theme.palette.getOneState(\r\n { backgroundColor: 'palette.background.paper' },\r\n 'disabled',\r\n ),\r\n '&:hover': {\r\n ...theme.palette.getOneState(\r\n { backgroundColor: 'palette.background.paper' },\r\n 'disabled',\r\n ),\r\n },\r\n td: {\r\n borderColor: 'palette.gray.850',\r\n },\r\n },\r\n },\r\n td: {\r\n p: spacing(3),\r\n },\r\n\r\n '.responsiveTable__additionalInfoContainer': {\r\n display: 'grid',\r\n gridTemplateColumns: responsive({\r\n 0: 'repeat(2, 1fr)',\r\n 5: 'repeat(4, 1fr)',\r\n }),\r\n columnGap: 3,\r\n rowGap: 2,\r\n },\r\n '.responsiveTable__additionalInfoContainer .responsiveTable__additionalInfoItem.separator':\r\n {\r\n gridColumnStart: '1',\r\n gridColumnEnd: '5',\r\n borderBottom: '1px solid',\r\n borderBottomColor: 'palette.gray.700',\r\n height: 'auto',\r\n },\r\n },\r\n '.editionMode': {\r\n border: '3px solid',\r\n borderColor: 'components.primaryTable.header.borderColor',\r\n borderWidth: '1.5px',\r\n borderStyle: 'dotted',\r\n },\r\n\r\n '&.editionMode *:focus': {\r\n outlineWidth: '5px',\r\n outlineStyle: 'dotted',\r\n },\r\n\r\n '.stateCell': {\r\n width: '50px',\r\n maxWidth: '50px',\r\n minWidth: '50px',\r\n textAlign: 'center',\r\n verticalAlign: 'middle',\r\n },\r\n\r\n ...getSelectionStyles(),\r\n '.no__registers': {\r\n py: 6,\r\n minWidth: '200px',\r\n },\r\n '.requiredFilter__Column': {\r\n fontWeight: 'bold',\r\n },\r\n\r\n '.bold': {\r\n fontWeight: 'bold',\r\n },\r\n\r\n '.light': {\r\n color: '#6a6a6a',\r\n },\r\n\r\n '.additionalInfo__cell, .stateCell': {\r\n verticalAlign: 'middle',\r\n },\r\n };\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const information: ThemeUICSSObject = {\n width: '100%',\n\n thead: {\n tr: {\n th: {\n bg: 'primary',\n color: 'white',\n textAlign: 'center',\n fontWeight: 'bold',\n p: spacing(4),\n },\n },\n },\n\n tbody: {\n tr: {\n 'td,th': {\n borderBottom: '1px solid',\n borderBottomColor: 'palette.border.article',\n p: spacing(3),\n },\n\n '&:last-of-type th, &:last-of-type td': {\n borderBottom: 'none',\n },\n th: {\n textAlign: 'left',\n verticalAlign: 'top',\n whiteSpace: 'nowrap',\n minWidth: 'min-content',\n width: 0,\n },\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const accordion: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(2),\n\n '.responsiveTable__accordionElement__toggler': () => ({\n variant: 'buttons.outline',\n\n borderWidth: '1px',\n display: 'flex',\n gap: spacing(3),\n alignItems: 'stretch',\n width: '100%',\n px: 4,\n py: 3,\n '&:hover': {\n h3: {\n color: 'palette.primary.contrastText',\n },\n },\n\n '.accordionElement__toggler__checkbox': {\n flexShrink: 0,\n m: spacing(2),\n },\n\n '.accordionElement__toggler__button': {\n flexGrow: 100,\n display: 'flex',\n justifyContent: 'space-between',\n py: 2,\n pr: spacing(2),\n alignItems: 'center',\n\n '.accordionElement__toggler__label': {\n flexGrow: 100,\n m: spacing(0),\n textAlign: 'left',\n fontSize: 16,\n },\n\n '.accordionElement__toggler__expandIcon': {\n flexShrink: 0,\n svg: {\n width: '32px',\n },\n },\n },\n }),\n\n '.responsiveTable__accordionElement__content': {\n display: 'flex',\n flexDirection: 'column',\n '& > div': {\n backgroundColor: 'palette.background.paper',\n transition: 'padding-bottom 300ms, padding-top 300ms',\n px: 5,\n },\n\n '&.rah-static--height-zero': {\n '& > div': { py: 0 },\n },\n\n '&.rah-static--height-auto, &.rah-animating--down': {\n '& > div': { py: 5 },\n },\n '.priority_container': { display: 'flex', alignItems: 'center' },\n '.priority': { display: 'flex' },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\n\nexport const print: ThemeUICSSObject = {\n border: '2px solid',\n borderColor: 'printView.list.table.borderColor',\n\n 'td, th': {\n p: 3,\n textAlign: 'left',\n },\n};\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport tinycolor from 'tinycolor2';\n/* IMPORT HERE */\n\nexport const responsive: (theme: Theme) => ThemeUICSSObject = (theme) => {\n return {\n maxHeight: '100%',\n overflow: 'auto',\n position: 'relative',\n // borderRadius: '10px',\n\n '&.isLoading': {\n overflow: 'hidden',\n },\n\n '.responsiveTable__isLoading': {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: tinycolor(theme.palette.background.paper)\n .setAlpha(0.7)\n .toRgbString(),\n zIndex: 1,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n\n '.cell__download__document': {\n display: 'flex',\n gap: 3,\n alignItems: 'center',\n justifyContent: 'start',\n\n '&, *': {\n color: 'palette.primary.main',\n },\n\n svg: {\n flexShrink: 0,\n },\n },\n /* PREPEND HERE */\n };\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../../../colors/util/getColorsAndStatesByPath';\n\nexport const secondary: ThemeUICSSObject = {\n variant: 'layout.common.tables.primary',\n borderColor: 'components.secondaryTable.borderColor',\n\n '& thead': {\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\n '& th, & td': () => ({\n ...getColorsAndStatesByPath('components.secondaryTable.header'),\n }),\n },\n },\n '& tbody': {\n tr: {\n '&:nth-of-type(2n)': {\n backgroundColor:\n 'components.secondaryTable.body.evenRowsBackgroundColor',\n },\n\n td: {\n borderColor: 'components.secondaryTable.body.borderColor',\n },\n\n '&[aria-selected=\"true\"]': {\n backgroundColor:\n 'components.secondaryTable.body.selectedRows.backgroundColor',\n '& td': {\n borderColor:\n 'components.secondaryTable.body.selectedRows.borderColor',\n },\n color: 'components.secondaryTable.body.selectedRows.color',\n },\n\n borderBottomWidth: '1px',\n borderBottomStyle: 'solid',\n ...getColorsAndStatesByPath('components.secondaryTable.body', {\n states: {\n disabled: false,\n readonly: false,\n active: false,\n hover: false,\n checked: false,\n focus: false,\n selected: false,\n },\n }),\n },\n },\n};\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { responsive, spacing } from '../../../../util';\r\nimport { getSelectedColors } from '../../../colors';\r\nimport { getSelectionStyles } from './getSelectionStyles';\r\n\r\nexport const clean: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n variant: 'colors.tables.primary',\r\n width: '100%',\r\n backgroundColor: 'components.cleanTable.body.backgroundColor',\r\n border: '1px solid',\r\n borderColor: 'components.cleanTable.borderColor',\r\n borderCollapse: 'inherit',\r\n borderSpacing: 0,\r\n tableLayout: 'fixed',\r\n selection__keyHandler: {\r\n maxHeight: '30vh',\r\n },\r\n\r\n thead: {\r\n zIndex: 1,\r\n position: 'sticky',\r\n insetBlockStart: 0,\r\n backgroundColor: 'palette.background.paper',\r\n\r\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\r\n 'th, td': {\r\n variant: 'buttons.primary',\r\n width: 'breakWidth',\r\n backgroundColor: 'palette.background.paper',\r\n borderColor: 'palette.primary.dark',\r\n borderRadius: 0,\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n color: 'primary.text.primary',\r\n display: 'table-cell',\r\n verticalAlign: 'center',\r\n wordBreak: 'break-word',\r\n py: spacing(3),\r\n px: 4,\r\n border: 'none',\r\n borderBottom: '1px solid #ccc',\r\n textAlign: 'left',\r\n fontWeight: 'bold',\r\n\r\n '&[role=\"presentation\"]': {\r\n display: 'none',\r\n },\r\n\r\n ...theme.palette.getStatesFromPath('components.cleanTable.header'),\r\n\r\n '& *': {\r\n color: 'inherit',\r\n },\r\n\r\n '.headButton__label': {\r\n fontWeight: 'bold',\r\n textAlign: 'left',\r\n p: 0,\r\n d: '',\r\n\r\n '& > *': {\r\n py: responsive({ 0: 3, 4: 4 }),\r\n px: 4,\r\n },\r\n },\r\n '.headButton__resizer': {\r\n width: '20px',\r\n cursor: 'ew-resize',\r\n zIndex: 1000,\r\n position: 'absolute',\r\n right: '-10px',\r\n height: '100%',\r\n },\r\n '&:last-of-type .headButton__resizer': {\r\n right: '0px',\r\n },\r\n\r\n '&.additionalColumn': {\r\n minWidth: '50px',\r\n maxWidth: '50px',\r\n width: '50px',\r\n p: 0,\r\n textAlign: 'center',\r\n verticalAlign: 'center',\r\n },\r\n\r\n '.headButton__container': {\r\n width: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n gap: 3,\r\n\r\n svg: {\r\n flexShrink: 0,\r\n },\r\n },\r\n\r\n '&:not(:last-of-type)': {\r\n '&>div': {\r\n borderRightWidth: '1px',\r\n },\r\n },\r\n },\r\n 'th.requiredFilterColumn': {\r\n borderLeft: '4px solid !important',\r\n borderLeftColor: 'palette.error.main !important',\r\n },\r\n },\r\n 'tr.filtersRow, tr.responsiveTable__filters__row': {\r\n backgroundColor: 'components.cleanTable.body.backgroundColor',\r\n\r\n 'th.noFilter': {\r\n background: 'transparent',\r\n },\r\n 'td.requiredFilter__Border': {\r\n borderLeftStyle: 'solid !important',\r\n borderLeftWidth: '4px !important',\r\n borderLeftColor: 'palette.error.main',\r\n },\r\n\r\n td: {\r\n 'input:not([disabled]), select:not([disabled])': {\r\n border: '1px solid white',\r\n },\r\n background: 'transparent',\r\n border: '1px solid',\r\n borderColor: 'components.cleanTable.body.borderColor',\r\n p: 0,\r\n },\r\n\r\n transition: 'height 0.3s',\r\n\r\n '&.hidden': {\r\n height: '0',\r\n overflow: 'hidden',\r\n p: spacing(0),\r\n border: 'none',\r\n\r\n '& *': {\r\n height: '0',\r\n overflow: 'hidden',\r\n fontSize: 0,\r\n lineHeight: 0,\r\n p: spacing(0),\r\n border: 'none',\r\n },\r\n },\r\n },\r\n },\r\n tbody: {\r\n tr: {\r\n ...theme.palette.getStatesFromPath('components.cleanTable.body', {\r\n states: {\r\n disabled: false,\r\n readonly: false,\r\n active: false,\r\n hover: false,\r\n checked: false,\r\n focus: false,\r\n path: false,\r\n selected: false,\r\n },\r\n }),\r\n '&:nth-of-type(2n)': {\r\n backgroundColor: 'components.cleanTable.body.evenRowsBackgroundColor',\r\n },\r\n\r\n '&.non-selectable': {\r\n cursor: 'not-allowed',\r\n },\r\n\r\n '&.hidden': {\r\n display: 'none',\r\n },\r\n\r\n '&.locked': {\r\n background: 'palette.gray.900',\r\n td: {\r\n borderColor: 'palette.gray.850',\r\n },\r\n },\r\n\r\n ...getSelectedColors(theme.palette),\r\n\r\n '&.draggingRow': {\r\n outline: '3px dotted',\r\n outlineColor: 'components.cleanTable.header.borderColor',\r\n outlineOffset: '-3px',\r\n\r\n '*': {\r\n outline: 'none !important',\r\n },\r\n },\r\n\r\n '.rowStatesList': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n alignItems: 'center',\r\n\r\n svg: {\r\n width: 'smallIcon',\r\n height: 'smallIcon',\r\n cursor: 'pointer',\r\n },\r\n },\r\n\r\n td: {\r\n py: spacing(3),\r\n px: 4,\r\n border: 'none',\r\n display: 'table-cell',\r\n overflow: 'hidden',\r\n whiteSpace: 'nowrap',\r\n textOverflow: 'ellipsis',\r\n wordBreak: 'break-word',\r\n button: {\r\n height: 'fit-content',\r\n display: 'flex',\r\n },\r\n '&.stickyColumn': {\r\n position: 'sticky',\r\n left: 0,\r\n backgroundColor: 'components.cleanTable.body.backgroundColor',\r\n },\r\n\r\n '.moreInformationButton': {\r\n width: '30px',\r\n height: '30px',\r\n padding: '3px',\r\n border: 'none',\r\n background: 'transparent',\r\n },\r\n\r\n '.autoellipsis__container': {\r\n width: '100%',\r\n },\r\n\r\n borderBottomWidth: '1px',\r\n borderBottomStyle: 'solid',\r\n borderBottomColor: 'components.cleanTable.body.borderColor',\r\n },\r\n },\r\n\r\n '.responsiveTable__additionalInfoContainer': {\r\n background:\r\n 'components.cleanTable.body.additionalInfoButton.backgroundColor',\r\n display: 'grid',\r\n gridTemplateColumns: responsive({\r\n 0: 'repeat(2, 1fr)',\r\n 5: 'repeat(4, 1fr)',\r\n }),\r\n columnGap: 3,\r\n rowGap: 2,\r\n '.listPanel__details': {\r\n pl: 6,\r\n },\r\n '.responsiveTable__additionalInfoItem': {\r\n whiteSpace: 'break-spaces',\r\n overflow: 'hidden',\r\n wordBreak: 'break-all',\r\n },\r\n },\r\n '.responsiveTable__additionalInfoContainer .responsiveTable__additionalInfoItem.separator':\r\n {\r\n gridColumnStart: '1',\r\n gridColumnEnd: '5',\r\n borderBottom: '1px solid',\r\n borderBottomColor: 'palette.gray.700',\r\n height: 'auto',\r\n },\r\n },\r\n '.editionMode': {\r\n border: '3px solid',\r\n borderColor: 'components.cleanTable.header.borderColor',\r\n borderWidth: '1.5px',\r\n borderStyle: 'dotted',\r\n },\r\n\r\n '.stateCell': {\r\n width: '50px',\r\n maxWidth: '50px',\r\n minWidth: '50px',\r\n textAlign: 'center',\r\n verticalAlign: 'middle',\r\n },\r\n\r\n ...getSelectionStyles(),\r\n '.no__registers': {\r\n py: 6,\r\n minWidth: '200px',\r\n },\r\n '.requiredFilter__Column': {\r\n fontWeight: 'bold',\r\n },\r\n\r\n '.bold': {\r\n fontWeight: 'bold',\r\n },\r\n\r\n '.light': {\r\n color: 'palette.gray.700',\r\n },\r\n '.additionalInfo__cell': {\r\n path: {\r\n fill: 'components.cleanTable.body.additionalInfoButton.color',\r\n },\r\n },\r\n\r\n '.additionalInfo__cell, .stateCell': {\r\n verticalAlign: 'middle',\r\n },\r\n '.isAcquired': {\r\n td: {\r\n div: {\r\n color: 'acquiredColor',\r\n },\r\n },\r\n },\r\n };\r\n};\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { primary } from './primary';\nimport { information } from './information';\nimport { accordion } from './accordion';\nimport { print } from './print';\nimport { responsive } from './responsive';\nimport { secondary } from './secondary';\nimport { clean } from './clean';\n\nexport const tables: (theme: Theme) => ThemeUICSSObject = (theme) => {\n return {\n accordion,\n information,\n primary: primary(theme),\n print,\n responsive: responsive(theme),\n secondary,\n clean: clean(theme),\n /* PREPEND HERE */\n };\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n/* IMPORT HERE */\n\nexport const captcha: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(2),\n\n '.captcha__imageContainer': {\n border: '1px solid',\n borderColor: 'palette.border.field',\n p: spacing(4),\n },\n\n '.captcha__inputContainer': {\n display: 'flex',\n gap: spacing(2),\n justifyContent: 'stretch',\n\n input: {\n flexGrow: 1,\n width: '100%',\n },\n\n '.captcha__buttons': {\n width: '24px',\n flexDirection: 'column',\n display: 'flex',\n gap: spacing(2),\n flexShrink: 0,\n\n button: {\n width: '24px',\n height: '24px',\n p: '5px',\n variant: 'buttons.icon-outline',\n\n svg: {\n color: 'palette.text.primary',\n height: '16px',\n width: '16px',\n },\n },\n },\n },\n};\n","/* IMPORT HERE */\r\n\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline } from '../../../../util';\r\n\r\nexport const materialInput: ThemeUICSSObject = {\r\n position: 'relative',\r\n display: 'inline-flex',\r\n width: 'max-content',\r\n flexDirection: 'column',\r\n background: 'white',\r\n borderRadius: '6px',\r\n\r\n span: {\r\n transition: 'top 200ms, left 200ms, font-size 200ms, background 200ms',\r\n position: 'absolute',\r\n top: '10px',\r\n left: '8px',\r\n fontSize: '14px',\r\n pointerEvents: 'none',\r\n color: 'palette.border.section',\r\n background: 'transparent',\r\n whiteSpace: 'nowrap',\r\n textOverflow: 'ellipsis',\r\n maxWidth: '144px',\r\n overflow: 'hidden',\r\n },\r\n\r\n '&:focus-within': focusOutline,\r\n\r\n '&.filled, &:focus-within': {\r\n span: {\r\n position: 'absolute',\r\n top: '4px',\r\n left: '5px',\r\n fontSize: '10px',\r\n pointerEvents: 'all',\r\n background: 'white',\r\n padding: '0 2px',\r\n },\r\n\r\n input: {\r\n paddingTop: '15px',\r\n opacity: 1,\r\n },\r\n },\r\n\r\n '& *:focus': {\r\n outline: 'none',\r\n },\r\n\r\n input: {\r\n border: '1px solid #ccc',\r\n borderRadius: 'panel',\r\n transition: 'padding 200ms, opacity 400ms',\r\n background: 'none',\r\n padding: '8px',\r\n opacity: 0,\r\n },\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { captcha } from './captcha';\r\nimport { materialInput } from './materialInput';\r\n/* IMPORT HERE */\r\nexport const forms: ThemeUICSSObject = {\r\n captcha,\r\n materialInput,\r\n /* PREPEND HERE */\r\n};\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../../../util';\n\nconst primary: (theme: Theme) => ThemeUICSSObject = (theme) => {\n return {\n /* PREPEND HERE */\n position: 'relative',\n\n '[role=\"tree\"]:focus': {\n outline: 'none',\n '.focus': focusOutline,\n },\n\n '&[role=\"tree\"].mobxtree :focus': {\n outline: 'none',\n },\n '&[role=\"tree\"].mobxtree:focus-within': {\n '.focus > .mobxtree__node__label__wrapper': focusOutline,\n },\n\n ul: {\n listStyle: 'none',\n p: 0,\n },\n\n '.mobxtree__children__group': {\n borderLeft: '1px dotted',\n borderLeftColor: 'palette.border.section',\n ml: '5px',\n pl: '15px',\n },\n\n '.tree__searchLabelBox': {\n alignItems: 'center',\n borderRadius: '2px',\n display: 'flex',\n float: 'right',\n justifyContent: 'center',\n position: 'sticky',\n right: '4px',\n top: '4px',\n transform: 'translateX(0)',\n width: '100%',\n zIndex: 'stickyElements',\n\n '.tree__loading': {\n position: 'fixed',\n top: 0,\n right: '4px',\n height: 'iconMd',\n width: 'iconMd',\n background: 'palette.background.paper',\n },\n\n button: {\n cursor: 'pointer',\n\n '&:hover': {\n textDecoration: 'underline',\n },\n },\n },\n\n '.tree__searchLabel': {\n alignItems: 'center',\n display: 'flex',\n justifyContent: 'center',\n position: 'fixed',\n p: '2px 5px',\n right: 0,\n top: 0,\n\n ...theme.palette.getOneState(\n { backgroundColor: 'palette.background.paper' },\n 'selected',\n ),\n },\n\n '[role=\"treeitem\"]': {\n '&[aria-expanded=\"false\"] ul': {\n display: 'none',\n },\n\n '&[aria-selected=\"true\"] > .tree__nodeItemLabel':\n theme.palette.getOneState(\n { backgroundColor: 'palette.background.paper' },\n 'selected',\n ),\n\n background: 'transparent',\n },\n\n '.mobxtree__node__label': {\n flexGrow: 1,\n },\n\n '.mobxtree__node__label__icons': {\n flexShrink: 0,\n },\n\n '.tree__nodeItemLabel, .mobxtree__node__label__wrapper': {\n display: 'flex',\n flexWrap: 'nowrap',\n alignItems: 'center',\n wordBreak: 'break-all',\n\n button: {\n cursor: 'pointer',\n\n '&:hover': {\n textDecoration: 'underline',\n },\n\n span: {\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n },\n },\n\n '.tree__nodeItemLabelRenderer': {\n display: 'flex',\n overflow: ' hidden',\n width: '100%',\n },\n\n '.button__content': {\n textAlign: 'left',\n },\n\n '& > *:not(.tree__nodeItemLabelRenderer)': {\n flexShrink: 0,\n textAlign: 'left',\n },\n\n '&:hover': theme.palette.getOneState(\n { backgroundColor: 'palette.background.paper' },\n 'hover',\n ),\n },\n '.tree__expanderWrapper, .mobxtree__node__expander': {\n display: 'inline-flex',\n ml: '-10px',\n pl: '5px',\n\n 'svg.tree__expandIcon, svg.mobxtree__node__expandIcon': {\n color: 'palette.text.primary',\n },\n },\n\n '.tree__node__icon': {\n mr: '3',\n },\n\n '.spacer': {\n borderLeft: '1px dotted',\n borderLeftColor: 'palette.border.section',\n width: '20px',\n alignSelf: 'stretch',\n transform: 'translateX(5px)',\n pointerEvents: 'none',\n },\n };\n};\n\nexport default primary;\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline } from '../../../../util';\r\n\r\nconst mobx: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n variant: 'layout.common.trees.primary',\r\n overflow: 'auto',\r\n '[role=\"treeitem\"]': {\r\n '&[aria-expanded=\"false\"] ul': {\r\n display: 'none',\r\n },\r\n\r\n '&[aria-selected=\"true\"] > .mobxtree__node__label__wrapper':\r\n theme.palette.getOneState(\r\n { backgroundColor: 'palette.background.paper' },\r\n 'selected',\r\n ),\r\n\r\n background: 'transparent',\r\n },\r\n\r\n '&[role=\"tree\"].mobxtree :focus': {\r\n outline: 'none',\r\n\r\n '& > .mobxtree__node__label__wrapper': focusOutline,\r\n },\r\n '&[role=\"tree\"].mobxtree .mobx__node__label__icon:focus': focusOutline,\r\n\r\n '.mobxtree__children__group': {\r\n p: 0,\r\n m: 0,\r\n },\r\n\r\n '.mobxtree__node__label': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n flexGrow: 1,\r\n flexShrink: 1,\r\n gap: 3,\r\n\r\n '.mobxtree__node__label__renderer': {},\r\n },\r\n\r\n '.mobxtree__node__label__icons': {\r\n display: 'flex',\r\n flexShrink: 0,\r\n gap: 3,\r\n },\r\n\r\n '.mobxtree__node__label__wrapper': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n flexWrap: 'nowrap',\r\n gap: 3,\r\n wordBreak: 'break-all',\r\n\r\n button: {\r\n cursor: 'pointer',\r\n\r\n '&:hover': {\r\n textDecoration: 'underline',\r\n },\r\n\r\n span: {\r\n textOverflow: 'ellipsis',\r\n overflow: 'hidden',\r\n whiteSpace: 'nowrap',\r\n },\r\n },\r\n\r\n '&:hover': theme.palette.getOneState(\r\n { backgroundColor: 'palette.background.paper' },\r\n 'hover',\r\n ),\r\n },\r\n\r\n '.mobxtree__node__expander, .icon__wrapper': {\r\n display: 'inline-flex',\r\n flexShrink: 0,\r\n\r\n 'svg.mobxtree__node__expandIcon': {\r\n color: 'palette.text.primary',\r\n },\r\n },\r\n\r\n '.spacer': {\r\n alignSelf: 'stretch',\r\n borderLeft: '1px dotted',\r\n borderLeftColor: 'palette.border.section',\r\n flexShrink: 0,\r\n pointerEvents: 'none',\r\n transform: 'translateX(9px)',\r\n width: '20px',\r\n },\r\n\r\n '.tree__node__icon': {\r\n height: '20px',\r\n padding: '2px',\r\n width: '20px',\r\n },\r\n };\r\n};\r\n\r\nexport default mobx;\r\n","import { ThemeUICSSObject } from 'theme-ui';\nimport primary from './primary';\nimport mobx from './mobx';\n\nexport const trees: ThemeUICSSObject = {\n mobx,\n primary,\n};\n","/* IMPORT HERE */\n\nimport { ThemeUICSSObject } from 'theme-ui';\n\nexport const primary: ThemeUICSSObject = {\n background: 'white',\n border: '1px solid #ccc',\n borderRadius: 'tooltips',\n p: 3,\n zIndex: 'tooltip',\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { primary } from './primary';\n/* IMPORT HERE */\n\nexport const tooltips: ThemeUICSSObject = {\n primary,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport {\n getColorsAndStatesByPath,\n getColorsByPath,\n} from '../../../../../methods';\nimport { responsive, spacing } from '../../../../../util';\n\nconst common: (type: string) => ThemeUICSSObject = (type) => ({\n ...getColorsByPath(type),\n gap: spacing(1),\n justifyContent: 'stretch',\n\n '&.onlyRefresh': {\n justifyContent: 'end',\n },\n alignItems: 'center',\n padding: 1,\n display: 'flex',\n\n '.pagination__leftToolbar': {\n alignItems: 'center',\n display: 'flex',\n width: '100%',\n },\n '.pagination__deleteLabels': {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n '.pagination__selectPage': {\n width: '80px',\n top: '80px',\n textAlign: 'center',\n },\n\n '.iconButton': {\n height: '36px',\n width: '36px',\n\n ...getColorsAndStatesByPath(`${type}.icons`, {\n states: { disabled: false, path: false },\n }),\n '&:disabled': {\n background: 'transparent',\n },\n },\n '.recordsCounter': {\n color: 'palette.primary.contrastText',\n pl: spacing(3),\n },\n '.reachedMax': {\n color: 'red',\n pl: 2,\n },\n '.pagination__controls': {\n flexGrow: 1,\n justifyContent: 'center',\n flexShrink: 0,\n '&.onlyRefresh': {\n justifyContent: 'end',\n },\n alignItems: 'stretch',\n padding: 1,\n display: 'flex',\n width: responsive({ 0: 'max-content', 2: 'auto' }),\n\n 'select ~ svg': {\n display: 'none',\n },\n\n '.input': {\n display: 'flex',\n alignItems: 'center',\n gap: spacing(3),\n fontSize: '1em',\n border: '1px solid',\n paddingY: 1,\n paddingX: 4,\n ...getColorsByPath(`${type}.pagesBox`),\n input: {\n font: 'inherit',\n background: 'none',\n border: 'none',\n width: '30px',\n padding: 0,\n textAlign: 'center',\n },\n span: {\n font: 'inherit',\n display: 'block',\n width: '30px',\n },\n },\n },\n '.infoTooltip': {\n position: 'relative',\n display: 'inline-block',\n borderBottom: '1px dotted black',\n cursor: 'pointer',\n backgroundColor: '#f7d97f',\n },\n '.pagination__information': {\n p: 1,\n '.pagination__infoIcon': {\n display: 'flex',\n },\n },\n\n '.pagination__alertInfo': {\n variant: 'buttons.icon-primary',\n ...getColorsAndStatesByPath('buttons.iconAlert'),\n },\n '.pagination__rightToolbar': {\n display: 'flex',\n gap: 0,\n width: '100%',\n justifyContent: 'end',\n\n '.pagination__deleteFiltersButton': {\n variant: 'buttons.primary-sm',\n textDecoration: 'none',\n px: 3,\n '.button__content': {\n display: 'flex',\n flexDirection: 'row',\n gap: 3,\n },\n\n '.pagination__appliedFiltersLabel': {\n backgroundColor: 'palette.primary.contrastText',\n color: 'palette.text.title',\n borderRadius: '100%',\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: '1.5em',\n\n '&.withFilters': {\n backgroundColor: 'favorite',\n color: 'palette.text.primary',\n },\n },\n },\n },\n});\n\nexport default common;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport common from './common';\n\nconst primary: ThemeUICSSObject = {\n ...common('components.paginationPrimary'),\n};\n\nexport default primary;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport common from './common';\n\nconst datagrid: ThemeUICSSObject = {\n ...common('components.paginationDatagrid'),\n};\n\nexport default datagrid;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport common from './common';\n\nconst primary: ThemeUICSSObject = {\n ...common('components.paginationSecondary'),\n};\n\nexport default primary;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport primary from './primary';\nimport datagrid from './datagrid';\nimport secondary from './secondary';\n\nconst pagination: ThemeUICSSObject = {\n primary,\n datagrid,\n secondary,\n};\n\nexport default pagination;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const accordion: ThemeUICSSObject = {\n primary: {\n '&, .accordion__item': {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n },\n '.accordion__item__button__rightGroup': {\n flexShrink: 0,\n },\n '.accordion__item__button__leftGroup, .accordion__item__button__rightGroup':\n {\n alignItems: 'center',\n display: 'flex',\n gap: 3,\n\n '& > *': {\n flexShrink: 0,\n\n '&.accordion__item__button__label': {\n flexShrink: 1,\n },\n },\n },\n\n '.accordion__item__button__label': {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n flexShrink: 1,\n color: 'palette.primary.contrastText',\n fontSize: 16,\n },\n\n '.accordion__item__button__check': {\n width: '32px',\n height: '32px',\n background: 'palette.background.paper',\n border: '1px solid',\n // borderColor: 'palette.border.field',\n cursor: 'pointer',\n display: 'flex',\n alignItems: 'stretch',\n justifyContent: 'stretch',\n p: 2,\n\n svg: {\n color: 'palette.text.primary',\n height: '100%',\n width: '100%',\n },\n },\n\n '.accordion__item:last-of-type > *': {\n borderBottom: '1px solid',\n borderBottomColor: 'palette.border.section',\n },\n\n '.accordion__item__content > *': {\n p: 4,\n borderLeft: '1px solid',\n borderRight: '1px solid',\n borderLeftColor: 'palette.border.section',\n borderRightColor: 'palette.border.section',\n },\n\n '.accordion__item__button': {\n width: '100%',\n p: 3,\n\n '.button__content': {\n alignItems: 'center',\n display: 'flex',\n gap: spacing(3),\n justifyContent: 'space-between',\n width: '100%',\n },\n },\n '.accordion__cell__renderer': {\n display: 'flex',\n },\n },\n panels: {\n variant: 'layout.common.components.accordion.primary',\n overflowX: 'hidden',\n '.accordion__item__button': {\n color: 'palette.text.primary',\n pl: 4,\n background: 'palette.background.paper',\n border: 'none',\n borderTop: '1px solid',\n borderColor: 'palette.border.section',\n boxShadow: 'rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px',\n ':hover': {\n background: 'palette.gray.900',\n borderColor: 'palette.border.section',\n color: 'palette.text.primary',\n },\n ':active': {\n background: 'palette.border.section',\n },\n svg: {\n path: {\n fill: 'palette.text.primary',\n },\n },\n },\n\n '.accordion__item__button__label': {\n color: 'palette.text.primary',\n fontWeight: '400',\n },\n '.accordion__item__content[aria-hidden=\"true\"]': {\n border: 'none',\n },\n '.accordion__item__button__check': {\n borderColor: 'palette.border.section',\n borderRadius: '3px',\n },\n '.accordion__item__content': {\n background: 'palette.secondary.light',\n '[data-variant=\"link\"]': {\n px: 0,\n },\n div: {\n border: 'none',\n },\n },\n },\n};\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nexport const chat: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n height: 'calc(100vh - 300px)',\r\n width: '100%',\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n\r\n '.chat_controller': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: '3',\r\n },\r\n\r\n '.autoscrollContainer': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n width: '100%',\r\n gap: 3,\r\n p: 3,\r\n },\r\n\r\n '.history__message': {\r\n borderRadius: '2px',\r\n p: 3,\r\n width: '80%',\r\n wordWrap: 'break-word',\r\n whiteSpace: 'pre-wrap',\r\n\r\n '&.user': {\r\n alignSelf: 'end',\r\n backgroundColor: '#90ee902b',\r\n },\r\n\r\n '&.system': {\r\n alignSelf: 'start',\r\n backgroundColor: '#5701f52b',\r\n },\r\n\r\n '&.warning': {\r\n alignSelf: 'start',\r\n backgroundColor: '#ffff0024',\r\n width: '100%',\r\n },\r\n\r\n '&.error': {\r\n alignSelf: 'start',\r\n backgroundColor: '#fd84212b',\r\n width: '100%',\r\n },\r\n\r\n '&.information': {\r\n alignSelf: 'start',\r\n backgroundColor: '#2222cc2b',\r\n width: '100%',\r\n },\r\n\r\n '&.multipleChoice': {\r\n p: 0,\r\n },\r\n\r\n '.multipleChoiceMessage:not(.customRenderer)': {\r\n background: '#0178f52b',\r\n td: { textAlign: 'center' },\r\n th: { backgroundColor: '#14597bab' },\r\n table: { borderBottom: '1px solid' },\r\n 'button.multipleChoice__option': {\r\n width: '-webkit-fill-available',\r\n backgroundColor: '#14597bab',\r\n },\r\n '.taskInfoDiv': {\r\n display: 'flex',\r\n justifyContent: 'space-evenly',\r\n },\r\n },\r\n\r\n '.multipleChoiceMessage.customRenderer': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 3,\r\n\r\n '& > p': {\r\n background: '#0178f52b',\r\n p: 3,\r\n },\r\n\r\n '.selection__keyHandler': {\r\n m: 0,\r\n padding: 3,\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n borderRadius: 'panel',\r\n },\r\n },\r\n },\r\n\r\n '.help__container': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 4,\r\n },\r\n\r\n '.functionHelp': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 3,\r\n\r\n '.functionHelp__description, .functionHelp__usage': {\r\n pl: 5,\r\n },\r\n '.history__message': {\r\n wordWrap: 'break-word',\r\n overflow: 'hidden',\r\n whiteSpace: 'break-spaces',\r\n },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n\r\nexport const toolbar: ThemeUICSSObject = {\r\n alignItems: 'center',\r\n backgroundColor: 'palette.background.default',\r\n display: 'flex',\r\n gap: '2px',\r\n py: '4px',\r\n px: '8px',\r\n\r\n '& > *': {\r\n alignItems: 'center',\r\n borderRadius: '4px',\r\n display: 'flex',\r\n flexShrink: 0,\r\n justifyContent: 'center',\r\n outline: 'none !important',\r\n p: 0,\r\n },\r\n\r\n '.toolbar__textButton': (theme) => ({\r\n variant: 'buttons.primary-sm',\r\n background: 'transparent',\r\n border: 'none',\r\n color: 'palette.text.primary',\r\n\r\n ...theme.palette.getStatesFromDefinition(\r\n {\r\n backgroundColor: theme.palette.background.default,\r\n },\r\n { states: { default: false } },\r\n ),\r\n\r\n '&.primary': theme.palette.getStatesFromPath('buttons.primary'),\r\n }),\r\n\r\n '.toolbar__select': () => ({\r\n padding: '4px',\r\n paddingLeft: '8px',\r\n paddingRight: '32px',\r\n }),\r\n\r\n '.toolbar__button': {\r\n border: 'none',\r\n borderRadius: '4px',\r\n height: '32px',\r\n width: '32px',\r\n background: 'transparent',\r\n svg: {\r\n path: {\r\n fill: 'palette.text.primary',\r\n },\r\n },\r\n\r\n '&:disabled': {\r\n svg: {\r\n path: {\r\n fill: 'palette.border.section',\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.fieldLabel': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n gap: 3,\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n },\r\n\r\n '.toolbar__input': {\r\n borderRadius: '4px',\r\n p: 3,\r\n width: '80px',\r\n },\r\n\r\n '.toolbar__separator': {\r\n borderLeft: '1px solid',\r\n borderRight: '1px solid',\r\n borderColor: 'palette.gray.750',\r\n height: '60%',\r\n width: '3px',\r\n },\r\n\r\n '.toggled': (theme) => {\r\n return {\r\n ...theme.palette.getOneState(\r\n { backgroundColor: theme.palette.background.default },\r\n 'selected',\r\n ),\r\n };\r\n },\r\n};\r\n","/* IMPORT HERE */\r\n\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline } from '../../../../util';\r\n\r\nconst autocomplete: ThemeUICSSObject = {\r\n '&:focus-within': focusOutline,\r\n\r\n '.autocomplete__inputWrapper': {\r\n position: 'relative',\r\n },\r\n\r\n '.autocomplete__search.disabled': {\r\n cursor: 'not-allowed',\r\n background: 'form.fields.disabled.backgroundColor',\r\n borderColor: 'form.fields.disabled.backgroundColor',\r\n },\r\n '.autocomplete__search.readOnly': {\r\n background: 'form.fields.readonly.backgroundColor',\r\n borderColor: 'form.fields.readonly.backgroundColor',\r\n },\r\n '.autocomplete__icons': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n gap: 2,\r\n height: '24px',\r\n position: 'absolute',\r\n right: '12px',\r\n top: 'calc(50% - 12px)',\r\n\r\n '.autocomplete__loadingSpinner': {\r\n width: '24px',\r\n height: '24px',\r\n },\r\n\r\n '.autocomplete__downArrow': {\r\n cursor: 'pointer',\r\n height: '12px',\r\n pointerEvents: 'none',\r\n width: '12px',\r\n },\r\n },\r\n\r\n optionsContainer: {\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n '&.autocomplete__options__box': {\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n zIndex: 'tooltip',\r\n overflow: 'auto',\r\n display: 'block',\r\n },\r\n\r\n '.autocomplete__option': {\r\n variant: 'buttons.link',\r\n border: 'none',\r\n textDecoration: 'none',\r\n transition: 'unset',\r\n\r\n '&.focused, &:hover': (theme) =>\r\n theme.palette.getOneState(\r\n {\r\n backgroundColor: theme.palette.background.paper,\r\n color: theme.palette.text.primary,\r\n },\r\n 'selected',\r\n ),\r\n },\r\n },\r\n};\r\n\r\nexport default autocomplete;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n\r\nexport const datePicker: ThemeUICSSObject = {\r\n maxWidth: '400px',\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\n\nexport const aiMessage: ThemeUICSSObject = {\n position: 'relative',\n\n '.closeButton': {\n borderRadius: '5px',\n right: '0px',\n top: '-2px',\n zIndex: '15',\n position: 'absolute',\n variant: 'buttons.icon-outline-danger',\n },\n '.descriptionButton': {\n borderRadius: '5px',\n right: '28px',\n top: '-2px',\n zIndex: '15',\n position: 'absolute',\n variant: 'buttons.icon-outline',\n },\n\n genericBox: {\n margin: '10px',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'center',\n padding: '12px',\n },\n\n fileBox: {\n variant: 'layout.common.components.aiMessage.genericBox',\n width: '130px',\n height: '120px',\n backgroundColor: '#f0f0f0',\n border: '1px solid #ccc',\n borderRadius: '4px',\n position: 'relative',\n display: 'flex',\n img: {\n objectFit: 'contain',\n width: '110px',\n height: '69px',\n },\n },\n\n fileName: {\n bottom: '4px',\n right: '4px',\n fontSize: '12px',\n color: '#333',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n width: 'inherit',\n textAlign: 'center',\n px: '5px',\n },\n\n textBox: {\n variant: 'layout.common.components.aiMessage.genericBox',\n width: '50px',\n padding: '10px',\n backgroundColor: '#fff',\n border: '1px solid #ddd',\n borderRadius: '4px',\n position: 'relative',\n },\n\n textSnippet: {\n bottom: '4px',\n right: '4px',\n fontSize: '12px',\n color: '#555',\n },\n};\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nexport const infoButton: ThemeUICSSObject = {\r\n '&.iconButton': {\r\n cursor: 'pointer',\r\n height: '0px',\r\n minHeight: '16px',\r\n color: 'palette.gray.800',\r\n p: spacing(0),\r\n width: 'auto',\r\n minWidth: 'auto',\r\n svg: {\r\n height: '15px',\r\n width: '15px',\r\n },\r\n\r\n '&.isToggled': {\r\n cursor: 'pointer',\r\n minHeight: '0px',\r\n color: 'palette.primary.main',\r\n },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst rangeFilter: ThemeUICSSObject = {\r\n backgroundColor: 'white',\r\n display: 'flex',\r\n alignItems: 'center',\r\n '.ApiaFilter__Range__Low': {\r\n 'input:first-of-type': {\r\n textAlign: 'end',\r\n },\r\n 'input:first-of-type::-webkit-inner-spin-button, input:first-of-type::-webkit-outer-spin-button':\r\n {\r\n WebkitAppearance: 'none',\r\n margin: 0,\r\n },\r\n 'input[type=number]': {\r\n MozAppearance: 'textfield',\r\n },\r\n },\r\n '.ApiaFilter__Range__High': {\r\n 'input:first-of-type::-webkit-inner-spin-button, input:first-of-type::-webkit-outer-spin-button':\r\n {\r\n WebkitAppearance: 'none',\r\n margin: 0,\r\n },\r\n 'input[type=number]': {\r\n MozAppearance: 'textfield',\r\n },\r\n },\r\n 'div:has(.ApiaFilter__Range__UnitSelector)': {\r\n flexShrink: 0,\r\n flexBasis: '80px',\r\n },\r\n};\r\n\r\nexport default rangeFilter;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport rangeFilter from './rangeFilter';\r\n\r\n/* IMPORT HERE */\r\nconst filters: ThemeUICSSObject = {\r\n rangeFilter,\r\n /* PREPEND HERE */\r\n};\r\nexport default filters;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst fileCard: ThemeUICSSObject = {\r\n '&.fileCard': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n position: 'relative',\r\n border: '1px solid',\r\n borderColor: 'palette.gray.800',\r\n height: '50px',\r\n // borderRadius: 'default',\r\n borderRadius: '7px',\r\n boxShadow: '0px 1px 1px #c7c7c7',\r\n background: 'palette.background.paper',\r\n cursor: 'pointer',\r\n '.fileCard__content': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n p: 3,\r\n gap: 3,\r\n width: '100%',\r\n },\r\n\r\n button: {\r\n boxShadow: 'none',\r\n },\r\n },\r\n\r\n '&.selected': (theme) => {\r\n return {\r\n backgroundColor: theme.palette.getColor('transparent', 'selected'),\r\n };\r\n },\r\n '&.fileList__modal': {\r\n // pr: 7,\r\n },\r\n\r\n '.file__icon': {\r\n flexShrink: 0,\r\n },\r\n\r\n '.fileCard__name': {\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n },\r\n\r\n '.fileCard__additionalButtons': {\r\n flexShrink: 0,\r\n display: 'flex',\r\n height: '100%',\r\n ml: 3,\r\n },\r\n '.fileCard__additionalButtons:hover': {\r\n color: 'palette.text.primary',\r\n },\r\n '.fileCard__delete, .fileCard__additionalButton': {\r\n width: 'auto',\r\n height: '100%',\r\n backgroundColor: 'inherit',\r\n border: 'none',\r\n m: 0,\r\n flexShrink: 0,\r\n px: 3,\r\n borderRadius: '7px',\r\n color: 'palette.text.primary',\r\n svg: {\r\n width: '18px',\r\n height: '18px',\r\n },\r\n },\r\n\r\n '.fileCard__additionalButton[class]:hover': (theme) => {\r\n return {\r\n backgroundColor: theme.palette.getColor('white', 'hover'),\r\n color: 'palette.text.primary',\r\n };\r\n },\r\n};\r\n\r\nexport default fileCard;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport pagination from './pagination';\r\nimport { accordion } from './accordion';\r\nimport { chat } from './chat';\r\nimport { toolbar } from './toolbar';\r\nimport autocomplete from './autocomplete';\r\nimport { datePicker } from './datePicker';\r\nimport { aiMessage } from './aiMessage';\r\nimport { infoButton } from './infoButton';\r\nimport filters from './filters';\r\nimport fileCard from './fileCard';\r\n/* IMPORT HERE */\r\nexport const components: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n accordion,\r\n autocomplete,\r\n datePicker,\r\n pagination,\r\n chat,\r\n toolbar,\r\n aiMessage,\r\n infoButton,\r\n filters,\r\n fileCard,\r\n};\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\n\nconst labelBox: ThemeUICSSObject = {\n alignItems: 'center',\n border: '1px solid',\n borderColor: 'palette.border.field',\n display: 'flex',\n gap: spacing(3),\n justifyContent: 'space-between',\n p: spacing(3),\n\n '& > .labelAndIcon': {\n display: 'flex',\n alignItems: 'center',\n gap: spacing(3),\n\n '& ~ div button': {\n border: 'none',\n },\n\n svg: {\n minHeight: 'iconMd',\n minWidth: 'iconMd',\n },\n\n '&:last-of-type': {\n textAlign: 'right',\n },\n },\n};\n\nexport default labelBox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport labelBox from './labelBox';\n\nexport const boxes: ThemeUICSSObject = {\n labelBox,\n /* PREPEND HERE */\n};\n","/* IMPORT HERE */\r\n\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\n\r\nconst formsAssistant: ThemeUICSSObject = {\r\n modalRow: {\r\n '&': {\r\n position: 'relative',\r\n 'div[data-variant=\"layout.ai.execution.formsAssistant.buttonsDiv\"]': {\r\n position: 'absolute',\r\n top: '7%',\r\n right: '15%',\r\n },\r\n },\r\n },\r\n modal: {\r\n 'div[class=\"modal__main\"]': { position: 'relative' },\r\n 'div[data-variant=\"layout.ai.execution.formsAssistant.buttonsDiv\"]': {\r\n position: 'absolute',\r\n top: '5.4%',\r\n right: '17%',\r\n },\r\n },\r\n buttonsDiv: {\r\n display: 'flex',\r\n justifyContent: 'end',\r\n gap: 2,\r\n alignItems: 'center',\r\n\r\n 'button.manualButton:nth-child(2)': {\r\n marginLeft: 'auto',\r\n },\r\n },\r\n\r\n settingsButton: {\r\n variant: 'buttons.icon-outline',\r\n border: 'none',\r\n },\r\n\r\n openTextarea: {\r\n position: 'fixed',\r\n bottom: '1%',\r\n right: '0.5%',\r\n zIndex: 1200,\r\n },\r\n tableText: { wordBreak: 'normal' },\r\n thModal: { whiteSpace: 'nowrap' },\r\n\r\n genericWindowDragger: {\r\n maxWidth: '600px',\r\n maxHeight: '455px',\r\n zIndex: '1200',\r\n bottom: '49px',\r\n right: '11px',\r\n },\r\n\r\n customGridWindowDragger: {\r\n variant: 'layout.ai.execution.formsAssistant.genericWindowDragger',\r\n bottom: 'auto',\r\n right: 'auto',\r\n '.tooltip__wrapper': {\r\n padding: '0px',\r\n },\r\n },\r\n\r\n floatingWindow: {\r\n p: 5,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 5,\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n minWidth: '478px',\r\n\r\n 'input[type=\"file\"]': {\r\n display: 'none',\r\n },\r\n\r\n '.gpt__buttonsContainer': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'end',\r\n gap: 1,\r\n },\r\n\r\n 'button[data-variant=\"icon-outline-danger\"]': {\r\n border: 'none',\r\n },\r\n\r\n '.gpt__form': {\r\n flexDirection: 'column',\r\n display: 'flex',\r\n gap: 2,\r\n },\r\n '.formsAssistant__closeButton': {\r\n borderRadius: '5px',\r\n top: '-7px',\r\n right: '-7px',\r\n position: 'absolute',\r\n },\r\n '.history': {\r\n height: '200px',\r\n overflow: 'hidden',\r\n display: 'flex',\r\n },\r\n '.autoscrollContainer': { overflow: 'auto' },\r\n },\r\n\r\n phoneCase: {\r\n p: 5,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 5,\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n height: '100%',\r\n justifyContent: 'space-between',\r\n\r\n 'input[type=\"file\"]': {\r\n display: 'none',\r\n },\r\n\r\n '.gpt__buttonsContainer': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'end',\r\n gap: 1,\r\n },\r\n\r\n 'button[data-variant=\"icon-outline-danger\"]': {\r\n border: 'none',\r\n },\r\n\r\n 'div[data-variant=\"layout.common.components.chat\"]': {\r\n minHeight: '60%',\r\n },\r\n 'div[data-variant=\"layout.common.components.chat\"] + div': {\r\n width: '100%',\r\n height: '29%',\r\n },\r\n\r\n '.gpt__form': {\r\n flexDirection: 'column',\r\n display: 'flex',\r\n gap: 2,\r\n height: '100%',\r\n },\r\n '.formsAssistant__closeButton': {\r\n borderRadius: '5px',\r\n top: '-7px',\r\n right: '-7px',\r\n position: 'absolute',\r\n },\r\n '.history': {\r\n height: '200px',\r\n overflow: 'hidden',\r\n display: 'flex',\r\n },\r\n '.autoscrollContainer': { overflow: 'auto' },\r\n },\r\n\r\n configurationTable: {\r\n variant: 'layout.common.tables.information',\r\n 'th:last-of-type': {\r\n width: '100px',\r\n },\r\n },\r\n\r\n overrideTable: {\r\n '.attTitle': { fontWeight: 'bold' },\r\n 'div[role=\"dialog\"]': {\r\n width: '95vw',\r\n },\r\n '.confirmNewValues': {\r\n variant: 'layout.common.tables.information',\r\n tableLayout: 'fixed',\r\n width: '100%',\r\n\r\n 'div[role=\"dialog\"]': {\r\n width: '95vw',\r\n },\r\n\r\n '& thead': {\r\n th: {\r\n width: '50%',\r\n },\r\n 'th:last-of-type': {\r\n width: '100px',\r\n },\r\n 'th:first-of-type': {\r\n width: '199px',\r\n },\r\n },\r\n\r\n '& tbody': {\r\n 'td:last-of-type': {\r\n textAlign: 'center',\r\n },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default formsAssistant;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport formsAssistant from './formsAssistant';\r\n/* IMPORT HERE */\r\n\r\nconst execution: ThemeUICSSObject = {\r\n formsAssistant,\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default execution;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n\r\nconst connectors: ThemeUICSSObject = {\r\n testResult: {\r\n td: {\r\n verticalAlign: 'middle !important',\r\n\r\n '&.title': {\r\n fontWeight: 'bold',\r\n textAlign: 'center',\r\n },\r\n\r\n div: {\r\n height: '1.5em',\r\n width: '1.5em',\r\n borderRadius: '100px',\r\n mx: 'auto',\r\n },\r\n\r\n '&.success': {\r\n p: 3,\r\n div: { backgroundColor: 'palette.success.main' },\r\n },\r\n '&.error': {\r\n p: 3,\r\n div: { backgroundColor: 'palette.error.main' },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default connectors;\r\n","import { keyframes } from '@emotion/react';\r\n\r\nconst vibrate = keyframes`\r\n0% {\r\n\ttransform: rotate(0);\r\n}\r\n\r\n25% {\r\n\ttransform: rotate(1.5deg);\r\n}\r\n\r\n75% {\r\n\ttransform: rotate(-1.5deg);\r\n}\r\n\r\n100% {\r\n\ttransform: rotate(0);\r\n}`;\r\n\r\nconst fadeInFromBottom = keyframes`\r\n0% {\r\n\ttransform: translateY(400px) scale(0.1); \r\n\topacity: 0;\r\n}\r\n100% {\r\n\ttransform: translateY(0) scale(1); \r\n\topacity: 1;\r\n}\r\n`;\r\n\r\nconst fadeInFromTop = keyframes`\r\n0% {\r\n\ttransform: translateY(-800px) scale(0.1); \r\n\topacity: 0;\r\n}\r\n100% {\r\n\ttransform: translateY(0) scale(1); \r\n\topacity: 1;\r\n}\r\n`;\r\nconst fadeIn = keyframes`\r\n0% {\r\n\topacity: 0;\r\n}\r\n100% {\r\n\topacity: 1;\r\n}\r\n`;\r\n\r\nconst animations = { vibrate, fadeInFromBottom, fadeInFromTop, fadeIn };\r\n\r\nexport default animations;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline, responsive, spacing } from '../../../../util';\r\nimport animations from './animations';\r\n\r\nexport const semanticSearch: ThemeUICSSObject = {\r\n execution: {\r\n background: 'palette.background.default',\r\n\r\n '.chat_history': {\r\n margin: '50px 0 90px 0',\r\n },\r\n\r\n pre: {\r\n m: 0,\r\n },\r\n\r\n '.sem_search__system_message': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n position: 'relative',\r\n },\r\n\r\n '.sem_search__stream_blocks': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 3,\r\n padding: '16px 24px 0 24px',\r\n },\r\n\r\n '.sem_search__stream_block': {\r\n animation: `${animations.fadeIn} 0.2s`,\r\n borderRadius: '5px',\r\n padding: '5px 10px',\r\n background: '#d8e3e7',\r\n color: 'black',\r\n listStyle: 'disc',\r\n },\r\n\r\n '.sem_search__thumbs': {\r\n display: 'flex',\r\n justifyContent: 'end',\r\n gap: 2,\r\n position: 'absolute',\r\n bottom: 0,\r\n right: 0,\r\n\r\n '.unselected': {\r\n color: '#c2c2c2',\r\n },\r\n '.selected': {\r\n strokeWidth: '15px',\r\n },\r\n '.no_feedback': {\r\n color: 'gray',\r\n },\r\n },\r\n\r\n '.ellipsis': {\r\n padding: '0 24px 32px 24px',\r\n fontWeight: 'bold',\r\n },\r\n\r\n '.markdown': {\r\n padding: '0 24px 32px 24px',\r\n\r\n 'h1, h2, h3, h4, h5, h6': {\r\n margin: '32px 0px 20px 0px',\r\n '& *': {\r\n fontSize: 'inherit',\r\n fontWeight: 'inherit',\r\n fontFamily: 'inherit',\r\n },\r\n },\r\n\r\n blockquote: {\r\n fontStyle: 'italic',\r\n },\r\n\r\n table: {\r\n variant: 'layout.common.tables.secondary',\r\n thead: {\r\n zIndex: 0,\r\n },\r\n },\r\n\r\n h2: {\r\n display: 'block',\r\n borderBottom: '2px solid hsl(195deg 10% 49% / 50%)',\r\n paddingBottom: '16px',\r\n },\r\n\r\n h3: {\r\n textDecoration: 'underline',\r\n },\r\n\r\n h4: {\r\n fontSize: '20px',\r\n },\r\n\r\n ul: {\r\n listStyle: 'unset',\r\n listStyleType: 'disc',\r\n margin: 'unset',\r\n padding: 'unset',\r\n\r\n paddingLeft: '20px',\r\n paddingBottom: '16px',\r\n },\r\n 'ol + ul, ul + ul, ol ul, ul ul': {\r\n paddingLeft: '72px',\r\n },\r\n 'p, ul, ol, blockQuote, table': {\r\n mt: '16px',\r\n },\r\n },\r\n\r\n '.filters__container': {\r\n ' > div': {\r\n display: 'flex',\r\n ' > .filter_button:last-child': {\r\n borderRadius: 'panel',\r\n height: '34px',\r\n width: '34px',\r\n flexShrink: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n opacity: 0,\r\n transition: 'opacity 400ms',\r\n marginLeft: 'auto',\r\n },\r\n },\r\n paddingTop: '10px',\r\n '.filter__input': {\r\n paddingRight: '7px',\r\n },\r\n },\r\n '.filled_filters': {\r\n ' > div': {\r\n display: 'flex',\r\n ' > .filter_button:last-child': {\r\n borderRadius: 'panel',\r\n height: '34px',\r\n width: '34px',\r\n flexShrink: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n opacity: 1,\r\n marginLeft: 'auto',\r\n },\r\n },\r\n },\r\n '.search_controls': {\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n display: 'flex',\r\n gap: 0,\r\n mx: 'auto',\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n borderRadius: 'panel',\r\n boxShadow: '0px 2px 6px #0002',\r\n width: '100%',\r\n p: spacing(3),\r\n\r\n '&:focus-within': focusOutline,\r\n\r\n '& > *:focus': {\r\n outline: 'none',\r\n },\r\n '.filter_button_box': {\r\n position: 'relative',\r\n },\r\n '.applied_filters_label': {\r\n position: 'absolute',\r\n bottom: '21px',\r\n left: '20px',\r\n minWidth: '10px',\r\n maxHeight: '10px',\r\n border: '2px solid white',\r\n borderRadius: '100%',\r\n display: 'inline-flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n backgroundColor: 'palette.error.main',\r\n },\r\n },\r\n\r\n '.SearchButton': {\r\n borderRadius: 'panel',\r\n height: '34px',\r\n width: '34px',\r\n flexShrink: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n color: 'palette.text.primary',\r\n ':disabled': {\r\n background: 'transparent',\r\n },\r\n },\r\n '.FilterButton': {\r\n borderRadius: 'panel',\r\n height: '34px',\r\n width: '34px',\r\n flexShrink: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n color: 'palette.text.primary',\r\n '&.open': {\r\n color: 'palette.primary.main',\r\n },\r\n },\r\n '.references__box': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: spacing(5),\r\n },\r\n '.searchTextArea': {\r\n minHeight: '34px',\r\n height: '34px',\r\n resize: 'none',\r\n py: spacing(2),\r\n background: 'transparent',\r\n border: 'none',\r\n },\r\n '.references_item': {\r\n maxWidth: '180px',\r\n whiteSpace: 'nowrap',\r\n zIndex: 0,\r\n\r\n '.button__content': {\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n maxWidth: '180px',\r\n },\r\n },\r\n '&.mode_none': {\r\n flexDirection: 'column',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n height: '100vh',\r\n gap: spacing(5),\r\n\r\n '.search_header_container': {\r\n fontSize: '50px',\r\n maxWidth: '50vw',\r\n textAlign: 'left',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(5),\r\n },\r\n\r\n '.search_section_container': {\r\n mx: 'auto',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n zIndex: 1,\r\n background: 'palette.background.default',\r\n boxShadow: '0 10px 10px #f8f4f4',\r\n width: responsive({\r\n 0: 'calc(100%)',\r\n 3: 'calc(75vw + 50px)',\r\n 5: 'calc(50vw + 50px)',\r\n }),\r\n },\r\n },\r\n '&.mode_chat': {\r\n h1: {\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n },\r\n\r\n backgroundColor: 'white',\r\n width: responsive({\r\n 0: 'calc(100%)',\r\n 3: 'calc(75vw + 2px)',\r\n 5: 'min(950px, calc(60vw + 2px))',\r\n }),\r\n margin: ['auto', '32px auto'],\r\n border: '1px solid #ccc',\r\n\r\n '.search_section_container': {\r\n zIndex: 1,\r\n position: 'fixed',\r\n bottom: '0',\r\n transform: 'translateX(-1px)',\r\n borderBottom: '4px solid #f2f2f2',\r\n width: responsive({\r\n 0: 'calc(100%)',\r\n 3: 'calc(75vw + 2px)',\r\n 5: 'min(950px, calc(60vw + 2px))',\r\n }),\r\n background: 'white',\r\n textarea: { width: 'calc(100%)' },\r\n\r\n '& > div': {\r\n padding: '4px 32px',\r\n borderLeft: '1px solid #ccc',\r\n borderRight: '1px solid #ccc',\r\n borderBottom: '1px solid #ccc',\r\n width: 'calc(100%)',\r\n background: 'white',\r\n },\r\n },\r\n\r\n '.search_header_container': {\r\n position: 'fixed',\r\n zIndex: 1,\r\n top: '0',\r\n transform: 'translateX(-1px)',\r\n borderTop: '4px solid #f2f2f2',\r\n padding: '0',\r\n width: responsive({\r\n 0: 'calc(100%)',\r\n 3: 'calc(75vw + 2px)',\r\n 5: 'min(950px, calc(60vw + 2px))',\r\n }),\r\n\r\n h1: {\r\n padding: '32px',\r\n pt: '20px',\r\n pb: 0,\r\n borderLeft: '1px solid #ccc',\r\n borderRight: '1px solid #ccc',\r\n borderTop: '1px solid #ccc',\r\n width: 'calc(100%)',\r\n background: 'white',\r\n },\r\n\r\n p: {\r\n background: 'palette.background.paper',\r\n padding: '32px',\r\n pb: '20px',\r\n pt: 0,\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n width: 'calc(100% - 2px)',\r\n ml: '1px',\r\n },\r\n },\r\n\r\n '.messages_box': {\r\n fontSize: '22px',\r\n minHeight: '82vh',\r\n paddingTop: '7%',\r\n marginBottom: '8%',\r\n },\r\n '.history__message': {\r\n borderRadius: 'panel',\r\n margin: '15px',\r\n padding: '18px',\r\n border: '1px',\r\n\r\n //boxShadow: 'rgba(50, 50, 93, 0.25) 2px 2px 4px 1px',\r\n '&.user': {\r\n borderRadius: 'chatMessage',\r\n borderTopRightRadius: '0px',\r\n backgroundColor: 'rgb(108 166 203)', //rgb(117 163 192)', //rgb(92, 143, 174)',\r\n color: 'white',\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px',\r\n border: '1px solid rgb(113 145 193)',\r\n },\r\n '&.system': {\r\n borderRadius: 'chatMessage',\r\n borderTopLeftRadius: '0px',\r\n backgroundColor: '#00bcff14',\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px',\r\n border: '1px solid rgb(0 28 38 / 18%)',\r\n },\r\n },\r\n '.history': {\r\n animation: `${animations.fadeInFromBottom} 0.3s`,\r\n padding: '100px 32px 80px 32px',\r\n border: 'none',\r\n height: 'unset',\r\n },\r\n },\r\n '&.mode_list': {\r\n p: {\r\n '&[name=\"semSerDescription\"]': {\r\n padding: '0px 23vw',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n width: 'calc(100% - 2px)',\r\n marginLeft: '1px',\r\n },\r\n },\r\n display: 'block',\r\n gap: spacing(5),\r\n px: responsive({\r\n 0: 5,\r\n 3: 0,\r\n }),\r\n '.search_header_container': {\r\n marginTop: '7px',\r\n h1: {\r\n padding: '0 23vw',\r\n fontSize: '20px',\r\n },\r\n },\r\n '.filters__container': {\r\n padding: '0 25px',\r\n paddingTop: '10px',\r\n },\r\n\r\n '.search_section_container': {\r\n paddingTop: '47px',\r\n mx: 'auto',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n zIndex: 1,\r\n boxShadow: '0 10px 10px #f8f4f4',\r\n width: responsive({\r\n 0: 'calc(100%)',\r\n 3: 'calc(75vw + 50px)',\r\n 5: 'calc(50vw + 50px)',\r\n }),\r\n background: 'palette.background.default',\r\n position: 'sticky',\r\n top: 0,\r\n py: spacing(5),\r\n gap: spacing(5),\r\n },\r\n\r\n '.list_results': {\r\n animation: `${animations.fadeInFromTop} 0.3s`,\r\n\r\n height: '100%',\r\n width: responsive({ 0: '100%', 3: '75vw', 5: '50vw' }),\r\n mx: 'auto',\r\n pt: spacing(3),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(6),\r\n },\r\n '.list_item': {\r\n borderRadius: 'panel',\r\n padding: spacing(7),\r\n backgroundColor: 'palette.background.paper',\r\n boxShadow: '0px 4px 6px #0002',\r\n border: '1px solid',\r\n borderColor: 'palette.border.ghost',\r\n },\r\n '.references_container': {\r\n borderTop: '1px solid',\r\n borderTopColor: 'palette.border.article',\r\n display: 'flex',\r\n gap: spacing(6),\r\n pt: spacing(5),\r\n },\r\n },\r\n\r\n '.autogrow_textarea': {\r\n maxHeight: '20vh',\r\n width: '100%',\r\n },\r\n },\r\n};\r\n","import execution from './execution';\r\nimport connectors from './connectors';\r\nimport { semanticSearch } from './semanticSearch';\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\n/* IMPORT HERE */\r\nconst ai: ThemeUICSSObject = {\r\n connectors,\r\n execution,\r\n semanticSearch,\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default ai;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\nimport { focusOutline, spacing } from '../../../../util';\r\n/* IMPORT HERE */\r\nexport const form: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n display: 'flex',\r\n gap: 0,\r\n mx: 'auto',\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n borderRadius: 'panel',\r\n boxShadow: '0px 2px 6px #0002',\r\n width: '100%',\r\n p: spacing(3),\r\n flexDirection: 'column',\r\n position: 'relative',\r\n\r\n '.chatButtons': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignitems: 'end',\r\n justifyContent: 'end',\r\n position: 'absolute',\r\n bottom: '4px',\r\n right: '4px',\r\n },\r\n '&:focus-within': focusOutline,\r\n\r\n '& > *:focus[class]': {\r\n outlineWidth: 0,\r\n },\r\n\r\n '.filter_button_box': {\r\n position: 'relative',\r\n },\r\n '.applied_filters_label': {\r\n position: 'absolute',\r\n bottom: '21px',\r\n left: '20px',\r\n minWidth: '10px',\r\n maxHeight: '10px',\r\n border: '2px solid white',\r\n borderRadius: '100%',\r\n display: 'inline-flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n backgroundColor: 'palette.error.main',\r\n },\r\n\r\n '.searchTextArea': {\r\n minHeight: '16px',\r\n height: '16px',\r\n width: '100%',\r\n maxHeight: '30vh',\r\n resize: 'none',\r\n py: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n },\r\n\r\n '.ChatBarButton': {\r\n borderRadius: 'panel',\r\n height: '34px',\r\n width: '34px',\r\n flexShrink: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n color: 'palette.text.primary',\r\n },\r\n '.isRecording': {\r\n borderRadius: 'panel',\r\n height: '34px',\r\n width: '34px',\r\n flexShrink: 0,\r\n background: 'transparent',\r\n border: 'none',\r\n color: 'red',\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\nexport const history: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n\r\n display: 'flex',\r\n flexDirection: 'column',\r\n width: '100%',\r\n gap: 2,\r\n p: 3,\r\n\r\n '.history_message__content': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: '16px',\r\n h3: {\r\n fontSize: '20px',\r\n },\r\n },\r\n\r\n '.history_message': {\r\n px: 4,\r\n py: 5,\r\n maxWidth: 'calc(100% - 50px)',\r\n width: 'fit-content',\r\n wordWrap: 'break-word',\r\n whiteSpace: 'pre-wrap',\r\n borderRadius: 'chatMessage',\r\n\r\n '&.last': {\r\n mb: 4,\r\n },\r\n '&.user': {\r\n '&.first': {\r\n borderTopRightRadius: '0px',\r\n },\r\n\r\n '&.first:has(+ .first))': {\r\n mb: 4,\r\n },\r\n backgroundColor: 'rgb(108 166 203)', // TODO: Set the correct color, if necessary, define it in palette\r\n color: 'white', // TODO: Set the correct color, if necessary, define it in palette\r\n '.fileCard__content': {\r\n color: 'palette.text.primary',\r\n },\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px', // TODO: Set the correct color, if necessary, define it in palette\r\n border: '1px solid rgb(113 145 193)', // TODO: Set the correct color, if necessary, define it in palette\r\n alignSelf: 'end',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n },\r\n\r\n '&.system': {\r\n '&.first': {\r\n borderTopLeftRadius: '0px',\r\n },\r\n\r\n '&.first:has(+ .first))': {\r\n mb: 4,\r\n },\r\n backgroundColor: '#00bcff14', // TODO: Set the correct color, if necessary, define it in palette\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px', // TODO: Set the correct color, if necessary, define it in palette\r\n border: '1px solid rgb(0 28 38 / 18%)', // TODO: Set the correct color, if necessary, define it in palette\r\n },\r\n\r\n '&.warning': {\r\n borderRadius: '2px 20px 20px 20px',\r\n alignSelf: 'start',\r\n backgroundColor: '#ffff0024', // TODO: Set the correct color, if necessary, define it in palette\r\n width: '100%',\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px', // TODO: Set the correct color, if necessary, define it in palette\r\n border: '1px solid rgb(0 28 38 / 18%)', // TODO: Set the correct color, if necessary, define it in palette\r\n },\r\n\r\n '&.error': {\r\n borderRadius: '2px 20px 20px 20px',\r\n alignSelf: 'start',\r\n backgroundColor: '#fd84212b', // TODO: Set the correct color, if necessary, define it in palette\r\n width: '100%',\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px', // TODO: Set the correct color, if necessary, define it in palette\r\n border: '1px solid rgb(0 28 38 / 18%)', // TODO: Set the correct color, if necessary, define it in palette\r\n },\r\n\r\n '&.information': {\r\n borderRadius: '2px 20px 20px 20px',\r\n alignSelf: 'start',\r\n backgroundColor: '#00bcff14', //'#2222cc2b',\r\n width: '100%',\r\n boxShadow: 'rgba(50, 50, 93, 0.15) 1px 1px 2px 1px', // TODO: Set the correct color, if necessary, define it in palette\r\n border: '1px solid rgb(0 28 38 / 18%)', // TODO: Set the correct color, if necessary, define it in palette\r\n },\r\n },\r\n\r\n '.history_message__attachments': {\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n\r\n '.labelBox': {\r\n width: 'max-content',\r\n background: '#fafafa',\r\n color: 'palette.text.primary',\r\n fontSize: '14px',\r\n '.labelAndIcon ': {\r\n fontSize: '14px',\r\n },\r\n },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\nexport const controller: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'stretch',\r\n maxHeight: '50vh',\r\n gap: 3,\r\n flexBasis: '50vh',\r\n\r\n '.autoscrollContainer': {\r\n flexGrow: 1,\r\n flexShrink: 1,\r\n overflow: 'auto',\r\n },\r\n\r\n '.search_controls': {\r\n flexShrink: 0,\r\n },\r\n};\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\n/* IMPORT HERE */\r\nexport const attachments: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n alignItems: 'center',\r\n display: 'flex',\r\n flexDirection: responsive({ 0: 'column', 3: 'row' }),\r\n flexWrap: 'wrap',\r\n gap: spacing(3),\r\n\r\n '.attachments__more_button': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n borderRadius: 'elementBox',\r\n boxShadow: 'sharp',\r\n p: 2,\r\n },\r\n\r\n '.file_box': {\r\n alignItems: 'center',\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n borderRadius: 'elementBox',\r\n boxShadow: 'sharp',\r\n display: 'flex',\r\n gap: spacing(3),\r\n width: responsive({\r\n 0: '100%',\r\n 3: 'min(90vw, 200px)',\r\n }),\r\n p: 2,\r\n },\r\n\r\n '.file_box__icon': {\r\n flexShrink: 0,\r\n },\r\n\r\n '.file_box__name': {\r\n boxSizing: 'border-box',\r\n flexGrow: 1,\r\n margin: '0px',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n },\r\n\r\n '.file_box__remove': {\r\n flexShrink: 0,\r\n p: 4,\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n\r\nexport const message: ThemeUICSSObject = {\r\n position: 'relative',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n '.closeButton': {\r\n borderRadius: '5px',\r\n right: '0px',\r\n top: '-2px',\r\n zIndex: '15',\r\n position: 'absolute',\r\n variant: 'buttons.icon-outline-danger',\r\n },\r\n\r\n genericBox: {\r\n margin: '10px',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n padding: '12px',\r\n },\r\n\r\n fileName: {\r\n bottom: '4px',\r\n right: '4px',\r\n fontSize: '12px',\r\n color: '#333',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n width: 'inherit',\r\n textAlign: 'center',\r\n px: '5px',\r\n },\r\n\r\n textBox: {\r\n variant: 'layout.common.components.aiMessage.genericBox',\r\n width: '50px',\r\n padding: '10px',\r\n backgroundColor: '#fff',\r\n border: '1px solid #ddd',\r\n borderRadius: '4px',\r\n position: 'relative',\r\n },\r\n\r\n textSnippet: {\r\n bottom: '4px',\r\n right: '4px',\r\n fontSize: '12px',\r\n color: '#555',\r\n },\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n\r\nexport const assistant: ThemeUICSSObject = {\r\n floatingAssistant: {\r\n '& div.modal__content[class]': {\r\n p: 3,\r\n width: 'min(90vw, 500px)',\r\n },\r\n\r\n '.modal__main': {\r\n maxWidth: 'unset',\r\n overflow: 'hidden',\r\n },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\nimport { form } from './form';\r\nimport { history } from './history';\r\nimport { controller } from './controller';\r\nimport { attachments } from './attachments';\r\nimport { message } from './message';\r\nimport { assistant } from './assistant';\r\n/* IMPORT HERE */\r\nexport const chat: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n assistant,\r\n form,\r\n history,\r\n controller,\r\n attachments,\r\n message,\r\n};\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { modals } from './modals';\r\nimport { tables } from './tables';\r\nimport { forms } from './forms';\r\nimport { trees } from './trees';\r\nimport { tooltips } from './tooltips';\r\nimport { components } from './components';\r\nimport { boxes } from './boxes';\r\nimport ai from './ai';\r\nimport { chat } from './chat';\r\n/* IMPORT HERE */\r\nexport const common: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n boxes,\r\n forms,\r\n modals,\r\n tables: tables(theme),\r\n components: components,\r\n trees,\r\n tooltips,\r\n ai,\r\n chat,\r\n /* PREPEND HERE */\r\n };\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\n/* IMPORT HERE */\n\nexport const collector: ThemeUICSSObject = {\n /* PREPEND HERE */\n formContainer: {\n display: 'flex',\n flexDirection: 'column',\n flexShrink: '1 !important',\n minWidth: 'min(400px, calc(100vw - 52px))',\n overflow: 'hidden',\n pr: 2,\n\n '.collector__fields': {\n overflow: 'auto',\n gap: '8px',\n display: 'flex',\n flexDirection: 'column',\n },\n\n '.collector__buttons': {\n display: 'flex',\n justifyContent: 'end',\n alignItems: 'end',\n gap: 4,\n },\n\n '.fieldWrapper.checkbox': {\n display: 'flex',\n flexDirection: 'row-reverse',\n gap: 4,\n alignItems: 'start',\n justifyContent: 'start',\n },\n\n '.validationsForm': {\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n overflow: 'hidden',\n },\n },\n\n modal: {\n '.modal__main': {},\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nexport const speedui: ThemeUICSSObject = {\n /* PREPEND HERE */\n\n modal: {\n alignItems: 'center',\n display: 'flex',\n justifyContent: 'center',\n left: 0,\n p: 5,\n pointerEvents: 'none',\n position: 'fixed',\n right: 0,\n top: 0,\n\n '.modal__main': {\n pointerEvents: 'all',\n },\n\n '.speedui__selector': {\n maxHeight: 'calc(100vh - 100px)',\n overflowY: 'auto',\n overflowX: 'hidden',\n position: 'relative',\n },\n\n '.speedui__autocomplete': {\n position: 'sticky',\n top: 0,\n },\n\n '.speedui__autocomplete, .speedui__option': {\n p: 3,\n textAlign: 'left',\n width: '400px',\n scrollMarginTop: '50px',\n },\n\n '.speedui__option.selected': (theme) => ({\n backgroundColor: theme.palette.getColor(\n theme.palette.background.paper,\n 'selected',\n ),\n color: theme.palette.getContrastText(\n theme.palette.getColor(theme.palette.background.paper, 'selected'),\n ),\n }),\n },\n};\n","import { ThemeUICSSObject } from '@apia/theme';\nimport { collector } from './collector';\nimport { speedui } from './speedui';\n/* IMPORT HERE */\n\nexport const util: ThemeUICSSObject = {\n collector,\n speedui,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\n\nconst frontColor = 'hsl(196, 37%, 13%)';\nexport const charts: ThemeUICSSObject = {\n red: {\n schema: 'schemas.red',\n },\n orange: {\n schema: 'schemas.orange',\n },\n green: {\n schema: 'schemas.green',\n },\n blue: {\n schema: 'schemas.blue',\n },\n violet: {\n schema: 'schemas.violet',\n },\n turquoise: {\n schema: 'schemas.turquoise',\n },\n yellow: {\n schema: 'schemas.yellow',\n },\n grey: {\n schema: 'schemas.grey',\n },\n ocean: {\n schema: 'schemas.ocean',\n },\n sunset: {\n schema: 'schemas.sunset',\n },\n common: {\n axis: {\n stroke: frontColor,\n title: frontColor,\n },\n schema: frontColor,\n background: 'hsl(200deg 20% 98%)',\n grid: {\n stroke: frontColor,\n opacity: '0.1',\n },\n toolTip: {\n backgroundColor: 'rgb(232, 241, 255)',\n border: '1px solid #07c',\n color: frontColor,\n padding: '.3rem .5rem',\n borderRadius: '3px',\n fontSize: '18px',\n boxShadow: '0 1px 2px rgba(33,33,33,0.2)',\n lineHeight: '1em',\n },\n },\n};\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst form: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n\r\n flexDirection: 'column',\r\n\r\n '.fieldWrapper': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'stretch',\r\n\r\n '&.checkbox': {\r\n alignItems: 'start',\r\n },\r\n },\r\n '.error': {\r\n borderLeftStyle: 'solid',\r\n borderLeftWidth: '4px',\r\n borderLeftColor: 'danger',\r\n },\r\n '.touched': {\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n borderColor: 'palette.primary.main',\r\n\r\n '&.radio-label': {\r\n border: 'none',\r\n\r\n 'input[role]:checked~svg': {\r\n '&, path': {\r\n color: 'palette.primary.main',\r\n },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default form;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport form from './form';\r\n\r\nexport const validations: ThemeUICSSObject = {\r\n form,\r\n};\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { common } from './common';\nimport { util } from './util';\nimport { charts } from './charts';\nimport { validations } from './validations';\n/* IMPORT HERE */\n\nexport const layout: (theme: Theme) => Record<string, ThemeUICSSObject> = (\n theme,\n) => {\n return {\n charts,\n common: common(theme),\n util,\n validations,\n /* PREPEND HERE */\n };\n};\n","import { ColorModesScale, Theme, ThemeUICSSObject } from 'theme-ui';\nimport merge from 'lodash-es/merge';\nimport { setValueByPath } from '@apia/util';\nimport { baseTheme as baseThemeMaker } from '../base/baseTheme';\nimport {\n TCustomPalette,\n TParsedPalette,\n TThemeModifier,\n} from '../base/colors/types';\nimport { getThemeColorsObject, parsePalette } from '../base/colors';\nimport defaultPalette from '../base/colors/defaultPalette';\nimport forms from '../base/forms';\nimport { layout } from '../base/layout';\n\nconst makeTheme = <T extends Theme>(t: T) => {\n return t;\n};\n\nlet declaredStyles: ThemeUICSSObject = {};\n\nexport function declareStyles(\n path: string,\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\n) {\n const newStyles = {};\n setValueByPath(newStyles, path, styles);\n declaredStyles = merge(declaredStyles, newStyles);\n}\n\nexport function getMainTheme(\n customTheme?: () => Omit<Theme, 'palette'>,\n customPalette?: TCustomPalette,\n\n themeModifier?: TThemeModifier,\n) {\n const palette = parsePalette(merge({}, defaultPalette, customPalette));\n window.currentPalette = palette;\n\n const baseTheme = baseThemeMaker() as Theme;\n\n baseTheme.palette = palette;\n\n baseTheme.colors = getThemeColorsObject(\n baseTheme,\n ) as unknown as ColorModesScale;\n baseTheme.forms = forms(baseTheme) as any;\n baseTheme.layout = merge(layout(baseTheme), baseTheme.layout);\n\n baseTheme.styles = merge({}, customTheme?.().styles, {\n root: baseTheme.layout.root,\n });\n\n const theme = makeTheme(\n merge(baseTheme, { layout: declaredStyles }, customTheme?.() ?? {}, {\n palette: {} as TParsedPalette,\n }),\n );\n\n return themeModifier?.(theme) ?? theme;\n}\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport merge from 'lodash-es/merge';\nimport { EventEmitter, setValueByPath, useMount } from '@apia/util';\nimport { useRef, useState } from 'react';\nimport { getMainTheme } from './getMainTheme';\nimport { CustomTheme } from '../themeuiExports';\nimport { TCustomPalette, TThemeModifier } from '../base/colors/types';\n\nlet declaredStyles: ThemeUICSSObject = {};\n\nexport function getInjectedStyles() {\n return injectedStyles;\n}\n\nconst injectedStyles: Record<string, ThemeUICSSObject> = {};\n\nclass MainThemeEmitter extends EventEmitter<{\n newStyles: {\n path: string;\n styles: ThemeUICSSObject;\n };\n}> {}\n\nexport const mainThemeEmitter = new MainThemeEmitter();\n\nfunction handleNewStyles(ev: { path: string; styles: ThemeUICSSObject }) {\n injectedStyles[ev.path] = ev.styles;\n}\n\nconst unSubscribe = mainThemeEmitter.on('newStyles', handleNewStyles);\n\nexport function declareStyles(\n path: string,\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\n) {\n const newStyles = {};\n setValueByPath(newStyles, path, styles);\n declaredStyles = merge(declaredStyles, newStyles);\n}\n\nexport function useMainTheme(\n customTheme?: () => CustomTheme,\n customPalette?: TCustomPalette,\n themeModifier?: TThemeModifier,\n) {\n const [theme, setTheme] = useState<Theme>(\n getMainTheme(customTheme, customPalette, themeModifier),\n );\n\n const previousTheme = useRef<(() => CustomTheme) | undefined>(customTheme);\n const previousPalette = useRef<TCustomPalette | undefined>(customPalette);\n\n if (previousTheme.current !== customTheme)\n setTheme(getMainTheme(customTheme));\n\n previousTheme.current = customTheme;\n\n if (previousPalette.current !== customPalette)\n setTheme(getMainTheme(customTheme, customPalette));\n\n previousPalette.current = customPalette;\n\n useMount(() => {\n setTheme((current) => {\n unSubscribe();\n let initialTheme = { ...current };\n Object.entries(injectedStyles).forEach(([path, styles]) => {\n const newStyles = setValueByPath({}, path, styles);\n initialTheme = merge(initialTheme, newStyles);\n });\n return initialTheme;\n });\n return mainThemeEmitter.on('newStyles', (ev) => {\n const newStyles = setValueByPath({}, ev.path, ev.styles);\n setTheme((current) => merge({ ...current }, newStyles));\n });\n });\n\n return theme;\n}\n","import { ThemeUIProvider, Theme } from 'theme-ui';\nimport { ReactNode } from 'react';\nimport { getMainTheme } from './getMainTheme';\n\ninterface TThemeProvider {\n children: ReactNode;\n customTheme?: () => Theme;\n}\n\nexport const CustomThemeProvider = ({\n children,\n customTheme,\n}: TThemeProvider) => {\n const theme: Theme = getMainTheme(customTheme);\n\n return <ThemeUIProvider theme={theme}>{children}</ThemeUIProvider>;\n};\n","import { setValueByPath } from '@apia/util';\nimport {\n FC,\n MutableRefObject,\n ReactNode,\n Suspense,\n useMemo,\n useRef,\n} from 'react';\nimport { ThemeUICSSObject, Box, useThemeUI } from 'theme-ui';\nimport { getVariant } from '../util/getVariant';\nimport { CustomThemeProvider } from './CustomThemeProvider';\n\n/**\n * Permite crear un componente cuyos estilos pueden ser redefinidos por un\n * usuario final.\n *\n * Esto es así puesto que los estilos definidos serán agregados a un árbol que\n * el usuario puede consultar y sobreescribir. De esta manera los estilos\n * finales del componente serán aquellos definidos en este método pero\n * sobreescritos por los definidos por el usuario si es que existen.\n *\n * **Importante** Para aplicar la variante, se aplica un box alrededor del\n * componente que se está renderizando, con className=\"variant__holder\". En caso\n * de que se quisiera evitar este comportamiento, se debe pasar unwraped = true\n *\n * @param displayName Este parámetro es importante para el debugger de React.\n * @param stylesPath La ruta donde se aplicarán los estilos, es importante asegurarse de que esa ruta ya no está siendo utilizada por otro componente.\n * @param styles Un objeto de estilos de ThemeUI\n * @param Component La definición del componente.\n * @returns Un componente reutilizable y exportable que tiene estilos aplicados.\n */\nexport function makeStyledComponent<T extends object>(\n displayName: string,\n stylesPath: string,\n styles: ThemeUICSSObject,\n Component: FC<T>,\n unwraped = false,\n) {\n return Object.assign(\n (props: T) => {\n const avoidFirstRender = useRef(0);\n const { theme: tuiTheme } = useThemeUI();\n const theme = useMemo(\n () => () => ({\n ...tuiTheme,\n ...setValueByPath({}, stylesPath, styles),\n }),\n [tuiTheme],\n );\n\n if (unwraped) {\n return (\n <CustomThemeProvider customTheme={theme}>\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\n <Suspense>\n <Component {...props} />\n </Suspense>\n </NoThemePrevent>\n </CustomThemeProvider>\n );\n }\n return (\n <CustomThemeProvider customTheme={theme}>\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\n <Box className=\"variant__holder\" {...getVariant(stylesPath)}>\n <Suspense>\n <Component {...props} />\n </Suspense>\n </Box>\n </NoThemePrevent>\n </CustomThemeProvider>\n );\n },\n { displayName },\n );\n}\n\nconst NoThemePrevent = ({\n avoidFirstRender,\n children,\n}: {\n avoidFirstRender: MutableRefObject<number>;\n children: ReactNode;\n}) => {\n // eslint-disable-next-line no-param-reassign\n avoidFirstRender.current++;\n\n if (avoidFirstRender.current <= 1) return null;\n\n return <>{children}</>;\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { mainThemeEmitter } from './useMainTheme';\n\n/**\n * Esta función permite agregar estilos al tema principal de la aplicación, de\n * modo que estén disponibles para cualquier componente que lo requirea.\n *\n * @example\n *\n * injectStyles('buttons.myRedButton', {\n * variant: 'buttons.primary',\n * backgroundColor: 'red',\n * })\n */\nexport function injectStyles(path: string, styles: ThemeUICSSObject): void;\n\n/**\n * Esta función permite agregar estilos al tema principal de la aplicación, de\n * modo que estén disponibles para cualquier componente que lo requirea.\n *\n * @example\n *\n * injectStyles({\n * layout: {\n * panels: {\n * myPanel: {\n * ...\n * }\n * }\n * }\n * })\n */\nexport function injectStyles(styles: ThemeUICSSObject): void;\n\nexport function injectStyles(\n par1: string | ThemeUICSSObject,\n par2?: ThemeUICSSObject,\n) {\n const path = typeof par1 === 'string' ? par1 : '';\n const styles = typeof par1 === 'string' ? (par2 as ThemeUICSSObject) : par1;\n\n mainThemeEmitter.emit('newStyles', { path, styles });\n}\n","export const spacingLayouts = [\n 'dense',\n 'clever',\n 'vertical__clever',\n 'horizontal__clever',\n] as const;\n\nexport type TSpacingLayout = (typeof spacingLayouts)[number];\n\nexport function getSpacingLayouts() {\n return {\n '&.dense': {\n px: 0,\n py: 0,\n },\n '&.horizontal__clever': {\n px: 4,\n py: 0,\n },\n '&.vertical__clever': {\n px: 0,\n py: 4,\n },\n '&.clever': {\n px: 4,\n py: 4,\n },\n };\n}\n","import { Theme, ThemeProvider } from 'theme-ui';\nimport { ReactNode, useMemo } from 'react';\nimport { useMainTheme } from './methods/useMainTheme';\nimport { TCustomPalette, TThemeModifier } from './base/colors/types';\n\ninterface TThemeProvider {\n children: ReactNode;\n customTheme?: () => Omit<Theme, 'palette'>;\n customPalette?: () => TCustomPalette | undefined;\n themeModifier?: TThemeModifier;\n}\n\nlet timeout = -1;\nfunction logTheme(theme: unknown) {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n console.info('Theme log: ', { theme });\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, 500) as any;\n}\n\nexport const ApiaThemeProvider = ({\n children,\n customTheme,\n customPalette,\n themeModifier,\n}: TThemeProvider) => {\n const parsedCustomPalette = useMemo(() => {\n return customPalette?.();\n }, [customPalette]);\n\n const theme: Theme = useMainTheme(\n customTheme,\n parsedCustomPalette,\n themeModifier,\n );\n\n logTheme(theme);\n\n return <ThemeProvider theme={theme}>{children}</ThemeProvider>;\n};\n","import { IMarkdownParser } from './types';\n\nexport function assignHelp(fn: IMarkdownParser) {\n Object.assign(fn, {\n help: `A markdown parser. Accepts a configuration object with the following structure: \n \ninterface IMarkdownFile {\n /**\n * Cadena de caracteres de CSS\n */\n additionalStyles?: string;\n /**\n * Contenido markdown\n */\n content: string;\n /**\n * Si el template html por defecto no es suficiente, se puede optar por un\n * template a medida.\n */\n htmlTemplate?: IMarkdownHtml;\n /**\n * Título que se mostrará en el html\n */\n title: string;\n}`,\n });\n}\n","import type { StateBlock, StateInline, TagToken } from 'remarkable/lib';\nimport type { Remarkable } from 'remarkable';\n\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nexport class ErrorImporting {}\n\nexport type IMarkdownHtml = (\n title: string,\n css: string,\n body: string,\n) => string;\n\nexport type IMarkdownParser = (\n options: IMarkdownConfiguration,\n) => Promise<string>;\n\nexport interface IMarkdownConfiguration {\n /**\n * Cadena de caracteres de CSS\n */\n additionalStyles?: IMarkdownStylesAggregator;\n /**\n * Permite agregar contenido al body del html generado.\n */\n additionalBodyContent?: Partial<{ before: string; after: string }>;\n /**\n * Contenido markdown\n */\n content: string;\n /**\n * Permite el pasaje de extensiones adicionales\n */\n extensions?: RemarkableExtension[];\n /**\n * Si el template html por defecto no es suficiente, se puede optar por un\n * template a medida.\n */\n htmlTemplate?: IMarkdownHtml;\n /**\n * If passed, will print the table of contents with the indicated title.\n */\n tableOfContentsTitle?: string;\n /**\n * Título que se mostrará en el html\n */\n title: string;\n}\n\nexport interface IRemarkableInlineExtension {\n name: string;\n parser: (state: StateInline, checkMode: boolean) => boolean;\n replacer: (md: Remarkable) => (tokens: TagToken[], idx: number) => string;\n styles: () => string;\n}\n\nexport interface IRemarkableBlockExtension {\n name: string;\n parser: (\n state: StateBlock,\n startLine: number,\n endLine: number,\n checkMode: boolean,\n ) => boolean;\n replacer: (md: Remarkable) => (tokens: TagToken[], idx: number) => string;\n styles: () => string;\n}\n\nexport type RemarkableExtension =\n | IRemarkableInlineExtension\n | IRemarkableBlockExtension;\n\nexport type IMarkdownStylesAggregator = () => string;\n","import type { IRemarkableInlineExtension } from '../types';\n\ntype ErrorToken = {\n type: string;\n content: string;\n level: number;\n};\n\nconst name = 'error';\n\n/**\n * Esta extensión permite mostrar un cuadro de advertencia usando la sintaxis:\n *\n * !!! Esto es una advertencia !!!\n */\nexport const errorExtension: IRemarkableInlineExtension = {\n name,\n parser: (state, silent) => {\n const start = state.pos;\n if (\n state.src.charCodeAt(start) !== 0x21 /* ! */ ||\n state.src.charCodeAt(start + 1) !== 0x21 /* ! */ ||\n state.src.charCodeAt(start + 2) !== 0x21 /* ! */\n ) {\n return false;\n }\n\n const match = state.src.slice(start).match(/^!!!(.+?)!!!/);\n\n if (!match || start + match[0].length > state.posMax) {\n return false;\n }\n\n if (!silent) {\n state.push({\n type: name,\n content: match[1],\n level: state.level,\n });\n }\n\n state.pos += match[0].length;\n return true;\n },\n\n replacer: (md) => (tokens, idx) => {\n const token = tokens[idx] as ErrorToken;\n return `<div class=\"${name}\">${md.renderInline(token.content)}</div>`;\n },\n\n styles: () => `.${name} {\n padding: var(--space-5);\n background-color: var(--color-error-back);\n border-left: 3px solid var(--color-error-border);\n color: var(--color-error-text);\n margin: 10px 0;\n box-shadow: 0 2px 2px rgba(0,0,0,0.2);\n}`,\n};\n","import { IRemarkableBlockExtension } from '../types';\n\nclass HeadingToken {\n _content: { level: number; text: string; id?: string };\n\n get content() {\n return JSON.stringify(this._content);\n }\n\n type = 'heading';\n\n constructor(\n content: { level: number; text: string; id?: string },\n public level: number,\n ) {\n this._content = content;\n }\n}\n\nconst name = 'heading';\n\nexport const headerExtension: IRemarkableBlockExtension = {\n name,\n parser(state, startLine, endLine, silent) {\n const line = state.getLines(startLine, startLine + 1, 0, false);\n const result = line.match(/(#+) ([^\\{\\n]+)(?:\\{: #([^\\}]+?) *\\})?/);\n if (!result) return false;\n\n const level = result[1].length;\n const text = result[2];\n const id = (result[3] ?? result[2]).replaceAll(/\\s+/g, '-');\n\n if (!silent)\n state.tokens.push(new HeadingToken({ level, text, id }, state.level));\n\n state.line += 1;\n return true;\n },\n replacer: (md) => (tokens, idx) => {\n const token = tokens[idx] as HeadingToken;\n const tag = `h${token._content.level}`;\n return `<${tag} ${\n token._content.id ? `id=\"${token._content.id.toLowerCase()}\"` : ''\n }>${md.renderInline(token._content.text)}</${tag}>`;\n },\n styles() {\n return '';\n },\n};\n","import type { IRemarkableInlineExtension } from '../types';\n\ntype SuccessToken = {\n type: string;\n content: string;\n level: number;\n};\n\nconst name = 'success';\n\n/**\n * Esta extensión permite mostrar un cuadro de advertencia usando la sintaxis:\n *\n * !!! Esto es una advertencia !!!\n */\nexport const successExtension: IRemarkableInlineExtension = {\n name,\n parser: (state, silent) => {\n const start = state.pos;\n if (\n state.src.charAt(start + 1) !== '$' ||\n state.src.charAt(start + 1) !== '$'\n ) {\n return false;\n }\n\n const match = state.src.slice(start).match(/^\\$\\$(.+?)\\$\\$/);\n\n if (!match || start + match[0].length > state.posMax) {\n return false;\n }\n\n if (!silent) {\n state.push({\n type: name,\n content: match[1],\n level: state.level,\n });\n }\n\n state.pos += match[0].length;\n return true;\n },\n\n replacer: (md) => (tokens, idx) => {\n const token = tokens[idx] as SuccessToken;\n return `<div class=\"${name}\">${md.renderInline(token.content)}</div>`;\n },\n\n styles: () => `.${name} {\n padding: var(--space-5);\n background-color: var(--color-success-back);\n border-left: 3px solid var(--color-success-border);\n color: var(--color-success-text);\n margin: 10px 0;\n box-shadow: 0 2px 2px rgba(0,0,0,0.2);\n}`,\n};\n","import { IRemarkableBlockExtension } from '../../types';\nimport type { Remarkable } from 'remarkable';\nimport {\n MarkdownTableDefinition,\n MarkdownTableCell,\n MarkdownTableObjectCell,\n} from './types';\nimport { CellParser } from './CellParser';\nimport { StateBlock, TagToken } from 'remarkable/lib';\n\nfunction getCell(c: MarkdownTableCell): MarkdownTableObjectCell {\n return typeof c === 'string' ? { content: c } : c;\n}\n\nclass TableToken {\n content: string;\n level = 1;\n type = name;\n constructor(\n content: MarkdownTableDefinition,\n public lines: [number, number],\n ) {\n this.content = JSON.stringify(content);\n }\n\n getTable() {\n const newTable = JSON.parse(this.content) as MarkdownTableDefinition;\n\n newTable.header = newTable.header.map((c) => getCell(c));\n newTable.rows = newTable.rows.map((row) =>\n row.map((cell) => getCell(cell)),\n );\n\n return newTable;\n }\n\n #getColumnAlignment(table: MarkdownTableDefinition, index: number) {\n let sum = 0,\n i = 0;\n for (i = 0; i < table.header.length && sum <= index; i++) {\n sum += Number.parseInt(getCell(table.header[i]).colSpan ?? '1', 10);\n }\n return getCell(table.header[i - 1]).align;\n }\n getTableString(parsers: CellParser[], md: Remarkable) {\n const table = this.getTable();\n\n const head =\n '<thead><tr>' +\n table.header\n .map((current) => {\n const cell = getCell(current);\n\n return `<th ${parsers\n .map((parser) => parser.getHtmlAttributes(current))\n .join(' ')}>${md.renderInline(cell.content)}</th>`;\n })\n .join('') +\n '</tr></thead>';\n\n const body =\n '<tbody>' +\n table.rows\n .map((row) => {\n return (\n '<tr>' +\n row\n .map((current, i) => {\n // eslint-disable-next-line no-param-reassign\n current.align = this.#getColumnAlignment(table, i);\n\n return `<td ${parsers\n .map((parser) => parser.getHtmlAttributes(current))\n .join(' ')}>${md.renderInline(current.content)}</td>`;\n })\n .join('') +\n '</tr>'\n );\n })\n .join('\\n') +\n '</tbody>';\n\n return `<table ${\n table.id ? `id=\"${table.id}\"` : ''\n }>${head}${body}</table>`;\n }\n}\n\nconst name = 'advancedTable';\n/**\n * Identifica si una línea es una fila de cabecera válida\n */\nconst headerRowRegex = /^ *(?:\\{ *#([\\w\\-]+) *\\})? *((?:\\|.+)+\\|) *$/;\n/**\n * Identifica si una línea es una fila válida\n */\nconst rowRegex = /^ *(?:\\|.+)+\\| *$/;\n/**\n * Identifica si una línea es el separador entre header y body de la tabla\n */\nconst separatorRegex = /^ *(?:\\| *:? *----* *:? *)+\\| *$/;\n/**\n * Identifica los elementos de una celda\n */\n\n/**\n * How a table looks like:\n * \n| (.class) Cell1 | Cell2 | Cell3 | **_Cell4_** | Cell5 |\n|-------|-------|:-----:|------------:|-------|\n| (.class) CellContent | | | | |\n */\n\n/**\n * Esta extensión permite implementar tablas más complejas en markdown\n */\nexport class TableExtension implements IRemarkableBlockExtension {\n #cellParsers: CellParser[] = [\n {\n /** className */\n getHtmlAttributes(cell) {\n return `${cell.className ? ` class=\"${cell.className ?? ''}\"` : ''}`;\n },\n parseCellString(content) {\n const classNameRegex = /\\(\\.([^\\)]+)\\)/;\n const className = content.match(classNameRegex)?.[1];\n\n return {\n parsedCell: { className },\n newContent: content.replace(classNameRegex, ''),\n };\n },\n },\n {\n /** rowSpan & colSpan */\n getHtmlAttributes(cell) {\n return [\n `${cell.rowSpan ? `rowspan=\"${cell.rowSpan}\"` : ''}`,\n `${cell.colSpan ? `colspan=\"${cell.colSpan}\"` : ''}`,\n ].join(' ');\n },\n parseCellString(content) {\n const rowSpanRegex = /\\(\\{rowSpan:(\\d+)\\}\\)/;\n const rowSpan = content.match(rowSpanRegex)?.[1];\n const colSpanRegex = /\\(\\{colSpan:(\\d+)\\}\\)/;\n const colSpan = content.match(colSpanRegex)?.[1];\n\n return {\n parsedCell: {\n rowSpan,\n colSpan,\n },\n newContent: content\n .replace(rowSpanRegex, '')\n .replace(colSpanRegex, ''),\n };\n },\n },\n {\n /** styles */\n getHtmlAttributes(cell) {\n const styles = [];\n\n if (cell.align) styles.push(`text-align: ${cell.align}`);\n if (cell.style) styles.push(cell.style);\n\n const style = styles.join('; ');\n\n return `${style ? ` style=\"${style}\"` : ''}`;\n },\n parseCellString(content) {\n const stylesRegex = /\\(\\{style:([^\\}]+)\\}\\)/;\n const style = content.match(stylesRegex)?.[1] ?? '';\n\n return {\n parsedCell: { style },\n newContent: content.replace(stylesRegex, ''),\n };\n },\n },\n ];\n #parseCell(content: string) {\n const cell: MarkdownTableCell = { content };\n this.#cellParsers.forEach((current) => {\n const result = current.parseCellString(cell.content);\n Object.assign(cell, result.parsedCell, { content: result.newContent });\n });\n return cell;\n }\n\n #parseHeadRow(line: string) {\n const result = line.match(headerRowRegex);\n const id = result![1] ?? '';\n const content = result![2]!;\n\n return {\n id,\n content: content\n .split(/ *\\| */)\n .slice(1, -1)\n .map((current) => {\n return this.#parseCell(current);\n }),\n };\n }\n\n #parseRow(content: string) {\n return content\n .split(/ *\\| */)\n .slice(1, -1)\n .map((current) => {\n return this.#parseCell(current);\n });\n }\n\n name = name;\n parser = (\n state: StateBlock,\n startLine: number,\n endLine: number,\n checkMode: boolean,\n ): boolean => {\n if (startLine + 1 >= endLine) {\n return false;\n }\n\n const firstLineIsHeader = !!state\n .getLines(startLine, startLine + 1, 0, false)\n .match(headerRowRegex);\n\n if (checkMode) {\n return firstLineIsHeader;\n }\n\n if (firstLineIsHeader) {\n const headLine = state.getLines(startLine, startLine + 1, 0, false);\n const separatorLine = state.getLines(\n startLine + 1,\n startLine + 2,\n 0,\n false,\n );\n\n if (!separatorLine.match(separatorRegex)) return false;\n\n try {\n const parsedHead = this.#parseHeadRow(headLine);\n\n const alignments = separatorLine.split(/ *\\| */).filter(Boolean);\n\n alignments.map((current, i) => {\n if (current.match(/: *----* *:/)) {\n parsedHead.content[i].align = 'center';\n } else if (current.match(/----* *:/)) {\n parsedHead.content[i].align = 'right';\n }\n });\n\n const rows: MarkdownTableObjectCell[][] = [];\n let i = startLine + 2;\n let line: string | null = null;\n while ((line = state.getLines(i, i + 1, 0, false))) {\n if (line.match(rowRegex)) {\n const rowCells = this.#parseRow(line);\n line = state.getLines(++i, i + 1, 0, false);\n rows.push(rowCells);\n } else {\n break;\n }\n }\n\n state.tokens.push(\n new TableToken(\n { id: parsedHead.id, header: parsedHead.content, rows },\n [startLine, startLine + 2 + rows.length],\n ),\n );\n state.line += 2 + rows.length;\n\n return true;\n } catch (e) {\n console.error(e);\n return false;\n }\n }\n\n return false;\n };\n replacer = (md: Remarkable) => (tokens: TagToken[], idx: number) => {\n return (tokens[idx] as TableToken).getTableString(this.#cellParsers, md);\n };\n styles = () => '';\n}\n","import type { IRemarkableInlineExtension } from '../types';\n\ntype WarningToken = {\n type: string;\n content: string;\n level: number;\n};\n\nconst name = 'warning';\n\n/**\n * Esta extensión permite mostrar un cuadro de advertencia usando la sintaxis:\n *\n * !! Esto es una advertencia !!\n */\nexport const warningExtension: IRemarkableInlineExtension = {\n name,\n parser: (state, silent) => {\n const start = state.pos;\n if (\n state.src.charCodeAt(start) !== 0x21 /* ! */ ||\n state.src.charCodeAt(start + 1) !== 0x21 /* ! */\n ) {\n return false;\n }\n\n const match = state.src.slice(start).match(/^!!(.+?)!!/);\n\n if (!match || start + match[0].length > state.posMax) {\n return false;\n }\n\n if (!silent) {\n state.push({\n type: name,\n content: match[1],\n level: state.level,\n });\n }\n\n state.pos += match[0].length;\n return true;\n },\n\n replacer: (md) => (tokens, idx) => {\n const token = tokens[idx] as WarningToken;\n return `<div class=\"${name}\">${md.renderInline(token.content)}</div>`;\n },\n\n styles: () => `.${name} {\n padding: var(--space-5);\n background-color: var(--color-warning-back);\n border-left: 3px solid var(--color-warning-border);\n color: var(--color-warning-text);\n margin: 10px 0;\n box-shadow: 0 2px 2px rgba(0,0,0,0.2);\n}`,\n};\n","import { errorExtension } from './error';\nimport { headerExtension } from './header';\nimport { successExtension } from './success';\nimport { TableExtension } from './table';\nimport { warningExtension } from './warning';\n\nexport const markdownExtensions = [\n headerExtension,\n errorExtension,\n successExtension,\n new TableExtension(),\n warningExtension,\n];\n","import { markdownExtensions } from './extensions';\nimport {\n ErrorImporting,\n IRemarkableBlockExtension,\n IRemarkableInlineExtension,\n RemarkableExtension,\n} from './types';\n\nfunction isInlineExtension(\n ext: RemarkableExtension,\n): ext is IRemarkableInlineExtension {\n return ext.parser.length === 2;\n}\n\nfunction isBlockExtension(\n ext: RemarkableExtension,\n): ext is IRemarkableBlockExtension {\n return ext.parser.length === 4;\n}\n\nexport async function getRemarkable(extensions?: RemarkableExtension[]) {\n const md = new ((await import('remarkable'))?.Remarkable ?? ErrorImporting)({\n html: true,\n });\n if (md instanceof ErrorImporting)\n throw new Error('Could not import remarkable, cannot continue');\n\n md.block.ruler.disable(['table']);\n\n [...(extensions ?? []), ...markdownExtensions].forEach((ext) => {\n if (isInlineExtension(ext))\n md.inline.ruler.before('text', ext.name, ext.parser, {});\n else if (isBlockExtension(ext))\n md.block.ruler.before('code', ext.name, ext.parser, {});\n md.renderer.rules[ext.name] = ext.replacer(md);\n });\n\n return md;\n}\n","import { assignHelp } from './help';\nimport { ErrorImporting, IMarkdownParser } from './types';\nimport { getRemarkable } from './getRemarkable';\nimport { MarkdownBuilder } from './builder/MarkdownBuilder';\n\n/**\n * Toma una cadena de markdown y la convierte a html, incluyendo estilos por\n * defecto\n */\nexport const parseMarkdown: IMarkdownParser = async (options) => {\n const markdownLibrary = await getRemarkable(options.extensions);\n\n const css =\n (await import('./styles')).markdownParserStyles ?? new ErrorImporting();\n if (css instanceof ErrorImporting)\n throw new Error('Could not import css, cannot continue');\n\n const html =\n options.htmlTemplate ??\n (await import('./html')).markdownHtml ??\n new ErrorImporting();\n if (html instanceof ErrorImporting)\n throw new Error('Could not import html, cannot continue');\n\n const markdownString = options.content;\n\n const markdownParser = markdownLibrary.render.bind(markdownLibrary);\n let htmlString = markdownParser(markdownString);\n\n if (options.tableOfContentsTitle) {\n const b = new MarkdownBuilder();\n htmlString = b.addTableOfContents(options.tableOfContentsTitle, htmlString);\n }\n\n const rendered = html(\n options.title,\n css(options.additionalStyles, options.extensions),\n `${options?.additionalBodyContent?.before ?? ''}${htmlString}${options?.additionalBodyContent?.after ?? ''}`,\n );\n\n return rendered;\n};\n\nassignHelp(parseMarkdown);\n","export abstract class MarkdownBlock {\n /**\n * Each markdown block must export a valid markdown string\n */\n abstract toString(): string;\n}\n","import { MarkdownBlock } from './MarkdownBlock';\n\nexport class MarkdownParagraph extends MarkdownBlock {\n constructor(protected text: string) {\n super();\n }\n\n toString(): string {\n return this.text;\n }\n}\n","import { MarkdownParagraph } from './paragraph';\n\nexport type TDialogBoxTypes = 'success' | 'warning' | 'error';\n\nexport class MarkdownDialogBox extends MarkdownParagraph {\n constructor(text: string, protected level: TDialogBoxTypes = 'success') {\n super(text);\n }\n\n toString(): string {\n let wrapper = '$$';\n\n switch (this.level) {\n case 'error':\n wrapper = '!!!';\n break;\n case 'warning':\n wrapper = '!!';\n break;\n }\n\n return `${wrapper}${this.text}${wrapper}`;\n }\n}\n","import { MarkdownParagraph } from './paragraph';\n\nexport class MarkdownHeader extends MarkdownParagraph {\n constructor(protected text: string, private prefix = '#') {\n super(text);\n }\n\n toString() {\n return `${this.prefix} ${this.text}`;\n }\n}\n","import { MarkdownBlock } from './MarkdownBlock';\nimport { MarkdownBuilder } from '../MarkdownBuilder';\n\nexport class MarkdownList extends MarkdownBlock {\n protected items: MarkdownBuilder[] = [];\n\n constructor(protected sorted = false) {\n super();\n }\n\n /**\n * Cada elemento de la lista es un MarkdownBuilder.\n *\n * Si se pasa text como parámetro, este texto será agregado mediante\n * builder.p(text)\n */\n add(text?: string) {\n const newBuilder = new MarkdownBuilder();\n\n if (text) newBuilder.p(text);\n this.items.push(newBuilder);\n\n return newBuilder;\n }\n\n toString(sorted = this.sorted): string {\n const items = this.items.map((builder) => {\n return builder.toMarkdown().split('\\n');\n });\n\n const tab = sorted ? ' ' : ' ';\n\n return items\n .map((item, i) => {\n let str = '';\n if (sorted) str += `${i + 1}) `;\n else str += '- ';\n\n item.forEach((itemPart, j) => {\n if (itemPart.match(/^ *$/)) {\n str += '\\n';\n return;\n }\n\n str += j === 0 ? '' : tab;\n str += itemPart;\n str += '\\n';\n });\n\n return str;\n })\n .join('\\n');\n }\n}\n","import {\n MarkdownTableCell,\n MarkdownTableObjectCell,\n} from '../../extensions/table/types';\nimport { MarkdownBlock } from './MarkdownBlock';\n\nconst alignment = {\n center: ':---:',\n default: '---',\n left: ':---',\n right: '---:',\n};\n\nexport class MarkdownTable extends MarkdownBlock {\n id = '';\n\n constructor(\n protected header: MarkdownTableCell[] = [],\n protected rows: MarkdownTableCell[][] = [],\n ) {\n super();\n }\n\n #getCell(cell: MarkdownTableCell): MarkdownTableObjectCell {\n return typeof cell === 'string' ? { content: cell } : cell;\n }\n #getSeparatorAlignment(cell?: MarkdownTableCell) {\n if (typeof cell === 'string') return alignment.default;\n\n switch (cell?.align) {\n case 'center':\n return alignment.center;\n case 'right':\n return alignment.right;\n case 'left':\n return alignment.left;\n default:\n return alignment.default;\n }\n }\n #getClassName(cell: MarkdownTableCell) {\n if (typeof cell === 'string') return '';\n\n return cell.className ? `(.${cell.className})` : '';\n }\n #getSpan(cell: MarkdownTableCell) {\n const spans: string[] = [];\n const c = this.#getCell(cell);\n\n if (c.rowSpan) spans.push(`({rowSpan:${c.rowSpan}})`);\n if (c.colSpan) spans.push(`({colSpan:${c.colSpan}})`);\n\n return spans.join(' ');\n }\n #getStyle(cell: MarkdownTableCell) {\n if (typeof cell === 'string') return '';\n\n const styles: string[] = [];\n if (cell.style) styles.push(cell.style);\n if (cell.align) styles.push(`text-align: ${cell.align}`);\n\n const style = styles.join(';');\n\n return style ? `({style:${style}})` : '';\n }\n #getAttributes(cell: MarkdownTableCell) {\n return [\n this.#getClassName(cell),\n this.#getStyle(cell),\n this.#getSpan(cell),\n ].join(' ');\n }\n #parseCell(cell: MarkdownTableCell) {\n return typeof cell === 'string'\n ? cell.replaceAll('\\n', '')\n : `${this.#getAttributes(cell)} ${(cell.content ?? '').replaceAll('\\n', '')}`;\n }\n #rowToString = (row: string[]) => ['', ...row, ''].join(' | ');\n #getColumnAlignment(index: number) {\n let sum = 0,\n i = 0;\n for (i = 0; i < this.header.length && sum <= index; i++) {\n sum += Number.parseInt(this.#getCell(this.header[i]).colSpan ?? '1', 10);\n }\n return this.#getCell(this.header[i - 1]).align;\n }\n\n /**\n * Add rows to the body\n */\n addRows(rows: MarkdownTableCell[][]) {\n this.rows.push(...rows);\n }\n\n /**\n * Removes every row from the body.\n */\n clear() {\n this.rows = [];\n }\n\n /**\n * The header allows an only row by now\n */\n setHeader(row: MarkdownTableCell[]) {\n this.header = row;\n }\n\n setId(id: string) {\n this.id = id;\n }\n\n toString(): string {\n const heading = this.#rowToString(\n this.header.map((current) => this.#parseCell(current)),\n );\n const alignments = this.#rowToString(\n this.header.map((current) => this.#getSeparatorAlignment(current)),\n );\n const rows = this.rows\n .map((current) =>\n this.#rowToString(\n current.map((cell, i) =>\n this.#parseCell({\n ...this.#getCell(cell),\n align: this.#getColumnAlignment(i),\n }),\n ),\n ),\n )\n .join('\\n');\n\n return `${\n this.id ? `{ #${this.id} }` : ''\n }${heading}\\n${alignments}\\n${rows}`;\n }\n}\n","import { MarkdownParagraph } from './paragraph';\n\nconst tocPlaceholder = '((())) TABLE_OF_CONTENTS ((()))';\n\nexport class MarkdownTableOfContents extends MarkdownParagraph {\n constructor() {\n super(tocPlaceholder);\n }\n\n /**\n * Este método toma el html, busca todos los headings (que ya fueron\n * procesados por setUniqueIds) y crea una tabla de contenidos a partir de\n * esos ids\n */\n private static makeTableOfContents(title: string, html: string) {\n const idMap: Record<string, boolean> = {};\n const parser: DOMParser = new DOMParser();\n const parsedDocument: Document = parser.parseFromString(html, 'text/html');\n\n const headers: NodeListOf<HTMLHeadElement> =\n parsedDocument.querySelectorAll('h1, h2, h3, h4, h5, h6');\n\n const root: HTMLUListElement = document.createElement('ul');\n root.id = 'TableOfContents';\n\n const prevParentMap: Record<number, HTMLElement> = { 0: root };\n\n for (const header of headers) {\n // eslint-disable-next-line no-param-reassign\n this.setUniqueId(idMap, header);\n\n const depth = this.getNodeDepth(header);\n const parentDepth = depth - 1;\n\n this.deletePrevValues(prevParentMap, depth);\n\n const ulParent = this.getParent(prevParentMap, parentDepth);\n\n this.createNewLevel(header, ulParent, prevParentMap, parentDepth);\n }\n\n return parsedDocument.documentElement.outerHTML.replace(\n tocPlaceholder,\n `<h2>${title}</h2>${root.outerHTML}`,\n );\n }\n\n private static deletePrevValues(\n prevParentMap: Record<number, HTMLElement | null>,\n depth: number,\n ): void {\n // eslint-disable-next-line no-param-reassign\n for (let i = depth; i < 7; i++) prevParentMap[i] = null;\n }\n\n private static getParent(\n prevParentMap: Record<number, HTMLElement>,\n depth: number,\n ): HTMLElement {\n // eslint-disable-next-line no-param-reassign\n for (let i = depth; i >= 0; i--) {\n const parent = prevParentMap[i];\n if (parent) return parent;\n }\n throw new Error('Element has no parent');\n }\n\n private static createNewLevel(\n elem: HTMLElement,\n parentElement: HTMLElement,\n prevParentMap: Record<number, HTMLElement>,\n parentDepth: number,\n ) {\n const newLi = document.createElement('li');\n const newA = document.createElement('a');\n const newB = document.createElement('b');\n newA.href = `#${elem.id}`;\n newB.appendChild(document.createTextNode(elem.textContent as string));\n newA.appendChild(newB);\n newLi.appendChild(newA);\n parentElement.appendChild(newLi);\n // eslint-disable-next-line no-param-reassign\n prevParentMap[parentDepth + 1] = document.createElement('ul');\n newLi.appendChild(prevParentMap[parentDepth + 1]);\n }\n\n private static getNodeDepth(node: HTMLElement): number {\n return parseInt(node.nodeName.replace('H', ''));\n }\n\n /**\n * Este método toma el html original, busca todos los headings y a cada uno\n * le pone un id único, reemplazando el id original si lo tuviera:\n *\n * Si un heading no tiene id: le agrega uno autogenerado con autoincrement +\n * texto del heading procesado (reemplazar espacios por guiones, etc)\n *\n * Si un heading tiene id: le agrega un autoincrement con un sufijo:\n * {id_original}_-_{autoincrement}\n *\n * De esta forma, nos aseguramos que ningún heading tenga un id igual a otro\n */\n private static setUniqueId(\n idMap: Record<string, boolean>,\n element: HTMLHeadElement,\n ) {\n const replacementRegex = /[\\s\\(\\)]+/g;\n const replacementChar = '-';\n\n const id = (element.id ? element.id : element.textContent!)\n ?.toLocaleLowerCase()\n .trim()\n .replaceAll(replacementRegex, replacementChar);\n\n const tokens: (string | number)[] = id.split('_-_', 2);\n if (tokens.length !== 2) tokens[1] = 0;\n let cond = true;\n for (\n ;\n cond;\n // eslint-disable-next-line no-param-reassign\n (idMap[`${tokens[0]}_-_${tokens[1]}`] = true) && (tokens[1] as number)++\n )\n cond = idMap[`${tokens[0]}_-_${tokens[1]}`];\n\n // eslint-disable-next-line no-param-reassign\n element.id = `${tokens[0]}_-_${tokens[1]}`;\n }\n\n public static appendTableOfContents(title: string, html: string): string {\n return this.makeTableOfContents(title, html);\n }\n}\n","import { MarkdownTableCell } from '../extensions/table/types';\nimport { parseMarkdown } from '../parseMarkdown';\nimport { IMarkdownConfiguration, RemarkableExtension } from '../types';\nimport { MarkdownBlock } from './elements/MarkdownBlock';\nimport { MarkdownDialogBox, TDialogBoxTypes } from './elements/dialogBox';\nimport { MarkdownHeader } from './elements/header';\nimport { MarkdownList } from './elements/list';\nimport { MarkdownParagraph } from './elements/paragraph';\nimport { MarkdownTable } from './elements/table';\nimport { MarkdownTableOfContents } from './elements/tableOfContents';\n\nexport class MarkdownBuilder {\n protected blocks: MarkdownBlock[] = [];\n protected extensions: RemarkableExtension[] = [];\n\n setExtensions(extensions: RemarkableExtension[]) {\n this.extensions = extensions;\n return this;\n }\n\n custom(block: MarkdownBlock) {\n this.blocks.push(block);\n }\n\n h1(text: string) {\n const heading = new MarkdownHeader(text);\n\n this.blocks.push(heading);\n\n return heading;\n }\n\n h2(text: string) {\n const heading = new MarkdownHeader(text, '##');\n\n this.blocks.push(heading);\n\n return heading;\n }\n\n h3(text: string) {\n const heading = new MarkdownHeader(text, '###');\n\n this.blocks.push(heading);\n\n return heading;\n }\n\n h4(text: string) {\n const heading = new MarkdownHeader(text, '####');\n\n this.blocks.push(heading);\n\n return heading;\n }\n\n h5(text: string) {\n const heading = new MarkdownHeader(text, '#####');\n\n this.blocks.push(heading);\n\n return heading;\n }\n\n h6(text: string) {\n const heading = new MarkdownHeader(text, '######');\n\n this.blocks.push(heading);\n\n return heading;\n }\n\n p(text: string) {\n const p = new MarkdownParagraph(text);\n\n this.blocks.push(p);\n\n return p;\n }\n\n list(sorted = false) {\n const list = new MarkdownList(sorted);\n\n this.blocks.push(list);\n\n return list;\n }\n\n dialogBox(text: string, level: TDialogBoxTypes = 'success') {\n const box = new MarkdownDialogBox(text, level);\n\n this.blocks.push(box);\n\n return box;\n }\n\n table(header: MarkdownTableCell[] = [], rows: MarkdownTableCell[][] = []) {\n const table = new MarkdownTable(header, rows);\n\n this.blocks.push(table);\n\n return table;\n }\n\n /**\n * Este método debería ser llamado una única vez dentro de un documento,\n * agrega la tabla de contenidos la html\n */\n tableOfContents() {\n this.blocks.push(new MarkdownTableOfContents());\n }\n\n /**\n * Este método recibe un html y le agrega la tabla de contenidos, dentro de\n * un div con id=\"TableOfCOntents\"\n */\n addTableOfContents(tableOfContentsTitle: string, html: string): string {\n return MarkdownTableOfContents.appendTableOfContents(\n tableOfContentsTitle,\n html,\n );\n }\n\n toMarkdown(): string {\n let markdown = this.blocks\n .map((current) => current.toString())\n .join('\\n\\n');\n\n markdown = markdown.replaceAll(/ *\\n *\\n *\\n/g, '\\n\\n');\n\n return markdown;\n }\n\n toHtml(\n options: Pick<\n IMarkdownConfiguration,\n | 'additionalStyles'\n | 'extensions'\n | 'htmlTemplate'\n | 'title'\n | 'tableOfContentsTitle'\n >,\n ): Promise<string> {\n let content = this.toMarkdown();\n\n if (options?.tableOfContentsTitle)\n content = this.addTableOfContents(options.tableOfContentsTitle, content);\n\n return parseMarkdown({ ...options, content });\n }\n}\n"],"names":["responsive","components","forms","spacing","primary","accordion","common","secondary","chat","form","baseTheme","baseThemeMaker","name","__publicField","_getColumnAlignment","getColumnAlignment_fn","_parseCell","parseCell_fn","__privateAdd","__privateMethod","i","__privateGet"],"mappings":"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"}