@apia/theme 4.0.44 → 5.0.0

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-DpVqNvc_.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/formGrid.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/deadSession.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/scheduler.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/markdown/index.ts","../src/base/layout/common/tabs/observations.ts","../src/base/layout/common/tabs/entityData.ts","../src/base/layout/common/tabs/processData.ts","../src/base/layout/common/tabs/documents.ts","../src/base/layout/common/tabs/taskMonitor.ts","../src/base/layout/common/tabs/tab.ts","../src/base/layout/common/tabs/associations.ts","../src/base/layout/common/tabs/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/templates/oneColumnAside.ts","../src/base/layout/templates/twoColumnsLayout.ts","../src/base/layout/templates/portalForm.ts","../src/base/layout/templates/BodyAside.ts","../src/base/layout/templates/topBox.ts","../src/base/layout/templates/twoColumns.ts","../src/base/layout/templates/twoColumns/footerResponsiveButtons.ts","../src/base/layout/templates/twoColumnsAside.ts","../src/base/layout/templates/twoColumnsCentered.ts","../src/base/layout/templates/twoColumnsList.ts","../src/base/layout/templates/twoColumnsListOneColumnAside.ts","../src/base/layout/templates/withToolbar.ts","../src/base/layout/templates/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/extensions/pageBreak.ts","../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/page.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';\r\nimport tinycolor from 'tinycolor2';\r\n\r\nexport function defaultLighten(color: string, ratio?: number) {\r\n return tinycolor(color)\r\n .lighten(ratio ?? 20)\r\n .toRgbString();\r\n}\r\nexport function defaultDarken(color: string, ratio?: number) {\r\n return tinycolor(color)\r\n .darken(ratio ?? 20)\r\n .toRgbString();\r\n}\r\nexport function defaultGetContrastText(color: string) {\r\n const current = tinycolor(color);\r\n return tinycolor.readability('white', current) <\r\n tinycolor.readability('black', current)\r\n ? 'black'\r\n : 'white';\r\n}\r\n\r\nexport function getValueByPath(\r\n obj: Record<string, unknown>,\r\n path: string | string[],\r\n separator = '.',\r\n): unknown {\r\n const actualPath = typeof path === 'string' ? path.split(separator) : path;\r\n if (typeof obj !== 'object' || !obj) {\r\n if (actualPath.length === 0) return obj;\r\n return undefined;\r\n }\r\n const currentStep = actualPath.shift() as string;\r\n if (actualPath.length === 0) return obj[currentStep];\r\n return getValueByPath(\r\n obj[currentStep] as Record<string, unknown>,\r\n actualPath,\r\n separator,\r\n );\r\n}\r\n\r\nexport function setValueByPath(\r\n obj: Record<string, unknown>,\r\n path: string,\r\n value: unknown,\r\n) {\r\n if (path === '') return value as Record<string, unknown>;\r\n\r\n const steps = path.split('.');\r\n if (steps.length === 0) {\r\n console.warn(`An empty path was provoided ${path}`);\r\n return null;\r\n }\r\n const originalClonedObject = clone(obj ?? {});\r\n let currentObj = originalClonedObject;\r\n for (let i = 0; i < steps.length - 1; i++) {\r\n if (!currentObj[steps[i]]) currentObj[steps[i]] = {};\r\n if (typeof currentObj[steps[i]] === 'object') {\r\n currentObj = currentObj[steps[i]] as Record<string, unknown>;\r\n } else {\r\n console.info({\r\n originalObject: obj,\r\n originalPath: path,\r\n currentObj,\r\n currentStep: steps[i],\r\n });\r\n throw new Error(\r\n `The provided path ${path} cannot be applied due to it is not an object's path.`,\r\n );\r\n }\r\n }\r\n currentObj[steps.pop() as string] = value;\r\n return originalClonedObject;\r\n}\r\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';\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\nimport { TStatesRetriever } from '../types';\r\nimport getColorState from './getColorState';\r\n\r\n/**\r\n * Este método está pensado para usarse únicamente dentro de applyStates, si se\r\n * desea obtener un objeto con las propiedades correspondientes a un estado,\r\n * utilizar el método getColorStates.\r\n */\r\nconst applyStatesGetColor: TStatesRetriever = (definition, palette, states) => {\r\n const newStates: ThemeUICSSObject =\r\n states?.default !== false\r\n ? cloneDeep(definition)\r\n : ({} as ThemeUICSSObject);\r\n\r\n if (states?.active !== false) {\r\n newStates.active = getColorState(definition, 'active', palette);\r\n }\r\n if (states?.disabled !== false) {\r\n newStates.disabled = getColorState(definition, 'disabled', palette);\r\n }\r\n if (states?.focus !== false) {\r\n newStates.focus = getColorState(definition, 'focus', palette);\r\n }\r\n if (states?.hover !== false) {\r\n newStates.hover = getColorState(definition, 'hover', palette);\r\n }\r\n if (states?.readonly !== false) {\r\n newStates.readonly = getColorState(definition, 'readonly', palette);\r\n }\r\n if (states?.selected !== false) {\r\n newStates.selected = getColorState(definition, 'selected', palette);\r\n }\r\n if (states?.checked !== false) {\r\n newStates.checked = getColorState(definition, 'checked', palette);\r\n }\r\n return newStates;\r\n};\r\n\r\nexport default applyStatesGetColor;\r\n","import merge from 'lodash-es/merge';\r\nimport { TColorDefinition, TGetColorStateDefinition, TStates } from '../types';\r\nimport applyStatesGetColor from './applyStatesGetColor';\r\nimport { Theme } from 'theme-ui';\r\n\r\n/**\r\n * Esta función está pensada para ser utilizada dentro del objeto colors del\r\n * tema. Aplica recursivamente los distintos estados a todos los elementos\r\n * contenidos dentro de los objetos pasados como parámetro en properties.\r\n *\r\n * Es posible elegir cuáles estados se aplican y cuáles no mediante el segundo\r\n * parámetro, que es un objeto cuyas propiedades serán tomadas en cuenta\r\n * únicamente cuando tienen valor false, en cuyo caso no se aplicará el estado\r\n * correspondiente.\r\n *\r\n * @param properties\r\n * @param states\r\n */\r\nexport default function applyStates(\r\n properties: Record<string, string | TGetColorStateDefinition>[],\r\n theme: Theme,\r\n states?: TStates,\r\n) {\r\n properties.forEach?.((def) => {\r\n Object.entries(def).forEach(([key, value]) => {\r\n if (typeof value === 'string') return;\r\n const definition = value as Required<TColorDefinition>;\r\n\r\n if (typeof definition !== 'string' && !definition.preventParse) {\r\n if (!definition.active) definition.active = {};\r\n if (!definition.checked) definition.checked = {};\r\n if (!definition.focus) definition.focus = {};\r\n if (!definition.disabled) definition.disabled = {};\r\n if (!definition.hover) definition.hover = {};\r\n if (!definition.selected) definition.selected = {};\r\n\r\n const newDefinition = applyStatesGetColor(\r\n definition,\r\n theme.palette,\r\n states,\r\n );\r\n // eslint-disable-next-line no-param-reassign\r\n def[key] = merge(newDefinition, definition);\r\n }\r\n });\r\n });\r\n}\r\n","import { ResponsiveStyleValue, Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { responsive } from '../../util';\r\nimport getColorsAndStatesByPath, {\r\n TGetColorsAndStatesOptions,\r\n} from './util/getColorsAndStatesByPath';\r\n\r\n/* eslint-disable @typescript-eslint/naming-convention */\r\nexport function isColorDefinition(\r\n value:\r\n | IColorDefinition\r\n | TColorModifier\r\n | Record<string, unknown>\r\n | string\r\n | number\r\n | TActionDefinition\r\n | TStatesRetriever\r\n | ((index: number) => ResponsiveStyleValue<number>)\r\n | typeof responsive,\r\n): value is IColorDefinition {\r\n return !!value && typeof value === 'object' && 'main' in value;\r\n}\r\n\r\nexport interface IColorDefinition {\r\n main: string;\r\n light?: string;\r\n dark?: string;\r\n contrastText?: string;\r\n}\r\n\r\nexport interface IActionOpacity {\r\n light: string;\r\n dark: string;\r\n}\r\n\r\nexport interface TStates {\r\n active?: boolean;\r\n checked?: boolean;\r\n default?: boolean;\r\n disabled?: boolean;\r\n focus?: boolean;\r\n hover?: boolean;\r\n readonly?: boolean;\r\n selected?: boolean;\r\n}\r\n\r\nexport type TGetColorStateDefinition = Pick<\r\n ThemeUICSSObject,\r\n | 'backgroundColor'\r\n | 'borderColor'\r\n | 'borderLeftColor'\r\n | 'borderRightColor'\r\n | 'borderBottomColor'\r\n | 'borderTopColor'\r\n | 'color'\r\n>;\r\n\r\nexport type TParsedPaletteColorStateRetriever = (\r\n color: string,\r\n state: keyof TStates,\r\n) => string;\r\n\r\nexport type TColorStateRetriever = (\r\n color: string,\r\n state: keyof TStates,\r\n palette: TParsedPalette,\r\n) => string;\r\n\r\nexport type TParsedPaletteStateRetriever = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n state: keyof TStates,\r\n) => TGetColorStateDefinition;\r\n\r\nexport type TStateRetriever = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n state: keyof TStates,\r\n palette: TParsedPalette,\r\n) => TGetColorStateDefinition;\r\n\r\nexport type TParsedPaletteStatesRetriever = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n states?: TStates,\r\n) => ThemeUICSSObject;\r\n\r\nexport type TStatesRetriever = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n palette: TParsedPalette,\r\n states?: TStates,\r\n) => ThemeUICSSObject;\r\n\r\nexport type TParsedPaletteStatesByDefinition = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n options?: TGetColorsAndStatesOptions,\r\n) => ThemeUICSSObject;\r\n\r\nexport type TStatesByDefinition = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n theme: Theme,\r\n options?: TGetColorsAndStatesOptions,\r\n) => ThemeUICSSObject;\r\n\r\nexport type TApplyStates = (\r\n properties: Record<\r\n string,\r\n TColorDefinition | string | Record<string, unknown>\r\n >[],\r\n theme: Theme,\r\n states?: TStates,\r\n) => void;\r\n\r\nexport interface TActionDefinition<\r\n OpacityColor = undefined | string | IActionOpacity,\r\n> {\r\n active: OpacityColor;\r\n activeOpacity: number;\r\n disabled: OpacityColor;\r\n disabledOpacity: number;\r\n focus: OpacityColor;\r\n focusOpacity: number;\r\n hover: OpacityColor;\r\n hoverOpacity: number;\r\n readonly: OpacityColor;\r\n readonlyOpacity: number;\r\n selected: OpacityColor;\r\n selectedOpacity: number;\r\n}\r\n\r\nexport type TColorModifier = (color: string, ratio?: number) => string;\r\nexport interface TPalette<\r\n ColorDefinition = IColorDefinition,\r\n ColorModifier = TColorModifier,\r\n ActionDefinition = TActionDefinition,\r\n> {\r\n action: ActionDefinition;\r\n background: {\r\n default: string;\r\n overlay: string;\r\n paper: string;\r\n };\r\n border: {\r\n article: string;\r\n field: string;\r\n ghost: string;\r\n section: string;\r\n };\r\n common: {\r\n white: string;\r\n black: string;\r\n };\r\n error: ColorDefinition;\r\n gray?: {\r\n 100: string;\r\n 150: string;\r\n 200: string;\r\n 250: string;\r\n 300: string;\r\n 350: string;\r\n 400: string;\r\n 450: string;\r\n 500: string;\r\n 550: string;\r\n 600: string;\r\n 650: string;\r\n 700: string;\r\n 750: string;\r\n 800: string;\r\n 850: string;\r\n 900: string;\r\n 950: string;\r\n };\r\n info: ColorDefinition;\r\n primary: ColorDefinition;\r\n secondary: ColorDefinition;\r\n spacing: (index: number) => ResponsiveStyleValue<number>;\r\n success: ColorDefinition;\r\n text: {\r\n accent: string;\r\n disabled: string;\r\n icon: string;\r\n link: string;\r\n primary: string;\r\n secondary: string;\r\n title: string;\r\n };\r\n warning: ColorDefinition;\r\n\r\n lightenRatio?: number;\r\n darkenRatio?: number;\r\n /**\r\n * Acepta un ratio entre 0 y 100\r\n */\r\n lightenColor?: ColorModifier;\r\n /**\r\n * Acepta un ratio entre 0 y 100\r\n */\r\n darkenColor?: ColorModifier;\r\n getContrastText?: ColorModifier;\r\n responsive: typeof responsive;\r\n\r\n queryColumnsMultiplier?: number;\r\n}\r\n\r\nexport type TBuildStateObject = <T extends Partial<ThemeUICSSObject>>(\r\n props: T,\r\n state: keyof Required<TStates> | 'checked',\r\n) => ThemeUICSSObject;\r\n\r\nexport type TBuildColorsObject = (\r\n definition: Partial<TGetColorStateDefinition>,\r\n) => TGetColorStateDefinition;\r\n\r\nexport type TParsedPalette = Required<\r\n TPalette<\r\n Required<IColorDefinition>,\r\n TColorModifier,\r\n Required<TActionDefinition<IActionOpacity>>\r\n >\r\n> & {\r\n applyStates: TApplyStates;\r\n buildColorsObject: TBuildColorsObject;\r\n buildStateObject: TBuildStateObject;\r\n getColor: TParsedPaletteColorStateRetriever;\r\n getColorStates: TParsedPaletteStatesRetriever;\r\n getOneState: TParsedPaletteStateRetriever;\r\n getStatesForColors: TParsedPaletteStatesRetriever;\r\n getStatesFromDefinition: TParsedPaletteStatesByDefinition;\r\n getStatesFromPath: typeof getColorsAndStatesByPath;\r\n getSelectedColors: () => ThemeUICSSObject;\r\n getColorsByPath: (\r\n path: string,\r\n options?: {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n mergeObject?: Record<string, any>;\r\n },\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n ) => TGetColorStateDefinition & Record<string, any>;\r\n};\r\n\r\nexport type TCustomPalette = Partial<TPalette> &\r\n Partial<\r\n Pick<\r\n TParsedPalette,\r\n | 'applyStates'\r\n | 'buildColorsObject'\r\n | 'buildStateObject'\r\n | 'getColor'\r\n | 'getColorStates'\r\n | 'getSelectedColors'\r\n | 'getContrastText'\r\n | 'getOneState'\r\n | 'getStatesForColors'\r\n | 'getStatesFromDefinition'\r\n | 'getStatesFromPath'\r\n >\r\n >;\r\n\r\nexport type TColorDefinitionPrimitive = Pick<\r\n ThemeUICSSObject,\r\n 'color' | 'backgroundColor' | 'borderColor'\r\n>;\r\n\r\nexport type TColorDefinition = TColorDefinitionPrimitive & {\r\n active?: TColorDefinitionPrimitive;\r\n checked?: TColorDefinitionPrimitive;\r\n disabled?: TColorDefinitionPrimitive;\r\n focus?: TColorDefinitionPrimitive;\r\n hover?: TColorDefinitionPrimitive;\r\n preventParse?: boolean;\r\n selected?: TColorDefinitionPrimitive;\r\n};\r\n\r\ndeclare global {\r\n interface Window {\r\n currentPalette: TParsedPalette;\r\n customPalettes?: TPalette[];\r\n defaultPalette?: TPalette;\r\n }\r\n}\r\n\r\nexport type TThemeModifier = (theme: Theme) => Theme;\r\n","import { responsive } from '../../util';\r\nimport { TPalette } from './types';\r\n\r\nconst actions = { dark: '#cce5ff', light: '#557' };\r\nconst spacingArray = Array(50)\r\n .fill(1)\r\n .map((_, i) => {\r\n return responsive<number>({\r\n 0: Math.ceil(i / 1.8),\r\n 1: Math.ceil(i / 1.7),\r\n 2: Math.ceil(i / 1.4),\r\n 3: Math.ceil(i / 1.3),\r\n 4: i,\r\n });\r\n });\r\n\r\nconst defaultPalette: TPalette = {\r\n action: {\r\n disabled: '#d9d9d9',\r\n disabledOpacity: 1,\r\n active: actions,\r\n activeOpacity: 0.45,\r\n focus: actions,\r\n focusOpacity: 0.05,\r\n hover: actions,\r\n hoverOpacity: 0.1,\r\n readonly: actions,\r\n readonlyOpacity: 0.4,\r\n selected: 'rgb(204 214 222)',\r\n selectedOpacity: 1,\r\n },\r\n background: {\r\n default: '#f4f4f4',\r\n overlay: 'rgba(0, 0, 0, 0.2)',\r\n paper: 'white',\r\n },\r\n border: {\r\n article: '#cacaca',\r\n field: '#c6c6c6',\r\n ghost: '#f5f5f5',\r\n section: '#aaa',\r\n },\r\n common: {\r\n black: 'black',\r\n white: 'white',\r\n },\r\n info: {\r\n main: '#fff',\r\n },\r\n primary: {\r\n main: '#00496c',\r\n },\r\n secondary: {\r\n main: 'rgb(223, 223, 223)',\r\n },\r\n spacing: (index: number) => {\r\n return spacingArray[index];\r\n },\r\n text: {\r\n accent: '#609',\r\n disabled: '#555',\r\n icon: '#666',\r\n link: '#00496c',\r\n primary: '#4a4a4a',\r\n secondary: 'white',\r\n title: '#00496c',\r\n },\r\n error: {\r\n main: 'rgb(187,12,15)',\r\n light: '#fff2f4',\r\n },\r\n success: {\r\n main: '#8bde8b',\r\n light: '#e7ffd9',\r\n },\r\n warning: {\r\n main: '#f8f588',\r\n light: '#fffdd9',\r\n },\r\n darkenRatio: 15,\r\n lightenRatio: 35,\r\n responsive,\r\n queryColumnsMultiplier: 2,\r\n};\r\nexport default defaultPalette;\r\n","import { ResponsiveStyleValue, ThemeUICSSObject } from 'theme-ui';\r\nimport defaultPalette from './base/colors/defaultPalette';\r\n\r\n/**\r\n * Esta función devuelve un array de valores para los distintos breakpoints.\r\n *\r\n * **Importante** Debido a un issue con ThemeUI, es necesario agregar un\r\n * breakpoint inicial de 0px para las vistas de impresión. El comportamiento por\r\n * defecto será, si se pasa un valor para el índice 4, esta será tomada como\r\n * vista de impresión, sino se tomará el valor de mayor índice menor que 4.\r\n *\r\n * @example\r\n *\r\n * display: responsive({0: 'none', 3: 'block'}) // display: ['block', 'none', null, null, 'block'];\r\n */\r\n\r\nexport function responsive<T>(values: {\r\n print?: T;\r\n [key: number]: undefined | T;\r\n}): ResponsiveStyleValue<T> {\r\n const returnArray = [];\r\n const max = 6;\r\n for (let i = 0; i <= max; i++) returnArray[i + 1] = values[i] ?? null;\r\n\r\n if (values.print) returnArray[0] = values.print;\r\n else {\r\n for (let i = 5; i >= 0; i--) {\r\n if (values[i] !== undefined) returnArray[0] = values[i];\r\n }\r\n }\r\n\r\n return returnArray;\r\n}\r\n\r\n/**\r\n * Este método permite aplicar espacios (gaps, márgenes y paddings) que se\r\n * tendrán un comportamiento responsivo por defecto. Esto es, cuando tenemos un\r\n * padding en una vista de escritorio, probablemente sea demasiado grande al\r\n * llevarlo a celular. Con esta función se elimina el problema de calcular para\r\n * cada elemento en forma individual y el problema se convierte en encontrar\r\n * una única fórmula que quede correcta para todos los breakpoints.\r\n *\r\n * @example\r\n *\r\n * '.wellPaddedElement': {\r\n * p: spacing(6),\r\n * pt: spacing(8)\r\n * }\r\n */\r\nexport function spacing(index: number): ResponsiveStyleValue<number> {\r\n return defaultPalette.spacing(index) ?? index;\r\n}\r\n\r\nexport const smallButton = {\r\n py: 2,\r\n px: 4,\r\n fontSize: '0.9em',\r\n};\r\n\r\nexport const focusOutline: ThemeUICSSObject = {\r\n outlineColor: 'outlineColor',\r\n outlineWidth: '3px',\r\n outlineStyle: 'solid',\r\n outlineOffset: '-3px',\r\n};\r\n","import merge from 'lodash-es/merge';\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\nimport { focusOutline } from '../../../util';\r\nimport { TBuildStateObject } from '../types';\r\n\r\n/**\r\n * Dado un estado, se devuelven las propiedades necesarias para garantizar que\r\n * dicho estado se aplique en variadas circunstancias.\r\n */\r\nconst buildStateObject: TBuildStateObject = (props, state) => {\r\n switch (state) {\r\n case 'active':\r\n return {\r\n '&:active': props,\r\n 'input[role]:active ~ &': props,\r\n 'input[role]:active ~ & path': props,\r\n };\r\n case 'checked':\r\n return {\r\n '&:checked': props,\r\n 'input[role]:checked ~ &': props,\r\n 'input[role]:checked ~ & path': props,\r\n };\r\n case 'disabled':\r\n return {\r\n '&:disabled': props,\r\n 'input[role]:disabled ~ &': props,\r\n 'input[role]:disabled ~ & path': props,\r\n };\r\n case 'focus': {\r\n const focusObject = merge({}, focusOutline, props);\r\n return {\r\n '&:focus': focusObject,\r\n 'input[role]:focus ~ &': focusObject,\r\n };\r\n }\r\n case 'hover': {\r\n return {\r\n '&:hover:not([readonly], :disabled,[aria-selected=\"true\"],:active)':\r\n props,\r\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"])':\r\n props,\r\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"]) path':\r\n props,\r\n };\r\n }\r\n case 'readonly':\r\n return {\r\n '&[readonly]': props,\r\n 'input[role][readonly] ~ &': props,\r\n 'input[role][readonly] ~ & path': props,\r\n '&.readonly input ~ &, &.readOnly input ~ &': props,\r\n '&.readonly input ~ & path, &.readOnly input ~ & path': props,\r\n '&.readonly, &.readOnly': props,\r\n };\r\n case 'selected':\r\n return {\r\n '&:selected': props,\r\n 'input[role]:selected ~ &': props,\r\n 'input[role]:selected ~ & path': props,\r\n '&[aria-selected=\"true\"]': props,\r\n };\r\n default:\r\n return props as unknown as ThemeUICSSObject;\r\n }\r\n};\r\nexport default buildStateObject;\r\n","import { TGetColorStateDefinition } from '../types';\r\n\r\n/**\r\n * Básicamente agrega la definición de borderLeftColor, borderRightColor, etc.\r\n */\r\nfunction buildColorsObject(definition: Partial<TGetColorStateDefinition>) {\r\n return {\r\n ...definition,\r\n ...(definition.borderColor\r\n ? {\r\n borderLeftColor: definition.borderColor,\r\n borderRightColor: definition.borderColor,\r\n borderBottomColor: definition.borderColor,\r\n borderTopColor: definition.borderColor,\r\n }\r\n : undefined),\r\n } as TGetColorStateDefinition;\r\n}\r\n\r\nexport default buildColorsObject;\r\n","import merge from 'lodash-es/merge';\r\nimport buildColorsObject from './buildColorsObject';\r\n\r\n/**\r\n * Esta función NO CALCULA ningún color, simplemente devuelve un objeto con las\r\n * rutas de color con el formato de ThemeUI. Es útil cuando se desea aplicar\r\n * colores definidos en el objeto colors.\r\n *\r\n * Si se desea generar un objeto con los colores a partir de una definición de\r\n * colores del tipo TGetColorStateDefinition se debe utilizar el método\r\n * getColorsByDefinition.\r\n */\r\nexport default function getColorsByPath(\r\n path: string,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n options?: { mergeObject?: Record<string, any> },\r\n) {\r\n return merge(\r\n buildColorsObject({\r\n color: `${path}.color`,\r\n backgroundColor: `${path}.backgroundColor`,\r\n borderColor: `${path}.borderColor`,\r\n }),\r\n options?.mergeObject,\r\n );\r\n}\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport merge from 'lodash-es/merge';\r\nimport buildStateObject from './buildStateObject';\r\nimport getColorsByPath from './getColorsByPath';\r\n// import buildColorsObject from './buildColorsObject';\r\n// import getColorState from './getColorState';\r\n\r\nexport interface TGetColorsAndStatesOptions {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n mergeObject?: Record<string, any>;\r\n states?: {\r\n active?: boolean;\r\n checked?: boolean;\r\n default?: boolean;\r\n disabled?: boolean;\r\n focus?: boolean;\r\n hover?: boolean;\r\n readonly?: boolean;\r\n path?: boolean;\r\n selected?: boolean;\r\n };\r\n}\r\n\r\n/**\r\n * Esta función es útil para devolver los estados calculados por la aplicación\r\n * dentro del objeto colors de ThemeUI. Si se desea calcular los estados en\r\n * base a un color, se debe utilizar el método getColorsAndStatesByColor.\r\n */\r\nexport default function getColorsAndStatesByPath(\r\n incomingPath: string,\r\n options?: TGetColorsAndStatesOptions,\r\n) {\r\n const active = getColorsByPath(`${incomingPath}.active`, options);\r\n const checked = getColorsByPath(`${incomingPath}.checked`, options);\r\n const disabled = {\r\n cursor: 'not-allowed',\r\n ...getColorsByPath(`${incomingPath}.disabled`, options),\r\n };\r\n const hover = getColorsByPath(`${incomingPath}.hover`, options);\r\n const focus =\r\n options?.states?.focus !== false\r\n ? getColorsByPath(`${incomingPath}.focus`, options)\r\n : {};\r\n const readonly = {\r\n cursor: 'notAllowed',\r\n ...getColorsByPath(`${incomingPath}.readonly`, options),\r\n };\r\n const selected = getColorsByPath(`${incomingPath}.selected`, options);\r\n\r\n return merge(\r\n {\r\n ...(options?.states?.default !== false\r\n ? getColorsByPath(incomingPath, options)\r\n : null),\r\n ...(options?.states?.checked !== false\r\n ? buildStateObject(checked, 'checked')\r\n : null),\r\n ...buildStateObject(focus, 'focus'),\r\n ...(options?.states?.hover !== false\r\n ? buildStateObject(hover, 'hover')\r\n : null),\r\n ...(options?.states?.selected !== false\r\n ? buildStateObject(selected, 'selected')\r\n : null),\r\n ...(options?.states?.active !== false\r\n ? buildStateObject(active, 'active')\r\n : null),\r\n ...(options?.states?.disabled !== false\r\n ? buildStateObject(disabled, 'disabled')\r\n : null),\r\n ...(options?.states?.readonly !== false\r\n ? buildStateObject(readonly, 'readonly')\r\n : null),\r\n ...(options?.states?.path !== false\r\n ? { path: { fill: `currentColor` } }\r\n : null),\r\n },\r\n options?.mergeObject,\r\n ) as Record<string, ThemeUICSSObject>;\r\n}\r\n","import { TStatesRetriever } from '../types';\r\nimport buildStateObject from './buildStateObject';\r\nimport getColorState from './getColorState';\r\n\r\n/**\r\n * Con este método es posible construir un objeto con las propiedades\r\n * necesarias para aplicar los colores correspondientes a los estados deseados\r\n * a partir de la definición provista.\r\n */\r\nconst getColorStates: TStatesRetriever = (definition, palette, states) => {\r\n return {\r\n ...(states?.default !== false ? definition : null),\r\n ...(states?.checked !== false\r\n ? buildStateObject(\r\n getColorState(definition, 'checked', palette),\r\n 'checked',\r\n )\r\n : null),\r\n ...buildStateObject(getColorState(definition, 'focus', palette), 'focus'),\r\n ...(states?.selected !== false\r\n ? buildStateObject(\r\n getColorState(definition, 'selected', palette),\r\n 'selected',\r\n )\r\n : null),\r\n ...(states?.hover !== false\r\n ? buildStateObject(getColorState(definition, 'hover', palette), 'hover')\r\n : null),\r\n ...(states?.active !== false\r\n ? buildStateObject(getColorState(definition, 'active', palette), 'active')\r\n : null),\r\n ...(states?.disabled !== false\r\n ? buildStateObject(\r\n getColorState(definition, 'disabled', palette),\r\n 'disabled',\r\n )\r\n : null),\r\n ...(states?.readonly !== false\r\n ? buildStateObject(\r\n getColorState(definition, 'readonly', palette),\r\n 'readonly',\r\n )\r\n : null),\r\n };\r\n};\r\n\r\nexport default getColorStates;\r\n","import tinycolor from 'tinycolor2';\r\n\r\nimport { TColorStateRetriever, TActionDefinition } from '../types';\r\n\r\n/**\r\n\r\n * Este método acepta un color y aplica el estado pasado como segundo\r\n\r\n * parámetro. De esta forma se puede obtener el color correspondiente al estado\r\n\r\n * calculado automáticamente por la aplicación.\r\n\r\n */\r\n\r\nconst getOneColorState: TColorStateRetriever = (color, state, palette) => {\r\n if (typeof color !== 'string') return '';\r\n if (state === 'default') return color;\r\n\r\n const actualState = state === 'checked' ? 'selected' : state;\r\n\r\n const opacity: number = palette.action[\r\n `${state}Opacity` as keyof TActionDefinition\r\n ] as number;\r\n\r\n return tinycolor\r\n\r\n .mix(\r\n color,\r\n\r\n tinycolor(color).isLight()\r\n ? palette.action[actualState].light\r\n : palette.action[actualState].dark,\r\n\r\n 100 * opacity,\r\n )\r\n\r\n .toRgbString();\r\n};\r\n\r\nexport default getOneColorState;\r\n","import merge from 'lodash-es/merge';\r\nimport { TGetColorStateDefinition } from '../types';\r\nimport buildColorsObject from './buildColorsObject';\r\n\r\n/**\r\n * Esta función arma un objeto con los colores que se deben aplicar para\r\n * garantizar que el resultado sea el esperado, por ejemplo, al aplicar un\r\n * color a un border. Esto es así ya que en ThemeUI hay situaciones en las que\r\n * si no se aplican el color de borde a cada uno de los lados, no se aplica el\r\n * color deseado.\r\n *\r\n * Ejemplo de lo antedicho es:\r\n *\r\n * borderRight: '1px solid',\r\n * borderColor: 'red'.\r\n *\r\n * En este caso, el borde derecho no será rojo como se espera, ya que la\r\n * propiedad borderRight aplicará un borderRightColor: 'initial', que solamente\r\n * puede ser reescrito por borderRightColor: 'red'.\r\n */\r\nexport default function getColorsByDefinition(\r\n definition: Partial<TGetColorStateDefinition>,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n options?: { mergeObject?: Record<string, any> },\r\n) {\r\n return merge(\r\n buildColorsObject({\r\n ...(definition.color ? { color: definition.color } : null),\r\n ...(definition.backgroundColor\r\n ? { backgroundColor: definition.backgroundColor }\r\n : null),\r\n ...(definition.borderColor\r\n ? {\r\n borderColor: definition.borderColor,\r\n }\r\n : null),\r\n }),\r\n options?.mergeObject,\r\n );\r\n}\r\n","import merge from 'lodash-es/merge';\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\nimport { TGetColorStateDefinition, TParsedPalette } from '../types';\r\nimport buildStateObject from './buildStateObject';\r\nimport { TGetColorsAndStatesOptions } from './getColorsAndStatesByPath';\r\nimport getColorsByDefinition from './getColorsByDefinition';\r\nimport getColorState from './getColorState';\r\n\r\n/**\r\n * Esta función calcula los colores de los estados a partir de la definición\r\n * pasada.\r\n */\r\nexport default function getColorsAndStatesByDefinition(\r\n definition: Partial<TGetColorStateDefinition>,\r\n\r\n palette: TParsedPalette,\r\n options?: TGetColorsAndStatesOptions,\r\n) {\r\n const active = getColorState(definition, 'active', palette);\r\n const checked = getColorState(definition, 'checked', palette);\r\n const disabled = getColorState(definition, 'disabled', palette);\r\n const focus = options?.states?.focus\r\n ? getColorState(definition, 'focus', palette)\r\n : {};\r\n const hover = getColorState(definition, 'hover', palette);\r\n const readonly = getColorState(definition, 'readonly', palette);\r\n const selected = getColorState(definition, 'selected', palette);\r\n\r\n return merge(\r\n options?.states?.default !== false\r\n ? getColorsByDefinition(definition)\r\n : null,\r\n options?.states?.checked !== false\r\n ? buildStateObject(checked, 'checked')\r\n : {},\r\n options?.states?.focus !== false ? buildStateObject(focus, 'focus') : {},\r\n options?.states?.hover !== false ? buildStateObject(hover, 'hover') : {},\r\n options?.states?.active !== false ? buildStateObject(active, 'active') : {},\r\n options?.states?.selected !== false\r\n ? buildStateObject(selected, 'selected')\r\n : {},\r\n options?.states?.disabled !== false\r\n ? buildStateObject(disabled, 'disabled')\r\n : {},\r\n options?.states?.readonly !== false\r\n ? buildStateObject(readonly, 'readonly')\r\n : {},\r\n options?.mergeObject,\r\n ) as ThemeUICSSObject;\r\n}\r\n","/* eslint-disable @typescript-eslint/no-unsafe-argument */\r\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport cloneDeep from 'lodash-es/cloneDeep';\r\nimport {\r\n TParsedPalette,\r\n isColorDefinition,\r\n IActionOpacity,\r\n IColorDefinition,\r\n TCustomPalette,\r\n} from '../types';\r\nimport { defaultLighten, defaultDarken, defaultGetContrastText } from '../util';\r\nimport applyStatesGetColor from './applyStatesGetColor';\r\nimport buildStateObject from './buildStateObject';\r\nimport getColorsAndStatesByPath from './getColorsAndStatesByPath';\r\nimport getColorState from './getColorState';\r\nimport getColorStates from './getColorStates';\r\nimport getOneColorState from './getOneColorState';\r\nimport buildColorsObject from './buildColorsObject';\r\nimport applyStates from './applyStates';\r\nimport getColorsAndStatesByDefinition from './getColorsAndStatesByDefinition';\r\nimport { getSelectedColors } from '..';\r\nimport getColorsByPath from './getColorsByPath';\r\n\r\nfunction paletteFunction(callback: (...args: any[]) => unknown): any {\r\n return (...args: any[]) => {\r\n const firstParameter = args[0];\r\n let isFirstParameterATheme = false;\r\n\r\n const themeProps = [\r\n 'fontSizes',\r\n 'breakpoints',\r\n 'fonts',\r\n 'lineHeights',\r\n 'letterSpacings',\r\n 'radii',\r\n 'zIndices',\r\n 'useRootStyles',\r\n ];\r\n /**\r\n * In this block, I must decide if the first argument is a theme or\r\n * not\r\n */\r\n if (firstParameter instanceof Object && firstParameter !== null) {\r\n const firstParameterKeys = Object.keys(firstParameter);\r\n for (const key of firstParameterKeys) {\r\n if (themeProps.includes(key)) {\r\n isFirstParameterATheme = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (isFirstParameterATheme) {\r\n /** Do nothing */\r\n } else {\r\n return callback(...args);\r\n }\r\n };\r\n}\r\n\r\nexport default function parsePalette(palette: TCustomPalette) {\r\n const newPalette: TParsedPalette = cloneDeep(palette) as TParsedPalette;\r\n\r\n // Put methods\r\n newPalette.lightenColor = paletteFunction(\r\n palette.lightenColor ??\r\n ((color: string, ratio?: number) => {\r\n return defaultLighten(color, ratio ?? palette.lightenRatio);\r\n }),\r\n );\r\n newPalette.darkenColor = paletteFunction(\r\n palette.darkenColor ??\r\n ((color: string, ratio?: number) => {\r\n return defaultDarken(color, ratio ?? palette.darkenRatio);\r\n }),\r\n );\r\n newPalette.getContrastText = paletteFunction(\r\n palette.getContrastText ?? defaultGetContrastText,\r\n );\r\n\r\n // Fill colors\r\n Object.entries(palette).forEach(([key, value]) => {\r\n const castedValue = value as string | number | IColorDefinition;\r\n if (isColorDefinition(castedValue)) {\r\n (newPalette as Record<string, unknown>)[key] = {\r\n main: castedValue.main,\r\n light: castedValue.light ?? newPalette.lightenColor(castedValue.main),\r\n dark: castedValue.dark ?? newPalette.darkenColor(castedValue.main),\r\n contrastText:\r\n castedValue.contrastText ??\r\n newPalette.getContrastText(castedValue.main),\r\n };\r\n } else {\r\n (newPalette as Record<string, unknown>)[key] = value;\r\n }\r\n });\r\n\r\n // Draw borders\r\n newPalette.border.article =\r\n newPalette.border.article ?? newPalette.secondary.main;\r\n newPalette.border.field = newPalette.border.field ?? newPalette.text.primary;\r\n newPalette.border.section =\r\n newPalette.border.section ?? newPalette.primary.main;\r\n\r\n // Define actions\r\n function parseAction(action: string | IActionOpacity): IActionOpacity {\r\n if (typeof action === 'string')\r\n return {\r\n dark: action,\r\n light: action,\r\n };\r\n return {\r\n dark: action.dark ?? action.light,\r\n light: action.light ?? action.dark,\r\n };\r\n }\r\n\r\n newPalette.action.active = parseAction(newPalette.action.active);\r\n newPalette.action.disabled = parseAction(newPalette.action.disabled);\r\n newPalette.action.focus = parseAction(newPalette.action.focus);\r\n newPalette.action.hover = parseAction(newPalette.action.hover);\r\n newPalette.action.readonly = parseAction(newPalette.action.readonly);\r\n newPalette.action.selected = parseAction(newPalette.action.selected);\r\n\r\n newPalette.gray = newPalette.gray ?? {};\r\n for (let i = 1; i <= 18; i++) {\r\n const index = Math.round(((255 - 255 / 18) / 18) * i);\r\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] =\r\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] ??\r\n `rgb(${index},${index},${index})`;\r\n }\r\n\r\n newPalette.applyStates = paletteFunction(applyStates);\r\n newPalette.buildColorsObject = paletteFunction(buildColorsObject);\r\n newPalette.buildStateObject = paletteFunction(buildStateObject);\r\n newPalette.getColor = paletteFunction((color, state) =>\r\n getOneColorState(color, state, newPalette),\r\n );\r\n newPalette.getStatesForColors = paletteFunction((definition, states) =>\r\n applyStatesGetColor(definition, newPalette, states),\r\n );\r\n newPalette.getOneState = paletteFunction((definition, state) =>\r\n getColorState(definition, state, newPalette),\r\n );\r\n newPalette.getColorStates = paletteFunction((definition, state) =>\r\n getColorStates(definition, newPalette, state),\r\n );\r\n newPalette.getStatesFromDefinition = paletteFunction((definition, states) =>\r\n getColorsAndStatesByDefinition(definition, newPalette, states),\r\n );\r\n newPalette.getStatesFromPath = paletteFunction(getColorsAndStatesByPath);\r\n newPalette.getSelectedColors = paletteFunction(() =>\r\n getSelectedColors(newPalette),\r\n );\r\n newPalette.getColorsByPath = paletteFunction(getColorsByPath);\r\n return newPalette;\r\n}\r\n","export const schemas: Record<string, string[]> = {\r\n ocean: ['#008E1B', '#009155', '#009187', '#008EB1', '#006872', '#2F4858'],\r\n sunset: ['#ae76de', '#D65DB1', '#FF6F91', '#FF9671', '#FFC75F', '#F9F871'],\r\n red: ['#dc143c', '#ff2400', '#800020', '#b22222', '#e52b50', '#ff7f50'],\r\n orange: ['#F76E11', '#FF9F45', '#FFBC80', '#FC4F4F', '#eb9605', '#964000'],\r\n green: ['#a4de02', '#76ba1b', '#4c9a2a', '#acdf87', '#68bb59', '#1e5631'],\r\n blue: ['#00496C', '#45bdee', '#28a7ea', '#006cbb', '#034698', '#032f64'],\r\n violet: ['#80007e', '#a02d9c', '#c37ecd', '#9e5fb8', '#7f3e98', '#4c197f'],\r\n turquoise: ['#0ddbcc', '#43ebff', '#19ceeb', '#28acea', '#388ee9', '#3d76e0'],\r\n yellow: ['#fff700', '#ffff9f', '#fef54f', '#f9e231', '#f6c616', '#eab200'],\r\n grey: ['#b1b5ba', '#d2d5d6', '#dee0e0', '#bdbdbb', '#9fa19c', '#686e67'],\r\n};\r\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 accordion: {\r\n panels: {\r\n backgroundColor: palette.background.paper,\r\n color: palette.text.primary,\r\n borderColor: palette.border.ghost,\r\n },\r\n },\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.background.paper,\r\n color: theme.palette.primary.main,\r\n borderColor: theme.palette.border.field,\r\n },\r\n outline: {\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 outlineDanger: {\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 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.border.field,\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 active: {\r\n color: theme.palette.primary.main,\r\n backgroundColor: theme.palette.lightenColor(\r\n theme.palette.secondary.main,\r\n 10,\r\n ),\r\n },\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 color: theme.palette.border.ghost,\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.darkenColor(\r\n theme.palette.background.default,\r\n 50,\r\n ),\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.background.default,\r\n 10,\r\n ),\r\n\r\n hover: {\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.background.default,\r\n 10,\r\n ),\r\n color: theme.palette.darkenColor(theme.palette.border.article, 40),\r\n },\r\n\r\n active: {\r\n backgroundColor: theme.palette.darkenColor(\r\n theme.palette.background.default,\r\n 10,\r\n ),\r\n color: theme.palette.darkenColor(theme.palette.border.article, 40),\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';\r\nimport { responsive, smallButton, spacing } from '../util';\r\nimport getColorsAndStatesByPath from './colors/util/getColorsAndStatesByPath';\r\n\r\nconst buttons: Record<string, ThemeUICSSObject> = {\r\n inherit: {\r\n color: 'inherit',\r\n background: 'inherit',\r\n border: 'none',\r\n borderRadius: 0,\r\n font: 'inherit',\r\n cursor: 'pointer',\r\n padding: 0,\r\n margin: 0,\r\n },\r\n 'inherit-sm': {\r\n variant: 'buttons.inherit',\r\n ...smallButton,\r\n },\r\n collapsibleAsidePanelTitle: {\r\n variant: 'buttons.inherit',\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n width: '100%',\r\n ...getColorsAndStatesByPath('buttons.collapsibleAsidePanelTitle'),\r\n },\r\n primary: {\r\n borderWidth: '2px',\r\n borderStyle: 'solid',\r\n variant: 'text.default',\r\n py: responsive({ 0: 3, 4: 4 }),\r\n px: responsive({ 0: 5, 4: 6 }),\r\n display: 'inline-block',\r\n width: responsive({ 0: '100%', 1: 'auto' }),\r\n cursor: 'pointer',\r\n borderRadius: 'buttons',\r\n fontWeight: 'normal',\r\n userSelect: 'none',\r\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\r\n wordBreak: 'keep-all',\r\n boxShadow: 'default',\r\n\r\n ...getColorsAndStatesByPath('buttons.primary'),\r\n\r\n '&:focus, &:focus-visible': {\r\n outlineColor: '#00daff',\r\n },\r\n },\r\n 'primary-sm': {\r\n variant: 'buttons.primary',\r\n '&:focus, &:focus-visible': {},\r\n ...smallButton,\r\n },\r\n secondary: {\r\n variant: 'buttons.primary',\r\n '&:focus, &:focus-visible': {},\r\n borderWidth: '0px',\r\n borderStyle: 'solid',\r\n\r\n ...getColorsAndStatesByPath('buttons.secondary'),\r\n },\r\n 'secondary-sm': {\r\n variant: 'buttons.secondary',\r\n ...smallButton,\r\n },\r\n 'light-secondary': {\r\n variant: 'buttons.secondary',\r\n\r\n ...getColorsAndStatesByPath('buttons.lightSecondary'),\r\n },\r\n danger: {\r\n variant: 'buttons.primary',\r\n '&:focus, &:focus-visible': {},\r\n\r\n ...getColorsAndStatesByPath('buttons.danger'),\r\n },\r\n 'danger-sm': {\r\n variant: 'buttons.danger',\r\n ...smallButton,\r\n },\r\n warning: {\r\n variant: 'buttons.primary',\r\n '&:focus, &:focus-visible': {},\r\n\r\n ...getColorsAndStatesByPath('buttons.warning'),\r\n },\r\n 'warning-sm': {\r\n variant: 'buttons.warning',\r\n ...smallButton,\r\n },\r\n close: {\r\n cursor: 'pointer',\r\n ml: 'auto',\r\n mr: '2',\r\n borderRadius: 'buttons',\r\n\r\n ...getColorsAndStatesByPath('buttons.close'),\r\n },\r\n accordion: {\r\n variant: 'buttons.primary',\r\n '&:focus, &:focus-visible': {},\r\n cursor: 'pointer',\r\n m: spacing(0),\r\n py: responsive({ 0: 3, 4: 4 }),\r\n px: responsive({ 0: 5, 4: 6 }),\r\n width: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n borderRadius: 'buttons',\r\n textAlign: 'left',\r\n fontFamily: 'heading',\r\n fontSize: 'text.default',\r\n textDecoration: 'none',\r\n textTransform: 'none',\r\n fontWeight: 'bold',\r\n border: 'none',\r\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\r\n userSelect: 'text',\r\n\r\n '&, *': getColorsAndStatesByPath('buttons.accordion'),\r\n\r\n 'h2.toggleAccordionElementLabel': {\r\n variant: 'text.default',\r\n\r\n color: 'inherit',\r\n margin: 0,\r\n wordBreak: 'break-word',\r\n },\r\n },\r\n 'accordion-primary': {\r\n variant: 'buttons.accordion',\r\n border: 'none',\r\n\r\n ...getColorsAndStatesByPath('buttons.accordionPrimary'),\r\n },\r\n icon: {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n p: spacing(0),\r\n m: spacing(0),\r\n bg: 'secondary',\r\n cursor: 'pointer',\r\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\r\n borderRadius: 'buttons',\r\n border: 'none',\r\n color: 'inherit',\r\n ...getColorsAndStatesByPath('buttons.icon'),\r\n\r\n '&.isToggled': {\r\n ...getColorsAndStatesByPath('buttons.iconToggled'),\r\n },\r\n },\r\n 'icon-primary': {\r\n variant: 'buttons.icon',\r\n ...getColorsAndStatesByPath('buttons.iconPrimary'),\r\n },\r\n 'icon-outline': {\r\n variant: 'buttons.icon',\r\n bg: 'white',\r\n border: '1px solid',\r\n borderRadius: '4px',\r\n // border: 'none',\r\n\r\n ...getColorsAndStatesByPath('buttons.iconOutline'),\r\n },\r\n 'icon-outline-danger': {\r\n variant: 'buttons.icon',\r\n border: '1px solid',\r\n\r\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\r\n },\r\n 'icon-only': {\r\n variant: 'buttons.icon',\r\n\r\n ...getColorsAndStatesByPath('buttons.iconOnly'),\r\n },\r\n link: {\r\n variant: 'inherit',\r\n width: 'auto',\r\n border: 'none',\r\n background: 'transparent',\r\n textDecoration: 'underline',\r\n px: 2,\r\n py: 1,\r\n borderRadius: 'buttons',\r\n cursor: 'pointer',\r\n textTransform: 'none',\r\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\r\n boxShadow: 'none',\r\n\r\n ...getColorsAndStatesByPath('buttons.link'),\r\n },\r\n 'link-sm': {\r\n variant: 'buttons.link',\r\n ...smallButton,\r\n },\r\n outline: {\r\n variant: 'buttons.primary',\r\n borderWidth: '1px',\r\n borderStyle: 'solid',\r\n borderRadius: 'buttons',\r\n boxShadow: 'sharp',\r\n\r\n '&:focus, &:focus-visible': {},\r\n ...getColorsAndStatesByPath('buttons.outline', {\r\n states: {\r\n active: false,\r\n checked: false,\r\n disabled: false,\r\n focus: false,\r\n hover: false,\r\n readonly: false,\r\n selected: false,\r\n },\r\n }),\r\n },\r\n 'outline-sm': {\r\n variant: 'buttons.outline',\r\n ...smallButton,\r\n },\r\n 'transparent-sm': {\r\n variant: 'buttons.outline',\r\n '&:focus, &:focus-visible': {},\r\n bg: 'transparent',\r\n color: 'inherit',\r\n border: 'none',\r\n font: 'inherit',\r\n textTransform: 'inherit',\r\n ...smallButton,\r\n },\r\n transparentIcon: {\r\n ...getColorsAndStatesByPath('buttons.transparentIcon'),\r\n cursor: 'pointer',\r\n },\r\n 'outline-danger': {\r\n variant: 'buttons.outline',\r\n '&:focus, &:focus-visible': {},\r\n\r\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\r\n },\r\n 'outline-danger-sm': {\r\n variant: 'buttons.outline-danger',\r\n ...smallButton,\r\n },\r\n 'outline-warning': {\r\n variant: 'buttons.outline',\r\n '&:focus, &:focus-visible': {},\r\n\r\n ...getColorsAndStatesByPath('buttons.outlineWarning'),\r\n },\r\n 'outline-warning-sm': {\r\n variant: 'buttons.outline-warning',\r\n ...smallButton,\r\n },\r\n 'outline-extended': {\r\n variant: 'buttons.outline',\r\n gridColumnStart: 1,\r\n gridColumnEnd: 3,\r\n width: '100%',\r\n },\r\n 'outline-danger-extended': {\r\n variant: 'buttons.outline-danger',\r\n gridColumnStart: 1,\r\n gridColumnEnd: 3,\r\n width: '100%',\r\n },\r\n 'primary-extended': {\r\n variant: 'buttons.primary',\r\n '&:focus, &:focus-visible': {},\r\n gridColumnStart: 1,\r\n gridColumnEnd: 3,\r\n width: '100%',\r\n },\r\n query: {\r\n extended: {\r\n variant: 'buttons.outline',\r\n '&:focus, &:focus-visible': {},\r\n gridColumnStart: 1,\r\n gridColumnEnd: 3,\r\n },\r\n },\r\n tableAccordion: {\r\n variant: 'buttons.accordion',\r\n fontSize: 'text.default',\r\n p: spacing(3),\r\n wordBreak: 'keep-all',\r\n a: {\r\n color: 'background',\r\n },\r\n\r\n ...getColorsAndStatesByPath('buttons.tableAccordion'),\r\n },\r\n tableHeader: {\r\n variant: 'buttons.tableAccordion',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n height: '100%',\r\n border: 'none',\r\n svg: {\r\n ml: spacing(2),\r\n },\r\n ...getColorsAndStatesByPath('buttons.tableHeader'),\r\n },\r\n paper: {\r\n variant: 'buttons.primary',\r\n borderWidth: '2px',\r\n borderStyle: 'solid',\r\n borderRadius: 'buttons',\r\n\r\n ...getColorsAndStatesByPath('buttons.paper'),\r\n },\r\n 'paper-sm': {\r\n variant: 'buttons.primary',\r\n borderWidth: '2px',\r\n borderStyle: 'solid',\r\n borderRadius: 'buttons',\r\n\r\n ...getColorsAndStatesByPath('buttons.paper'),\r\n ...smallButton,\r\n },\r\n};\r\n\r\nexport default buttons;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../util';\r\n\r\nconst text: Record<string, ThemeUICSSObject> = {\r\n default: {\r\n color: 'palette.text.primary',\r\n fontFamily: 'body',\r\n fontWeight: 'body',\r\n fontSize: 16,\r\n m: spacing(0),\r\n width: '100%',\r\n },\r\n title: {\r\n letterSpacing: 'heading',\r\n wordBreak: 'normal',\r\n color: 'title',\r\n fontFamily: 'heading',\r\n lineHeight: 'heading',\r\n fontWeight: 'heading',\r\n },\r\n};\r\n\r\nexport default text;\r\n","import { ThemeUIStyleObject } from 'theme-ui';\r\n\r\nexport const transitions: ThemeUIStyleObject = {\r\n '@keyframes growHorizontal': {\r\n from: { transform: 'scaleX(0)' },\r\n to: { transform: 'scaleY(100%)' },\r\n },\r\n '.hamburguerMenu': { display: 'none' },\r\n '.hamburguerMenu-enter,\\n.hamburguerMenu-appear': {\r\n display: 'block',\r\n transform: 'scale(0.7)',\r\n opacity: 0,\r\n },\r\n '.hamburguerMenu-enter-active,\\n.hamburguerMenu-appear-active': {\r\n transform: 'translateX(0)',\r\n transition: 'opacity 150ms, transform 150ms',\r\n transformOrigin: 'right top',\r\n opacity: 1,\r\n },\r\n '.hamburguerMenu-enter-done,\\n.hamburguerMenu-appear-done': {\r\n display: 'block',\r\n },\r\n '.hamburguerMenu-exit': {\r\n display: 'block',\r\n transform: 'scale(1)',\r\n opacity: 1,\r\n },\r\n '.hamburguerMenu-exit-active': {\r\n transform: 'scale(0.7) translateX(0)',\r\n transition: 'opacity 150ms, transform 150ms',\r\n display: 'block',\r\n opacity: 0,\r\n transformOrigin: 'right top',\r\n },\r\n '.hamburguerMenu-exit-done': { display: 'none' },\r\n '.modal-enter,\\n.modal-appear': { opacity: 0, transform: 'scale(0.8)' },\r\n '.modal-enter-active,\\n.modal-appear-active': {\r\n opacity: 1,\r\n transform: 'translateX(0)',\r\n transition: 'opacity 150ms, transform 150ms',\r\n transitionDelay: '0',\r\n },\r\n '.modal-exit': { opacity: 0 },\r\n '.modal-exit-done': { opacity: 0, display: 'none' },\r\n '.modal-exit-active': {\r\n opacity: 0,\r\n transform: 'scale(100)',\r\n transition: 'opacity 150ms, transform 150ms',\r\n transitionDelay: '0',\r\n },\r\n '.overlayAnimation-enter .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear .overlayAnimation:not(.not-released)':\r\n {\r\n opacity: 0,\r\n },\r\n '.overlayAnimation-enter-active .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear-active .overlayAnimation:not(.not-released)':\r\n {\r\n opacity: 1,\r\n transition: 'opacity 150ms',\r\n },\r\n '.overlayAnimation-exit': { opacity: 1 },\r\n '.overlayAnimation-exit-active': { opacity: 0, transition: 'opacity 150ms' },\r\n '.fromRight-enter,\\n.fromRight-appear': { transform: 'translateX(550px)' },\r\n '.fromRight-enter-active,\\n.fromRight-appear-active': {\r\n transition: 'transform 150ms',\r\n transform: 'translateX(0)',\r\n },\r\n '.fromRight-exit': { transform: 'translateX(0)' },\r\n '.fromRight-exit-active': {\r\n transition: 'transform 150ms',\r\n transform: 'translateX(550px)',\r\n },\r\n '.notification-enter,\\n.notification-appear': {\r\n opacity: 0,\r\n transform: 'scale(0.8)',\r\n },\r\n '.notification-enter-active,\\n.notification-appear-active': {\r\n opacity: 1,\r\n transform: 'translateX(0)',\r\n transition: 'opacity 150ms, transform 150ms',\r\n transitionDelay: '0',\r\n },\r\n '.notification-exit': { opacity: 1 },\r\n '.notification-exit-active': {\r\n opacity: 0,\r\n transform: 'scale(0.8)',\r\n transition: 'opacity 150ms, transform 150ms',\r\n transitionDelay: '0',\r\n },\r\n};\r\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: '10px',\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';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n/* IMPORT HERE */\r\n\r\nconst customCheckbox: ThemeUICSSObject = {\r\n display: 'inline-flex',\r\n borderRadius: 'default',\r\n flexBasis: '32px',\r\n flexShrink: 0,\r\n width: '32px',\r\n height: '32px',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n p: '3px',\r\n border: '1px solid',\r\n svg: {\r\n width: '20px',\r\n },\r\n ...getColorsAndStatesByPath('form.fields', {\r\n states: {\r\n active: false,\r\n hover: false,\r\n focus: false,\r\n path: false,\r\n },\r\n }),\r\n\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default customCheckbox;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n/* IMPORT HERE */\r\n\r\nconst checkbox: ThemeUICSSObject = {\r\n borderRadius: 'default',\r\n ...getColorsAndStatesByPath('form.fields', {\r\n states: {\r\n active: false,\r\n focus: false,\r\n hover: false,\r\n },\r\n }),\r\n backgroundColor: 'unset',\r\n alignItems: 'center',\r\n\r\n '&.nativeCheckbox': {\r\n appearance: 'none',\r\n width: '25px',\r\n height: '25px',\r\n border: 'solid 1px #cccccc',\r\n marginRight: '8px',\r\n position: 'relative',\r\n cursor: 'pointer',\r\n\r\n '&:checked::before': {\r\n content: '\"✓\"',\r\n color: 'palette.text.primary',\r\n position: 'absolute',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n fontSize: 'larger',\r\n fontWeight: 'bolder',\r\n borderRadius: '5px',\r\n cursor: 'pointer',\r\n },\r\n\r\n '&:indeterminate::before': {\r\n content: '\"-\"',\r\n color: 'palette.text.primary',\r\n position: 'absolute',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n top: '-1px',\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n fontSize: 'xx-large',\r\n fontWeight: '600',\r\n borderRadius: '5px',\r\n cursor: 'pointer',\r\n },\r\n },\r\n};\r\n\r\nexport default checkbox;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../util';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n/* IMPORT HERE */\r\n\r\nconst dateInput: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'stretch',\r\n justifyContent: 'stretch',\r\n width: '100%',\r\n\r\n '&.readOnly': {\r\n input: {\r\n color: 'Text.fields',\r\n bg: 'Background.fields',\r\n },\r\n },\r\n\r\n '.iconInput': {\r\n width: '100%',\r\n position: 'relative',\r\n },\r\n\r\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':\r\n {\r\n position: 'absolute',\r\n right: '59px',\r\n padding: 0,\r\n top: 'calc(50% - 10px)',\r\n margin: 0,\r\n marginRight: 0,\r\n borderRadius: '100%',\r\n width: '20px',\r\n height: '20px',\r\n\r\n ...getColorsAndStatesByPath('buttons.icon-outline'),\r\n },\r\n\r\n input: {\r\n flexShrink: 1,\r\n },\r\n\r\n '& > div': {\r\n display: 'flex',\r\n gap: spacing(2),\r\n flexShrink: 0,\r\n width: 'auto',\r\n maxWidth: '100%',\r\n minWidth: 0,\r\n\r\n button: {\r\n width: '45px',\r\n flexShrink: 0,\r\n },\r\n },\r\n ...getColorsAndStatesByPath('form.fields', {\r\n states: {\r\n hover: false,\r\n active: false,\r\n focus: false,\r\n },\r\n }),\r\n\r\n backgroundColor: undefined,\r\n};\r\n\r\nexport default dateInput;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { getColorsAndStatesByPath, getOneColorState } from '../../methods';\r\n/* IMPORT HERE */\r\n\r\nconst iconInput: ThemeUICSSObject = {\r\n '&.iconInput[class]': {\r\n display: 'flex',\r\n justifyContent: 'stretch',\r\n alignItems: 'center',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n borderRadius: 'default',\r\n gap: '0px',\r\n\r\n '&.readOnly, &.readonly': {\r\n '.iconButton': {\r\n borderLeft: '1px solid',\r\n borderLeftColor: 'palette.border.section',\r\n },\r\n },\r\n\r\n ':focus-within': {\r\n outlineColor: 'outlineColor',\r\n outlineWidth: '3px',\r\n outlineOffset: '-3px',\r\n outlineStyle: 'solid',\r\n borderColor: 'transparent',\r\n },\r\n\r\n '.iconButton': {\r\n display: 'flex',\r\n width: '50px',\r\n flexShrink: 0,\r\n height: '50px',\r\n border: 'none',\r\n boxShadow: 'none',\r\n\r\n ...getColorsAndStatesByPath('buttons.outline'),\r\n\r\n background: 'palette.background.paper',\r\n\r\n '&:focus': {\r\n outline: 'none',\r\n background: (theme) =>\r\n getOneColorState(\r\n theme.palette.background.paper,\r\n 'hover',\r\n theme.palette,\r\n ),\r\n },\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: 'none',\r\n cursor: 'not-allowed',\r\n borderLeft: '1px solid',\r\n borderLeftColor: 'palette.border.field',\r\n },\r\n },\r\n\r\n input: {\r\n height: '50px',\r\n width: '100%',\r\n border: 'none',\r\n\r\n '&:focus': {\r\n outline: 'none',\r\n },\r\n },\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';\r\nimport { spacing } from '../../util';\r\n/* IMPORT HERE */\r\n\r\nconst label: ThemeUICSSObject = {\r\n variant: 'text.default',\r\n alignItems: 'center',\r\n width: 'auto',\r\n textTransform: 'none',\r\n cursor: 'pointer',\r\n\r\n '&:not(.radio-label)': {\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\r\n '&:last-of-type': {\r\n 'input, textarea, select': {\r\n mb: spacing(0),\r\n },\r\n },\r\n};\r\n\r\nexport default label;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n/* IMPORT HERE */\r\n\r\nconst radio: ThemeUICSSObject = {\r\n width: '32px',\r\n height: '32px',\r\n input: {\r\n height: '32px !important',\r\n },\r\n ...getColorsAndStatesByPath('form.radio'),\r\n path: {\r\n fill: 'inherit',\r\n },\r\n};\r\n\r\nexport default radio;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../util';\r\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\r\n/* IMPORT HERE */\r\n\r\nconst select: ThemeUICSSObject = {\r\n variant: 'text.default',\r\n display: 'inline-block',\r\n fontFamily: 'body',\r\n p: spacing(4),\r\n pr: 7,\r\n borderRadius: 'default',\r\n width: '100%',\r\n maxWidth: '100%',\r\n '& ~ svg': {\r\n background: 'transparent',\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 '&[multiple] ~ svg': {\r\n display: 'none',\r\n },\r\n};\r\n\r\nexport default select;\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { getSelectedColors } from '../colors/index';\r\n/* IMPORT HERE */\r\n\r\nfunction selectMultiple(theme: Theme): ThemeUICSSObject {\r\n return {\r\n variant: 'text.default',\r\n height: '100%',\r\n padding: '4px',\r\n borderRadius: 'default',\r\n border: '1px solid',\r\n width: '100%',\r\n transition: 'background-color 100ms ease-out, color 100ms ease-out',\r\n overflow: 'auto',\r\n option: {\r\n padding: 2,\r\n ...getSelectedColors(theme.palette),\r\n\r\n '&:checked': {\r\n backgroundColor: theme.palette.getColor(\r\n theme.palette.background.paper,\r\n 'selected',\r\n ),\r\n color: theme.palette.getContrastText(\r\n theme.palette.getColor(theme.palette.background.paper, 'selected'),\r\n ),\r\n },\r\n },\r\n '+ svg': {\r\n display: 'none',\r\n },\r\n ...theme.palette.getStatesFromPath('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}\r\n\r\nexport default selectMultiple;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n/* IMPORT HERE */\r\n\r\nconst Switch: ThemeUICSSObject = {\r\n '+ span': {\r\n fontSize: 14,\r\n fontWeight: 'normal',\r\n wordBreak: 'break-all',\r\n },\r\n backgroundColor: 'form.fields.checked.borderColor',\r\n};\r\n\r\nexport default Switch;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n/* IMPORT HERE */\r\n\r\nconst textarea: ThemeUICSSObject = {\r\n height: '100%',\r\n minHeight: '130px',\r\n resize: 'vertical',\r\n\r\n variant: 'forms.input',\r\n};\r\n\r\nexport default textarea;\r\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 { ThemeUICSSObject } from 'theme-ui';\n\nexport const formGrid: ThemeUICSSObject = {\n display: 'grid',\n gridTemplateColumns: '1fr 1fr 1fr',\n gap: 5,\n\n '.span_all': {\n gridColumn: 'span 3',\n },\n\n '.extra_gap': {\n marginY: 6,\n },\n\n '.gap_before': {\n marginTop: 6,\n },\n\n '.gap_after': {\n marginBottom: 6,\n },\n\n '.checkbox': {\n display: 'flex',\n gap: 4,\n flexDirection: 'row-reverse',\n alignItems: 'center',\n justifyContent: 'start',\n },\n};\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport customCheckbox from './customCheckbox';\r\nimport checkbox from './checkbox';\r\nimport dateInput from './dateInput';\r\nimport iconInput from './iconInput';\r\nimport input from './input';\r\nimport label from './label';\r\nimport radio from './radio';\r\nimport select from './select';\r\nimport selectMultiple from './selectMultiple';\r\nimport Switch from './switch';\r\nimport textarea from './textarea';\r\nimport deletableInput from './deletableInput';\r\nimport { formGrid } from './formGrid';\r\n/* IMPORT HERE */\r\n\r\nconst forms: (theme: Theme) => Record<string, ThemeUICSSObject> = (theme) => {\r\n return {\r\n checkbox,\r\n customCheckbox,\r\n dateInput,\r\n deletableInput,\r\n formGrid,\r\n iconInput,\r\n input,\r\n label,\r\n radio,\r\n select,\r\n selectMultiple: selectMultiple(theme),\r\n switch: Switch,\r\n textarea,\r\n /* PREPEND HERE */\r\n 'input[type=\"date\"]': {\r\n variant: 'forms.input',\r\n },\r\n };\r\n};\r\n\r\nexport default forms;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { responsive } from '../../../../util';\r\n\r\nexport const overlay: Record<string, ThemeUICSSObject> = {\r\n overlay: {\r\n position: 'fixed',\r\n overflow: 'hidden',\r\n top: '0',\r\n right: '0',\r\n bottom: '0',\r\n left: '0',\r\n width: '100vw',\r\n height: '100vh',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n backgroundColor: `palette.background.overlay`,\r\n zIndex: 'modal',\r\n\r\n '&:not(.screenLock) .modal-enter-done': {\r\n boxShadow: 'modals',\r\n },\r\n },\r\n\r\n windowModal: {\r\n zIndex: 'modal',\r\n },\r\n\r\n 'overlay--stretch': {\r\n variant: 'layout.common.modals.overlay',\r\n alignItems: responsive({ 0: 'stretch', 2: 'center' }),\r\n },\r\n};\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nexport const apiaApi: ThemeUICSSObject = {\r\n margin: 'auto',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n wordBreak: 'break-word',\r\n overflow: 'hidden',\r\n width: '100%',\r\n\r\n '.modal__content': {\r\n overflow: 'hidden',\r\n\r\n '& > div': {\r\n display: 'flex',\r\n flexShrink: 1,\r\n flexDirection: 'column',\r\n },\r\n },\r\n\r\n '.handler__form': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n overflow: 'hidden',\r\n gap: spacing(6),\r\n\r\n '.toggleAccordionElement': {\r\n position: 'sticky',\r\n top: 0,\r\n },\r\n\r\n '.handler__form__elements': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'stretch',\r\n overflowY: 'auto',\r\n maxHeight: '60vh',\r\n gap: spacing(3),\r\n pr: spacing(3),\r\n },\r\n\r\n '.handler__form__elements__section__content': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n wordBreak: 'break-word',\r\n background: 'palette.background.paper',\r\n p: 0,\r\n gap: spacing(3),\r\n },\r\n\r\n '.content .handler__form__elements__section__content': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n borderTop: 'none',\r\n p: spacing(6),\r\n },\r\n\r\n '.handler__form__buttons': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n justifyContent: 'right',\r\n p: 0,\r\n gap: '0px',\r\n textAlign: 'center',\r\n },\r\n\r\n '.radio': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n flexWrap: 'wrap',\r\n listStyle: 'none',\r\n variant: 'layout.execution.form.fields.radio',\r\n },\r\n\r\n '.handler__checkbox, .handler__radio': {\r\n 'label span': {\r\n fontWeight: 'normal',\r\n },\r\n },\r\n\r\n '.checkbox': {\r\n flexDirection: 'row-reverse',\r\n alignItems: 'center',\r\n justifyContent: 'start',\r\n gap: spacing(4),\r\n '.semicolon': {\r\n display: 'none',\r\n },\r\n input: {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '.handler__hidden': {\r\n display: 'none',\r\n },\r\n\r\n 'label.select > div': {\r\n width: '100%',\r\n },\r\n\r\n '.spacer': {\r\n height: spacing(7),\r\n },\r\n },\r\n '.progressBox': {\r\n p: spacing(5),\r\n pt: spacing(0),\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default apiaApi;\r\n","import { spacing, ThemeUICSSObject } from '@apia/theme';\r\n\r\nconst confirm: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(6),\r\n height: '100%',\r\n width: '100%',\r\n overflow: 'auto',\r\n\r\n '.confirm__content': {\r\n overflow: 'auto',\r\n flexBasis: '100%',\r\n wordBreak: 'break-word',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n },\r\n\r\n '.confirm__buttonBar': {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n flexBasis: '40px',\r\n flexGrow: 0,\r\n flexShrink: 0,\r\n\r\n '.confirm__defaultButtons': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n },\r\n '.confirm__customButtons': {\r\n width: 'auto',\r\n },\r\n },\r\n};\r\n\r\nexport default confirm;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../../../util';\r\n\r\nconst table: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: 'calc(100vh - 300px)',\r\n width: '100%',\r\n overflow: 'auto',\r\n position: 'relative',\r\n '.selection__keyHandler': {\r\n overflow: 'visible',\r\n position: 'inherit',\r\n },\r\n // overflow: 'auto',\r\n // flexBasis: '100%',\r\n // wordBreak: 'break-word',\r\n // display: 'flex',\r\n // flexDirection: 'column',\r\n\r\n '.confirm__buttonBar': {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n flexBasis: '40px',\r\n flexGrow: 0,\r\n flexShrink: 0,\r\n\r\n '.confirm__defaultButtons': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n },\r\n '.confirm__customButtons': {\r\n width: 'auto',\r\n },\r\n },\r\n};\r\n\r\nexport default table;\r\n","import { responsive, spacing } from '../../../../util';\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\n\r\nconst tableModal: ThemeUICSSObject = {\r\n additionalFiltersModal: {\r\n '.modal__content': {\r\n overflow: 'hidden',\r\n\r\n '&.modal__content': {\r\n flexDirection: 'column',\r\n gap: spacing(4),\r\n\r\n '.additionalFilters__navbar': {\r\n display: 'flex',\r\n justifyContent: 'end',\r\n gap: spacing(4),\r\n },\r\n },\r\n },\r\n '.additionalFiltersContent': {\r\n width: '100%',\r\n minWidth: 'min(600px, 75vw)',\r\n maxWidth: '600px',\r\n overflow: 'hidden',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n maxHeight: '100%',\r\n gap: spacing(3),\r\n\r\n '.accordion__item': {\r\n maxHeight: '100%',\r\n overflow: 'hidden',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n flexGrow: 100,\r\n mb: spacing(0),\r\n\r\n '.accordion__item__content': {\r\n overflow: 'auto',\r\n\r\n '&>div': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n p: spacing(5),\r\n '& label': {\r\n flexDirection: 'column',\r\n justifyContent: 'stretch',\r\n textAlign: 'left',\r\n alignItems: 'stretch',\r\n\r\n span: {\r\n mb: spacing(1),\r\n },\r\n },\r\n },\r\n },\r\n },\r\n '#FilterTypes_content': {\r\n '& label': {\r\n mb: spacing(4),\r\n },\r\n '.confirmRow': {\r\n textAlign: 'right',\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.modal__main': {\r\n maxHeight: responsive({ 0: '100vh', 5: '85vh', 6: '75vh' }),\r\n maxWidth: 'max-content',\r\n resize: 'horizontal',\r\n\r\n '&[style*=\"width\"]': {\r\n maxWidth: 'unset',\r\n },\r\n\r\n '.confirm__content': {\r\n justifyContent: 'space-between',\r\n maxHeight: '100%',\r\n overflow: 'hidden',\r\n width: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n '.finder__content': {\r\n maxWidth: '100%',\r\n flexGrow: 100,\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n overflow: 'auto',\r\n\r\n '.selection__keyHandler': {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '.finder__statistics': {\r\n flexShrink: 0,\r\n },\r\n },\r\n },\r\n\r\n '.results': {\r\n mt: '7px',\r\n },\r\n};\r\n\r\nexport default tableModal;\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst buttonsBar: ThemeUICSSObject = {\r\n flexDirection: 'row',\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n gap: spacing(3),\r\n mb: spacing(0),\r\n};\r\n\r\nexport default buttonsBar;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\n\r\nconst apiaFinder: ThemeUICSSObject = {\r\n additionalFiltersModal: {\r\n resize: 'none',\r\n\r\n '.modal__main': {\r\n resize: 'none',\r\n },\r\n\r\n '.modal__content': {\r\n overflow: 'hidden',\r\n\r\n '&.modal__content': {\r\n flexDirection: 'column',\r\n gap: spacing(4),\r\n\r\n '.additionalFilters__navbar': {\r\n display: 'flex',\r\n justifyContent: 'end',\r\n gap: spacing(4),\r\n },\r\n },\r\n },\r\n '.additionalFiltersContent': {\r\n width: '100%',\r\n minWidth: 'min(600px, 75vw)',\r\n maxWidth: '600px',\r\n overflow: 'hidden',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n maxHeight: '100%',\r\n gap: spacing(3),\r\n\r\n '.accordionElement, .accordion__item': {\r\n maxHeight: '100%',\r\n overflow: 'hidden',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n flexGrow: 100,\r\n mb: spacing(0),\r\n\r\n '.content, .accordion__item__content': {\r\n overflow: 'auto',\r\n\r\n '&>div': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n p: spacing(5),\r\n '& label': {\r\n flexDirection: 'column',\r\n justifyContent: 'stretch',\r\n textAlign: 'left',\r\n alignItems: 'stretch',\r\n\r\n span: {\r\n mb: spacing(1),\r\n },\r\n },\r\n },\r\n },\r\n },\r\n '#FilterTypes_content': {\r\n '& label': {\r\n mb: spacing(4),\r\n },\r\n '.confirmRow': {\r\n textAlign: 'right',\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.modal__main': {\r\n maxHeight: responsive({ 0: '100vh', 5: '85vh', 6: '75vh' }),\r\n maxWidth: 'max-content',\r\n\r\n '&[style*=\"width\"]': {\r\n maxWidth: 'unset',\r\n },\r\n\r\n '.confirm__content': {\r\n justifyContent: 'space-between',\r\n maxHeight: '100%',\r\n overflow: 'hidden',\r\n width: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n '.finder__content': {\r\n maxWidth: '100%',\r\n flexGrow: 100,\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n overflow: 'auto',\r\n\r\n '.selection__keyHandler': {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '.finder__statistics': {\r\n flexShrink: 0,\r\n },\r\n },\r\n },\r\n\r\n '.results': {\r\n mt: '7px',\r\n },\r\n};\r\n\r\nexport default apiaFinder;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst deadSession: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 3,\r\n\r\n '.textAndIcon': {\r\n display: 'flex',\r\n gap: 5,\r\n\r\n svg: {\r\n filter: 'saturate(2.2)',\r\n color: 'iconWarning',\r\n },\r\n },\r\n\r\n '.goHomeLink': {\r\n color: 'palette.text.link',\r\n p: '3px',\r\n },\r\n};\r\n\r\nexport default deadSession;\r\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\nimport deadSession from './deadSession';\r\n/* IMPORT HERE */\r\nexport const modals: ThemeUICSSObject = {\r\n apiaApi,\r\n buttonsBar,\r\n confirm,\r\n deadSession,\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.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 '.table_container': {\r\n flexGrow: 1,\r\n },\r\n\r\n '.pagination': {\r\n position: 'sticky',\r\n bottom: '0',\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 '.react-calendar': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: '15px',\r\n },\r\n '.react-calendar__navigation': {\r\n display: 'flex',\r\n },\r\n abbr: {\r\n textDecoration: 'none',\r\n },\r\n button: {\r\n backgroundColor: 'palette.background.paper',\r\n border: '1px solid #e1e1e1',\r\n borderRadius: '4px',\r\n '&:hover': {\r\n backgroundColor: '#ebebeb',\r\n },\r\n },\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';\r\nimport { focusOutline } from '../../../../util';\r\n\r\nexport function getSelectionStyles() {\r\n return {\r\n 'td[data-focused=\"false\"], th[data-focused=\"false\"]': {\r\n '*:focus-visible, &:focus, &:focus-visible': {\r\n outline: 'none',\r\n },\r\n\r\n '*:focus': {\r\n ...focusOutline,\r\n },\r\n },\r\n '[data-focused=\"true\"]:not(.row__separator__cell)': {\r\n '&:not([data-editionmode=\"true\"])': {\r\n '&:focus, & > *:focus': {\r\n ...focusOutline,\r\n\r\n '&.cell__download__document': {\r\n outlineOffset: 0,\r\n },\r\n },\r\n },\r\n '&[data-editionmode=\"true\"]': {\r\n '&:focus, *:focus': {\r\n ...focusOutline,\r\n outlineStyle: 'dotted',\r\n outlineWidth: '6px',\r\n outlineOffset: '-4px',\r\n },\r\n },\r\n },\r\n '[data-focused=\"true\"].row__separator__cell': {\r\n backgroundColor: 'palette.secondary.main',\r\n outline: 'none',\r\n },\r\n } as ThemeUICSSObject;\r\n}\r\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 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 width: '100%',\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, & > .stateCell': {\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 boxShadow: 'none',\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\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 '.headButton__label ': {\r\n width: '100%',\r\n },\r\n\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\r\n 'tr.filtersRow, tr.responsiveTable__filters__row': {\r\n backgroundColor: 'components.primaryTable.body.backgroundColor',\r\n boxShadow: 'tableFilters',\r\n\r\n '.stateCell': {\r\n background: 'form.fields.disabled.backgroundColor',\r\n },\r\n\r\n 'td.noFilter[class]': {\r\n background: 'form.fields.disabled.backgroundColor',\r\n },\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 '.iconInput': {\r\n border: 'none',\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 svg: {\r\n transform: 'rotate(0deg)',\r\n transition: 'transform 200ms',\r\n },\r\n\r\n '&.expanded svg': {\r\n transform: `rotate(90deg)`,\r\n },\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';\r\nimport { spacing } from '../../../../util';\r\n\r\nexport const information: ThemeUICSSObject = {\r\n width: '100%',\r\n\r\n thead: {\r\n tr: {\r\n th: {\r\n bg: 'primary',\r\n color: 'white',\r\n textAlign: 'center',\r\n fontWeight: 'bold',\r\n p: spacing(4),\r\n },\r\n },\r\n },\r\n\r\n tbody: {\r\n tr: {\r\n 'td,th': {\r\n borderBottom: '1px solid',\r\n borderBottomColor: 'palette.border.article',\r\n p: spacing(3),\r\n },\r\n\r\n '&:last-of-type th, &:last-of-type td': {\r\n borderBottom: 'none',\r\n },\r\n th: {\r\n textAlign: 'left',\r\n verticalAlign: 'top',\r\n whiteSpace: 'nowrap',\r\n minWidth: 'min-content',\r\n width: 0,\r\n },\r\n },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../../../util';\r\n\r\nexport const accordion: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(2),\r\n\r\n '.responsiveTable__accordionElement__toggler': () => ({\r\n variant: 'buttons.outline',\r\n\r\n borderWidth: '1px',\r\n display: 'flex',\r\n gap: spacing(3),\r\n alignItems: 'stretch',\r\n width: '100%',\r\n px: 4,\r\n py: 3,\r\n '&:hover': {\r\n h3: {\r\n color: 'palette.primary.contrastText',\r\n },\r\n },\r\n\r\n '.accordionElement__toggler__checkbox': {\r\n flexShrink: 0,\r\n m: spacing(2),\r\n },\r\n\r\n '.accordionElement__toggler__button': {\r\n flexGrow: 100,\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n py: 2,\r\n pr: spacing(2),\r\n alignItems: 'center',\r\n\r\n '.accordionElement__toggler__label': {\r\n flexGrow: 100,\r\n m: spacing(0),\r\n textAlign: 'left',\r\n fontSize: 16,\r\n },\r\n\r\n '.accordionElement__toggler__expandIcon': {\r\n flexShrink: 0,\r\n svg: {\r\n width: '32px',\r\n },\r\n },\r\n },\r\n }),\r\n\r\n '.responsiveTable__accordionElement__content': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n '& > div': {\r\n backgroundColor: 'palette.background.paper',\r\n transition: 'padding-bottom 300ms, padding-top 300ms',\r\n px: 5,\r\n },\r\n\r\n '&.rah-static--height-zero': {\r\n '& > div': { py: 0 },\r\n },\r\n\r\n '&.rah-static--height-auto, &.rah-animating--down': {\r\n '& > div': { py: 5 },\r\n },\r\n '.priority_container': { display: 'flex', alignItems: 'center' },\r\n '.priority': { display: 'flex' },\r\n },\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n\r\nexport const print: ThemeUICSSObject = {\r\n border: '2px solid',\r\n borderColor: 'printView.list.table.borderColor',\r\n\r\n 'td, th': {\r\n p: 3,\r\n textAlign: 'left',\r\n },\r\n};\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport tinycolor from 'tinycolor2';\r\n/* IMPORT HERE */\r\n\r\nexport const responsive: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n maxHeight: '100%',\r\n overflow: 'auto',\r\n position: 'relative',\r\n // borderRadius: '10px',\r\n\r\n '&.isLoading': {\r\n overflow: 'hidden',\r\n },\r\n\r\n '.responsiveTable__isLoading': {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n background: tinycolor(theme.palette.background.paper)\r\n .setAlpha(0.7)\r\n .toRgbString(),\r\n zIndex: 1,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n },\r\n\r\n '.cell__download__document': {\r\n display: 'flex',\r\n gap: 3,\r\n alignItems: 'center',\r\n justifyContent: 'start',\r\n\r\n '&, *': {\r\n color: 'palette.primary.main',\r\n },\r\n\r\n svg: {\r\n flexShrink: 0,\r\n },\r\n },\r\n /* PREPEND HERE */\r\n };\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport getColorsAndStatesByPath from '../../../colors/util/getColorsAndStatesByPath';\r\n\r\nexport const secondary: ThemeUICSSObject = {\r\n variant: 'layout.common.tables.primary',\r\n borderColor: 'components.secondaryTable.borderColor',\r\n\r\n '& thead': {\r\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\r\n '& th, & td': () => ({\r\n ...getColorsAndStatesByPath('components.secondaryTable.header'),\r\n }),\r\n },\r\n },\r\n '& tbody': {\r\n tr: {\r\n '&:nth-of-type(2n)': {\r\n backgroundColor:\r\n 'components.secondaryTable.body.evenRowsBackgroundColor',\r\n },\r\n\r\n td: {\r\n borderColor: 'components.secondaryTable.body.borderColor',\r\n },\r\n\r\n '&[aria-selected=\"true\"]': {\r\n backgroundColor:\r\n 'components.secondaryTable.body.selectedRows.backgroundColor',\r\n\r\n color: 'components.secondaryTable.body.selectedRows.color',\r\n },\r\n\r\n borderBottomWidth: '1px',\r\n borderBottomStyle: 'solid',\r\n ...getColorsAndStatesByPath('components.secondaryTable.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 selected: false,\r\n },\r\n }),\r\n },\r\n },\r\n};\r\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 boxShadow: 'none',\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 'td.noFilter[class]': {\r\n background: 'form.fields.disabled.backgroundColor',\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';\r\nimport { primary } from './primary';\r\nimport { information } from './information';\r\nimport { accordion } from './accordion';\r\nimport { print } from './print';\r\nimport { responsive } from './responsive';\r\nimport { secondary } from './secondary';\r\nimport { clean } from './clean';\r\n\r\nexport const tables: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n accordion,\r\n information,\r\n primary: primary(theme),\r\n print,\r\n responsive: responsive(theme),\r\n secondary,\r\n clean: clean(theme),\r\n /* PREPEND HERE */\r\n };\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../../../util';\r\n/* IMPORT HERE */\r\n\r\nexport const captcha: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(2),\r\n\r\n '.captcha__imageContainer': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n p: spacing(4),\r\n },\r\n\r\n '.captcha__inputContainer': {\r\n display: 'flex',\r\n gap: spacing(2),\r\n justifyContent: 'stretch',\r\n\r\n input: {\r\n flexGrow: 1,\r\n width: '100%',\r\n },\r\n\r\n '.captcha__buttons': {\r\n width: '24px',\r\n flexDirection: 'column',\r\n display: 'flex',\r\n gap: spacing(2),\r\n flexShrink: 0,\r\n\r\n button: {\r\n width: '24px',\r\n height: '24px',\r\n p: '5px',\r\n variant: 'buttons.icon-outline',\r\n\r\n svg: {\r\n color: 'palette.text.primary',\r\n height: '16px',\r\n width: '16px',\r\n },\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\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';\r\nimport { focusOutline } from '../../../../util';\r\n\r\nconst primary: (theme: Theme) => ThemeUICSSObject = (theme) => {\r\n return {\r\n /* PREPEND HERE */\r\n position: 'relative',\r\n\r\n '[role=\"tree\"]:focus': {\r\n outline: 'none',\r\n '.focus': focusOutline,\r\n },\r\n\r\n '&[role=\"tree\"].mobxtree :focus': {\r\n outline: 'none',\r\n },\r\n '&[role=\"tree\"].mobxtree:focus-within': {\r\n '.focus > .mobxtree__node__label__wrapper': focusOutline,\r\n },\r\n\r\n ul: {\r\n listStyle: 'none',\r\n p: 0,\r\n },\r\n\r\n '.mobxtree__children__group': {\r\n borderLeft: '1px dotted',\r\n borderLeftColor: 'palette.border.section',\r\n ml: '5px',\r\n pl: '15px',\r\n },\r\n\r\n '.tree__searchLabelBox': {\r\n alignItems: 'center',\r\n borderRadius: '2px',\r\n display: 'flex',\r\n float: 'right',\r\n justifyContent: 'center',\r\n position: 'sticky',\r\n right: '4px',\r\n top: '4px',\r\n transform: 'translateX(0)',\r\n width: '100%',\r\n zIndex: 'stickyElements',\r\n\r\n '.tree__loading': {\r\n position: 'fixed',\r\n top: 0,\r\n right: '4px',\r\n height: 'iconMd',\r\n width: 'iconMd',\r\n background: 'palette.background.paper',\r\n },\r\n\r\n button: {\r\n cursor: 'pointer',\r\n\r\n '&:hover': {\r\n textDecoration: 'underline',\r\n },\r\n },\r\n },\r\n\r\n '.tree__searchLabel': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n position: 'fixed',\r\n p: '2px 5px',\r\n right: 0,\r\n top: 0,\r\n\r\n ...theme.palette.getOneState(\r\n { backgroundColor: 'palette.background.paper' },\r\n 'selected',\r\n ),\r\n },\r\n\r\n '[role=\"treeitem\"]': {\r\n '&[aria-expanded=\"false\"] ul': {\r\n display: 'none',\r\n },\r\n\r\n '&[aria-selected=\"true\"] > .tree__nodeItemLabel':\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 '.mobxtree__node__label': {\r\n flexGrow: 1,\r\n },\r\n\r\n '.mobxtree__node__label__icons': {\r\n flexShrink: 0,\r\n },\r\n\r\n '.tree__nodeItemLabel, .mobxtree__node__label__wrapper': {\r\n display: 'flex',\r\n flexWrap: 'nowrap',\r\n alignItems: 'center',\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 '.tree__nodeItemLabelRenderer': {\r\n display: 'flex',\r\n overflow: ' hidden',\r\n width: '100%',\r\n },\r\n\r\n '.button__content': {\r\n textAlign: 'left',\r\n },\r\n\r\n '& > *:not(.tree__nodeItemLabelRenderer)': {\r\n flexShrink: 0,\r\n textAlign: 'left',\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 '.tree__expanderWrapper, .mobxtree__node__expander': {\r\n display: 'inline-flex',\r\n ml: '-10px',\r\n pl: '5px',\r\n\r\n 'svg.tree__expandIcon, svg.mobxtree__node__expandIcon': {\r\n color: 'palette.text.primary',\r\n },\r\n },\r\n\r\n '.tree__node__icon': {\r\n mr: '3',\r\n },\r\n\r\n '.spacer': {\r\n borderLeft: '1px dotted',\r\n borderLeftColor: 'palette.border.section',\r\n width: '20px',\r\n alignSelf: 'stretch',\r\n transform: 'translateX(5px)',\r\n pointerEvents: 'none',\r\n },\r\n };\r\n};\r\n\r\nexport default primary;\r\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';\r\nimport primary from './primary';\r\nimport mobx from './mobx';\r\n\r\nexport const trees: ThemeUICSSObject = {\r\n mobx,\r\n primary,\r\n};\r\n","/* IMPORT HERE */\r\n\r\nimport { ThemeUICSSObject } from 'theme-ui';\r\n\r\nexport const primary: ThemeUICSSObject = {\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n borderRadius: 'tooltips',\r\n color: 'palette.text.primary',\r\n p: 3,\r\n zIndex: 'tooltip',\r\n /* PREPEND HERE */\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { primary } from './primary';\r\n/* IMPORT HERE */\r\n\r\nexport const tooltips: ThemeUICSSObject = {\r\n primary,\r\n /* PREPEND HERE */\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport {\r\n getColorsAndStatesByPath,\r\n getColorsByPath,\r\n} from '../../../../../methods';\r\nimport { responsive, spacing } from '../../../../../util';\r\n\r\nconst common: (type: string) => ThemeUICSSObject = (type) => ({\r\n ...getColorsByPath(type),\r\n gap: spacing(1),\r\n justifyContent: 'stretch',\r\n\r\n '&.onlyRefresh': {\r\n justifyContent: 'end',\r\n },\r\n alignItems: 'center',\r\n padding: 1,\r\n display: 'flex',\r\n\r\n '.pagination__leftToolbar': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n width: '100%',\r\n },\r\n '.pagination__deleteLabels': {\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n },\r\n '.pagination__selectPage': {\r\n width: '80px',\r\n top: '80px',\r\n textAlign: 'center',\r\n },\r\n\r\n '.iconButton': {\r\n height: '36px',\r\n width: '36px',\r\n\r\n ...getColorsAndStatesByPath(`${type}.icons`, {\r\n states: { disabled: false, path: false },\r\n }),\r\n '&:disabled': {\r\n background: 'transparent',\r\n },\r\n },\r\n '.recordsCounter': {\r\n color: 'palette.primary.contrastText',\r\n pl: spacing(3),\r\n },\r\n '.reachedMax': {\r\n color: 'red',\r\n pl: 2,\r\n },\r\n '.pagination__controls': {\r\n flexGrow: 1,\r\n justifyContent: 'center',\r\n flexShrink: 0,\r\n '&.onlyRefresh': {\r\n justifyContent: 'end',\r\n },\r\n alignItems: 'stretch',\r\n padding: 1,\r\n display: 'flex',\r\n width: responsive({ 0: 'max-content', 2: 'auto' }),\r\n\r\n 'select ~ svg': {\r\n display: 'none',\r\n },\r\n\r\n '.input': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: spacing(3),\r\n fontSize: '1em',\r\n border: '1px solid',\r\n paddingY: 1,\r\n paddingX: 4,\r\n ...getColorsByPath(`${type}.pagesBox`),\r\n input: {\r\n font: 'inherit',\r\n background: 'none',\r\n border: 'none',\r\n width: '30px',\r\n padding: 0,\r\n textAlign: 'center',\r\n },\r\n span: {\r\n font: 'inherit',\r\n display: 'block',\r\n width: '30px',\r\n },\r\n },\r\n },\r\n '.infoTooltip': {\r\n position: 'relative',\r\n display: 'inline-block',\r\n borderBottom: '1px dotted black',\r\n cursor: 'pointer',\r\n backgroundColor: '#f7d97f',\r\n },\r\n '.pagination__information': {\r\n p: 1,\r\n '.pagination__infoIcon': {\r\n display: 'flex',\r\n },\r\n },\r\n\r\n '.pagination__alertInfo': {\r\n variant: 'buttons.icon-primary',\r\n ...getColorsAndStatesByPath('buttons.iconAlert'),\r\n },\r\n '.pagination__rightToolbar': {\r\n display: 'flex',\r\n gap: 0,\r\n width: '100%',\r\n justifyContent: 'end',\r\n\r\n '.pagination__deleteFiltersButton': {\r\n variant: 'buttons.primary-sm',\r\n textDecoration: 'none',\r\n px: 3,\r\n '.button__content': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n gap: 3,\r\n },\r\n\r\n '.pagination__appliedFiltersLabel': {\r\n backgroundColor: 'palette.primary.contrastText',\r\n color: 'palette.text.title',\r\n borderRadius: '100%',\r\n display: 'inline-flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n minWidth: '1.5em',\r\n\r\n '&.withFilters': {\r\n backgroundColor: 'favorite',\r\n color: 'palette.text.primary',\r\n },\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport default common;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport common from './common';\r\n\r\nconst primary: ThemeUICSSObject = {\r\n ...common('components.paginationPrimary'),\r\n};\r\n\r\nexport default primary;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport common from './common';\r\n\r\nconst datagrid: ThemeUICSSObject = {\r\n ...common('components.paginationDatagrid'),\r\n};\r\n\r\nexport default datagrid;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport common from './common';\r\n\r\nconst primary: ThemeUICSSObject = {\r\n ...common('components.paginationSecondary'),\r\n};\r\n\r\nexport default primary;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport primary from './primary';\r\nimport datagrid from './datagrid';\r\nimport secondary from './secondary';\r\n\r\nconst pagination: ThemeUICSSObject = {\r\n primary,\r\n datagrid,\r\n secondary,\r\n};\r\n\r\nexport default pagination;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { spacing } from '../../../../util';\r\nimport { getColorsAndStatesByPath } from '../../../../methods';\r\n\r\nexport const accordion: ThemeUICSSObject = {\r\n primary: {\r\n '&, .accordion__item': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'stretch',\r\n flexShrink: 0,\r\n },\r\n '.filtersRender': {\r\n width: '100%',\r\n },\r\n '.accordion__item__button__rightGroup': {\r\n flexShrink: 0,\r\n },\r\n '.accordion__item__button__leftGroup, .accordion__item__button__rightGroup':\r\n {\r\n alignItems: 'center',\r\n display: 'flex',\r\n gap: 3,\r\n\r\n '& > *': {\r\n flexShrink: 0,\r\n\r\n '&.accordion__item__button__label': {\r\n flexShrink: 1,\r\n },\r\n },\r\n },\r\n\r\n '.accordion__item__button__label': {\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n flexShrink: 1,\r\n color: 'palette.primary.contrastText',\r\n fontSize: 16,\r\n },\r\n\r\n '.accordion__item__button__check': {\r\n width: '32px',\r\n height: '32px',\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n // borderColor: 'palette.border.field',\r\n cursor: 'pointer',\r\n display: 'flex',\r\n alignItems: 'stretch',\r\n justifyContent: 'stretch',\r\n p: 2,\r\n\r\n svg: {\r\n color: 'palette.text.primary',\r\n height: '100%',\r\n width: '100%',\r\n },\r\n },\r\n\r\n '.accordion__item:not(:first-of-type) > .accordion__item__button': {\r\n borderTop: '1px solid',\r\n borderTopColor: 'palette.border.ghost',\r\n },\r\n\r\n '.accordion__item__content': {\r\n background: 'palette.background.paper',\r\n },\r\n\r\n '.accordion__item__content > *': {\r\n p: 4,\r\n boxShadow: 'default',\r\n borderRadius: 'default',\r\n },\r\n\r\n '.accordion__item__button': {\r\n width: '100%',\r\n p: 3,\r\n\r\n '.button__content': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n gap: spacing(3),\r\n justifyContent: 'space-between',\r\n width: '100%',\r\n },\r\n },\r\n '.accordion__cell__renderer': {\r\n display: 'flex',\r\n },\r\n },\r\n panels: {\r\n variant: 'layout.common.components.accordion.primary',\r\n overflowX: 'hidden',\r\n border: 'none',\r\n\r\n '.accordion__item': {\r\n border: 'none',\r\n },\r\n\r\n '.accordion__item__button': {\r\n pl: 4,\r\n ...getColorsAndStatesByPath('components.accordion.panels'),\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n borderBottom: 'none',\r\n\r\n '.button__content': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n gap: spacing(3),\r\n justifyContent: 'space-between',\r\n width: '100%',\r\n },\r\n },\r\n\r\n '.accordion_item__button:first-of-type': {\r\n borderTop: 'none',\r\n },\r\n\r\n '.accordion__item__button__label': {\r\n color: 'palette.text.primary',\r\n fontWeight: '400',\r\n },\r\n '.accordion__item__content[aria-hidden=\"true\"]': {\r\n border: 'none',\r\n },\r\n '.accordion__item__button__check': {\r\n borderColor: 'palette.border.section',\r\n borderRadius: '3px',\r\n },\r\n '.accordion__item__content': {\r\n background: 'palette.secondary.light',\r\n '[data-variant=\"link\"]': {\r\n px: 0,\r\n },\r\n div: {\r\n border: 'none',\r\n },\r\n },\r\n },\r\n};\r\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: '20px',\r\n top: 'calc(50% - 12px)',\r\n pointerEvents: 'none',\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 width: 'min-content',\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 '&.readOnly': {\r\n background: 'form.fields.readonly.backgroundColor',\r\n borderColor: 'form.fields.readonly.backgroundColor',\r\n color: 'palette.text.primary',\r\n cursor: 'not-allowed',\r\n },\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';\r\n\r\nexport const aiMessage: ThemeUICSSObject = {\r\n position: 'relative',\r\n\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 '.descriptionButton': {\r\n borderRadius: '5px',\r\n right: '28px',\r\n top: '-2px',\r\n zIndex: '15',\r\n position: 'absolute',\r\n variant: 'buttons.icon-outline',\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 fileBox: {\r\n variant: 'layout.common.components.aiMessage.genericBox',\r\n width: '130px',\r\n height: '120px',\r\n backgroundColor: '#f0f0f0',\r\n border: '1px solid #ccc',\r\n borderRadius: '4px',\r\n position: 'relative',\r\n display: 'flex',\r\n img: {\r\n objectFit: 'contain',\r\n width: '110px',\r\n height: '69px',\r\n },\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, 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.border.field',\r\n height: '50px',\r\n borderRadius: 'default',\r\n boxShadow: `0px 1px 1px #c7c7c7`,\r\n background: 'palette.background.paper',\r\n cursor: 'pointer',\r\n\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: 'default',\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(\r\n theme.palette.background.paper,\r\n 'hover',\r\n ),\r\n color: 'palette.text.primary',\r\n };\r\n },\r\n};\r\n\r\nexport default fileCard;\r\n","import tinycolor from 'tinycolor2';\r\nimport {\r\n focusOutline,\r\n getOneColorState,\r\n responsive,\r\n spacing,\r\n ThemeUICSSObject,\r\n} from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst scheduler: ThemeUICSSObject = {\r\n variant: 'layout.execution.form.fields.field',\r\n\r\n details: {\r\n '.no__appoinments': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n padding: '10px',\r\n borderRadius: 'default',\r\n },\r\n '.appoinments__details': {\r\n borderRadius: 'default',\r\n borderCollapse: 'collapse',\r\n width: '100%',\r\n textAlign: 'left',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n 'th, .appoinments__details_id': {\r\n fontWeight: 'bold',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n padding: '10px',\r\n },\r\n '.appoinments__details_attribute': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n padding: '5px',\r\n minWidth: '200px',\r\n },\r\n },\r\n },\r\n\r\n '&.scheduler': {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n flexDirection: 'column',\r\n width: '100%',\r\n position: 'relative',\r\n textAlign: 'center',\r\n '.selectedDateInfo': {\r\n margin: '5px',\r\n minHeight: '25px',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n },\r\n '.delete_date_button': {\r\n display: 'none',\r\n },\r\n table: {\r\n variant: 'layout.common.tables.primary',\r\n width: '100%',\r\n overflow: 'hidden',\r\n border: ' 1px solid',\r\n borderColor: 'palette.border.field',\r\n borderCollapse: 'collapse',\r\n thead: {\r\n 'tr:not(.filtersRow)': {\r\n 'th:first-of-type': {\r\n width: '80px',\r\n },\r\n th: {\r\n width: 'auto',\r\n border: 'none',\r\n borderColor: 'palette.primary.main',\r\n textAlign: 'center',\r\n px: 1,\r\n\r\n '.headButton__container': {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n },\r\n\r\n '.headButton__label': {\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n px: 0,\r\n },\r\n\r\n '& .headButton': {\r\n backgroundColor: 'palette.primary.main',\r\n border: 'none',\r\n px: 1,\r\n // py: 3,\r\n borderColor: 'palette.primary.main',\r\n },\r\n },\r\n },\r\n },\r\n\r\n tbody: {\r\n tr: {\r\n 'td:first-of-type': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n },\r\n },\r\n td: {\r\n p: 0,\r\n height: '40px',\r\n textAlign: 'center',\r\n alignContent: 'center',\r\n\r\n border: ' 1px solid',\r\n borderColor: 'palette.primary.main',\r\n\r\n '&.disabled': {\r\n background: (theme) =>\r\n getOneColorState(\r\n 'palette.background.paper',\r\n 'disabled',\r\n theme.palette,\r\n ),\r\n },\r\n\r\n '&:focus-within': focusOutline,\r\n },\r\n },\r\n },\r\n '.box_spinner': (theme) => ({\r\n position: 'relative',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n alignSelf: 'center',\r\n width: '100%',\r\n height: '65%',\r\n marginTop: '20px',\r\n display: 'flex',\r\n background: tinycolor(theme.palette.background.paper)\r\n .setAlpha(0.4)\r\n .toRgbString(),\r\n }),\r\n '.scheduler__navigator': {\r\n gap: spacing(4),\r\n display: 'flex',\r\n justifyContent: 'center',\r\n flexWrap: 'wrap',\r\n '.scheduler__navigator_dateInput input': {\r\n textAlign: 'center',\r\n width: '380px',\r\n borderTopRightRadius: 0,\r\n borderBottomRightRadius: 0,\r\n },\r\n\r\n '.scheduler__navigator_dateInput': {\r\n width: responsive({ 0: '100%', 3: 'auto', 4: '100%', 5: 'auto' }),\r\n order: responsive({ 0: 1, 3: 3, 4: 1, 5: 3 }),\r\n },\r\n '.scheduler__navigator_todayBtn': {\r\n order: responsive({ 0: 2, 3: 1, 4: 2, 5: 1 }),\r\n },\r\n '.scheduler__navigator_lastBtn': {\r\n order: responsive({ 0: 3, 3: 2, 4: 3, 5: 2 }),\r\n },\r\n '.scheduler__navigator_nextBtn': {\r\n order: responsive({ 0: 4, 3: 4, 4: 4, 5: 4 }),\r\n },\r\n '.scheduler__navigator_DeleteBtn': {\r\n order: responsive({ 0: 5, 3: 5, 4: 5, 5: 5 }),\r\n },\r\n '.iconInput': {\r\n margin: responsive({ 0: 'auto', 3: '0', 4: 'auto', 5: '0' }),\r\n width: responsive({\r\n 0: 'max-content',\r\n 1: 'auto',\r\n 2: 'max-content',\r\n 3: 'auto',\r\n 4: 'max-content',\r\n 5: 'auto',\r\n }),\r\n gap: 0,\r\n\r\n '.iconButton': {\r\n border: 'none',\r\n background: 'palette.background.paper',\r\n },\r\n },\r\n '.iconButton': {\r\n borderTopLeftRadius: 0,\r\n borderBottomLeftRadius: 0,\r\n },\r\n },\r\n\r\n '.scheduler__tskSchDisabled': {\r\n backgroundColor: '#b2c0cf',\r\n cursor: 'not-allowed',\r\n },\r\n '.schedulerMini': {\r\n flex: 1,\r\n display: responsive({ 0: 'block', 3: 'flex' }),\r\n alignItems: responsive({ 0: 'center', 3: 'start' }),\r\n justifyContent: 'center',\r\n flexDirection: responsive({ 0: 'column', 3: 'row' }),\r\n maxHeight: responsive({ 0: '100vh', 3: '60vh' }),\r\n gap: spacing(7),\r\n\r\n '.schedulerMini_faCaretDown': {\r\n flex: 1,\r\n alignSelf: 'center',\r\n justifyContent: 'center',\r\n display: responsive({ 0: 'block', 3: 'none' }),\r\n },\r\n },\r\n '.stage': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n maxHeight: responsive({ 0: 'auto', 3: '60vh' }),\r\n width: responsive({ 0: '100%', 3: '60%' }),\r\n zIndex: 1,\r\n transition: 'width 1s',\r\n },\r\n\r\n '[data-name=\"daysList\"]': {\r\n transition: 'transform 0.5s, opacity 0.8s',\r\n transform: responsive({ 0: 'translateY(-10%)', 3: 'translateY(-40%)' }),\r\n opacity: 0,\r\n width: 0,\r\n },\r\n '[data-name=\"morningOrAfternoon\"]': {\r\n transition: 'transform 0.5s, opacity 0.8s',\r\n transform: responsive({ 0: 'translateY(-10%)', 3: 'translateY(-40%)' }),\r\n opacity: 0,\r\n width: 0,\r\n },\r\n '[data-name=\"daysHours\"]': {\r\n transition: 'transform 0.5s, opacity 0.8s',\r\n transform: responsive({ 0: 'translateY(-10%)', 3: 'translateY(-40%)' }),\r\n opacity: 0,\r\n width: 0,\r\n },\r\n\r\n '.stage.in.visible': {\r\n opacity: 1,\r\n transform: responsive({ 0: 'translateY(0)', 3: 'translateY(0)' }),\r\n width: responsive({ 0: '100%', 3: '60%' }),\r\n },\r\n '[data-name=\"daysList\"] .stage.in.visible': {\r\n opacity: 1,\r\n transform: responsive({ 0: 'translateY(0)', 3: 'translateY(0)' }),\r\n width: responsive({ 0: '100%', 3: '60%' }),\r\n },\r\n\r\n '.stage:nth-of-type(3)': {\r\n maxHeight: responsive({ 0: 'auto', 3: '60vh' }),\r\n overflow: responsive({ 0: 'none', 3: 'auto' }),\r\n },\r\n '.stage_btn': {\r\n margin: '2px',\r\n\r\n '&.selected': {\r\n position: 'sticky',\r\n top: 0,\r\n variant: 'buttons.primary',\r\n\r\n bottom: 0,\r\n zIndex: 1,\r\n },\r\n\r\n '&:disabled:hover': {\r\n backgroundColor: 'palette.gray.800',\r\n color: 'palette.common.black',\r\n },\r\n },\r\n '.stage_btn:disabled': {\r\n display: responsive({ 0: 'none', 3: 'block' }),\r\n },\r\n\r\n '.td_overassign': {\r\n backgroundColor: 'palette.warning.main',\r\n },\r\n },\r\n '.schd__info_disabledColor': {\r\n background: (theme) =>\r\n getOneColorState('palette.background.paper', 'disabled', theme.palette),\r\n '&:hover, &:focus, &:active': {\r\n background: (theme) =>\r\n getOneColorState('palette.background.paper', 'disabled', theme.palette),\r\n },\r\n },\r\n\r\n '.scheduler_cell': {\r\n height: '100%',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n button: {\r\n width: '100%',\r\n height: '100%',\r\n },\r\n\r\n '*:focus': {\r\n outline: 'none',\r\n },\r\n },\r\n\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default scheduler;\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\nimport scheduler from './scheduler';\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 scheduler,\r\n toolbar,\r\n aiMessage,\r\n infoButton,\r\n filters,\r\n fileCard,\r\n};\r\n","import { ThemeUICSSObject, getOneColorState, spacing } from '@apia/theme';\r\n\r\nconst labelBox: ThemeUICSSObject = {\r\n alignItems: 'center',\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n display: 'flex',\r\n gap: spacing(3),\r\n justifyContent: 'space-between',\r\n p: spacing(3),\r\n pl: spacing(5),\r\n\r\n '&.selected': {\r\n background: (theme) =>\r\n getOneColorState('palette.background.paper', 'selected', theme.palette),\r\n },\r\n\r\n '& > .labelAndIcon': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: spacing(3),\r\n\r\n '& ~ div button': {\r\n border: 'none',\r\n },\r\n\r\n svg: {\r\n minHeight: 'iconMd',\r\n minWidth: 'iconMd',\r\n },\r\n\r\n '&:last-of-type': {\r\n textAlign: 'right',\r\n },\r\n },\r\n};\r\n\r\nexport default labelBox;\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport labelBox from './labelBox';\r\n\r\nexport const boxes: ThemeUICSSObject = {\r\n labelBox,\r\n /* PREPEND HERE */\r\n};\r\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 documentPage: {\r\n padding: 4,\r\n //maxWidth: 800,\r\n width: '100%',\r\n margin: '0 auto',\r\n fontFamily: 'body',\r\n lineHeight: 'body',\r\n color: 'text',\r\n\r\n h1: {\r\n fontSize: '25px',\r\n mb: '24px',\r\n mt: '13px',\r\n borderColor: 'muted',\r\n pb: '2px',\r\n color: 'primary',\r\n },\r\n h2: {\r\n fontSize: '22px',\r\n mb: '23px',\r\n color: 'primary',\r\n },\r\n h3: {\r\n fontSize: '21px',\r\n mb: '10px',\r\n mt: '16px',\r\n color: 'pallete.text.title',\r\n },\r\n h4: {\r\n fontSize: '20px',\r\n mb: '10px',\r\n mt: '16px',\r\n color: 'pallete.text.title',\r\n },\r\n h5: {\r\n fontSize: '19px',\r\n mb: '10px',\r\n mt: '16px',\r\n color: 'pallete.text.title',\r\n },\r\n h6: {\r\n fontSize: '18px',\r\n mb: '10px',\r\n mt: '16px',\r\n color: 'pallete.text.title',\r\n },\r\n p: {\r\n mb: '8px',\r\n mt: '20px',\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 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 streamBlock: {\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 streamBlocks: {\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_blocks': {\r\n variant: 'layout.common.ai.semanticSearch.execution.streamBlocks',\r\n },\r\n\r\n '.sem_search__stream_block': {\r\n variant: 'layout.common.ai.semanticSearch.execution.streamBlock',\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: { padding: '0 24px 32px 24px', fontWeight: 'bold' },\r\n\r\n '.ellipsis': {\r\n variant: 'layout.common.ai.semanticSearch.execution.ellipsis',\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 refsAccordion: {\r\n variant: 'layout.common.components.accordion.panels',\r\n border: (theme) => `1px solid ${theme.palette.border.ghost}`,\r\n\r\n refButton: {\r\n variant: 'buttons.paper',\r\n },\r\n\r\n '& .accordion__item__button': {\r\n userSelect: 'unset',\r\n position: 'sticky',\r\n top: 0,\r\n },\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: '8px',\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: 4,\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 div: {\r\n padding: 0,\r\n },\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 pt: 0,\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 minWidth: '50px',\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 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 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: 'chatMessage',\r\n borderTopLeftRadius: '0px',\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 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: 'chatMessage',\r\n borderTopLeftRadius: '0px',\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 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: 'chatMessage',\r\n borderTopLeftRadius: '0px',\r\n alignSelf: 'start',\r\n backgroundColor: '#00bcff14', //'#2222cc2b',\r\n width: '100%',\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 height: '100%',\r\n gap: 3,\r\n flexBasis: '50vh',\r\n flexGrow: 1,\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 '.assistantHistory': {\r\n flexGrow: 1,\r\n overflow: 'auto',\r\n maxHeight: '77vh',\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 '#floatingAssistant': {\r\n minWidth: '500px',\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 { ThemeUICSSObject } from 'theme-ui';\r\n\r\nexport const markdown: ThemeUICSSObject = {\r\n padding: '0 24px 32px 24px',\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","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst observations: ThemeUICSSObject = {\r\n bg: 'white',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(5),\r\n background: 'transparent',\r\n borderRadius: 'default',\r\n\r\n '.currentObservations': {\r\n display: 'flex',\r\n gap: spacing(5),\r\n flexDirection: 'column',\r\n borderRadius: 'default',\r\n\r\n '.observation': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n borderRadius: 'default',\r\n\r\n '.observation__header': {\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n gap: spacing(3),\r\n alignItems: 'center',\r\n borderBottom: '1px solid',\r\n borderColor: 'palette.border.article',\r\n p: spacing(5),\r\n backgroundColor: 'palette.background.paper',\r\n '.icon__wrapper': {\r\n svg: {\r\n color: 'favorite',\r\n },\r\n },\r\n\r\n img: {\r\n width: '18px',\r\n height: '18px',\r\n },\r\n\r\n '.observation__header__block': {\r\n display: 'flex',\r\n flexWrap: 'nowrap',\r\n gap: spacing(3),\r\n },\r\n\r\n '.observation__label': {\r\n fontWeight: '900',\r\n },\r\n },\r\n\r\n '&.marked .observation__header': {\r\n borderLeft: '4px solid',\r\n borderLeftColor: 'notifications.warning.backgroundColor',\r\n borderColor: 'notifications.warning.backgroundColor',\r\n backgroundColor: 'notifications.warning.backgroundColor',\r\n borderRadius: 'default',\r\n },\r\n\r\n '.observation__body': {\r\n display: 'flex',\r\n gap: spacing(5),\r\n p: spacing(5),\r\n alignItems: 'start',\r\n\r\n '.observation__comment': {\r\n width: '100%',\r\n maxHeight: 'calc(100vh - 130px)',\r\n resize: 'vertical',\r\n\r\n '&[style*=\"height\"]': {\r\n maxHeight: 'unset',\r\n },\r\n\r\n overflow: 'auto',\r\n pr: spacing(4),\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.checkboxes': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n gap: spacing(6),\r\n '.checkbox': {\r\n alignItems: 'center',\r\n display: 'flex',\r\n gap: spacing(3),\r\n },\r\n },\r\n '.observation': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n span: {\r\n fontWeight: 'bold',\r\n },\r\n textarea: {\r\n height: '140px',\r\n },\r\n },\r\n\r\n '.alert': {\r\n color: 'palette.warning.main',\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default observations;\r\n","import { responsive, spacing, ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nexport const dataGrid: ThemeUICSSObject = {\r\n variant: 'grids.form',\r\n\r\n display: responsive({ 0: 'flex', 2: 'grid' }),\r\n flexDirection: 'column',\r\n gap: spacing(6),\r\n\r\n alignItems: 'start',\r\n gridAutoRows: 'none',\r\n gridTemplateColumns: responsive({\r\n 0: 'repeat(1, 1fr)',\r\n\r\n 2: 'repeat(3, 1fr)',\r\n\r\n 4: 'repeat(3, 1fr)',\r\n 5: 'repeat(5, 1fr)',\r\n }),\r\n\r\n '& label': {\r\n display: 'block',\r\n\r\n '.elementValue': {\r\n fontWeight: 'normal',\r\n\r\n '.errorContainer': {\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n\r\n div: {\r\n position: 'relative',\r\n },\r\n },\r\n },\r\n\r\n '&.identifier, &.calendar': {\r\n gridColumn: responsive({ 0: 'span 2', 5: 'span 3', 6: 'span 2' }),\r\n\r\n div: {\r\n display: 'flex',\r\n gap: spacing(1),\r\n alignItems: 'center',\r\n\r\n '.separator': {\r\n alignSelf: 'center',\r\n },\r\n\r\n input: {\r\n minWidth: '60px',\r\n },\r\n\r\n '.body': {\r\n width: '100%',\r\n },\r\n\r\n '.identifier__body': {\r\n flexShrink: 0,\r\n },\r\n },\r\n },\r\n\r\n 'strong + div': {\r\n wordBreak: 'break-all',\r\n },\r\n },\r\n};\r\n\r\nexport const entityAndProcessData: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n // p: spacing(7),\r\n gap: 7,\r\n '.collapsiblePanel__label': {\r\n display: 'flex',\r\n alignItems: 'anchor-center',\r\n gap: 3,\r\n h3: {\r\n m: spacing(0),\r\n fontSize: 18,\r\n },\r\n },\r\n\r\n '.collapsiblePanel__content': {\r\n borderRadius: 'default',\r\n '&:not([aria-hidden=\"true\"])': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n },\r\n\r\n '& > div > *:not(.noPadding, button, .uploadedFiles__container)': {\r\n p: spacing(5),\r\n },\r\n },\r\n\r\n '.dataGrid': dataGrid,\r\n '.dropzone': {\r\n border: 'none',\r\n },\r\n '.uploadedFiles__container[class]': {\r\n display: 'flex',\r\n gap: 3,\r\n p: 0,\r\n flexDirection: 'column',\r\n '.download_Button': {\r\n width: 'fit-content',\r\n },\r\n },\r\n};\r\n\r\nconst entityData: ThemeUICSSObject = {\r\n ...entityAndProcessData,\r\n\r\n '& h2': {\r\n '&.visibilitiesTitle': {\r\n display: 'flex',\r\n justifyContent: 'start',\r\n gap: spacing(3),\r\n },\r\n },\r\n\r\n '.imageSelector': {\r\n button: {\r\n border: 'none',\r\n cursor: 'pointer',\r\n p: spacing(0),\r\n width: '75px',\r\n img: {\r\n width: '100%',\r\n },\r\n },\r\n },\r\n\r\n '.EntityDataDocuments, .ProcessDataDocuments': {\r\n '.entityData__actions': {\r\n p: spacing(3),\r\n },\r\n },\r\n\r\n '.categories__tree__label': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: spacing(3),\r\n\r\n '& > div': {\r\n display: 'flex',\r\n py: spacing(2),\r\n },\r\n },\r\n\r\n '.entity__visibilities__container': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(4),\r\n '.entity__visibilities__grid': {\r\n display: 'grid',\r\n gridTemplateColumns: 'repeat(2, 1fr)',\r\n gap: '1rem',\r\n '.switch__card': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.field',\r\n borderRadius: 'default',\r\n },\r\n },\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default entityData;\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\nimport { entityAndProcessData } from './entityData';\r\n/* IMPORT HERE */\r\n\r\nconst processData: ThemeUICSSObject = {\r\n ...entityAndProcessData,\r\n\r\n '.ProcessDataDocuments': {\r\n '.processData__actions': {\r\n p: spacing(3),\r\n },\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default processData;\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst documents: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(7),\r\n\r\n '.collapsiblePanel__label': {\r\n mb: spacing(3),\r\n h2: {\r\n m: spacing(0),\r\n },\r\n },\r\n\r\n '.collapsiblePanel__content': {\r\n '&:not([aria-hidden=\"true\"])': {\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n },\r\n\r\n '& > div > *:not(.noPadding)': {\r\n p: spacing(7),\r\n },\r\n },\r\n\r\n '.dropzone': {\r\n borderTop: 'none',\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n },\r\n\r\n '.entityData__actions, .processData__actions': {\r\n p: spacing(3),\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default documents;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst taskMonitor: ThemeUICSSObject = {\r\n table: {\r\n variant: 'layout.common.tables.secondary',\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n borderRadius: 'default',\r\n overflow: 'hidden',\r\n },\r\n\r\n '.taskMonitor__warning': {\r\n backgroundColor: 'palette.warning.light',\r\n color: 'palette.warning.contrastText',\r\n },\r\n '.taskMonitor__overdue': {\r\n backgroundColor: 'palette.error.light',\r\n color: 'palette.error.contrastText',\r\n },\r\n '& > div': {\r\n maxHeight: '500px',\r\n '& > div': {\r\n height: '100%',\r\n overflowX: 'auto',\r\n\r\n '&.noFixedWidth': {\r\n overflowX: 'auto',\r\n },\r\n },\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default taskMonitor;\r\n","import { spacing, ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst tab: ThemeUICSSObject = {\r\n list: {\r\n '.tabs__list': {\r\n borderRadius: '7px',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n },\r\n '.tabs__item__wrapper': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n background: 'palette.background.paper',\r\n padding: '4px 10px',\r\n border: 'none',\r\n borderBottom: '1px solid #ccc',\r\n boxShadow: 'sharp',\r\n cursor: 'pointer',\r\n '.tabs__item__button': {\r\n width: '100%',\r\n p: 3,\r\n background: 'transparent',\r\n justifyContent: 'start',\r\n color: 'palette.text.primary',\r\n '.button__content': {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: spacing(1),\r\n textAlign: 'start',\r\n },\r\n },\r\n '&:hover': {\r\n background: 'palette.gray.900',\r\n },\r\n // First item: apply top border radii\r\n '&:first-of-type': {\r\n borderTopLeftRadius: 'default',\r\n borderTopRightRadius: 'default',\r\n },\r\n // Last item: apply bottom border radii\r\n '&:last-of-type': {\r\n borderBottomLeftRadius: 'default',\r\n borderBottomRightRadius: 'default',\r\n },\r\n },\r\n '.warning-icon[class]': {\r\n svg: {\r\n // color: '#ffa600',\r\n color: 'favorite',\r\n width: '18px',\r\n height: '18px',\r\n },\r\n },\r\n },\r\n\r\n content: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: '15px',\r\n '.tabs__content': {\r\n '.accordion__item': {\r\n boxShadow: 'default',\r\n },\r\n },\r\n '.accordion__item__button[class]': {\r\n width: '100%',\r\n p: '10px 15px',\r\n borderRadius: 'default',\r\n userSelect: 'unset',\r\n\r\n '.button__content': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n justifyContent: 'space-between',\r\n width: '100%',\r\n alignItems: 'center',\r\n },\r\n },\r\n '.accordion__item__content': {\r\n borderRadius: 'default',\r\n background: 'palette.background.paper',\r\n '&:not(:has([data-variant=\"layout.execution.form\"])) > div': {\r\n p: spacing(7),\r\n },\r\n },\r\n '.accordion__item__button__label': {\r\n color: 'palette.primary.contrastText',\r\n },\r\n '.accordion__item__button__rightGroup': {\r\n display: 'flex',\r\n },\r\n '.tabs__Item': {\r\n height: '100%',\r\n display: 'flex',\r\n gap: '15px',\r\n flexDirection: 'column',\r\n },\r\n '.collapsiblePanel__container': {\r\n background: 'palette.background.paper',\r\n p: spacing(0),\r\n '.collapsiblePanel__label__button': {\r\n display: 'flex',\r\n },\r\n },\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default tab;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nconst associations: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 4,\r\n\r\n '.associations__table_container': {\r\n height: '400px',\r\n overflowY: 'auto',\r\n overflowX: 'hidden',\r\n },\r\n table: {\r\n variant: 'layout.common.tables.secondary',\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n borderRadius: 'default',\r\n },\r\n '.associations__buttons': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n gap: 2,\r\n justifyContent: 'flex-end',\r\n },\r\n '.errorRequired': {\r\n color: 'palette.error.main',\r\n },\r\n\r\n '.association__errorRequired': {\r\n input: {\r\n color: 'palette.error.main',\r\n borderLeft: '3px solid !important',\r\n borderLeftColor: 'palette.error.main',\r\n },\r\n },\r\n\r\n '.associationSpinner': {\r\n position: 'absolute',\r\n width: '20px',\r\n height: '20px',\r\n right: '55px',\r\n top: '15px',\r\n },\r\n\r\n '.association__cell_content': {\r\n position: 'relative',\r\n },\r\n '.associationReq__after': { position: 'absolute', left: '2px', top: '-3px' },\r\n '.associationReq__before': {\r\n position: 'absolute',\r\n right: '2px',\r\n top: '-3px',\r\n },\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default associations;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\nimport observations from './observations';\r\nimport entityData from './entityData';\r\nimport processData from './processData';\r\nimport documents from './documents';\r\nimport taskMonitor from './taskMonitor';\r\nimport tab from './tab';\r\nimport associations from './associations';\r\n/* IMPORT HERE */\r\n\r\nconst tabs: ThemeUICSSObject = {\r\n observations,\r\n entityData,\r\n processData,\r\n documents,\r\n taskMonitor,\r\n associations,\r\n ...tab,\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default tabs;\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\nimport { markdown } from './markdown';\r\nimport tabs from './tabs';\r\n\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 tabs,\r\n components: components,\r\n trees,\r\n tooltips,\r\n ai,\r\n chat,\r\n markdown,\r\n /* PREPEND HERE */\r\n };\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\n/* IMPORT HERE */\r\n\r\nexport const collector: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n formContainer: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n flexShrink: '1 !important',\r\n minWidth: 'min(400px, calc(100vw - 52px))',\r\n overflow: 'hidden',\r\n pr: 2,\r\n\r\n '.collector__fields': {\r\n overflow: 'auto',\r\n gap: '8px',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n },\r\n\r\n '.collector__buttons': {\r\n display: 'flex',\r\n justifyContent: 'end',\r\n alignItems: 'end',\r\n gap: 4,\r\n },\r\n\r\n '.fieldWrapper.checkbox': {\r\n display: 'flex',\r\n flexDirection: 'row-reverse',\r\n gap: 4,\r\n alignItems: 'start',\r\n justifyContent: 'start',\r\n },\r\n\r\n '.validationsForm': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 4,\r\n overflow: 'hidden',\r\n },\r\n },\r\n\r\n modal: {\r\n '.modal__main': {},\r\n },\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n/* IMPORT HERE */\r\n\r\nexport const speedui: ThemeUICSSObject = {\r\n /* PREPEND HERE */\r\n\r\n modal: {\r\n alignItems: 'center',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n left: 0,\r\n p: 5,\r\n pointerEvents: 'none',\r\n position: 'fixed',\r\n right: 0,\r\n top: 0,\r\n\r\n '.modal__main': {\r\n pointerEvents: 'all',\r\n },\r\n\r\n '.speedui__selector': {\r\n maxHeight: 'calc(100vh - 100px)',\r\n overflowY: 'auto',\r\n overflowX: 'hidden',\r\n position: 'relative',\r\n },\r\n\r\n '.speedui__autocomplete': {\r\n position: 'sticky',\r\n top: 0,\r\n },\r\n\r\n '.speedui__autocomplete, .speedui__option': {\r\n p: 3,\r\n textAlign: 'left',\r\n width: '400px',\r\n scrollMarginTop: '50px',\r\n },\r\n\r\n '.speedui__option.selected': (theme) => ({\r\n backgroundColor: theme.palette.getColor(\r\n theme.palette.background.paper,\r\n 'selected',\r\n ),\r\n color: theme.palette.getContrastText(\r\n theme.palette.getColor(theme.palette.background.paper, 'selected'),\r\n ),\r\n }),\r\n },\r\n};\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\nimport { collector } from './collector';\r\nimport { speedui } from './speedui';\r\n/* IMPORT HERE */\r\n\r\nexport const util: ThemeUICSSObject = {\r\n collector,\r\n speedui,\r\n /* PREPEND HERE */\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\n\r\nconst frontColor = 'hsl(196, 37%, 13%)';\r\nexport const charts: ThemeUICSSObject = {\r\n red: {\r\n schema: 'schemas.red',\r\n },\r\n orange: {\r\n schema: 'schemas.orange',\r\n },\r\n green: {\r\n schema: 'schemas.green',\r\n },\r\n blue: {\r\n schema: 'schemas.blue',\r\n },\r\n violet: {\r\n schema: 'schemas.violet',\r\n },\r\n turquoise: {\r\n schema: 'schemas.turquoise',\r\n },\r\n yellow: {\r\n schema: 'schemas.yellow',\r\n },\r\n grey: {\r\n schema: 'schemas.grey',\r\n },\r\n ocean: {\r\n schema: 'schemas.ocean',\r\n },\r\n sunset: {\r\n schema: 'schemas.sunset',\r\n },\r\n common: {\r\n axis: {\r\n stroke: frontColor,\r\n title: frontColor,\r\n },\r\n schema: frontColor,\r\n background: 'hsl(200deg 20% 98%)',\r\n grid: {\r\n stroke: frontColor,\r\n opacity: '0.1',\r\n },\r\n toolTip: {\r\n backgroundColor: 'rgb(232, 241, 255)',\r\n border: '1px solid #07c',\r\n color: frontColor,\r\n padding: '.3rem .5rem',\r\n borderRadius: '3px',\r\n fontSize: '18px',\r\n boxShadow: '0 1px 2px rgba(33,33,33,0.2)',\r\n lineHeight: '1em',\r\n },\r\n },\r\n};\r\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 { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\n\r\nconst oneColumnAside: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(5),\r\n position: 'sticky',\r\n top: 0,\r\n maxWidth: 'applicationMenu',\r\n overflow: 'auto',\r\n height: 'min-content',\r\n\r\n '.actionButton': {\r\n px: 2,\r\n },\r\n '.asidePanel': {\r\n border: 'none',\r\n padding: 0,\r\n m: spacing(0),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n '&.responsive': {\r\n display: responsive({ 0: 'flex', 3: 'none' }),\r\n },\r\n\r\n '.asidePanel__content': {\r\n display: 'grid',\r\n gridTemplateColumns: responsive({ 0: '1fr', 2: '1fr' }),\r\n gap: spacing(3),\r\n\r\n '& > .twoColumns': {\r\n gridColumn: responsive({ 0: '1', 2: '1' }),\r\n gap: spacing(3),\r\n },\r\n },\r\n\r\n legend: {\r\n pt: spacing(2),\r\n width: '100%',\r\n fontWeight: 'bold',\r\n fontSize: '1.2em',\r\n mb: spacing(5),\r\n borderBottom: '1px solid',\r\n borderBottomColor: 'palette.border.section',\r\n },\r\n\r\n '.additionalFilter': {\r\n gap: spacing(3),\r\n\r\n '& > div': {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '& label': {\r\n alignItems: 'stretch',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n 'input,select': {\r\n width: '100%',\r\n },\r\n },\r\n },\r\n\r\n hamburguerButton: {\r\n zIndex: 'menu',\r\n },\r\n\r\n hamburguerMenu: {\r\n background: 'palette.background.paper',\r\n p: spacing(7),\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n zIndex: 'menu',\r\n\r\n '.ApplicationMenu': {\r\n width: 'applicationMenu',\r\n },\r\n },\r\n\r\n floatingResponsive: {\r\n position: 'fixed',\r\n top: 0,\r\n transition: 'top 0.3s',\r\n width: '100%',\r\n\r\n '&.hidden': {\r\n top: '-100%',\r\n },\r\n\r\n '.floatingMenu__content': {\r\n '& > div': {\r\n width: '100%',\r\n px: 7,\r\n overflow: 'auto',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n },\r\n\r\n '.ApplicationMenu': {\r\n maxWidth: 'applicationMenu',\r\n width: '100%',\r\n px: 0,\r\n mx: 'auto',\r\n maxHeight: '80vh',\r\n overflow: 'auto',\r\n },\r\n },\r\n },\r\n\r\n bodyAside: {\r\n background: 'palette.background.paper',\r\n p: spacing(7),\r\n mx: 'auto',\r\n\r\n '& > .ApplicationMenu': {\r\n mx: 'auto',\r\n maxWidth: 'applicationMenu',\r\n width: '100%',\r\n },\r\n },\r\n};\r\n\r\nexport default oneColumnAside;\r\n","import {\r\n ThemeUICSSObject,\r\n getColorsAndStatesByPath,\r\n responsive,\r\n spacing,\r\n} from '@apia/theme';\r\n\r\nconst breakMenu = 3;\r\n\r\nexport const imageTitleAndDescription: ThemeUICSSObject = {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: spacing(5),\r\n width: responsive({ 0: '100%', 3: 'auto' }),\r\n\r\n 'div.image': {\r\n display: responsive({ 0: 'none', 3: 'block' }),\r\n flexBasis: '60px',\r\n flexShrink: 0,\r\n width: '60px',\r\n height: '60px',\r\n\r\n img: {\r\n width: '60px',\r\n height: '60px',\r\n },\r\n },\r\n\r\n h1: {\r\n my: 0,\r\n },\r\n\r\n 'div.titleAndDescription': {\r\n display: responsive({ 0: 'block', 3: 'flex' }),\r\n flexWrap: 'wrap',\r\n alignItems: responsive({ 0: 'center', 3: 'end' }),\r\n flexDirection: responsive({ 0: 'column', [breakMenu]: 'row' }),\r\n width: responsive({ 0: '100%', 3: 'auto' }),\r\n\r\n 'h1, h2': {\r\n display: responsive({ 0: 'block', [breakMenu]: 'inline-block' }),\r\n width: 'auto',\r\n m: spacing(0),\r\n },\r\n\r\n '&:not(.entityTitle)': {\r\n h1: {\r\n '::after': {\r\n content: responsive({ 0: 'none', [breakMenu]: '\">\"' }),\r\n mr: responsive({ 0: 0, [breakMenu]: 5 }),\r\n },\r\n },\r\n },\r\n\r\n h2: {},\r\n p: {\r\n m: spacing(2),\r\n width: '100%',\r\n },\r\n },\r\n};\r\n\r\nexport const header: ThemeUICSSObject = {\r\n display: 'flex',\r\n justifyContent: responsive({\r\n 0: 'center',\r\n [breakMenu]: 'start',\r\n [breakMenu + 1]: 'space-between',\r\n }),\r\n alignItems: 'center',\r\n py: 0,\r\n my: 6,\r\n gap: responsive({ 0: 0, 2: 5 }),\r\n flexDirection: responsive({ 0: 'column-reverse', 2: 'row' }),\r\n top: responsive({ 0: 0, 4: 'auto' }),\r\n background: responsive({ 0: 'background', 4: 'transparent' }),\r\n textAlign: responsive({ 0: 'center', [breakMenu]: 'left' }),\r\n\r\n 'div.imageTitleAndDescription': imageTitleAndDescription,\r\n\r\n '.iconsBar': {\r\n display: 'flex',\r\n width: 'max-content',\r\n justifyContent: 'end',\r\n flexShrink: 0,\r\n flexDirection: 'row',\r\n position: responsive({ 0: 'fixed', 4: 'initial' }),\r\n right: responsive({ 0: '8px', 4: 'auto' }),\r\n top: responsive({ 0: '36px', 2: '26px', 4: 'auto' }),\r\n\r\n border: 'none',\r\n padding: 'none',\r\n\r\n 'button, a': {\r\n flexBasis: '50px',\r\n padding: responsive({ 0: 2, 4: 'none' }),\r\n flexShrink: 0,\r\n textAlign: 'center',\r\n width: '50px',\r\n height: '50px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n\r\n ...getColorsAndStatesByPath('buttons.primary', {\r\n states: {\r\n default: false,\r\n },\r\n }),\r\n backgroundColor: 'transparent',\r\n border: 'none',\r\n color: 'palette.text.primary',\r\n\r\n top: '20px',\r\n\r\n '&.toggleMenu': {\r\n display: responsive({ 0: 'flex', 4: 'none' }),\r\n },\r\n\r\n svg: {\r\n width: responsive({ 0: '20px', 5: '25px', 6: '27px' }),\r\n height: responsive({ 0: '20px', 5: '25px', 6: '27px' }),\r\n m: 'auto',\r\n },\r\n },\r\n\r\n '.favorite': {\r\n svg: {\r\n color: 'favorite',\r\n path: { fill: 'favorite' },\r\n },\r\n },\r\n },\r\n\r\n '&>div>h1': {\r\n my: 0,\r\n },\r\n\r\n '&>div > .description': {\r\n marginY: 0,\r\n marginTop: 2,\r\n },\r\n};\r\n\r\nconst twoColumnsLayout: ThemeUICSSObject = {\r\n width: '100%',\r\n height: responsive({ 0: 'auto', 2: '100vh' }),\r\n position: 'static',\r\n bottom: responsive({ 0: 0, 2: 'auto' }),\r\n top: responsive({ 0: 0, 2: 'auto' }),\r\n display: 'flex',\r\n justifyContent: 'stretch',\r\n flexDirection: 'column',\r\n\r\n '.container': {\r\n width: '100%',\r\n maxWidth: responsive({ 0: '100%', 3: 'min(1550px, 100vw)' }),\r\n mx: 'auto',\r\n },\r\n\r\n '.containerScroll': {\r\n width: '100%',\r\n },\r\n\r\n '.twoColumnsLayout__header': { ...header, mx: 3 },\r\n\r\n '.notificationsView': {\r\n my: 0,\r\n px: 3,\r\n width: responsive({ 0: '100%', 3: 'calc(100% - 61px)', 4: '100%' }),\r\n\r\n '& > .notification': {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '& .twoColumnsContent': {\r\n flexGrow: 2,\r\n flexShrink: 2,\r\n display: 'grid',\r\n flexDirection: 'column-reverse',\r\n pb: '60px',\r\n gap: spacing(3),\r\n gridTemplateColumns: responsive({\r\n 0: '1fr',\r\n 4: '1fr 350px',\r\n 5: '1fr 375px',\r\n 6: '1fr 400px',\r\n }),\r\n\r\n position: 'sticky',\r\n\r\n main: {\r\n paddingLeft: responsive({ 0: 0, 1: 3 }),\r\n paddingRight: responsive({ 0: 0, 1: 3, 4: 0 }),\r\n\r\n display: responsive({ 0: 'flex', 3: 'block' }),\r\n flexDirection: 'column',\r\n gap: spacing(4),\r\n },\r\n },\r\n\r\n '& > .spacer': {\r\n height: responsive({ 0: '0px', 4: '2em' }),\r\n },\r\n\r\n '.showResponsive': {\r\n display: responsive({ 0: 'block', 3: 'none' }),\r\n },\r\n};\r\n\r\nexport default twoColumnsLayout;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\nimport { imageTitleAndDescription } from './twoColumnsLayout';\r\n\r\nconst portalForm: ThemeUICSSObject = {\r\n '&.extended .container': {\r\n maxWidth: 'unset',\r\n },\r\n '.container': {\r\n minWidth: '320px',\r\n maxWidth: 'root',\r\n width: '100%',\r\n p: spacing(7),\r\n pt: spacing(6),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(6),\r\n mx: 'auto',\r\n\r\n '.formsTab': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n },\r\n\r\n '& > header': {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n gap: responsive({ 0: 0, 2: 5 }),\r\n flexDirection: responsive({ 0: 'column-reverse', 2: 'row' }),\r\n width: '100%',\r\n background: responsive({ 0: 'background', 4: 'transparent' }),\r\n zIndex: responsive({ 0: '10', 4: 'auto' }),\r\n\r\n 'div.imageTitleAndDescription': imageTitleAndDescription,\r\n\r\n '.iconsBar': {\r\n display: 'flex',\r\n width: responsive({ 0: '100%', 2: 'max-content' }),\r\n justifyContent: 'end',\r\n flexShrink: 0,\r\n flexDirection: 'row',\r\n\r\n 'button, a': {\r\n flexBasis: '30px',\r\n flexShrink: 0,\r\n bg: 'transparent',\r\n color: 'secondary',\r\n padding: 0,\r\n height: 'auto',\r\n textAlign: 'center',\r\n\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n\r\n '&.toggleMenu': {\r\n display: responsive({ 0: 'flex', 4: 'none' }),\r\n },\r\n\r\n svg: {\r\n width: responsive({ 0: '22px', 5: '25px', 6: '27px' }),\r\n height: responsive({ 0: '22px', 5: '25px', 6: '27px' }),\r\n m: 'auto',\r\n },\r\n\r\n '&:hover': {\r\n color: 'primary',\r\n\r\n svg: {\r\n color: 'primary',\r\n },\r\n },\r\n },\r\n\r\n '.favorite': {\r\n svg: {\r\n color: 'favorite',\r\n path: { fill: 'favorite' },\r\n },\r\n },\r\n },\r\n },\r\n },\r\n\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(7),\r\n\r\n '.buttonBar': {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n flexDirection: responsive({ 0: 'column', 2: 'row' }),\r\n gap: spacing(3),\r\n },\r\n};\r\n\r\nexport default portalForm;\r\n","import { ThemeUICSSObject, responsive } from '@apia/theme';\r\n\r\nconst BodyAside: ThemeUICSSObject = {\r\n display: responsive({ 0: 'block', 3: 'none' }),\r\n '.content': {\r\n background: 'palette.background.paper',\r\n\r\n '.ApplicationMenu': {\r\n mx: 'auto',\r\n overflow: 'hidden',\r\n py: responsive({ 0: 4, 2: 7 }),\r\n px: responsive({ 0: 4, 2: 0 }),\r\n },\r\n },\r\n};\r\n\r\nexport default BodyAside;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\n\r\nexport const breakHeadings = 3;\r\nexport const hamburguerMenu = 3;\r\n\r\nconst topBox: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n\r\n '.topBox__upperAside': {\r\n '.notificationsView': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n flexDirection: 'column',\r\n\r\n '.notification': {\r\n m: spacing(0),\r\n\r\n '&:first-of-type': {\r\n mt: spacing(3),\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.topBox__heading': {\r\n flexGrow: 1,\r\n display: 'flex',\r\n gap: spacing(3),\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n\r\n '.topBox__imageHeader': {\r\n flexShrink: 0,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n\r\n img: {\r\n display: responsive({ 0: 'none', 3: 'inline-block' }),\r\n width: '70px',\r\n height: '70px',\r\n },\r\n },\r\n\r\n '.topBox__header': {\r\n flexGrow: 1,\r\n display: 'flex',\r\n justifyContent: 'center',\r\n flexDirection: 'column',\r\n\r\n '.topBox__headings': {\r\n display: 'flex',\r\n alignItems: responsive({ 0: 'start', 3: 'end' }),\r\n flexWrap: 'wrap',\r\n gap: spacing(3),\r\n flexDirection: responsive({ 0: 'column', [breakHeadings]: 'row' }),\r\n justifyContent: responsive({\r\n 0: 'start',\r\n [breakHeadings]: 'initial',\r\n }),\r\n\r\n '& > *': {\r\n m: spacing(0),\r\n },\r\n\r\n h2: {\r\n '&:before': {\r\n content: '\"-\"',\r\n display: responsive({\r\n 0: 'none',\r\n [breakHeadings]: 'inline-block',\r\n }),\r\n },\r\n },\r\n },\r\n\r\n p: {\r\n textAlign: responsive({ 0: 'center', [breakHeadings]: 'left' }),\r\n display: responsive({ 0: 'none', 3: 'block' }),\r\n },\r\n },\r\n\r\n '.topBox__nav': {\r\n flexShrink: 0,\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n display: 'flex',\r\n\r\n '.HamburguerIconWrapper': {\r\n '&:not(.forced)': {\r\n display: responsive({ 0: 'none', 3: 'flex', 4: 'none' }),\r\n },\r\n width: '41px',\r\n },\r\n\r\n 'button, a': {\r\n height: '40px',\r\n width: '40px',\r\n px: 0,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n background: 'none',\r\n color: 'palette.secondary.main',\r\n border: 'none',\r\n\r\n svg: {\r\n width: '25px',\r\n height: '25px',\r\n path: { fill: 'palette.secondary.main' },\r\n },\r\n\r\n '&.favorite': {\r\n color: 'favorite',\r\n path: { fill: 'favorite' },\r\n },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default topBox;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\nimport BodyAside from './BodyAside';\r\nimport topBox from './topBox';\r\n\r\nconst twoColumns: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n maxWidth: 'twoColumns',\r\n mx: 'auto',\r\n gap: spacing(3),\r\n px: 3,\r\n\r\n '.twoColumns__topBox': topBox,\r\n\r\n '.twoColumns__section': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n alignItems: 'start',\r\n\r\n '.twoColumns__main': {\r\n flexGrow: 1,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n pb: '60px',\r\n\r\n '#BodyAside': BodyAside,\r\n },\r\n\r\n '.twoColumns__aside': {\r\n position: 'sticky',\r\n top: 3,\r\n width: 'applicationMenu',\r\n flexShrink: 0,\r\n flexGrow: 0,\r\n\r\n display: responsive({ 0: 'none', 4: 'block' }),\r\n },\r\n },\r\n};\r\n\r\nexport default twoColumns;\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\n\r\nconst footerResponsiveButtons: ThemeUICSSObject = {\r\n position: 'fixed',\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n p: spacing(3),\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n gap: spacing(3),\r\n background: 'palette.background.paper',\r\n borderTop: '1px solid',\r\n borderTopColor: 'palette.border.field',\r\n zIndex: 'menu',\r\n transition: 'bottom 0.3s',\r\n\r\n '&.hidden': {\r\n bottom: '-100px',\r\n },\r\n};\r\n\r\nexport default footerResponsiveButtons;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\n\r\nconst twoColumnsAside: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(5),\r\n position: 'sticky',\r\n top: 0,\r\n maxWidth: responsive({ 0: '450px', 3: 'applicationMenu' }),\r\n overflow: 'auto',\r\n height: 'min-content',\r\n maxHeight: responsive({ 0: 'unset', 3: 'calc(100vh - 100px)' }),\r\n pr: responsive({ 0: 0, 4: 2 }),\r\n '.field__withError': {\r\n borderLeftColor: 'pallete.error.main',\r\n borderLeftWidth: '4px',\r\n },\r\n '.tabsList': {\r\n flexShrink: 0,\r\n },\r\n\r\n '& fieldset': {\r\n flexShrink: 0,\r\n },\r\n\r\n '.asidePanel': {\r\n border: 'none',\r\n padding: 0,\r\n m: spacing(0),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n '.fieldErrorMessage': {\r\n backgroundColor: 'palette.warning.light',\r\n mb: '0',\r\n p: '2',\r\n color: 'palette.text.primary',\r\n borderWidth: '1px',\r\n borderStyle: 'solid',\r\n borderColor: 'palette.warning.main',\r\n borderLeftWidth: '8px',\r\n paddingLeft: spacing(3),\r\n },\r\n '&.responsive': {\r\n display: responsive({ 0: 'flex', 3: 'none' }),\r\n },\r\n\r\n '.asidePanel__content, .filtersRender': {\r\n display: 'grid',\r\n gridTemplateColumns: responsive({ 0: '1fr', 2: '1fr 1fr' }),\r\n gap: spacing(3),\r\n\r\n '& > .twoColumns': {\r\n gridColumn: responsive({ 0: '1', 2: '1/3' }),\r\n gap: spacing(3),\r\n },\r\n\r\n '&.filtersRender': {\r\n gridColumn: responsive({ 0: '1', 2: '1/3' }),\r\n },\r\n },\r\n '.tripleContainer': {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n width: '100%',\r\n alignItems: 'center',\r\n },\r\n\r\n legend: {\r\n pt: spacing(2),\r\n width: '100%',\r\n fontWeight: 'bold',\r\n fontSize: '1.2em',\r\n mb: spacing(5),\r\n borderBottom: '1px solid',\r\n borderBottomColor: 'palette.border.section',\r\n },\r\n\r\n '.additionalFilter': {\r\n gap: spacing(3),\r\n\r\n '& > div': {\r\n width: '100%',\r\n },\r\n },\r\n\r\n '& label': {\r\n alignItems: 'stretch',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n 'input,select': {\r\n width: '100%',\r\n },\r\n },\r\n },\r\n\r\n hamburguerButton: {\r\n zIndex: 'menu',\r\n },\r\n '.dateHour__container': {\r\n width: '70%',\r\n mr: '3px',\r\n },\r\n '.hourInput__container': {\r\n width: '32%',\r\n },\r\n '.hourInput': {\r\n height: '50px',\r\n ml: '3px',\r\n display: 'block',\r\n marginBottom: '0.625em',\r\n outlineOffset: '3px',\r\n padding: '0.45em 0.45em 0.45em 0.65em',\r\n width: '95% !important',\r\n },\r\n hamburguerMenu: {\r\n background: 'palette.background.paper',\r\n p: spacing(7),\r\n border: '1px solid',\r\n borderColor: 'palette.border.article',\r\n zIndex: 'menu',\r\n '.requiredFilter__Border': {\r\n borderLeftStyle: 'solid',\r\n borderLeftWidth: '4px',\r\n borderLeftColor: 'palette.error.main',\r\n },\r\n '.field__withError': {\r\n borderLeftStyle: 'solid',\r\n borderLeftWidth: '4px',\r\n borderLeftColor: 'danger',\r\n },\r\n '.ApplicationMenu': {\r\n width: 'applicationMenu',\r\n },\r\n },\r\n\r\n floatingResponsive: {\r\n position: 'fixed',\r\n top: 0,\r\n transition: 'top 0.3s',\r\n width: '100%',\r\n zIndex: 'menu',\r\n\r\n '&.hidden': {\r\n top: '-100%',\r\n },\r\n\r\n '.floatingMenu__content': {\r\n '& > div': {\r\n width: '100%',\r\n px: 7,\r\n overflow: 'auto',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n },\r\n\r\n '.ApplicationMenu': {\r\n maxWidth: 'applicationMenu',\r\n width: '100%',\r\n px: 0,\r\n mx: 'auto',\r\n maxHeight: '95vh',\r\n overflow: 'auto',\r\n },\r\n },\r\n },\r\n\r\n bodyAside: {\r\n background: 'palette.background.paper',\r\n p: spacing(7),\r\n mx: 'auto',\r\n\r\n '& > .ApplicationMenu': {\r\n mx: 'auto',\r\n maxWidth: 'applicationMenu',\r\n width: '100%',\r\n },\r\n },\r\n};\r\n\r\nexport default twoColumnsAside;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\nimport BodyAside from './BodyAside';\r\n\r\nconst twoColumnsCentered: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: 4,\r\n px: 4,\r\n\r\n '.containerBox': {\r\n display: 'flex',\r\n\r\n '& > .leftSpacer': {\r\n display: responsive({ 0: 'none', 5: 'block' }),\r\n width: 'min(100vw, calc(100vw - 992px - 350px))',\r\n maxWidth: 'calc(( 100vw - 992px - 24px) / 2)',\r\n },\r\n\r\n '& > .centerBox': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(4),\r\n maxWidth: 'root',\r\n px: responsive({ 0: 0, 4: 4 }),\r\n width: '100%',\r\n },\r\n\r\n '& > .rightSpacer': {\r\n display: responsive({ 0: 'none', 4: 'flex' }),\r\n flex: '1 0 100%',\r\n flexDirection: 'column',\r\n maxWidth: 'max(350px, calc(( 100vw - 992px - 24px) / 2))',\r\n },\r\n\r\n '.mainSpacer': {\r\n width: '350px',\r\n },\r\n },\r\n\r\n '#TopBox': {\r\n header: {\r\n alignItems: 'center',\r\n display: 'flex',\r\n gap: 4,\r\n flexWrap: 'wrap',\r\n\r\n img: {\r\n width: 'mainImage',\r\n height: 'mainImage',\r\n flexShrink: 0,\r\n display: responsive({ 0: 'none', 2: 'block' }),\r\n },\r\n\r\n section: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n hgroup: {\r\n alignItems: responsive({ 0: 'start', 3: 'end' }),\r\n display: 'flex',\r\n gap: responsive({ 0: 0, 3: 4 }),\r\n flexDirection: responsive({ 0: 'column', 3: 'row' }),\r\n },\r\n },\r\n\r\n '.underHeaderAside': {\r\n flexBasis: '100%',\r\n },\r\n },\r\n\r\n nav: {\r\n alignItem: 'center',\r\n display: 'flex',\r\n justifyContent: 'end',\r\n width: responsive({ 0: 'auto', 5: '350px' }),\r\n gap: 1,\r\n },\r\n\r\n '.rightSpacer': {\r\n justifyContent: 'center',\r\n flex: responsive({ 0: 'none', 5: 'thisValueWasUnsetValue' }),\r\n },\r\n\r\n '.HamburguerIconWrapper': {\r\n '&:not(.forced)': {\r\n display: responsive({ 0: 'none', 3: 'flex', 4: 'none' }),\r\n },\r\n alignItems: 'center',\r\n gap: 1,\r\n justifyContent: 'end',\r\n paddingRight: '32px',\r\n width: 'auto',\r\n },\r\n\r\n '.TitleContainer': {\r\n maxWidth: responsive({ 0: '100vw', 5: 'root' }),\r\n },\r\n },\r\n\r\n '#MiddleBox': {\r\n aside: {\r\n width: '350px',\r\n },\r\n },\r\n\r\n '#ResponsiveButtons': {\r\n justifyContent: 'end',\r\n gap: 1,\r\n display: responsive({ 0: 'flex', 3: 'none' }),\r\n },\r\n\r\n '#BodyAside': BodyAside,\r\n};\r\n\r\nexport default twoColumnsCentered;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\nimport topBox from './topBox';\r\n\r\nconst twoColumnsList: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n maxWidth: 'calc(100vw - 10px)',\r\n\r\n mx: 'auto',\r\n gap: spacing(3),\r\n px: 3,\r\n\r\n overflow: 'hidden',\r\n height: '100vh',\r\n '.requiredFilter__Border': {\r\n borderLeftStyle: 'solid !important',\r\n borderLeftWidth: '4px !important',\r\n borderLeftColor: 'palette.error.main',\r\n },\r\n\r\n '.twoColumnsList__topBox': topBox,\r\n\r\n '&.maximized': {\r\n '.twoColumnsList__section': {\r\n '.twoColumnsList__aside': {\r\n display: 'none',\r\n },\r\n },\r\n '.twoColumnsList__topBox': {\r\n '.topBox__heading': {\r\n '.topBox__nav': {\r\n display: 'flex',\r\n '.HamburguerIconWrapper': {\r\n '&:not(.forced)': {\r\n display: responsive({ 0: 'none', 3: 'flex' }),\r\n },\r\n },\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.twoColumnsList__section': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n alignItems: 'stretch',\r\n flexGrow: 1,\r\n overflow: 'hidden',\r\n\r\n '.twoColumnsList__main': {\r\n flexGrow: 1,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n height: '100%',\r\n overflow: 'hidden',\r\n maxHeight: '100%',\r\n padding: '4px',\r\n pt: 0,\r\n\r\n '.twoColumnsList__content ': {\r\n flexGrow: 1,\r\n flexShrink: 100,\r\n overflow: 'auto',\r\n maxHeight: '100%',\r\n background: 'palette.background.paper',\r\n boxShadow: 'rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px',\r\n borderRadius: 'default',\r\n ':has(.container)': {\r\n borderRadius: '8px',\r\n border: '1px solid',\r\n borderColor: 'palette.gray.750',\r\n overflow: 'hidden',\r\n boxShadow: 'none',\r\n },\r\n\r\n '.selection__keyHandler': {\r\n height: '100%',\r\n\r\n '.responsiveTable__wrapper': {\r\n height: '100%',\r\n },\r\n },\r\n },\r\n\r\n '.twoColumnsList__contentFooter': {\r\n flexShrink: 0,\r\n flexGrow: 0,\r\n },\r\n\r\n '#AccordionAside': {\r\n display: responsive({ 0: 'block', 3: 'none' }),\r\n overflow: 'hidden',\r\n '.asidePanel__content': {\r\n paddingTop: spacing(3),\r\n },\r\n '.content': {\r\n background: 'palette.background.paper',\r\n overflow: ' auto',\r\n\r\n '.ApplicationMenu': {\r\n mx: 'auto',\r\n // py: responsive({ 0: 4, 2: 7 }),\r\n // px: responsive({ 0: 4, 2: 0 }),\r\n },\r\n },\r\n '.twoColumns__main__bodyAside.accordionElement': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n maxHeight: '100%',\r\n },\r\n },\r\n },\r\n\r\n '.twoColumnsList__aside': {\r\n width: 'applicationMenu',\r\n flexShrink: 0,\r\n flexGrow: 0,\r\n overflow: 'auto',\r\n maxHeight: '100%',\r\n pr: spacing(2),\r\n\r\n display: responsive({ 0: 'none', 4: 'flex' }),\r\n flexDirection: 'column',\r\n\r\n alignItems: 'stretch',\r\n justifyContent: 'stretch',\r\n\r\n '& > div': {\r\n height: '100%',\r\n\r\n '.ApplicationMenu': {\r\n height: '100%',\r\n },\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default twoColumnsList;\r\n","import { ThemeUICSSObject, responsive, spacing } from '@apia/theme';\r\nimport topBox from './topBox';\r\n\r\nconst twoColumnsListOneColumnAside: ThemeUICSSObject = {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n maxWidth: 'calc(100vw)',\r\n\r\n mx: 'auto',\r\n gap: spacing(3),\r\n px: 3,\r\n\r\n overflow: 'hidden',\r\n height: '100vh',\r\n\r\n '.twoColumnsList__topBox': topBox,\r\n\r\n '&.maximized': {\r\n '.twoColumnsList__section': {\r\n '.twoColumnsList__aside': {\r\n display: 'none',\r\n },\r\n },\r\n '.twoColumnsList__topBox': {\r\n '.topBox__heading': {\r\n '.topBox__nav': {\r\n display: 'flex',\r\n '.HamburguerIconWrapper': {\r\n '&:not(.forced)': {\r\n display: responsive({ 0: 'none', 3: 'flex' }),\r\n },\r\n },\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.twoColumnsList__section': {\r\n display: 'flex',\r\n gap: spacing(3),\r\n alignItems: 'stretch',\r\n flexGrow: 1,\r\n overflow: 'hidden',\r\n\r\n '.twoColumnsList__main': {\r\n flexGrow: 1,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n height: '100%',\r\n overflow: 'hidden',\r\n maxHeight: '100%',\r\n\r\n '.twoColumnsList__content ': {\r\n flexGrow: 1,\r\n overflow: 'auto',\r\n maxHeight: '100%',\r\n background: 'palette.background.paper',\r\n\r\n '.selection__keyHandler': {\r\n height: '100%',\r\n\r\n '.responsiveTable__wrapper': {\r\n height: '100%',\r\n },\r\n },\r\n },\r\n\r\n '.twoColumnsList__contentFooter': {\r\n flexShrink: 0,\r\n flexGrow: 0,\r\n position: 'relative',\r\n },\r\n\r\n '#AccordionAside': {\r\n display: responsive({ 0: 'block', 3: 'none' }),\r\n\r\n '.asidePanel__content': {\r\n paddingTop: spacing(3),\r\n },\r\n '.content': {\r\n background: 'palette.background.paper',\r\n overflow: ' auto',\r\n maxHeight: '90vh',\r\n\r\n '.ApplicationMenu': {\r\n mx: 'auto',\r\n py: responsive({ 0: 4, 2: 7 }),\r\n px: responsive({ 0: 4, 2: 0 }),\r\n },\r\n },\r\n },\r\n },\r\n\r\n '.twoColumnsList__aside': {\r\n width: '150px',\r\n flexShrink: 0,\r\n flexGrow: 0,\r\n overflow: 'auto',\r\n maxHeight: '100%',\r\n\r\n display: responsive({ 0: 'none', 4: 'flex' }),\r\n flexDirection: 'column',\r\n\r\n alignItems: 'stretch',\r\n justifyContent: 'stretch',\r\n\r\n '& > div': {\r\n height: '100%',\r\n\r\n '.ApplicationMenu': {\r\n height: '100%',\r\n pb: '3px',\r\n },\r\n },\r\n },\r\n },\r\n\r\n '#FloatingOptions': {\r\n display: 'none',\r\n },\r\n};\r\n\r\nexport default twoColumnsListOneColumnAside;\r\n","import { ThemeUICSSObject, spacing } from '@apia/theme';\r\nimport topBox from './topBox';\r\n\r\nconst withToolbar: ThemeUICSSObject = {\r\n display: 'flex',\r\n maxHeight: '100vh',\r\n flexDirection: 'column',\r\n maxWidth: 'oneColumn',\r\n mx: 'auto',\r\n overflow: 'hidden',\r\n p: 3,\r\n pt: 0,\r\n\r\n '.withToolbar__topBox': { ...topBox, py: 3 },\r\n\r\n '.withToolbar__topBox .topBox__heading .topBox__header .topBox__headings': {\r\n alignItems: 'start',\r\n flexDirection: 'column',\r\n gap: 0,\r\n },\r\n\r\n '.topBox__imageHeader img': {\r\n borderRadius: '500px',\r\n overFlow: 'hidden',\r\n },\r\n\r\n '.withToolbar__section': {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n maxHeight: '100%',\r\n overflow: 'hidden',\r\n\r\n '.withToolbar__toolbar': {\r\n border: '1px solid',\r\n borderBottom: 'none',\r\n borderColor: 'palette.border.section',\r\n boxShadow: 'toolbar',\r\n position: 'relative',\r\n zIndex: 'menu',\r\n },\r\n\r\n '.withToolbar__main': {\r\n background: 'palette.background.paper',\r\n border: '1px solid',\r\n borderColor: 'palette.border.section',\r\n flexGrow: 1,\r\n display: 'flex',\r\n flexDirection: 'column',\r\n gap: spacing(3),\r\n overflow: 'auto',\r\n p: spacing(5),\r\n },\r\n },\r\n};\r\n\r\nexport default withToolbar;\r\n","import { ThemeUICSSObject } from '@apia/theme';\r\nimport oneColumnAside from './oneColumnAside';\r\nimport portalForm from './portalForm';\r\nimport twoColumns from './twoColumns';\r\nimport footerResponsiveButtons from './twoColumns/footerResponsiveButtons';\r\nimport twoColumnsAside from './twoColumnsAside';\r\nimport twoColumnsCentered from './twoColumnsCentered';\r\nimport twoColumnsList from './twoColumnsList';\r\nimport twoColumnsListOneColumnAside from './twoColumnsListOneColumnAside';\r\nimport withToolbar from './withToolbar';\r\n/* IMPORT HERE */\r\n\r\nconst templates: Record<string, ThemeUICSSObject> = {\r\n footerResponsiveButtons,\r\n oneColumnAside,\r\n portalForm,\r\n twoColumns,\r\n twoColumnsCentered,\r\n twoColumnsList,\r\n twoColumnsAside,\r\n twoColumnsListOneColumnAside,\r\n withToolbar,\r\n /* PREPEND HERE */\r\n};\r\n\r\nexport default templates;\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport { common } from './common';\r\nimport { util } from './util';\r\nimport { charts } from './charts';\r\nimport { validations } from './validations';\r\nimport templates from './templates';\r\n/* IMPORT HERE */\r\n\r\nexport const layout: (theme: Theme) => Record<string, ThemeUICSSObject> = (\r\n theme,\r\n) => {\r\n return {\r\n charts,\r\n common: common(theme),\r\n util,\r\n ...templates,\r\n validations,\r\n /* PREPEND HERE */\r\n };\r\n};\r\n","import { ColorModesScale, Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport merge from 'lodash-es/merge';\r\nimport { setValueByPath } from '@apia/util';\r\nimport { baseTheme as baseThemeMaker } from '../base/baseTheme';\r\nimport {\r\n TCustomPalette,\r\n TParsedPalette,\r\n TThemeModifier,\r\n} from '../base/colors/types';\r\nimport { getThemeColorsObject, parsePalette } from '../base/colors';\r\nimport defaultPalette from '../base/colors/defaultPalette';\r\nimport forms from '../base/forms';\r\nimport { layout } from '../base/layout';\r\n\r\nconst makeTheme = <T extends Theme>(t: T) => {\r\n return t;\r\n};\r\n\r\nlet declaredStyles: ThemeUICSSObject = {};\r\n\r\nexport function declareStyles(\r\n path: string,\r\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\r\n) {\r\n const newStyles = {};\r\n setValueByPath(newStyles, path, styles);\r\n declaredStyles = merge(declaredStyles, newStyles);\r\n}\r\n\r\nexport function getMainTheme(\r\n customTheme?: () => Omit<Theme, 'palette'>,\r\n customPalette?: TCustomPalette,\r\n\r\n themeModifier?: TThemeModifier,\r\n) {\r\n const palette = parsePalette(merge({}, defaultPalette, customPalette));\r\n window.currentPalette = palette;\r\n\r\n const baseTheme = baseThemeMaker() as Theme;\r\n\r\n baseTheme.palette = palette;\r\n\r\n baseTheme.colors = getThemeColorsObject(\r\n baseTheme,\r\n ) as unknown as ColorModesScale;\r\n baseTheme.forms = forms(baseTheme) as any;\r\n baseTheme.layout = merge(layout(baseTheme), baseTheme.layout);\r\n\r\n baseTheme.styles = merge({}, customTheme?.().styles, {\r\n root: baseTheme.layout.root,\r\n });\r\n\r\n const theme = makeTheme(\r\n merge(baseTheme, { layout: declaredStyles }, customTheme?.() ?? {}, {\r\n palette: {} as TParsedPalette,\r\n }),\r\n );\r\n\r\n return themeModifier?.(theme) ?? theme;\r\n}\r\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\r\nimport merge from 'lodash-es/merge';\r\nimport { EventEmitter, setValueByPath, useMount } from '@apia/util';\r\nimport { useRef, useState } from 'react';\r\nimport { getMainTheme } from './getMainTheme';\r\nimport { CustomTheme } from '../themeuiExports';\r\nimport { TCustomPalette, TThemeModifier } from '../base/colors/types';\r\n\r\nlet declaredStyles: ThemeUICSSObject = {};\r\n\r\nexport function getInjectedStyles() {\r\n return injectedStyles;\r\n}\r\n\r\nconst injectedStyles: Record<string, ThemeUICSSObject> = {};\r\n\r\nclass MainThemeEmitter extends EventEmitter<{\r\n newStyles: {\r\n path: string;\r\n styles: ThemeUICSSObject;\r\n };\r\n}> {}\r\n\r\nexport const mainThemeEmitter = new MainThemeEmitter();\r\n\r\nfunction handleNewStyles(ev: { path: string; styles: ThemeUICSSObject }) {\r\n injectedStyles[ev.path] = ev.styles;\r\n}\r\n\r\nconst unSubscribe = mainThemeEmitter.on('newStyles', handleNewStyles);\r\n\r\nexport function declareStyles(\r\n path: string,\r\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\r\n) {\r\n const newStyles = {};\r\n setValueByPath(newStyles, path, styles);\r\n declaredStyles = merge(declaredStyles, newStyles);\r\n}\r\n\r\nexport function useMainTheme(\r\n customTheme?: () => CustomTheme,\r\n customPalette?: TCustomPalette,\r\n themeModifier?: TThemeModifier,\r\n) {\r\n const [theme, setTheme] = useState<Theme>(\r\n getMainTheme(customTheme, customPalette, themeModifier),\r\n );\r\n\r\n const previousTheme = useRef<(() => CustomTheme) | undefined>(customTheme);\r\n const previousPalette = useRef<TCustomPalette | undefined>(customPalette);\r\n\r\n if (previousTheme.current !== customTheme)\r\n setTheme(getMainTheme(customTheme));\r\n\r\n previousTheme.current = customTheme;\r\n\r\n if (previousPalette.current !== customPalette)\r\n setTheme(getMainTheme(customTheme, customPalette));\r\n\r\n previousPalette.current = customPalette;\r\n\r\n useMount(() => {\r\n setTheme((current) => {\r\n unSubscribe();\r\n let initialTheme = { ...current };\r\n Object.entries(injectedStyles).forEach(([path, styles]) => {\r\n const newStyles = setValueByPath({}, path, styles);\r\n initialTheme = merge(initialTheme, newStyles);\r\n });\r\n return initialTheme;\r\n });\r\n return mainThemeEmitter.on('newStyles', (ev) => {\r\n const newStyles = setValueByPath({}, ev.path, ev.styles);\r\n setTheme((current) => merge({ ...current }, newStyles));\r\n });\r\n });\r\n\r\n return theme;\r\n}\r\n","import { ThemeUIProvider, Theme } from 'theme-ui';\r\nimport { ReactNode } from 'react';\r\nimport { getMainTheme } from './getMainTheme';\r\n\r\ninterface TThemeProvider {\r\n children: ReactNode;\r\n customTheme?: () => Theme;\r\n}\r\n\r\nexport const CustomThemeProvider = ({\r\n children,\r\n customTheme,\r\n}: TThemeProvider) => {\r\n const theme: Theme = getMainTheme(customTheme);\r\n\r\n return <ThemeUIProvider theme={theme}>{children}</ThemeUIProvider>;\r\n};\r\n","import { setValueByPath } from '@apia/util';\r\nimport {\r\n FC,\r\n MutableRefObject,\r\n ReactNode,\r\n Suspense,\r\n useMemo,\r\n useRef,\r\n} from 'react';\r\nimport { ThemeUICSSObject, Box, useThemeUI } from 'theme-ui';\r\nimport { getVariant } from '../util/getVariant';\r\nimport { CustomThemeProvider } from './CustomThemeProvider';\r\n\r\n/**\r\n * Permite crear un componente cuyos estilos pueden ser redefinidos por un\r\n * usuario final.\r\n *\r\n * Esto es así puesto que los estilos definidos serán agregados a un árbol que\r\n * el usuario puede consultar y sobreescribir. De esta manera los estilos\r\n * finales del componente serán aquellos definidos en este método pero\r\n * sobreescritos por los definidos por el usuario si es que existen.\r\n *\r\n * **Importante** Para aplicar la variante, se aplica un box alrededor del\r\n * componente que se está renderizando, con className=\"variant__holder\". En caso\r\n * de que se quisiera evitar este comportamiento, se debe pasar unwraped = true\r\n *\r\n * @param displayName Este parámetro es importante para el debugger de React.\r\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.\r\n * @param styles Un objeto de estilos de ThemeUI\r\n * @param Component La definición del componente.\r\n * @returns Un componente reutilizable y exportable que tiene estilos aplicados.\r\n */\r\nexport function makeStyledComponent<T extends object>(\r\n displayName: string,\r\n stylesPath: string,\r\n styles: ThemeUICSSObject,\r\n Component: FC<T>,\r\n unwraped = false,\r\n) {\r\n return Object.assign(\r\n (props: T) => {\r\n const avoidFirstRender = useRef(0);\r\n const { theme: tuiTheme } = useThemeUI();\r\n const theme = useMemo(\r\n () => () => ({\r\n ...tuiTheme,\r\n ...setValueByPath({}, stylesPath, styles),\r\n }),\r\n [tuiTheme],\r\n );\r\n\r\n if (unwraped) {\r\n return (\r\n <CustomThemeProvider customTheme={theme}>\r\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\r\n <Suspense>\r\n <Component {...props} />\r\n </Suspense>\r\n </NoThemePrevent>\r\n </CustomThemeProvider>\r\n );\r\n }\r\n return (\r\n <CustomThemeProvider customTheme={theme}>\r\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\r\n <Box className=\"variant__holder\" {...getVariant(stylesPath)}>\r\n <Suspense>\r\n <Component {...props} />\r\n </Suspense>\r\n </Box>\r\n </NoThemePrevent>\r\n </CustomThemeProvider>\r\n );\r\n },\r\n { displayName },\r\n );\r\n}\r\n\r\nconst NoThemePrevent = ({\r\n avoidFirstRender,\r\n children,\r\n}: {\r\n avoidFirstRender: MutableRefObject<number>;\r\n children: ReactNode;\r\n}) => {\r\n // eslint-disable-next-line no-param-reassign\r\n avoidFirstRender.current++;\r\n\r\n if (avoidFirstRender.current <= 1) return null;\r\n\r\n return <>{children}</>;\r\n};\r\n","import { ThemeUICSSObject } from 'theme-ui';\r\nimport { mainThemeEmitter } from './useMainTheme';\r\n\r\n/**\r\n * Esta función permite agregar estilos al tema principal de la aplicación, de\r\n * modo que estén disponibles para cualquier componente que lo requirea.\r\n *\r\n * @example\r\n *\r\n * injectStyles('buttons.myRedButton', {\r\n * variant: 'buttons.primary',\r\n * backgroundColor: 'red',\r\n * })\r\n */\r\nexport function injectStyles(path: string, styles: ThemeUICSSObject): void;\r\n\r\n/**\r\n * Esta función permite agregar estilos al tema principal de la aplicación, de\r\n * modo que estén disponibles para cualquier componente que lo requirea.\r\n *\r\n * @example\r\n *\r\n * injectStyles({\r\n * layout: {\r\n * panels: {\r\n * myPanel: {\r\n * ...\r\n * }\r\n * }\r\n * }\r\n * })\r\n */\r\nexport function injectStyles(styles: ThemeUICSSObject): void;\r\n\r\nexport function injectStyles(\r\n par1: string | ThemeUICSSObject,\r\n par2?: ThemeUICSSObject,\r\n) {\r\n const path = typeof par1 === 'string' ? par1 : '';\r\n const styles = typeof par1 === 'string' ? (par2 as ThemeUICSSObject) : par1;\r\n\r\n mainThemeEmitter.emit('newStyles', { path, styles });\r\n}\r\n","export const spacingLayouts = [\r\n 'dense',\r\n 'clever',\r\n 'vertical__clever',\r\n 'horizontal__clever',\r\n] as const;\r\n\r\nexport type TSpacingLayout = (typeof spacingLayouts)[number];\r\n\r\nexport function getSpacingLayouts() {\r\n return {\r\n '&.dense': {\r\n px: 0,\r\n py: 0,\r\n },\r\n '&.horizontal__clever': {\r\n px: 4,\r\n py: 0,\r\n },\r\n '&.vertical__clever': {\r\n px: 0,\r\n py: 4,\r\n },\r\n '&.clever': {\r\n px: 4,\r\n py: 4,\r\n },\r\n };\r\n}\r\n","import { Theme, ThemeProvider } from 'theme-ui';\r\nimport { ReactNode, useMemo } from 'react';\r\nimport { useMainTheme } from './methods/useMainTheme';\r\nimport { TCustomPalette, TThemeModifier } from './base/colors/types';\r\n\r\ninterface TThemeProvider {\r\n children: ReactNode;\r\n customTheme?: () => Omit<Theme, 'palette'>;\r\n customPalette?: () => TCustomPalette | undefined;\r\n themeModifier?: TThemeModifier;\r\n}\r\n\r\nlet timeout = -1;\r\nfunction logTheme(theme: unknown) {\r\n clearTimeout(timeout);\r\n timeout = setTimeout(() => {\r\n console.info('Theme log: ', { theme });\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n }, 500) as any;\r\n}\r\n\r\nexport const ApiaThemeProvider = ({\r\n children,\r\n customTheme,\r\n customPalette,\r\n themeModifier,\r\n}: TThemeProvider) => {\r\n const parsedCustomPalette = useMemo(() => {\r\n return customPalette?.();\r\n }, [customPalette]);\r\n\r\n const theme: Theme = useMainTheme(\r\n customTheme,\r\n parsedCustomPalette,\r\n themeModifier,\r\n );\r\n\r\n logTheme(theme);\r\n\r\n return <ThemeProvider theme={theme}>{children}</ThemeProvider>;\r\n};\r\n","import { StateBlock, TagToken } from 'remarkable/lib';\r\nimport type { IRemarkableBlockExtension } from '../types';\r\n\r\nconst name = 'pageBreak';\r\nexport const pageBreakTag = '@@@ PAGEBREAK @@@';\r\n\r\n/**\r\n * Inserta un salto de página donde se encuentra exactamente la línea con el tag '@@@ PAGEBREAK @@@'.\r\n */\r\nexport const pageBreakExtension: IRemarkableBlockExtension = {\r\n name,\r\n parser: (\r\n state: StateBlock,\r\n startLine: number,\r\n _endLine: number,\r\n checkMode: boolean,\r\n ): boolean => {\r\n const line = state.getLines(startLine, startLine + 1, 0, false);\r\n if (line.trim() !== pageBreakTag) return false;\r\n\r\n if (checkMode) return true; // Sólo validación (no emitir tokens)\r\n\r\n state.tokens.push({\r\n type: name,\r\n level: 0,\r\n lines: [startLine, startLine + 1],\r\n } as TagToken);\r\n\r\n state.line = startLine + 1; // avanzar a la siguiente línea\r\n return true;\r\n },\r\n\r\n replacer: () => () => `<div class=\"${name}\"></div>`,\r\n\r\n styles: () => `\r\n.${name} + * {\r\n page-break-before: always;\r\n}\r\n\r\n.${name} {\r\n display: none;\r\n}\r\n\r\n`,\r\n};\r\n","import { IMarkdownParser } from './types';\r\n\r\nexport function assignHelp(fn: IMarkdownParser) {\r\n Object.assign(fn, {\r\n help: `A markdown parser. Accepts a configuration object with the following structure: \r\n \r\ninterface IMarkdownFile {\r\n /**\r\n * Cadena de caracteres de CSS\r\n */\r\n additionalStyles?: string;\r\n /**\r\n * Contenido markdown\r\n */\r\n content: string;\r\n /**\r\n * Si el template html por defecto no es suficiente, se puede optar por un\r\n * template a medida.\r\n */\r\n htmlTemplate?: IMarkdownHtml;\r\n /**\r\n * Título que se mostrará en el html\r\n */\r\n title: string;\r\n}`,\r\n });\r\n}\r\n","import type { StateBlock, StateInline, TagToken } from 'remarkable/lib';\r\nimport type { Remarkable } from 'remarkable';\r\nimport { TMDTocProps } from './builder/elements/tableOfContents';\r\n\r\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\r\nexport class ErrorImporting {}\r\n\r\nexport type IMarkdownHtml = (\r\n title: string,\r\n css: string,\r\n body: string,\r\n) => string;\r\n\r\nexport type IMarkdownParser = (\r\n options: IMarkdownConfiguration,\r\n) => Promise<string>;\r\n\r\nexport interface IMarkdownConfiguration {\r\n /**\r\n * Cadena de caracteres de CSS\r\n */\r\n additionalStyles?: IMarkdownStylesAggregator;\r\n /**\r\n * Permite agregar contenido al body del html generado.\r\n */\r\n additionalBodyContent?: Partial<{ before: string; after: string }>;\r\n /**\r\n * Contenido markdown\r\n */\r\n content: string;\r\n /**\r\n * Permite el pasaje de extensiones adicionales\r\n */\r\n extensions?: RemarkableExtension[];\r\n /**\r\n * Si el template html por defecto no es suficiente, se puede optar por un\r\n * template a medida.\r\n */\r\n htmlTemplate?: IMarkdownHtml;\r\n /**\r\n * If passed, will print the table of contents with the indicated title.\r\n */\r\n tocProps?: TMDTocProps;\r\n /**\r\n * Título que se mostrará en el html\r\n */\r\n title: string;\r\n\r\n tableOfContentsTitle?: string;\r\n}\r\n\r\nexport interface IRemarkableInlineExtension {\r\n name: string;\r\n parser: (state: StateInline, checkMode: boolean) => boolean;\r\n replacer: (md: Remarkable) => (tokens: TagToken[], idx: number) => string;\r\n styles: () => string;\r\n}\r\n\r\nexport interface IRemarkableBlockExtension {\r\n name: string;\r\n parser: (\r\n state: StateBlock,\r\n startLine: number,\r\n endLine: number,\r\n checkMode: boolean,\r\n ) => boolean;\r\n replacer: (md: Remarkable) => (tokens: TagToken[], idx: number) => string;\r\n styles: () => string;\r\n}\r\n\r\nexport type RemarkableExtension =\r\n | IRemarkableInlineExtension\r\n | IRemarkableBlockExtension;\r\n\r\nexport type IMarkdownStylesAggregator = () => string;\r\n","import type { IRemarkableInlineExtension } from '../types';\r\n\r\ntype ErrorToken = {\r\n type: string;\r\n content: string;\r\n level: number;\r\n};\r\n\r\nconst name = 'error';\r\n\r\n/**\r\n * Esta extensión permite mostrar un cuadro de advertencia usando la sintaxis:\r\n *\r\n * !!! Esto es una advertencia !!!\r\n */\r\nexport const errorExtension: IRemarkableInlineExtension = {\r\n name,\r\n parser: (state, silent) => {\r\n const start = state.pos;\r\n if (\r\n state.src.charCodeAt(start) !== 0x21 /* ! */ ||\r\n state.src.charCodeAt(start + 1) !== 0x21 /* ! */ ||\r\n state.src.charCodeAt(start + 2) !== 0x21 /* ! */\r\n ) {\r\n return false;\r\n }\r\n\r\n const match = state.src.slice(start).match(/^!!!(.+?)!!!/);\r\n\r\n if (!match || start + match[0].length > state.posMax) {\r\n return false;\r\n }\r\n\r\n if (!silent) {\r\n state.push({\r\n type: name,\r\n content: match[1],\r\n level: state.level,\r\n });\r\n }\r\n\r\n state.pos += match[0].length;\r\n return true;\r\n },\r\n\r\n replacer: (md) => (tokens, idx) => {\r\n const token = tokens[idx] as ErrorToken;\r\n return `<div class=\"${name}\">${md.renderInline(token.content)}</div>`;\r\n },\r\n\r\n styles: () => `.${name} {\r\n padding: var(--space-5);\r\n background-color: var(--color-error-back);\r\n border-left: 3px solid var(--color-error-border);\r\n color: var(--color-error-text);\r\n margin: 10px 0;\r\n box-shadow: 0 2px 2px rgba(0,0,0,0.2);\r\n}`,\r\n};\r\n","import { IRemarkableBlockExtension } from '../types';\r\n\r\nclass HeadingToken {\r\n _content: { level: number; text: string; id?: string };\r\n\r\n get content() {\r\n return JSON.stringify(this._content);\r\n }\r\n\r\n type = 'heading';\r\n\r\n constructor(\r\n content: { level: number; text: string; id?: string },\r\n public level: number,\r\n ) {\r\n this._content = content;\r\n }\r\n}\r\n\r\nconst name = 'heading';\r\n\r\nexport const headerExtension: IRemarkableBlockExtension = {\r\n name,\r\n parser(state, startLine, endLine, silent) {\r\n const line = state.getLines(startLine, startLine + 1, 0, false);\r\n const result = line.match(/(#+) ([^\\{\\n]+)(?:\\{: #([^\\}]+?) *\\})?/);\r\n if (!result) return false;\r\n\r\n const level = result[1].length;\r\n const text = result[2];\r\n const id = (result[3] ?? result[2]).replaceAll(/\\s+/g, '-');\r\n\r\n if (!silent)\r\n state.tokens.push(new HeadingToken({ level, text, id }, state.level));\r\n\r\n state.line += 1;\r\n return true;\r\n },\r\n replacer: (md) => (tokens, idx) => {\r\n const token = tokens[idx] as HeadingToken;\r\n const tag = `h${token._content.level}`;\r\n return `<${tag} ${\r\n token._content.id ? `id=\"${token._content.id.toLowerCase()}\"` : ''\r\n }>${md.renderInline(token._content.text)}</${tag}>`;\r\n },\r\n styles() {\r\n return '';\r\n },\r\n};\r\n","import type { IRemarkableInlineExtension } from '../types';\r\n\r\ntype SuccessToken = {\r\n type: string;\r\n content: string;\r\n level: number;\r\n};\r\n\r\nconst name = 'success';\r\n\r\n/**\r\n * Esta extensión permite mostrar un cuadro de advertencia usando la sintaxis:\r\n *\r\n * !!! Esto es una advertencia !!!\r\n */\r\nexport const successExtension: IRemarkableInlineExtension = {\r\n name,\r\n parser: (state, silent) => {\r\n const start = state.pos;\r\n if (\r\n state.src.charAt(start + 1) !== '$' ||\r\n state.src.charAt(start + 1) !== '$'\r\n ) {\r\n return false;\r\n }\r\n\r\n const match = state.src.slice(start).match(/^\\$\\$(.+?)\\$\\$/);\r\n\r\n if (!match || start + match[0].length > state.posMax) {\r\n return false;\r\n }\r\n\r\n if (!silent) {\r\n state.push({\r\n type: name,\r\n content: match[1],\r\n level: state.level,\r\n });\r\n }\r\n\r\n state.pos += match[0].length;\r\n return true;\r\n },\r\n\r\n replacer: (md) => (tokens, idx) => {\r\n const token = tokens[idx] as SuccessToken;\r\n return `<div class=\"${name}\">${md.renderInline(token.content)}</div>`;\r\n },\r\n\r\n styles: () => `.${name} {\r\n padding: var(--space-5);\r\n background-color: var(--color-success-back);\r\n border-left: 3px solid var(--color-success-border);\r\n color: var(--color-success-text);\r\n margin: 10px 0;\r\n box-shadow: 0 2px 2px rgba(0,0,0,0.2);\r\n}`,\r\n};\r\n","import { IRemarkableBlockExtension } from '../../types';\r\nimport type { Remarkable } from 'remarkable';\r\nimport {\r\n MarkdownTableDefinition,\r\n MarkdownTableCell,\r\n MarkdownTableObjectCell,\r\n} from './types';\r\nimport { CellParser } from './CellParser';\r\nimport { StateBlock, TagToken } from 'remarkable/lib';\r\n\r\nfunction getCell(c: MarkdownTableCell): MarkdownTableObjectCell {\r\n return typeof c === 'string' ? { content: c } : c;\r\n}\r\n\r\nclass TableToken {\r\n content: string;\r\n level = 1;\r\n type = name;\r\n constructor(\r\n content: MarkdownTableDefinition,\r\n public lines: [number, number],\r\n ) {\r\n this.content = JSON.stringify(content);\r\n }\r\n\r\n getTable() {\r\n const newTable = JSON.parse(this.content) as MarkdownTableDefinition;\r\n\r\n newTable.header = newTable.header.map((c) => getCell(c));\r\n newTable.rows = newTable.rows.map((row) =>\r\n row.map((cell) => getCell(cell)),\r\n );\r\n\r\n return newTable;\r\n }\r\n\r\n #getColumnAlignment(table: MarkdownTableDefinition, index: number) {\r\n let sum = 0,\r\n i = 0;\r\n for (i = 0; i < table.header.length && sum <= index; i++) {\r\n sum += Number.parseInt(getCell(table.header[i]).colSpan ?? '1', 10);\r\n }\r\n return getCell(table.header[i - 1]).align;\r\n }\r\n getTableString(parsers: CellParser[], md: Remarkable) {\r\n const table = this.getTable();\r\n\r\n const head =\r\n '<thead><tr>' +\r\n table.header\r\n .map((current) => {\r\n const cell = getCell(current);\r\n\r\n return `<th ${parsers\r\n .map((parser) => parser.getHtmlAttributes(current))\r\n .join(' ')}>${md.renderInline(cell.content)}</th>`;\r\n })\r\n .join('') +\r\n '</tr></thead>';\r\n\r\n const body =\r\n '<tbody>' +\r\n table.rows\r\n .map((row) => {\r\n return (\r\n '<tr>' +\r\n row\r\n .map((current, i) => {\r\n // eslint-disable-next-line no-param-reassign\r\n current.align = this.#getColumnAlignment(table, i);\r\n\r\n return `<td ${parsers\r\n .map((parser) => parser.getHtmlAttributes(current))\r\n .join(' ')}>${md.renderInline(current.content)}</td>`;\r\n })\r\n .join('') +\r\n '</tr>'\r\n );\r\n })\r\n .join('\\n') +\r\n '</tbody>';\r\n\r\n return `<table ${\r\n table.id ? `id=\"${table.id}\"` : ''\r\n }>${head}${body}</table>`;\r\n }\r\n}\r\n\r\nconst name = 'advancedTable';\r\n/**\r\n * Identifica si una línea es una fila de cabecera válida\r\n */\r\nconst headerRowRegex = /^ *(?:\\{ *#([\\w-]+) *\\})? *((?:\\|.+)+\\|) *$/;\r\n/**\r\n * Identifica si una línea es una fila válida\r\n */\r\nconst rowRegex = /^ *(?:\\|.+)+\\| *$/;\r\n/**\r\n * Identifica si una línea es el separador entre header y body de la tabla\r\n */\r\nconst separatorRegex = /^ *(?:\\| *:? *----* *:? *)+\\| *$/;\r\n/**\r\n * Identifica los elementos de una celda\r\n */\r\n\r\n/**\r\n * How a table looks like:\r\n * \r\n| (.class) Cell1 | Cell2 | Cell3 | **_Cell4_** | Cell5 |\r\n|-------|-------|:-----:|------------:|-------|\r\n| (.class) CellContent | | | | |\r\n */\r\n\r\n/**\r\n * Esta extensión permite implementar tablas más complejas en markdown\r\n */\r\nexport class TableExtension implements IRemarkableBlockExtension {\r\n #cellParsers: CellParser[] = [\r\n {\r\n /** className */\r\n getHtmlAttributes(cell) {\r\n return `${cell.className ? ` class=\"${cell.className ?? ''}\"` : ''}`;\r\n },\r\n parseCellString(content) {\r\n const classNameRegex = /\\(\\.([^)]+)\\)/;\r\n const className = content.match(classNameRegex)?.[1];\r\n\r\n return {\r\n parsedCell: { className },\r\n newContent: content.replace(classNameRegex, ''),\r\n };\r\n },\r\n },\r\n {\r\n /** rowSpan & colSpan */\r\n getHtmlAttributes(cell) {\r\n return [\r\n `${cell.rowSpan ? `rowspan=\"${cell.rowSpan}\"` : ''}`,\r\n `${cell.colSpan ? `colspan=\"${cell.colSpan}\"` : ''}`,\r\n ].join(' ');\r\n },\r\n parseCellString(content) {\r\n const rowSpanRegex = /\\(\\{rowSpan:(\\d+)\\}\\)/;\r\n const rowSpan = content.match(rowSpanRegex)?.[1];\r\n const colSpanRegex = /\\(\\{colSpan:(\\d+)\\}\\)/;\r\n const colSpan = content.match(colSpanRegex)?.[1];\r\n\r\n return {\r\n parsedCell: {\r\n rowSpan,\r\n colSpan,\r\n },\r\n newContent: content\r\n .replace(rowSpanRegex, '')\r\n .replace(colSpanRegex, ''),\r\n };\r\n },\r\n },\r\n {\r\n /** styles */\r\n getHtmlAttributes(cell) {\r\n const styles = [];\r\n\r\n if (cell.align) styles.push(`text-align: ${cell.align}`);\r\n if (cell.style) styles.push(cell.style);\r\n\r\n const style = styles.join('; ');\r\n\r\n return `${style ? ` style=\"${style}\"` : ''}`;\r\n },\r\n parseCellString(content) {\r\n const stylesRegex = /\\(\\{style:([^}]+)\\}\\)/;\r\n const style = content.match(stylesRegex)?.[1] ?? '';\r\n\r\n return {\r\n parsedCell: { style },\r\n newContent: content.replace(stylesRegex, ''),\r\n };\r\n },\r\n },\r\n ];\r\n #parseCell(content: string) {\r\n const cell: MarkdownTableCell = { content };\r\n this.#cellParsers.forEach((current) => {\r\n const result = current.parseCellString(cell.content);\r\n Object.assign(cell, result.parsedCell, { content: result.newContent });\r\n });\r\n return cell;\r\n }\r\n\r\n #parseHeadRow(line: string) {\r\n const result = line.match(headerRowRegex);\r\n const id = result![1] ?? '';\r\n const content = result![2]!;\r\n\r\n return {\r\n id,\r\n content: content\r\n .split(/ *\\| */)\r\n .slice(1, -1)\r\n .map((current) => {\r\n return this.#parseCell(current);\r\n }),\r\n };\r\n }\r\n\r\n #parseRow(content: string) {\r\n return content\r\n .split(/ *\\| */)\r\n .slice(1, -1)\r\n .map((current) => {\r\n return this.#parseCell(current);\r\n });\r\n }\r\n\r\n name = name;\r\n parser = (\r\n state: StateBlock,\r\n startLine: number,\r\n endLine: number,\r\n checkMode: boolean,\r\n ): boolean => {\r\n if (startLine + 1 >= endLine) {\r\n return false;\r\n }\r\n\r\n const firstLineIsHeader = !!state\r\n .getLines(startLine, startLine + 1, 0, false)\r\n .match(headerRowRegex);\r\n\r\n if (checkMode) {\r\n return firstLineIsHeader;\r\n }\r\n\r\n if (firstLineIsHeader) {\r\n const headLine = state.getLines(startLine, startLine + 1, 0, false);\r\n const separatorLine = state.getLines(\r\n startLine + 1,\r\n startLine + 2,\r\n 0,\r\n false,\r\n );\r\n\r\n if (!separatorLine.match(separatorRegex)) return false;\r\n\r\n try {\r\n const parsedHead = this.#parseHeadRow(headLine);\r\n\r\n const alignments = separatorLine.split(/ *\\| */).filter(Boolean);\r\n\r\n alignments.map((current, i) => {\r\n if (current.match(/: *----* *:/)) {\r\n parsedHead.content[i].align = 'center';\r\n } else if (current.match(/----* *:/)) {\r\n parsedHead.content[i].align = 'right';\r\n }\r\n });\r\n\r\n const rows: MarkdownTableObjectCell[][] = [];\r\n let i = startLine + 2;\r\n let line: string | null = null;\r\n while ((line = state.getLines(i, i + 1, 0, false))) {\r\n if (line.match(rowRegex)) {\r\n const rowCells = this.#parseRow(line);\r\n line = state.getLines(++i, i + 1, 0, false);\r\n rows.push(rowCells);\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n state.tokens.push(\r\n new TableToken(\r\n { id: parsedHead.id, header: parsedHead.content, rows },\r\n [startLine, startLine + 2 + rows.length],\r\n ),\r\n );\r\n state.line += 2 + rows.length;\r\n\r\n return true;\r\n } catch (e) {\r\n console.error(e);\r\n return false;\r\n }\r\n }\r\n\r\n return false;\r\n };\r\n replacer = (md: Remarkable) => (tokens: TagToken[], idx: number) => {\r\n return (tokens[idx] as TableToken).getTableString(this.#cellParsers, md);\r\n };\r\n styles = () => '';\r\n}\r\n","import type { IRemarkableInlineExtension } from '../types';\r\n\r\ntype WarningToken = {\r\n type: string;\r\n content: string;\r\n level: number;\r\n};\r\n\r\nconst name = 'warning';\r\n\r\n/**\r\n * Esta extensión permite mostrar un cuadro de advertencia usando la sintaxis:\r\n *\r\n * !! Esto es una advertencia !!\r\n */\r\nexport const warningExtension: IRemarkableInlineExtension = {\r\n name,\r\n parser: (state, silent) => {\r\n const start = state.pos;\r\n if (\r\n state.src.charCodeAt(start) !== 0x21 /* ! */ ||\r\n state.src.charCodeAt(start + 1) !== 0x21 /* ! */\r\n ) {\r\n return false;\r\n }\r\n\r\n const match = state.src.slice(start).match(/^!!(.+?)!!/);\r\n\r\n if (!match || start + match[0].length > state.posMax) {\r\n return false;\r\n }\r\n\r\n if (!silent) {\r\n state.push({\r\n type: name,\r\n content: match[1],\r\n level: state.level,\r\n });\r\n }\r\n\r\n state.pos += match[0].length;\r\n return true;\r\n },\r\n\r\n replacer: (md) => (tokens, idx) => {\r\n const token = tokens[idx] as WarningToken;\r\n return `<div class=\"${name}\">${md.renderInline(token.content)}</div>`;\r\n },\r\n\r\n styles: () => `.${name} {\r\n padding: var(--space-5);\r\n background-color: var(--color-warning-back);\r\n border-left: 3px solid var(--color-warning-border);\r\n color: var(--color-warning-text);\r\n margin: 10px 0;\r\n box-shadow: 0 2px 2px rgba(0,0,0,0.2);\r\n}`,\r\n};\r\n","import { errorExtension } from './error';\r\nimport { headerExtension } from './header';\r\nimport { pageBreakExtension } from './pageBreak';\r\nimport { successExtension } from './success';\r\nimport { TableExtension } from './table';\r\nimport { warningExtension } from './warning';\r\n\r\nexport const markdownExtensions = [\r\n headerExtension,\r\n errorExtension,\r\n successExtension,\r\n new TableExtension(),\r\n warningExtension,\r\n pageBreakExtension,\r\n];\r\n","import { markdownExtensions } from './extensions';\r\nimport {\r\n ErrorImporting,\r\n IRemarkableBlockExtension,\r\n IRemarkableInlineExtension,\r\n RemarkableExtension,\r\n} from './types';\r\n\r\nfunction isInlineExtension(\r\n ext: RemarkableExtension,\r\n): ext is IRemarkableInlineExtension {\r\n return ext.parser.length === 2;\r\n}\r\n\r\nfunction isBlockExtension(\r\n ext: RemarkableExtension,\r\n): ext is IRemarkableBlockExtension {\r\n return ext.parser.length === 4;\r\n}\r\n\r\nexport async function getRemarkable(extensions?: RemarkableExtension[]) {\r\n const md = new ((await import('remarkable'))?.Remarkable ?? ErrorImporting)({\r\n html: true,\r\n });\r\n if (md instanceof ErrorImporting)\r\n throw new Error('Could not import remarkable, cannot continue');\r\n\r\n md.block.ruler.disable(['table']);\r\n\r\n [...(extensions ?? []), ...markdownExtensions].forEach((ext) => {\r\n if (isInlineExtension(ext))\r\n md.inline.ruler.before('text', ext.name, ext.parser, {});\r\n else if (isBlockExtension(ext))\r\n md.block.ruler.before('code', ext.name, ext.parser, {});\r\n md.renderer.rules[ext.name] = ext.replacer(md);\r\n });\r\n\r\n return md;\r\n}\r\n","import { assignHelp } from './help';\r\nimport { ErrorImporting, IMarkdownParser } from './types';\r\nimport { getRemarkable } from './getRemarkable';\r\nimport { MarkdownBuilder } from './builder/MarkdownBuilder';\r\n\r\n/**\r\n * Toma una cadena de markdown y la convierte a html, incluyendo estilos por\r\n * defecto\r\n */\r\nexport const parseMarkdown: IMarkdownParser = async (options) => {\r\n const markdownLibrary = await getRemarkable(options.extensions);\r\n\r\n const css =\r\n (await import('./styles')).markdownParserStyles ?? new ErrorImporting();\r\n if (css instanceof ErrorImporting)\r\n throw new Error('Could not import css, cannot continue');\r\n\r\n const html =\r\n options.htmlTemplate ??\r\n (await import('./html')).markdownHtml ??\r\n new ErrorImporting();\r\n if (html instanceof ErrorImporting)\r\n throw new Error('Could not import html, cannot continue');\r\n\r\n const markdownString = options.content;\r\n\r\n const markdownParser = markdownLibrary.render.bind(markdownLibrary);\r\n let htmlString = markdownParser(markdownString);\r\n\r\n if (options.tocProps) {\r\n const b = new MarkdownBuilder();\r\n htmlString = b.addTableOfContents(options.tocProps, htmlString);\r\n }\r\n\r\n const rendered = html(\r\n options.title,\r\n css(options.additionalStyles, options.extensions),\r\n `${options?.additionalBodyContent?.before ?? ''}${htmlString}${options?.additionalBodyContent?.after ?? ''}`,\r\n );\r\n\r\n return rendered;\r\n};\r\n\r\nassignHelp(parseMarkdown);\r\n","export abstract class MarkdownBlock {\r\n /**\r\n * Each markdown block must export a valid markdown string\r\n */\r\n abstract toString(): string;\r\n}\r\n","import { MarkdownBlock } from './MarkdownBlock';\r\n\r\nexport class MarkdownParagraph extends MarkdownBlock {\r\n constructor(protected text: string) {\r\n super();\r\n }\r\n\r\n toString(): string {\r\n return this.text;\r\n }\r\n}\r\n","import { MarkdownParagraph } from './paragraph';\r\n\r\nexport type TDialogBoxTypes = 'success' | 'warning' | 'error';\r\n\r\nexport class MarkdownDialogBox extends MarkdownParagraph {\r\n constructor(text: string, protected level: TDialogBoxTypes = 'success') {\r\n super(text);\r\n }\r\n\r\n toString(): string {\r\n let wrapper = '$$';\r\n\r\n switch (this.level) {\r\n case 'error':\r\n wrapper = '!!!';\r\n break;\r\n case 'warning':\r\n wrapper = '!!';\r\n break;\r\n }\r\n\r\n return `${wrapper}${this.text}${wrapper}`;\r\n }\r\n}\r\n","import { MarkdownParagraph } from './paragraph';\r\n\r\nexport class MarkdownHeader extends MarkdownParagraph {\r\n constructor(protected text: string, private prefix = '#') {\r\n super(text);\r\n }\r\n\r\n toString() {\r\n return `${this.prefix} ${this.text}`;\r\n }\r\n}\r\n","import { MarkdownBlock } from './MarkdownBlock';\r\nimport { MarkdownBuilder } from '../MarkdownBuilder';\r\n\r\nexport class MarkdownList extends MarkdownBlock {\r\n protected items: MarkdownBuilder[] = [];\r\n\r\n constructor(protected sorted = false) {\r\n super();\r\n }\r\n\r\n /**\r\n * Cada elemento de la lista es un MarkdownBuilder.\r\n *\r\n * Si se pasa text como parámetro, este texto será agregado mediante\r\n * builder.p(text)\r\n */\r\n add(text?: string) {\r\n const newBuilder = new MarkdownBuilder();\r\n\r\n if (text) newBuilder.p(text);\r\n this.items.push(newBuilder);\r\n\r\n return newBuilder;\r\n }\r\n\r\n toString(sorted = this.sorted): string {\r\n const items = this.items.map((builder) => {\r\n return builder.toMarkdown().split('\\n');\r\n });\r\n\r\n const tab = sorted ? ' ' : ' ';\r\n\r\n return items\r\n .map((item, i) => {\r\n let str = '';\r\n if (sorted) str += `${i + 1}) `;\r\n else str += '- ';\r\n\r\n item.forEach((itemPart, j) => {\r\n if (itemPart.match(/^ *$/)) {\r\n str += '\\n';\r\n return;\r\n }\r\n\r\n str += j === 0 ? '' : tab;\r\n str += itemPart;\r\n str += '\\n';\r\n });\r\n\r\n return str;\r\n })\r\n .join('\\n');\r\n }\r\n}\r\n","import { MarkdownBlock } from './MarkdownBlock';\r\nimport { MarkdownBuilder } from '../MarkdownBuilder';\r\n\r\nexport class MarkdownPage extends MarkdownBlock {\r\n protected items: MarkdownBuilder[] = [];\r\n\r\n /**\r\n * Cada elemento de la lista es un MarkdownBuilder.\r\n *\r\n * Si se pasa text como parámetro, este texto será agregado mediante\r\n * builder.p(text)\r\n */\r\n add(text?: string) {\r\n const newBuilder = new MarkdownBuilder();\r\n\r\n if (text) newBuilder.p(text);\r\n this.items.push(newBuilder);\r\n\r\n return newBuilder;\r\n }\r\n\r\n toString(): string {\r\n return `<div class=\"md-page\">\r\n\r\n${this.items.map((c) => c.toMarkdown()).join('\\n')}\r\n\r\n</div>`;\r\n }\r\n}\r\n","import {\r\n MarkdownTableCell,\r\n MarkdownTableObjectCell,\r\n} from '../../extensions/table/types';\r\nimport { MarkdownBlock } from './MarkdownBlock';\r\n\r\nconst alignment = {\r\n center: ':---:',\r\n default: '---',\r\n left: ':---',\r\n right: '---:',\r\n};\r\n\r\nexport class MarkdownTable extends MarkdownBlock {\r\n id = '';\r\n\r\n constructor(\r\n protected header: MarkdownTableCell[] = [],\r\n protected rows: MarkdownTableCell[][] = [],\r\n ) {\r\n super();\r\n }\r\n\r\n #getCell(cell: MarkdownTableCell): MarkdownTableObjectCell {\r\n return typeof cell === 'string' ? { content: cell } : cell;\r\n }\r\n #getSeparatorAlignment(cell?: MarkdownTableCell) {\r\n if (typeof cell === 'string') return alignment.default;\r\n\r\n switch (cell?.align) {\r\n case 'center':\r\n return alignment.center;\r\n case 'right':\r\n return alignment.right;\r\n case 'left':\r\n return alignment.left;\r\n default:\r\n return alignment.default;\r\n }\r\n }\r\n #getClassName(cell: MarkdownTableCell) {\r\n if (typeof cell === 'string') return '';\r\n\r\n return cell.className ? `(.${cell.className})` : '';\r\n }\r\n #getSpan(cell: MarkdownTableCell) {\r\n const spans: string[] = [];\r\n const c = this.#getCell(cell);\r\n\r\n if (c.rowSpan) spans.push(`({rowSpan:${c.rowSpan}})`);\r\n if (c.colSpan) spans.push(`({colSpan:${c.colSpan}})`);\r\n\r\n return spans.join(' ');\r\n }\r\n #getStyle(cell: MarkdownTableCell) {\r\n if (typeof cell === 'string') return '';\r\n\r\n const styles: string[] = [];\r\n if (cell.style) styles.push(cell.style);\r\n if (cell.align) styles.push(`text-align: ${cell.align}`);\r\n\r\n const style = styles.join(';');\r\n\r\n return style ? `({style:${style}})` : '';\r\n }\r\n #getAttributes(cell: MarkdownTableCell) {\r\n return [\r\n this.#getClassName(cell),\r\n this.#getStyle(cell),\r\n this.#getSpan(cell),\r\n ].join(' ');\r\n }\r\n #parseCell(cell: MarkdownTableCell) {\r\n return typeof cell === 'string'\r\n ? cell.replaceAll('\\n', '')\r\n : `${this.#getAttributes(cell)} ${(cell.content ?? '').replaceAll('\\n', '')}`;\r\n }\r\n #rowToString = (row: string[]) => ['', ...row, ''].join(' | ');\r\n #getColumnAlignment(index: number) {\r\n let sum = 0,\r\n i = 0;\r\n for (i = 0; i < this.header.length && sum <= index; i++) {\r\n sum += Number.parseInt(this.#getCell(this.header[i]).colSpan ?? '1', 10);\r\n }\r\n return this.#getCell(this.header[i - 1]).align;\r\n }\r\n\r\n /**\r\n * Add rows to the body\r\n */\r\n addRows(rows: MarkdownTableCell[][]) {\r\n this.rows.push(...rows);\r\n }\r\n\r\n /**\r\n * Removes every row from the body.\r\n */\r\n clear() {\r\n this.rows = [];\r\n }\r\n\r\n /**\r\n * The header allows an only row by now\r\n */\r\n setHeader(row: MarkdownTableCell[]) {\r\n this.header = row;\r\n }\r\n\r\n setId(id: string) {\r\n this.id = id;\r\n }\r\n\r\n toString(): string {\r\n const heading = this.#rowToString(\r\n this.header.map((current) => this.#parseCell(current)),\r\n );\r\n const alignments = this.#rowToString(\r\n this.header.map((current) => this.#getSeparatorAlignment(current)),\r\n );\r\n const rows = this.rows\r\n .map((current) =>\r\n this.#rowToString(\r\n current.map((cell, i) =>\r\n this.#parseCell({\r\n ...this.#getCell(cell),\r\n align: this.#getColumnAlignment(i),\r\n }),\r\n ),\r\n ),\r\n )\r\n .join('\\n');\r\n\r\n return `${\r\n this.id ? `{ #${this.id} }` : ''\r\n }${heading}\\n${alignments}\\n${rows}`;\r\n }\r\n}\r\n","import { MarkdownParagraph } from './paragraph';\r\n\r\nconst tocPlaceholder = '((())) TABLE_OF_CONTENTS ((()))';\r\n\r\nexport type TMDTocProps = {\r\n title?: string;\r\n maxLevel?: number;\r\n filter?: (el: HTMLElement) => boolean;\r\n};\r\n\r\nexport class MarkdownTableOfContents extends MarkdownParagraph {\r\n public constructor() {\r\n super(tocPlaceholder);\r\n }\r\n\r\n /**\r\n * Este método toma el html, busca todos los headings (que ya fueron\r\n * procesados por setUniqueIds) y crea una tabla de contenidos a partir de\r\n * esos ids\r\n */\r\n private static makeTableOfContents(props: TMDTocProps, html: string) {\r\n const idMap: Record<string, boolean> = {};\r\n const parser: DOMParser = new DOMParser();\r\n\r\n const parsedDocument: Document = parser.parseFromString(html, 'text/html');\r\n\r\n const headers: NodeListOf<HTMLHeadElement> =\r\n parsedDocument.querySelectorAll(\r\n new Array(props.maxLevel || 3)\r\n .fill(1)\r\n .map((_, i) => `h${i}`)\r\n .join(', '),\r\n );\r\n\r\n const root: HTMLUListElement = document.createElement('ul');\r\n root.id = 'TableOfContents';\r\n\r\n const prevParentMap: Record<number, HTMLElement> = { 0: root };\r\n\r\n for (const header of headers) {\r\n if (!props.filter || props.filter(header)) {\r\n // eslint-disable-next-line no-param-reassign\r\n this.setUniqueId(idMap, header);\r\n\r\n const depth = this.getNodeDepth(header);\r\n const parentDepth = depth - 1;\r\n\r\n this.deletePrevValues(prevParentMap, depth);\r\n\r\n const ulParent = this.getParent(prevParentMap, parentDepth);\r\n\r\n this.createNewLevel(header, ulParent, prevParentMap, parentDepth);\r\n }\r\n }\r\n\r\n return parsedDocument.documentElement.outerHTML.replace(\r\n tocPlaceholder,\r\n `<h2>${props.title}</h2>${root.outerHTML}`,\r\n );\r\n }\r\n\r\n private static deletePrevValues(\r\n prevParentMap: Record<number, HTMLElement | null>,\r\n depth: number,\r\n ): void {\r\n // eslint-disable-next-line no-param-reassign\r\n for (let i = depth; i < 7; i++) prevParentMap[i] = null;\r\n }\r\n\r\n private static getParent(\r\n prevParentMap: Record<number, HTMLElement>,\r\n depth: number,\r\n ): HTMLElement {\r\n // eslint-disable-next-line no-param-reassign\r\n for (let i = depth; i >= 0; i--) {\r\n const parent = prevParentMap[i];\r\n if (parent) return parent;\r\n }\r\n throw new Error('Element has no parent');\r\n }\r\n\r\n private static createNewLevel(\r\n elem: HTMLElement,\r\n parentElement: HTMLElement,\r\n prevParentMap: Record<number, HTMLElement>,\r\n parentDepth: number,\r\n ) {\r\n const newLi = document.createElement('li');\r\n const newA = document.createElement('a');\r\n const newB = document.createElement('b');\r\n newA.href = `#${elem.id}`;\r\n newB.appendChild(document.createTextNode(elem.textContent as string));\r\n newA.appendChild(newB);\r\n newLi.appendChild(newA);\r\n parentElement.appendChild(newLi);\r\n // eslint-disable-next-line no-param-reassign\r\n prevParentMap[parentDepth + 1] = document.createElement('ul');\r\n newLi.appendChild(prevParentMap[parentDepth + 1]);\r\n }\r\n\r\n private static getNodeDepth(node: HTMLElement): number {\r\n return parseInt(node.nodeName.replace('H', ''));\r\n }\r\n\r\n /**\r\n * Este método toma el html original, busca todos los headings y a cada uno\r\n * le pone un id único, reemplazando el id original si lo tuviera:\r\n *\r\n * Si un heading no tiene id: le agrega uno autogenerado con autoincrement +\r\n * texto del heading procesado (reemplazar espacios por guiones, etc)\r\n *\r\n * Si un heading tiene id: le agrega un autoincrement con un sufijo:\r\n * {id_original}_-_{autoincrement}\r\n *\r\n * De esta forma, nos aseguramos que ningún heading tenga un id igual a otro\r\n */\r\n private static setUniqueId(\r\n idMap: Record<string, boolean>,\r\n element: HTMLHeadElement,\r\n ) {\r\n const replacementRegex = /[\\s()]+/g;\r\n const replacementChar = '-';\r\n\r\n const id = (element.id ? element.id : element.textContent!)\r\n ?.toLocaleLowerCase()\r\n .trim()\r\n .replaceAll(replacementRegex, replacementChar);\r\n\r\n const tokens: (string | number)[] = id.split('_-_', 2);\r\n if (tokens.length !== 2) tokens[1] = 0;\r\n let cond = true;\r\n for (\r\n ;\r\n cond;\r\n // eslint-disable-next-line no-param-reassign\r\n (idMap[`${tokens[0]}_-_${tokens[1]}`] = true) && (tokens[1] as number)++\r\n )\r\n cond = idMap[`${tokens[0]}_-_${tokens[1]}`];\r\n\r\n // eslint-disable-next-line no-param-reassign\r\n element.id = `${tokens[0]}_-_${tokens[1]}`;\r\n }\r\n\r\n public static appendTableOfContents(\r\n props: TMDTocProps,\r\n html: string,\r\n ): string {\r\n return this.makeTableOfContents(props, html);\r\n }\r\n}\r\n","import { pageBreakTag } from '../extensions/pageBreak';\r\nimport { MarkdownTableCell } from '../extensions/table/types';\r\nimport { parseMarkdown } from '../parseMarkdown';\r\nimport { IMarkdownConfiguration, RemarkableExtension } from '../types';\r\nimport { MarkdownBlock } from './elements/MarkdownBlock';\r\nimport { MarkdownDialogBox, TDialogBoxTypes } from './elements/dialogBox';\r\nimport { MarkdownHeader } from './elements/header';\r\nimport { MarkdownList } from './elements/list';\r\nimport { MarkdownPage } from './elements/page';\r\nimport { MarkdownParagraph } from './elements/paragraph';\r\nimport { MarkdownTable } from './elements/table';\r\nimport {\r\n MarkdownTableOfContents,\r\n TMDTocProps,\r\n} from './elements/tableOfContents';\r\n\r\nexport class MarkdownBuilder {\r\n protected blocks: MarkdownBlock[] = [];\r\n protected extensions: RemarkableExtension[] = [];\r\n\r\n setExtensions(extensions: RemarkableExtension[]) {\r\n this.extensions = extensions;\r\n return this;\r\n }\r\n\r\n custom(block: MarkdownBlock) {\r\n this.blocks.push(block);\r\n }\r\n\r\n h1(text: string) {\r\n const heading = new MarkdownHeader(text);\r\n\r\n this.blocks.push(heading);\r\n\r\n return heading;\r\n }\r\n\r\n h2(text: string) {\r\n const heading = new MarkdownHeader(text, '##');\r\n\r\n this.blocks.push(heading);\r\n\r\n return heading;\r\n }\r\n\r\n h3(text: string) {\r\n const heading = new MarkdownHeader(text, '###');\r\n\r\n this.blocks.push(heading);\r\n\r\n return heading;\r\n }\r\n\r\n h4(text: string) {\r\n const heading = new MarkdownHeader(text, '####');\r\n\r\n this.blocks.push(heading);\r\n\r\n return heading;\r\n }\r\n\r\n h5(text: string) {\r\n const heading = new MarkdownHeader(text, '#####');\r\n\r\n this.blocks.push(heading);\r\n\r\n return heading;\r\n }\r\n\r\n h6(text: string) {\r\n const heading = new MarkdownHeader(text, '######');\r\n\r\n this.blocks.push(heading);\r\n\r\n return heading;\r\n }\r\n\r\n html(text: string) {\r\n this.blocks.push({\r\n toString() {\r\n return text.replaceAll(/\\s{2,}/g, ' ');\r\n },\r\n });\r\n }\r\n\r\n p(text: string) {\r\n const p = new MarkdownParagraph(text);\r\n\r\n this.blocks.push(p);\r\n\r\n return p;\r\n }\r\n\r\n page() {\r\n const page = new MarkdownPage();\r\n\r\n this.blocks.push(page);\r\n\r\n return page;\r\n }\r\n\r\n list(sorted = false) {\r\n const list = new MarkdownList(sorted);\r\n\r\n this.blocks.push(list);\r\n\r\n return list;\r\n }\r\n\r\n dialogBox(text: string, level: TDialogBoxTypes = 'success') {\r\n const box = new MarkdownDialogBox(text, level);\r\n\r\n this.blocks.push(box);\r\n\r\n return box;\r\n }\r\n\r\n pageBreak() {\r\n this.blocks.push({\r\n toString() {\r\n // @see pageBreak.ts\r\n return `\r\n${pageBreakTag}`;\r\n },\r\n });\r\n }\r\n\r\n table(header: MarkdownTableCell[] = [], rows: MarkdownTableCell[][] = []) {\r\n const table = new MarkdownTable(header, rows);\r\n\r\n this.blocks.push(table);\r\n\r\n return table;\r\n }\r\n\r\n /**\r\n * Este método debería ser llamado una única vez dentro de un documento,\r\n * agrega la tabla de contenidos la html\r\n */\r\n tableOfContents() {\r\n this.blocks.push(new MarkdownTableOfContents());\r\n }\r\n\r\n /**\r\n * Este método recibe un html y le agrega la tabla de contenidos, dentro de\r\n * un div con id=\"TableOfContents\"\r\n */\r\n addTableOfContents(props: TMDTocProps, html: string): string {\r\n return MarkdownTableOfContents.appendTableOfContents(props, html);\r\n }\r\n\r\n toMarkdown(): string {\r\n let markdown = this.blocks\r\n .map((current) => current.toString())\r\n .join('\\n\\n');\r\n\r\n markdown = markdown.replaceAll(/ *\\n *\\n *\\n/g, '\\n\\n');\r\n\r\n return markdown;\r\n }\r\n\r\n toHtml(\r\n options: Pick<\r\n IMarkdownConfiguration,\r\n 'additionalStyles' | 'extensions' | 'htmlTemplate' | 'title' | 'tocProps'\r\n >,\r\n ): Promise<string> {\r\n let content = this.toMarkdown();\r\n\r\n if (options?.tocProps)\r\n content = this.addTableOfContents(options.tocProps, content);\r\n\r\n return parseMarkdown({ ...options, content });\r\n }\r\n}\r\n"],"names":["responsive","components","forms","spacing","primary","accordion","common","secondary","chat","getOneColorState","focusOutline","form","getColorsAndStatesByPath","baseTheme","baseThemeMaker","name","__publicField","_getColumnAlignment","getColumnAlignment_fn","_parseCell","parseCell_fn","__privateAdd","__privateMethod","i","__privateGet"],"mappings":"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"}