@apia/theme 0.1.0 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/util.ts","../src/base/colors/defaultPalette.ts","../src/base/colors/util/buildColorsObject.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/util.ts","../src/base/colors/util/buildStateObject.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/parsePalette.ts","../src/base/colors/schemas.ts","../src/base/colors/index.ts","../src/base/alerts.ts","../src/base/buttons.ts","../src/base/forms/customCheckbox.ts","../src/base/forms/checkbox.ts","../src/base/forms/dateInput.ts","../src/base/forms/iconInput.ts","../src/base/forms/input.ts","../src/base/forms/label.ts","../src/base/forms/radio.ts","../src/base/forms/select.ts","../src/base/forms/selectMultiple.ts","../src/base/forms/switch.ts","../src/base/forms/textarea.ts","../src/base/forms/deletableInput.ts","../src/base/forms/index.ts","../src/base/layout/common/modals/overlay.ts","../src/base/layout/common/modals/apiaApi.ts","../src/base/layout/common/modals/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/index.ts","../src/base/layout/common/forms/captcha.ts","../src/base/layout/common/forms/index.ts","../src/base/layout/common/trees/primary.ts","../src/base/layout/common/trees/index.ts","../src/base/layout/common/index.ts","../src/base/layout/index.ts","../src/base/rootStyles/transitions.ts","../src/base/rootStyles/rootStyles.ts","../src/base/text.ts","../src/base/baseTheme.ts","../src/methods/getMainTheme.ts","../src/methods/useMainTheme.ts","../src/ThemeProvider.tsx","../src/base/colors/util/getColorsByDefinition.ts","../src/base/colors/util/getColorsAndStatesByDefinition.ts","../src/methods/CustomThemeProvider.tsx","../src/methods/makeStyledComponent.tsx","../src/methods/injectStyles.ts"],"sourcesContent":["import { ResponsiveStyleValue, ThemeUICSSObject } from 'theme-ui';\nimport defaultPalette from './base/colors/defaultPalette';\n\n/**\n * Esta función devuelve un array de valores para los distintos breakpoints.\n *\n * **Importante** Debido a un issue con ThemeUI, es necesario agregar un\n * breakpoint inicial de 0px para las vistas de impresión. El comportamiento por\n * defecto será, si se pasa un valor para el índice 4, esta será tomada como\n * vista de impresión, sino se tomará el valor de mayor índice menor que 4.\n *\n * @example\n *\n * display: responsive({0: 'none', 3: 'block'}) // display: ['block', 'none', null, null, 'block'];\n */\n\nexport function responsive<T>(values: {\n print?: T;\n [key: number]: undefined | T;\n}): ResponsiveStyleValue<T> {\n const returnArray = [];\n const max = 6;\n for (let i = 0; i <= max; i++) returnArray[i + 1] = values[i] ?? null;\n\n if (values.print) returnArray[0] = values.print;\n else {\n for (let i = 5; i >= 0; i--) {\n if (values[i] !== undefined) returnArray[0] = values[i];\n }\n }\n\n return returnArray;\n}\n\n/**\n * Este método permite aplicar espacios (gaps, márgenes y paddings) que se\n * tendrán un comportamiento responsivo por defecto. Esto es, cuando tenemos un\n * padding en una vista de escritorio, probablemente sea demasiado grande al\n * llevarlo a celular. Con esta función se elimina el problema de calcular para\n * cada elemento en forma individual y el problema se convierte en encontrar\n * una única fórmula que quede correcta para todos los breakpoints.\n *\n * @example\n *\n * '.wellPaddedElement': {\n * p: spacing(6),\n * pt: spacing(8)\n * }\n */\nexport function spacing(index: number): ResponsiveStyleValue<number> {\n return defaultPalette.spacing(index) ?? index;\n}\n\nexport const smallButton = {\n py: 2,\n px: 4,\n fontSize: '0.9em',\n};\n\nexport const focusOutline: ThemeUICSSObject = {\n outlineColor: 'outlineColor',\n outlineWidth: '3px',\n outlineStyle: 'solid',\n outlineOffset: '-3px',\n};\n\nexport function getVariant(variant: string) {\n return { variant, 'data-variant': variant };\n}\n","import { responsive } from '../../util';\nimport { TPalette } from './types';\n\nconst opacity = {\n light: '#009',\n dark: '#fff',\n};\nconst disabled = '#ccc';\nconst spacingArray = Array(50)\n .fill(1)\n .map((_, i) => {\n return responsive<number>({\n 0: Math.ceil(i / 2.5),\n 1: Math.ceil(i / 2.1),\n 2: Math.ceil(i / 1.7),\n 3: Math.ceil(i / 1.3),\n 4: i,\n });\n });\n\nconst defaultPalette: TPalette = {\n action: {\n disabled,\n disabledOpacity: 0.6,\n active: opacity,\n activeOpacity: 0.4,\n focus: opacity,\n focusOpacity: 0.2,\n hover: opacity,\n hoverOpacity: 0.3,\n readonly: disabled,\n readonlyOpacity: 0.4,\n selected: opacity.light,\n selectedOpacity: 0.6,\n },\n background: {\n default: '#f4f4f4',\n overlay: 'rgba(0, 0, 0, 0.2)',\n paper: 'white',\n },\n border: {\n article: '#cacaca',\n field: '#444',\n section: '#aaa',\n },\n common: {\n black: 'black',\n white: 'white',\n },\n info: {\n main: '#fff',\n },\n primary: {\n main: '#00496c',\n },\n secondary: {\n main: '#6c757d',\n },\n spacing: (index: number) => {\n return spacingArray[index];\n },\n text: {\n accent: '#609',\n disabled: '#555',\n icon: 'white',\n link: '#00496c',\n primary: '#4a4a4a',\n secondary: 'white',\n title: '#00496c',\n },\n error: {\n main: '#db7678',\n light: '#fff2f4',\n },\n success: {\n main: '#8bde8b',\n light: '#e7ffd9',\n },\n warning: {\n main: '#f8f588',\n light: '#fffdd9',\n },\n darkenRatio: 15,\n lightenRatio: 35,\n responsive,\n queryColumnsMultiplier: 2,\n};\nexport default defaultPalette;\n","import { TGetColorStateDefinition } from '../types';\n\n/**\n * Básicamente agrega la definición de borderLeftColor, borderRightColor, etc.\n */\nfunction buildColorsObject(definition: Partial<TGetColorStateDefinition>) {\n return {\n ...definition,\n ...(definition.borderColor\n ? {\n borderLeftColor: definition.borderColor,\n borderRightColor: definition.borderColor,\n borderBottomColor: definition.borderColor,\n borderTopColor: definition.borderColor,\n }\n : undefined),\n } as TGetColorStateDefinition;\n}\n\nexport default buildColorsObject;\n","import tinycolor from 'tinycolor2';\nimport { getPalette } from '../index';\nimport { TStateRetriever, TActionDefinition } from '../types';\nimport buildColorsObject from './buildColorsObject';\nimport { getValueByPath } from '@apia/util';\n\n/**\n * Este método acepta un objeto con backgroundColor y borderColor y aplica el\n * estado pasado como segundo parámetro de la siguiente manera:\n *\n * Si se pasa backgroundColor, se devuelve un backgroundColor y un color, que\n * corresponden al backgroundColor con el estado aplicado y un color calculado\n * con la función getContrastText.\n *\n * Si se pasa borderColor, se devuelve un nuevo borderColor calculado con el\n * estado aplicado.\n */\nconst getColorState: TStateRetriever = (definition, state) => {\n if (state === 'default') return buildColorsObject(definition);\n\n const palette = getPalette();\n const opacity: number = palette.action[\n `${state}Opacity` as keyof TActionDefinition\n ] as number;\n\n const actualState = state === 'checked' ? 'selected' : state;\n\n // eslint-disable-next-line no-param-reassign\n definition = Object.fromEntries(\n Object.entries(definition).map(([name, value]) => {\n if (\n [\n 'backgroundColor',\n 'borderColor',\n 'borderLeftColor',\n 'borderRightColor',\n 'borderBottomColor',\n 'borderTopColor',\n 'color',\n ].includes(name) &&\n ((value ?? '') as string).startsWith('palette')\n )\n // eslint-disable-next-line no-param-reassign\n value = getValueByPath(\n palette,\n (value as string).slice('palette.'.length),\n ) as string;\n\n return [name, value];\n }),\n );\n\n const calculatedBackgroundColor = tinycolor\n .mix(\n (definition.backgroundColor ?? '') as string,\n tinycolor((definition.backgroundColor ?? '') as string).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n 100 * opacity,\n )\n .toRgbString();\n\n return buildColorsObject({\n ...(definition.backgroundColor\n ? {\n backgroundColor:\n state === 'checked'\n ? definition.backgroundColor ?? ''\n : calculatedBackgroundColor,\n color:\n state === 'checked'\n ? tinycolor\n .mix(\n tinycolor((definition.color ?? 'black') as string),\n tinycolor(palette.action.selected.dark),\n 100 * palette.action.selectedOpacity,\n )\n .toRgbString()\n : window.currentPalette.getContrastText(\n calculatedBackgroundColor,\n ),\n }\n : null),\n ...(definition.borderColor\n ? {\n borderColor: tinycolor\n .mix(\n definition.borderColor as string,\n tinycolor(definition.borderColor as string).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n 100 * opacity,\n )\n .toRgbString(),\n }\n : null),\n });\n};\nexport default getColorState;\n","import { cloneDeep } from 'lodash';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { TStatesRetriever } from '../types';\nimport getColorState from './getColorState';\n\n/**\n * Este método está pensado para usarse únicamente dentro de applyStates, si se\n * desea obtener un objeto con las propiedades correspondientes a un estado,\n * utilizar el método getColorStates.\n */\nconst applyStatesGetColor: TStatesRetriever = (definition, states) => {\n const newStates: ThemeUICSSObject =\n states?.default !== false\n ? cloneDeep(definition)\n : ({} as ThemeUICSSObject);\n if (states?.active !== false) {\n newStates.active = getColorState(definition, 'active');\n }\n if (states?.disabled !== false) {\n newStates.disabled = getColorState(definition, 'disabled');\n }\n if (states?.focus !== false) {\n newStates.focus = getColorState(definition, 'focus');\n }\n if (states?.hover !== false) {\n newStates.hover = getColorState(definition, 'hover');\n }\n if (states?.readonly !== false) {\n newStates.readonly = getColorState(definition, 'readonly');\n }\n if (states?.selected !== false) {\n newStates.selected = getColorState(definition, 'selected');\n }\n if (states?.checked !== false) {\n newStates.checked = getColorState(definition, 'checked');\n }\n return newStates;\n};\n\nexport default applyStatesGetColor;\n","import { merge } from 'lodash';\nimport { TColorDefinition, TStates } from '../types';\nimport applyStatesGetColor from './applyStatesGetColor';\n\n/**\n * Esta función está pensada para ser utilizada dentro del objeto colors del\n * tema. Aplica recursivamente los distintos estados a todos los elementos\n * contenidos dentro de los objetos pasados como parámetro en properties.\n *\n * Es posible elegir cuáles estados se aplican y cuáles no mediante el segundo\n * parámetro, que es un objeto cuyas propiedades serán tomadas en cuenta\n * únicamente cuando tienen valor false, en cuyo caso no se aplicará el estado\n * correspondiente.\n *\n * @param properties\n * @param states\n */\nexport default function applyStates(\n properties: Record<\n string,\n TColorDefinition | string | Record<string, unknown>\n >[],\n states?: TStates,\n) {\n properties.forEach((def) => {\n Object.entries(def).forEach(([key, value]) => {\n if (typeof value === 'string') return;\n const definition = value as TColorDefinition;\n if (!definition.active) definition.active = {};\n if (!definition.checked) definition.checked = {};\n if (!definition.focus) definition.focus = {};\n if (!definition.disabled) definition.disabled = {};\n if (!definition.hover) definition.hover = {};\n if (!definition.selected) definition.selected = {};\n\n const newDefinition = applyStatesGetColor(definition, states);\n // eslint-disable-next-line no-param-reassign\n def[key] = merge(newDefinition, definition);\n });\n });\n}\n","import { ResponsiveStyleValue, ThemeUICSSObject } from 'theme-ui';\nimport { responsive } from '../../util';\nimport getColorsAndStatesByPath from './util/getColorsAndStatesByPath';\n\n/* eslint-disable @typescript-eslint/naming-convention */\nexport function isColorDefinition(\n value:\n | IColorDefinition\n | TColorModifier\n | Record<string, unknown>\n | string\n | number\n | TActionDefinition\n | TStatesRetriever\n | ((index: number) => ResponsiveStyleValue<number>)\n | typeof responsive,\n): value is IColorDefinition {\n return !!value && typeof value === 'object' && 'main' in value;\n}\n\nexport interface IColorDefinition {\n main: string;\n light?: string;\n dark?: string;\n contrastText?: string;\n}\n\nexport interface IActionOpacity {\n light: string;\n dark: string;\n}\n\nexport interface TStates {\n active?: boolean;\n checked?: boolean;\n default?: boolean;\n disabled?: boolean;\n focus?: boolean;\n hover?: boolean;\n readonly?: boolean;\n selected?: boolean;\n}\n\nexport type TGetColorStateDefinition = Pick<\n ThemeUICSSObject,\n | 'backgroundColor'\n | 'borderColor'\n | 'borderLeftColor'\n | 'borderRightColor'\n | 'borderBottomColor'\n | 'borderTopColor'\n | 'color'\n>;\n\nexport type TColorStateRetriever = (\n color: string,\n state: keyof TStates,\n) => string;\n\nexport type TStateRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n state: keyof TStates,\n) => TGetColorStateDefinition;\n\nexport type TStatesRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n states?: TStates,\n) => ThemeUICSSObject;\n\nexport interface TActionDefinition<\n OpacityColor = undefined | string | IActionOpacity,\n> {\n active: OpacityColor;\n activeOpacity: number;\n disabled: OpacityColor;\n disabledOpacity: number;\n focus: OpacityColor;\n focusOpacity: number;\n hover: OpacityColor;\n hoverOpacity: number;\n readonly: OpacityColor;\n readonlyOpacity: number;\n selected: OpacityColor;\n selectedOpacity: number;\n}\n\nexport type TColorModifier = (color: string, ratio?: number) => string;\nexport interface TPalette<\n ColorDefinition = IColorDefinition,\n ColorModifier = TColorModifier,\n ActionDefinition = TActionDefinition,\n> {\n action: ActionDefinition;\n background: {\n default: string;\n overlay: string;\n paper: string;\n };\n border: {\n article: string;\n field: string;\n section: string;\n };\n common: {\n white: string;\n black: string;\n };\n error: ColorDefinition;\n gray?: {\n 100: string;\n 150: string;\n 200: string;\n 250: string;\n 300: string;\n 350: string;\n 400: string;\n 450: string;\n 500: string;\n 550: string;\n 600: string;\n 650: string;\n 700: string;\n 750: string;\n 800: string;\n 850: string;\n 900: string;\n 950: string;\n };\n info: ColorDefinition;\n primary: ColorDefinition;\n secondary: ColorDefinition;\n spacing: (index: number) => ResponsiveStyleValue<number>;\n success: ColorDefinition;\n text: {\n accent: string;\n disabled: string;\n icon: string;\n link: string;\n primary: string;\n secondary: string;\n title: string;\n };\n warning: ColorDefinition;\n\n lightenRatio?: number;\n darkenRatio?: number;\n /**\n * Acepta un ratio entre 0 y 100\n */\n lightenColor?: ColorModifier;\n /**\n * Acepta un ratio entre 0 y 100\n */\n darkenColor?: ColorModifier;\n getContrastText?: ColorModifier;\n responsive: typeof responsive;\n\n queryColumnsMultiplier?: number;\n}\n\nexport type TBuildStateObject = <T extends Partial<ThemeUICSSObject>>(\n props: T,\n state: keyof Required<TStates> | 'checked',\n) => ThemeUICSSObject;\n\nexport type TParsedPalette = Required<\n TPalette<\n Required<IColorDefinition>,\n TColorModifier,\n Required<TActionDefinition<IActionOpacity>>\n >\n> & {\n buildStateObject: TBuildStateObject;\n getColor: TColorStateRetriever;\n getOneState: TStateRetriever;\n getStatesForColors: TStatesRetriever;\n getStatesFromDefinition: TStatesRetriever;\n getStatesFromPath: typeof getColorsAndStatesByPath;\n};\n\nexport type TColorDefinitionPrimitive = Pick<\n ThemeUICSSObject,\n 'color' | 'backgroundColor' | 'borderColor'\n>;\n\nexport type TColorDefinition = TColorDefinitionPrimitive & {\n active?: TColorDefinitionPrimitive;\n checked?: TColorDefinitionPrimitive;\n disabled?: TColorDefinitionPrimitive;\n focus?: TColorDefinitionPrimitive;\n hover?: TColorDefinitionPrimitive;\n selected?: TColorDefinitionPrimitive;\n};\n\ndeclare global {\n interface Window {\n currentPalette: TParsedPalette;\n customPalette?: TPalette;\n defaultPalette?: TPalette;\n }\n}\n","import tinycolor from 'tinycolor2';\n\nexport function defaultLighten(color: string, ratio?: number) {\n return tinycolor(color)\n .lighten(ratio ?? 20)\n .toRgbString();\n}\nexport function defaultDarken(color: string, ratio?: number) {\n return tinycolor(color)\n .darken(ratio ?? 20)\n .toRgbString();\n}\nexport function defaultGetContrastText(color: string) {\n const current = tinycolor(color);\n return tinycolor.readability('white', current) <\n tinycolor.readability('black', current)\n ? 'black'\n : 'white';\n}\n","import { merge } from 'lodash';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../../util';\nimport { TBuildStateObject } from '../types';\n\n/**\n * Dado un estado, se devuelven las propiedades necesarias para garantizar que\n * dicho estado se aplique en variadas circunstancias.\n */\nconst buildStateObject: TBuildStateObject = (props, state) => {\n switch (state) {\n case 'active':\n return {\n '&:active': props,\n 'input[role]:active ~ &': props,\n 'input[role]:active ~ & path': props,\n };\n case 'checked':\n return {\n '&:checked': props,\n 'input[role]:checked ~ &': props,\n 'input[role]:checked ~ & path': props,\n };\n case 'disabled':\n return {\n '&:disabled': props,\n 'input[role]:disabled ~ &': props,\n 'input[role]:disabled ~ & path': props,\n };\n case 'focus': {\n const focusObject = merge({}, focusOutline, props);\n return {\n '&:focus': focusObject,\n 'input[role]:focus ~ &': focusObject,\n };\n }\n case 'hover': {\n return {\n '&:hover:not([readonly], :disabled,[aria-selected=\"true\"],:active)':\n props,\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"])':\n props,\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"]) path':\n props,\n };\n }\n case 'readonly':\n return {\n '&[readonly]': props,\n 'input[role][readonly] ~ &': props,\n 'input[role][readonly] ~ & path': props,\n '&.readonly input ~ &, &.readOnly input ~ &': props,\n '&.readonly input ~ & path, &.readOnly input ~ & path': props,\n '&.readonly, &.readOnly': props,\n };\n case 'selected':\n return {\n '&:selected': props,\n 'input[role]:selected ~ &': props,\n 'input[role]:selected ~ & path': props,\n '&[aria-selected=\"true\"]': props,\n };\n default:\n return props as unknown as ThemeUICSSObject;\n }\n};\nexport default buildStateObject;\n","import { merge } from 'lodash';\nimport buildColorsObject from './buildColorsObject';\n\n/**\n * Esta función NO CALCULA ningún color, simplemente devuelve un objeto con las\n * rutas de color con el formato de ThemeUI. Es útil cuando se desea aplicar\n * colores definidos en el objeto colors.\n *\n * Si se desea generar un objeto con los colores a partir de una definición de\n * colores del tipo TGetColorStateDefinition se debe utilizar el método\n * getColorsByDefinition.\n */\nexport default function getColorsByPath(\n path: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: { mergeObject?: Record<string, any> },\n) {\n return merge(\n buildColorsObject({\n color: `${path}.color`,\n backgroundColor: `${path}.backgroundColor`,\n borderColor: `${path}.borderColor`,\n }),\n options?.mergeObject,\n );\n}\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { merge } from 'lodash';\nimport buildStateObject from './buildStateObject';\nimport getColorsByPath from './getColorsByPath';\n\nexport interface TGetColorsAndStatesOptions {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n mergeObject?: Record<string, any>;\n states?: {\n active?: boolean;\n checked?: boolean;\n default?: boolean;\n disabled?: boolean;\n focus?: boolean;\n hover?: boolean;\n readonly?: boolean;\n selected?: boolean;\n };\n}\n\n/**\n * Esta función es útil para devolver los estados calculados por la aplicación\n * dentro del objeto colors de ThemeUI. Si se desea calcular los estados en\n * base a un color, se debe utilizar el método getColorsAndStatesByColor.\n */\nexport default function getColorsAndStatesByPath(\n path: string,\n options?: TGetColorsAndStatesOptions,\n) {\n const active = getColorsByPath(`${path}.active`, options);\n const checked = getColorsByPath(`${path}.checked`, options);\n const disabled = {\n cursor: 'not-allowed',\n ...getColorsByPath(`${path}.disabled`, options),\n };\n const hover = getColorsByPath(`${path}.hover`, options);\n const focus =\n options?.states?.focus !== false\n ? getColorsByPath(`${path}.focus`, options)\n : {};\n const readonly = {\n cursor: 'notAllowed',\n ...getColorsByPath(`${path}.readonly`, options),\n };\n const selected = getColorsByPath(`${path}.selected`, options);\n\n return merge(\n {\n ...(options?.states?.default !== false\n ? getColorsByPath(path, options)\n : null),\n ...(options?.states?.checked !== false\n ? buildStateObject(checked, 'checked')\n : null),\n ...buildStateObject(focus, 'focus'),\n ...(options?.states?.hover !== false\n ? buildStateObject(hover, 'hover')\n : null),\n ...(options?.states?.selected !== false\n ? buildStateObject(selected, 'selected')\n : null),\n ...(options?.states?.active !== false\n ? buildStateObject(active, 'active')\n : null),\n ...(options?.states?.disabled !== false\n ? buildStateObject(disabled, 'disabled')\n : null),\n ...(options?.states?.readonly !== false\n ? buildStateObject(readonly, 'readonly')\n : null),\n },\n options?.mergeObject,\n ) as Record<string, ThemeUICSSObject>;\n}\n","import { TStatesRetriever } from '../types';\nimport buildStateObject from './buildStateObject';\nimport getColorState from './getColorState';\n\n/**\n * Con este método es posible construir un objeto con las propiedades\n * necesarias para aplicar los colores correspondientes a los estados deseados\n * a partir de la definición provista.\n */\nconst getColorStates: TStatesRetriever = (definition, states) => {\n return {\n ...(states?.default !== false ? definition : null),\n ...(states?.checked !== false\n ? buildStateObject(getColorState(definition, 'checked'), 'checked')\n : null),\n ...buildStateObject(getColorState(definition, 'focus'), 'focus'),\n ...(states?.selected !== false\n ? buildStateObject(getColorState(definition, 'selected'), 'selected')\n : null),\n ...(states?.hover !== false\n ? buildStateObject(getColorState(definition, 'hover'), 'hover')\n : null),\n ...(states?.active !== false\n ? buildStateObject(getColorState(definition, 'active'), 'active')\n : null),\n ...(states?.disabled !== false\n ? buildStateObject(getColorState(definition, 'disabled'), 'disabled')\n : null),\n ...(states?.readonly !== false\n ? buildStateObject(getColorState(definition, 'readonly'), 'readonly')\n : null),\n };\n};\n\nexport default getColorStates;\n","import tinycolor from 'tinycolor2';\n\nimport { getPalette } from '../index';\n\nimport { TColorStateRetriever, TActionDefinition } from '../types';\n\n/**\n\n * Este método acepta un color y aplica el estado pasado como segundo\n\n * parámetro. De esta forma se puede obtener el color correspondiente al estado\n\n * calculado automáticamente por la aplicación.\n\n */\n\nconst getOneColorState: TColorStateRetriever = (color, state) => {\n if (state === 'default') return color;\n\n const actualState = state === 'checked' ? 'selected' : state;\n\n const palette = getPalette();\n\n const opacity: number = palette.action[\n `${state}Opacity` as keyof TActionDefinition\n ] as number;\n\n return tinycolor\n\n .mix(\n color,\n\n tinycolor(color).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n\n 100 * opacity,\n )\n\n .toRgbString();\n};\n\nexport default getOneColorState;\n","import { cloneDeep } from 'lodash';\nimport {\n TPalette,\n TParsedPalette,\n isColorDefinition,\n IActionOpacity,\n IColorDefinition,\n} from '../types';\nimport { defaultLighten, defaultDarken, defaultGetContrastText } from '../util';\nimport applyStatesGetColor from './applyStatesGetColor';\nimport buildStateObject from './buildStateObject';\nimport getColorsAndStatesByPath from './getColorsAndStatesByPath';\nimport getColorState from './getColorState';\nimport getColorStates from './getColorStates';\nimport getOneColorState from './getOneColorState';\n\nexport default function parsePalette(palette: TPalette) {\n const newPalette: TParsedPalette = cloneDeep(palette) as TParsedPalette;\n\n // Put methods\n newPalette.lightenColor =\n palette.lightenColor ??\n ((color: string, ratio?: number) => {\n return defaultLighten(color, ratio ?? palette.lightenRatio);\n });\n newPalette.darkenColor =\n palette.darkenColor ??\n ((color: string, ratio?: number) => {\n return defaultDarken(color, ratio ?? palette.darkenRatio);\n });\n newPalette.getContrastText =\n palette.getContrastText ?? defaultGetContrastText;\n\n // Fill colors\n Object.entries(palette).forEach(([key, value]) => {\n const castedValue = value as string | number | IColorDefinition;\n if (isColorDefinition(castedValue)) {\n (newPalette as Record<string, unknown>)[key] = {\n main: castedValue.main,\n light: castedValue.light ?? newPalette.lightenColor(castedValue.main),\n dark: castedValue.dark ?? newPalette.darkenColor(castedValue.main),\n contrastText:\n castedValue.contrastText ??\n newPalette.getContrastText(castedValue.main),\n };\n } else {\n (newPalette as Record<string, unknown>)[key] = value;\n }\n });\n\n // Draw borders\n newPalette.border.article =\n newPalette.border.article ?? newPalette.secondary.main;\n newPalette.border.field = newPalette.border.field ?? newPalette.text.primary;\n newPalette.border.section =\n newPalette.border.section ?? newPalette.primary.main;\n\n // Define actions\n function parseAction(action: string | IActionOpacity): IActionOpacity {\n if (typeof action === 'string')\n return {\n dark: action,\n light: action,\n };\n return {\n dark: action.dark ?? action.light,\n light: action.light ?? action.dark,\n };\n }\n\n newPalette.action.active = parseAction(newPalette.action.active);\n newPalette.action.disabled = parseAction(newPalette.action.disabled);\n newPalette.action.focus = parseAction(newPalette.action.focus);\n newPalette.action.hover = parseAction(newPalette.action.hover);\n newPalette.action.readonly = parseAction(newPalette.action.readonly);\n newPalette.action.selected = parseAction(newPalette.action.selected);\n\n newPalette.buildStateObject = buildStateObject;\n newPalette.getColor = getOneColorState;\n newPalette.getStatesForColors = applyStatesGetColor;\n newPalette.getOneState = getColorState;\n newPalette.getStatesFromDefinition = getColorStates;\n newPalette.getStatesFromPath = getColorsAndStatesByPath;\n\n newPalette.gray = newPalette.gray ?? {};\n for (let i = 1; i <= 18; i++) {\n const index = Math.round(((255 - 255 / 18) / 18) * i);\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] =\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] ??\n `rgb(${index},${index},${index})`;\n }\n\n return newPalette;\n}\n","export const schemas: Record<string, string[]> = {\n ocean: ['#008E1B', '#009155', '#009187', '#008EB1', '#006872', '#2F4858'],\n sunset: ['#ae76de', '#D65DB1', '#FF6F91', '#FF9671', '#FFC75F', '#F9F871'],\n red: ['#dc143c', '#ff2400', '#800020', '#b22222', '#e52b50', '#ff7f50'],\n orange: ['#F76E11', '#FF9F45', '#FFBC80', '#FC4F4F', '#eb9605', '#964000'],\n green: ['#a4de02', '#76ba1b', '#4c9a2a', '#acdf87', '#68bb59', '#1e5631'],\n blue: ['#7ad6f4', '#45bdee', '#28a7ea', '#006cbb', '#034698', '#032f64'],\n violet: ['#80007e', '#a02d9c', '#c37ecd', '#9e5fb8', '#7f3e98', '#4c197f'],\n turquoise: ['#0ddbcc', '#43ebff', '#19ceeb', '#28acea', '#388ee9', '#3d76e0'],\n yellow: ['#fff700', '#ffff9f', '#fef54f', '#f9e231', '#f6c616', '#eab200'],\n grey: ['#b1b5ba', '#d2d5d6', '#dee0e0', '#bdbdbb', '#9fa19c', '#686e67'],\n};\n","import { cloneDeep, merge } from 'lodash';\nimport tinycolor from 'tinycolor2';\nimport defaultPalette from './defaultPalette';\nimport { TColorDefinition, TPalette } from './types';\nimport applyStates from './util/applyStates';\nimport applyStatesGetColor from './util/applyStatesGetColor';\nimport parsePalette from './util/parsePalette';\nimport { schemas } from './schemas';\n\n// Colors\nconst darkBlue = '#004085';\nconst lightBlue = '#cce5ff';\nconst white = 'white';\n\nexport function getSelectedColors() {\n const palette = getPalette();\n return palette.getStatesFromDefinition(\n {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n },\n {\n active: false,\n checked: false,\n default: false,\n disabled: false,\n focus: false,\n readonly: false,\n },\n );\n}\n\nexport function getPalette(arg?: TPalette | boolean) {\n const shouldReparsePalette = arg === true;\n const customPalette = typeof arg !== 'boolean' ? arg : undefined;\n\n if (window.currentPalette && !shouldReparsePalette)\n return window.currentPalette;\n\n window.currentPalette = parsePalette(\n merge(\n defaultPalette,\n window.defaultPalette,\n customPalette ?? window.customPalette,\n ),\n );\n return window.currentPalette;\n}\n\nexport function getThemeColorsObject() {\n const palette = cloneDeep(window.currentPalette ?? getPalette());\n\n const colors = {\n palette: {\n ...palette,\n lightenColor: undefined,\n darkenColor: undefined,\n getContrastText: undefined,\n\n buildStateObject: undefined,\n getColor: undefined,\n getOneState: undefined,\n getStatesForColors: undefined,\n getStatesFromDefinition: undefined,\n getStatesFromPath: undefined,\n },\n accordion: {\n borderColor: palette.border.section,\n },\n buttons: {\n accordion: {\n backgroundColor: palette.primary.main,\n borderColor: palette.border.section,\n color: palette.primary.contrastText,\n },\n accordionPrimary: {\n backgroundColor: palette.primary.main,\n borderColor: palette.border.section,\n color: palette.primary.contrastText,\n },\n close: {\n ...applyStatesGetColor({\n color: palette.text.primary,\n backgroundColor: palette.background.paper,\n }),\n backgroundColor: 'transparent',\n },\n collapsibleAsidePanelTitle: {\n color: palette.text.primary,\n },\n deletableInputButton: {\n backgroundColor: 'transparent',\n color: palette.secondary.main,\n\n active: {\n color: palette.darkenColor(palette.secondary.main, 40),\n },\n disabled: {\n color: palette.secondary.main,\n },\n focus: {\n color: palette.darkenColor(palette.secondary.main, 20),\n },\n hover: {\n color: palette.darkenColor(palette.secondary.main, 20),\n },\n },\n icon: {\n backgroundColor: palette.secondary.main,\n color: palette.secondary.contrastText,\n\n hover: {\n color: palette.secondary.contrastText,\n },\n\n focus: {\n color: palette.secondary.contrastText,\n },\n },\n iconAlert: {\n backgroundColor: 'transparent',\n color: '#e5c200',\n\n active: {\n backgroundColor: 'transparent',\n color: tinycolor('#e5c200').darken(10).toRgbString(),\n },\n\n focus: {\n backgroundColor: 'transparent',\n color: tinycolor('#e5c200').darken(5).toRgbString(),\n },\n\n hover: {\n backgroundColor: 'transparent',\n color: tinycolor('#e5c200').darken(5).toRgbString(),\n },\n },\n iconPrimary: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n\n active: {\n color: palette.primary.contrastText,\n },\n\n focus: {\n color: palette.primary.contrastText,\n },\n\n hover: {\n color: palette.primary.contrastText,\n },\n },\n iconToggled: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n\n active: {\n color: palette.primary.contrastText,\n },\n\n focus: {\n color: palette.common.white,\n },\n\n hover: {\n color: palette.common.white,\n },\n },\n iconOutline: {\n backgroundColor: palette.background.paper,\n color: palette.primary.main,\n borderColor: palette.border.article,\n },\n link: {\n backgroundColor: 'transparent',\n color: palette.text.primary,\n borderColor: 'transparent',\n\n active: {\n color: palette.text.primary,\n },\n\n focus: {\n color: palette.text.primary,\n },\n\n hover: {\n color: palette.text.primary,\n },\n },\n openTab: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n borderColor: palette.primary.dark,\n },\n outline: {\n backgroundColor: palette.background.paper,\n color: palette.getContrastText(palette.background.paper),\n borderColor: palette.primary.main,\n },\n outlineDanger: {\n backgroundColor: palette.background.paper,\n color: palette.primary.main,\n borderColor: palette.primary.main,\n\n active: {\n borderColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 80,\n ),\n backgroundColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 80,\n ),\n color: palette.getContrastText(\n palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 80,\n ),\n ),\n },\n\n focus: {\n borderColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 60,\n ),\n backgroundColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 60,\n ),\n color: palette.getContrastText(\n palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 60,\n ),\n ),\n },\n\n hover: {\n borderColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 70,\n ),\n backgroundColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 70,\n ),\n color: palette.getContrastText(\n palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 70,\n ),\n ),\n },\n },\n outlineWarning: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.primary.main,\n\n active: {\n borderColor: palette.warning.main,\n backgroundColor: palette.warning.main,\n color: palette.warning.contrastText,\n },\n\n focus: {\n borderColor: palette.warning.main,\n backgroundColor: palette.warning.main,\n color: palette.warning.contrastText,\n },\n\n hover: {\n borderColor: palette.warning.main,\n backgroundColor: palette.warning.main,\n color: palette.warning.contrastText,\n },\n },\n primary: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n borderColor: palette.primary.main,\n },\n secondary: {\n backgroundColor: palette.secondary.main,\n color: palette.secondary.contrastText,\n borderColor: palette.secondary.main,\n },\n tab: {\n backgroundColor: palette.background.paper,\n color: palette.getContrastText(palette.background.paper),\n borderColor: palette.border.article,\n },\n toggleIcon: {\n color: palette.secondary.contrastText,\n backgroundColor: palette.secondary.main,\n borderColor: palette.border.field,\n\n danger: {\n backgroundColor: palette.error.main,\n borderColor: palette.border.field,\n color: palette.error.contrastText,\n },\n toggled: {\n backgroundColor: palette.primary.main,\n borderColor: palette.border.field,\n color: palette.primary.contrastText,\n },\n },\n transparentIcon: {\n backgroundColor: 'transparent',\n color: palette.text.primary,\n\n hover: {\n color: palette.primary.main,\n },\n\n focus: {\n color: palette.primary.main,\n },\n },\n },\n dropzone: {\n backgroundColor: palette.background.paper,\n borderColor: palette.border.section,\n color: palette.background.default,\n },\n form: {\n backgroundColor: palette.background.paper,\n\n fields: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.border.field,\n },\n\n radio: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(15)\n .toRgbString(),\n borderColor: palette.text.primary,\n active: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(0)\n .toRgbString(),\n },\n checked: {\n backgroundColor: 'red',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(15)\n .toRgbString(),\n },\n disabled: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(55)\n .toRgbString(),\n },\n hover: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(7)\n .toRgbString(),\n },\n readonly: {\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(38)\n .toRgbString(),\n backgroundColor: 'transparent',\n },\n },\n },\n modal: {\n borderColor: palette.border.section,\n backgroundColor: palette.background.paper,\n },\n notifications: {\n error: {\n backgroundColor: palette.error.light,\n color: palette.getContrastText(palette.error.light),\n borderColor: palette.error.main,\n },\n success: {\n backgroundColor: palette.success.light,\n color: palette.getContrastText(palette.success.light),\n borderColor: palette.success.main,\n },\n warning: {\n backgroundColor: palette.warning.light,\n color: palette.getContrastText(palette.warning.light),\n borderColor: palette.warning.main,\n },\n },\n pagination: {\n color: palette.primary.contrastText,\n backgroundColor: palette.primary.main,\n },\n printView: {\n main: {\n backgroundColor: palette.background.default,\n\n page: {\n backgroundColor: palette.background.paper,\n borderColor: palette.border.article,\n },\n },\n list: {\n table: {\n borderColor: palette.border.section,\n },\n th: { backgroundColor: '#eee' },\n cell: {\n borderColor: palette.border.article,\n },\n },\n },\n schemas,\n scrollbars: {\n bar: {\n color: palette.secondary.main,\n backgroundColor: palette.background.default,\n\n hover: {\n backgroundColor: palette.lightenColor(palette.background.default, 10),\n color: palette.lightenColor(palette.secondary.main, 10),\n },\n\n active: {\n backgroundColor: palette.lightenColor(palette.background.default, 10),\n color: palette.lightenColor(palette.secondary.main, 20),\n },\n } /*\n buttons: {\n backgroundColor: palette.secondary.main,\n\n hover: {\n color: palette.lightenColor(palette.secondary.main, 10),\n },\n\n active: {\n color: palette.lightenColor(palette.secondary.main, 20),\n },\n }, */,\n },\n tab: {\n backgroundColor: palette.background.paper,\n borderColor: palette.border.section,\n },\n topBar: {\n backgroundColor: palette.primary.main,\n },\n\n // Default ThemeUI colors\n accent: palette.text.accent,\n background: palette.background.default,\n iconWarning: 'rgb(246 222 87)',\n muted: palette.text.disabled,\n primary: palette.primary.main,\n secondary: palette.secondary.main,\n text: palette.text.primary,\n warning: palette.warning.main,\n danger: palette.error.main,\n link: palette.text.accent,\n success: palette.success.main,\n title: palette.text.title,\n\n // Meaningful colors\n lightBorder: 'hsl(0, 12%, 85%)',\n outlineColor: palette.lightenColor(palette.primary.main, 20),\n\n // Custom Apia colors\n baseGrey: '#dfdfdf',\n darkBorder: 'hsl(247, 98%, 10%)',\n darkBlue,\n disabled: '#efefef',\n favorite: '#e5c200',\n filtersRowBackground: white,\n formBackground: white,\n grey: '#777',\n gridRowHighlight: '#e1f3ff',\n highlightButton: 'hsl(61, 100%, 91%)',\n lightBlue,\n oddRow: '#f0f5ff',\n paginationBackground: 'hsl(229deg, 75%, 90%)',\n readOnlyText: '#737373',\n required: 'darkred',\n scrollbarBack: 'rgb(206, 206, 206)',\n scrollbarFront: 'rgb(156, 156, 156)',\n sysExceptionNotificationBg: '#f8d7da',\n sysMessageNotificationBg: '#fff3cd',\n tabBackground: 'white',\n treeRuler: '#ccc',\n white,\n priorityNone: 'gray',\n priorityLow: palette.success.main,\n priorityNormal: 'rgb(255 211 34)',\n priorityHigh: 'rgb(255 150 0)',\n priorityUrgent: 'red',\n\n // modes: {\n // dark: {\n // // TODO: dark-mode uhhhhhhh!!!\n // //text: '#fff',\n // },\n // },\n charts: {\n front: darkBlue,\n },\n };\n\n applyStates([\n colors?.buttons as Record<string, string | TColorDefinition>,\n colors?.form as Record<string, string | TColorDefinition>,\n ]);\n\n return colors;\n}\n","import { ThemeUIStyleObject } from 'theme-ui';\nimport { focusOutline, spacing } from '../util';\nimport getColorsByPath from './colors/util/getColorsByPath';\n\nexport const alerts: Record<string, ThemeUIStyleObject> = {\n primary: {\n border: '1px solid',\n borderLeft: '12px solid',\n borderRadius: 'alerts',\n\n display: 'flex',\n flexDirection: 'column',\n fontWeight: 'normal',\n\n maxHeight: '60vh',\n overflow: 'auto',\n p: 0,\n\n '&:focus': {\n outline: 'none',\n },\n\n '.notification__header': {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n position: 'sticky',\n top: 0,\n width: '100%',\n p: spacing(5),\n },\n\n '.notification__title': {\n fontSize: 18,\n fontWeight: 'bold',\n color: 'palette.text.primary',\n display: 'flex',\n gap: spacing(5),\n alignItems: 'center',\n },\n\n '.notification__closeButton': {\n flexShrink: 0,\n },\n\n '.notification__body': {\n alignItems: 'center',\n display: 'flex',\n flexDirection: 'row',\n gap: spacing(5),\n width: '100%',\n p: spacing(5),\n },\n\n '.notification__header ~ .notification__body': {\n pt: 0,\n },\n\n '.notification__content': {\n display: 'flex',\n alignItems: 'stretch',\n flexDirection: 'column',\n gap: spacing(5),\n width: '100%',\n },\n\n '.notification__icon': {\n flexShrink: 0,\n height: 'iconMd',\n svg: {\n height: 'iconMd',\n width: 'iconMd',\n },\n },\n\n '.notification__message': {\n display: 'flex',\n flexDirection: 'column',\n fontWeight: 'normal',\n gap: spacing(3),\n width: '100%',\n wordBreak: 'break-word',\n },\n\n '.notification__trace': {\n maxWidth: '100%',\n overflow: 'hidden',\n maxHeight: '30vh',\n flexShrink: 0,\n backgroundColor: 'rgba(10,10,10,0.02)',\n pt: spacing(5),\n\n '.notification__traceLabel': {\n pl: spacing(5),\n },\n '.notification__traceText': {\n fontWeight: 'normal',\n p: spacing(5),\n maxHeight: '30vh',\n overflow: 'auto',\n maxWidth: '100%',\n position: 'relative',\n },\n },\n\n '&:focus .notification__closeButton': focusOutline,\n },\n warning: {\n variant: 'alerts.primary',\n\n '&, & .notification__header': {\n ...getColorsByPath('notifications.warning'),\n },\n },\n danger: {\n variant: 'alerts.primary',\n '&, & .notification__header': {\n ...getColorsByPath('notifications.error'),\n },\n },\n success: {\n variant: 'alerts.primary',\n '&, & .notification__header': {\n ...getColorsByPath('notifications.success'),\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive, smallButton, spacing } from '../util';\nimport getColorsAndStatesByPath from './colors/util/getColorsAndStatesByPath';\n\nconst buttons: Record<string, ThemeUICSSObject> = {\n inherit: {\n color: 'inherit',\n background: 'inherit',\n border: 'none',\n borderRadius: 0,\n font: 'inherit',\n cursor: 'pointer',\n padding: 0,\n margin: 0,\n },\n collapsibleAsidePanelTitle: {\n variant: 'buttons.inherit',\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n width: '100%',\n ...getColorsAndStatesByPath('buttons.collapsibleAsidePanelTitle'),\n },\n primary: {\n borderWidth: '2px',\n borderStyle: 'solid',\n variant: 'text.default',\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 5, 4: 6 }),\n display: 'inline-block',\n width: responsive({ 0: '100%', 1: 'auto' }),\n cursor: 'pointer',\n borderRadius: 'buttons',\n fontWeight: 'normal',\n userSelect: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n wordBreak: 'keep-all',\n\n ...getColorsAndStatesByPath('buttons.primary'),\n\n '&:focus, &:focus-visible': {\n outlineColor: '#00daff',\n },\n },\n 'primary-sm': {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n ...smallButton,\n },\n secondary: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n borderWidth: '0px',\n borderStyle: 'solid',\n\n ...getColorsAndStatesByPath('buttons.secondary'),\n },\n 'secondary-sm': {\n variant: 'buttons.secondary',\n ...smallButton,\n },\n 'light-secondary': {\n variant: 'buttons.secondary',\n\n ...getColorsAndStatesByPath('buttons.lightSecondary'),\n },\n danger: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.danger'),\n },\n 'danger-sm': {\n variant: 'buttons.danger',\n ...smallButton,\n },\n warning: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.warning'),\n },\n 'warning-sm': {\n variant: 'buttons.warning',\n ...smallButton,\n },\n close: {\n cursor: 'pointer',\n ml: 'auto',\n mr: '2',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.close'),\n },\n accordion: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n cursor: 'pointer',\n m: spacing(0),\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 5, 4: 6 }),\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n borderRadius: 'buttons',\n textAlign: 'left',\n fontFamily: 'heading',\n fontSize: 'text.default',\n textDecoration: 'none',\n textTransform: 'none',\n fontWeight: 'bold',\n border: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n userSelect: 'text',\n\n '&, *': getColorsAndStatesByPath('buttons.accordion'),\n },\n 'accordion-primary': {\n variant: 'buttons.accordion',\n border: 'none',\n\n ...getColorsAndStatesByPath('buttons.accordionPrimary'),\n },\n icon: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n p: spacing(0),\n m: spacing(0),\n bg: 'secondary',\n cursor: 'pointer',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n borderRadius: 'buttons',\n border: 'none',\n\n ...getColorsAndStatesByPath('buttons.icon'),\n\n svg: {\n width: 'auto',\n height: '20px',\n display: 'block',\n },\n\n '&.isToggled': {\n ...getColorsAndStatesByPath('buttons.iconToggled'),\n },\n },\n 'icon-primary': {\n variant: 'buttons.icon',\n ...getColorsAndStatesByPath('buttons.iconPrimary'),\n },\n 'icon-outline': {\n variant: 'buttons.icon',\n bg: 'white',\n border: '1px solid',\n\n ...getColorsAndStatesByPath('buttons.iconOutline'),\n },\n 'icon-outline-danger': {\n variant: 'buttons.icon',\n bg: 'white',\n border: '1px solid',\n\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\n },\n 'icon-only': {\n variant: 'buttons.icon',\n\n ...getColorsAndStatesByPath('buttons.iconOnly'),\n },\n link: {\n variant: 'inherit',\n width: 'auto',\n border: 'none',\n textDecoration: 'underline',\n px: 2,\n py: 1,\n borderRadius: 'buttons',\n cursor: 'pointer',\n textTransform: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n\n ...getColorsAndStatesByPath('buttons.link'),\n },\n 'link-sm': {\n variant: 'buttons.link',\n ...smallButton,\n },\n outline: {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n '&:focus, &:focus-visible': {},\n ...getColorsAndStatesByPath('buttons.outline'),\n },\n 'outline-sm': {\n variant: 'buttons.outline',\n ...smallButton,\n },\n 'transparent-sm': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n bg: 'transparent',\n color: 'inherit',\n border: 'none',\n font: 'inherit',\n textTransform: 'inherit',\n ...smallButton,\n },\n 'outline-danger': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\n },\n 'outline-danger-sm': {\n variant: 'buttons.outline-danger',\n ...smallButton,\n },\n 'outline-warning': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.outlineWarning'),\n },\n 'outline-warning-sm': {\n variant: 'buttons.outline-warning',\n ...smallButton,\n },\n 'outline-extended': {\n variant: 'buttons.outline',\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n 'outline-danger-extended': {\n variant: 'buttons.outline-danger',\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n 'primary-extended': {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n query: {\n extended: {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n gridColumnStart: 1,\n gridColumnEnd: 3,\n },\n },\n tableAccordion: {\n variant: 'buttons.accordion',\n fontSize: 'text.default',\n p: spacing(3),\n wordBreak: 'keep-all',\n a: {\n color: 'background',\n },\n\n ...getColorsAndStatesByPath('buttons.tableAccordion'),\n },\n tableHeader: {\n variant: 'buttons.tableAccordion',\n alignItems: 'center',\n justifyContent: 'center',\n height: '100%',\n border: 'none',\n svg: {\n ml: spacing(2),\n },\n ...getColorsAndStatesByPath('buttons.tableHeader'),\n },\n};\n\nexport default buttons;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst customCheckbox: ThemeUICSSObject = {\n display: 'inline-flex',\n borderRadius: 'default',\n flexBasis: '32px',\n flexShrink: 0,\n width: '32px',\n height: '32px',\n alignItems: 'center',\n justifyContent: 'center',\n p: '3px',\n border: '1px solid',\n svg: {\n width: '20px',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n\n /* PREPEND HERE */\n};\n\nexport default customCheckbox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst checkbox: ThemeUICSSObject = {\n borderRadius: 'default',\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n focus: false,\n hover: false,\n },\n }),\n backgroundColor: 'unset',\n alignItems: 'center',\n\n '&.nativeCheckbox': {\n appearance: 'none',\n width: '25px',\n height: '25px',\n border: 'solid 1px #cccccc',\n marginRight: '8px',\n position: 'relative',\n cursor: 'pointer',\n\n '&:checked::before': {\n content: '\"✓\"',\n color: 'palette.text.primary',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n fontSize: 'larger',\n fontWeight: 'bolder',\n borderRadius: '5px',\n cursor: 'pointer',\n },\n\n '&:indeterminate::before': {\n content: '\"-\"',\n color: 'palette.text.primary',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n top: '-1px',\n left: 0,\n right: 0,\n bottom: 0,\n fontSize: 'xx-large',\n fontWeight: '600',\n borderRadius: '5px',\n cursor: 'pointer',\n },\n },\n};\n\nexport default checkbox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst dateInput: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n justifyContent: 'stretch',\n gap: spacing(2),\n width: '100%',\n\n '&.readOnly': {\n input: {\n color: 'Text.fields',\n bg: 'Background.fields',\n },\n },\n\n '.iconInput': {\n width: '100%',\n position: 'relative',\n },\n\n 'input:hover~.delete_date_button:not(:disabled,[aria-selected=\"true\"]), input:hover~.delete_date_button:not(:disabled,[aria-selected=\"true\"]) path, .delete_date_button':\n {\n position: 'absolute',\n right: '59px',\n padding: 0,\n top: 'calc(50% - 10px)',\n margin: 0,\n marginRight: 0,\n borderRadius: '100%',\n width: '20px',\n height: '20px',\n\n ...getColorsAndStatesByPath('buttons.icon-outline'),\n },\n\n input: {\n flexShrink: 1,\n },\n\n '& > div': {\n display: 'flex',\n gap: spacing(2),\n flexShrink: 0,\n width: 'auto',\n maxWidth: '100%',\n minWidth: 0,\n\n button: {\n width: '45px',\n flexShrink: 0,\n },\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n hover: false,\n active: false,\n focus: false,\n },\n }),\n\n backgroundColor: undefined,\n};\n\nexport default dateInput;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsByPath from '../colors/util/getColorsByPath';\n/* IMPORT HERE */\n\nconst iconInput: ThemeUICSSObject = {\n display: 'flex',\n gap: spacing(1),\n justifyContent: 'stretch',\n alignItems: 'center',\n '&.readOnly': {\n input: {\n ...getColorsByPath('form.fields'),\n },\n },\n\n input: {\n height: '50px',\n width: '100%',\n },\n\n button: {\n display: 'flex',\n width: '45px',\n flexShrink: 0,\n height: '50px',\n },\n};\n\nexport default iconInput;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst input: ThemeUICSSObject = {\n variant: 'text.default',\n border: '1px solid',\n borderRadius: 'default',\n padding: responsive({ 0: 3, 3: 4 }),\n '::placeholder': {\n color: '#b0b0b0',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n\n material: {\n input: {\n borderLeft: 'none',\n borderRight: 'none',\n borderTop: 'none',\n borderBottomColor: 'palette.border.section',\n\n '& + .input__underline': {\n transform: 'scale(1)',\n },\n\n '&:focus': {\n outline: 'none',\n\n '~::after': {\n animationName: 'growHorizontal',\n animationDuration: '150ms',\n animationTimingFunction: 'ease-out',\n content: '\"\"',\n display: 'block',\n height: '0',\n outlineColor: 'palette.primary.main',\n outlineStyle: 'solid',\n outlineWidth: '1.5px',\n outlineOffset: 0,\n position: 'fixed',\n transformOrigin: 'center center',\n width: '100%',\n },\n },\n },\n },\n};\n\nexport default input;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\n/* IMPORT HERE */\n\nconst label: ThemeUICSSObject = {\n variant: 'text.default',\n alignItems: 'center',\n width: 'auto',\n textTransform: 'none',\n cursor: 'pointer',\n\n '&:not(.radio-label)': {\n fontWeight: 'bold',\n },\n\n '&.required': {\n position: 'relative',\n '&::before': {\n color: 'danger',\n position: 'absolute',\n content: '\"*\"',\n top: 0,\n left: '-10px',\n },\n },\n\n '&:last-of-type': {\n 'input, textarea, select': {\n mb: spacing(0),\n },\n },\n};\n\nexport default label;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst radio: ThemeUICSSObject = {\n width: '32px',\n height: '32px',\n input: {\n height: '32px !important',\n },\n ...getColorsAndStatesByPath('form.radio'),\n};\n\nexport default radio;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst select: ThemeUICSSObject = {\n variant: 'text.default',\n display: 'inline-block',\n fontFamily: 'body',\n p: spacing(4),\n pr: 7,\n borderRadius: 'default',\n width: '100%',\n maxWidth: '100%',\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n};\n\nexport default select;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { getSelectedColors } from '../colors/index';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst selectMultiple: ThemeUICSSObject = {\n variant: 'text.default',\n height: '100%',\n padding: '4px',\n borderRadius: 'default',\n border: '1px solid',\n width: '100%',\n transition: 'background-color 100ms ease-out, color 100ms ease-out',\n overflow: 'auto',\n option: {\n padding: 2,\n ...getSelectedColors(),\n\n '&:checked': {\n backgroundColor: window.currentPalette.getColor(\n window.currentPalette.background.paper,\n 'selected',\n ),\n color: window.currentPalette.getContrastText(\n window.currentPalette.getColor(\n window.currentPalette.background.paper,\n 'selected',\n ),\n ),\n },\n },\n '+ svg': {\n display: 'none',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n};\n\nexport default selectMultiple;\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nconst Switch: ThemeUICSSObject = {\n '+ span': {\n fontSize: 14,\n fontWeight: 'normal',\n wordBreak: 'break-all',\n },\n backgroundColor: 'form.fields.checked.borderColor',\n};\n\nexport default Switch;\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nconst textarea: ThemeUICSSObject = {\n '&, & textarea': {\n height: '100%',\n minHeight: '130px',\n resize: 'vertical',\n },\n\n textarea: {\n variant: 'forms.input',\n },\n};\n\nexport default textarea;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n\nconst deletableInput: ThemeUICSSObject = {\n border: '1px solid',\n borderColor: 'palette.border.field',\n display: 'inline-block',\n position: 'relative',\n pr: '45px',\n\n '.deletableInput__input': {\n border: 'none',\n },\n\n '.deletableInput__deleteButton': {\n height: '100%',\n outlineOffset: '-2px',\n position: 'absolute',\n right: 0,\n top: 0,\n width: '45px',\n\n ...getColorsAndStatesByPath('buttons.deletableInputButton'),\n },\n\n '&:focus-within:not(.asMaterial)': {\n ...focusOutline,\n\n '.deletableInput__input:focus': {\n outline: 'none',\n },\n\n '.deletableInput__deleteButton:focus': {\n outline: 'none',\n },\n },\n\n '&.asMaterial': {\n borderLeft: 'none',\n borderRight: 'none',\n borderTop: 'none',\n borderBottomColor: 'palette.border.section',\n\n '& + .input__underline': {\n transform: 'scale(1)',\n },\n\n '.deletableInput__input:focus': {\n outline: 'none',\n\n '~.input__underline::after': {\n animationName: 'growHorizontal',\n animationDuration: '150ms',\n animationTimingFunction: 'ease-out',\n content: '\"\"',\n display: 'block',\n height: '0',\n outlineColor: 'palette.primary.main',\n outlineStyle: 'solid',\n outlineWidth: '1.5px',\n outlineOffset: 0,\n position: 'absolute',\n transformOrigin: 'center center',\n left: 0,\n right: 0,\n },\n },\n },\n};\n\nexport default deletableInput;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport customCheckbox from './customCheckbox';\nimport checkbox from './checkbox';\nimport dateInput from './dateInput';\nimport iconInput from './iconInput';\nimport input from './input';\nimport label from './label';\nimport radio from './radio';\nimport select from './select';\nimport selectMultiple from './selectMultiple';\nimport Switch from './switch';\nimport textarea from './textarea';\nimport deletableInput from './deletableInput';\n/* IMPORT HERE */\n\nconst forms: () => Record<string, ThemeUICSSObject> = () => {\n return {\n checkbox,\n customCheckbox,\n dateInput,\n deletableInput,\n iconInput,\n input,\n label,\n radio,\n select,\n selectMultiple,\n switch: Switch,\n textarea,\n /* PREPEND HERE */\n 'input[type=\"date\"]': {\n variant: 'forms.input',\n },\n };\n};\n\nexport default forms;\n","import { ThemeUICSSObject } from 'theme-ui';\n\nexport const overlay: Record<string, ThemeUICSSObject> = {\n overlay: {\n position: 'fixed',\n overflow: 'hidden',\n top: '0',\n right: '0',\n bottom: '0',\n left: '0',\n width: '100vw',\n height: '100vh',\n display: 'flex',\n justifyContent: 'center',\n padding: '1.5em 1.5em',\n alignItems: 'center',\n backgroundColor: `palette.background.overlay`,\n zIndex: 'modal',\n\n '&:not(.screenLock) .modal-enter-done': {\n boxShadow: 'modals',\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n/* IMPORT HERE */\n\nexport const apiaApi: ThemeUICSSObject = {\n margin: 'auto',\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n overflow: 'hidden',\n width: '100%',\n\n '.handler__form': {\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n gap: spacing(6),\n\n '.toggleAccordionElement': {\n position: 'sticky',\n top: 0,\n },\n\n '.handler__form__elements': {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n overflowY: 'auto',\n maxHeight: '60vh',\n gap: spacing(3),\n pr: spacing(3),\n },\n\n '.handler__form__elements__section__content': {\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n background: 'palette.background.paper',\n p: 0,\n gap: spacing(3),\n },\n\n '.content .handler__form__elements__section__content': {\n border: '1px solid',\n borderColor: 'palette.border.section',\n borderTop: 'none',\n p: spacing(6),\n },\n\n '.handler__form__buttons': {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n p: 0,\n gap: '0px',\n textAlign: 'center',\n },\n\n '.radio': {\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'wrap',\n listStyle: 'none',\n variant: 'layout.execution.form.fields.radio',\n },\n\n '.handler__checkbox, .handler__radio': {\n 'label span': {\n fontWeight: 'normal',\n },\n },\n\n '.checkbox': {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n justifyContent: 'start',\n gap: spacing(4),\n '.semicolon': {\n display: 'none',\n },\n input: {\n width: '100%',\n },\n },\n\n '.handler__hidden': {\n display: 'none',\n },\n\n 'label.select > div': {\n width: '100%',\n },\n\n '.spacer': {\n height: spacing(7),\n },\n },\n '.progressBox': {\n p: spacing(5),\n pt: spacing(0),\n },\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { overlay } from './overlay';\nimport { spacing, responsive } from '../../../../util';\nimport getColorsAndStatesByPath from '../../../colors/util/getColorsAndStatesByPath';\nimport getColorsByPath from '../../../colors/util/getColorsByPath';\nimport { apiaApi } from './apiaApi';\n/* IMPORT HERE */\n\nexport const modals: ThemeUICSSObject = {\n apiaApi,\n ...overlay,\n main: {\n zIndex: 'modal',\n display: 'flex',\n flexDirection: 'column',\n p: spacing(6),\n alignItems: 'center',\n justifyItems: 'center',\n maxHeight: '100vh',\n maxWidth: 'calc(100vw - 10px)',\n resize: 'both',\n overflow: 'auto',\n border: '1px solid',\n gap: spacing(5),\n\n '&>div': {\n overflow: 'hidden',\n flexGrow: 0,\n flexShrink: 0,\n p: '3px',\n width: '100%',\n },\n '&>div.modal__header': {\n alignItems: responsive({ 0: 'end', 4: 'center' }),\n flexShrink: 0,\n overflow: 'visible',\n\n '.modal__headerBar': {\n display: 'flex',\n flexDirection: 'row',\n gap: spacing(3),\n },\n },\n '&>div.modal__content, &>div.modal__content>form': {\n overflow: 'auto',\n width: '100%',\n flexBasis: '100%',\n flexShrink: 1,\n display: 'flex',\n justifyContent: 'stretch',\n alignItems: 'stretch',\n },\n ...getColorsByPath('modal'),\n },\n finder: {\n variant: 'layout.common.modals.main',\n height: responsive({ 0: '100vh', 3: '80vh' }),\n width: responsive({ 0: '95vw', 3: '80vw', 4: '70vw' }),\n\n '.modal__content': {\n p: spacing(2),\n overflow: 'hidden',\n\n '.confirm__content': {\n overflow: 'hidden',\n\n '.finder__content': {\n display: 'flex',\n alignItems: 'stretch',\n },\n\n '.selection__keyHandler': {\n overflow: 'hidden',\n height: '100%',\n\n '.responsiveTable__wrapper': {\n height: '100%',\n\n border: '1px solid',\n borderColor: 'palette.border.article',\n backgroundColor: 'palette.gray.900',\n },\n },\n },\n },\n },\n sm: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(350px, calc(100vw - 10px))',\n },\n md: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(500px, calc(100vw - 10px))',\n },\n 'md-fixed': {\n variant: 'layout.common.modals.main',\n width: 'min(500px, calc(100vw - 10px))',\n },\n lg: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(640px, calc(100vw - 10px))',\n },\n 'lg-fixed': {\n variant: 'layout.common.modals.main',\n maxWidth: '640px',\n height: '60vh',\n },\n xl: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(730px, calc(100vw - 10px))',\n },\n 'xl-fixed': {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '60vw' }),\n height: responsive({ 0: '95vh', 2: '80vh' }),\n },\n xxl: {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '80vw' }),\n maxHeight: responsive({ 0: '95vh', 2: '80vh' }),\n },\n xxxl: {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '95vw' }),\n maxHeight: responsive({ 0: '95vh', 2: '95vh' }),\n },\n 'xxxl-fixed': {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '95vw' }),\n height: responsive({ 0: '95vh', 2: '95vh' }),\n },\n flex: {\n variant: 'layout.common.modals.main',\n maxWidth: '95vw',\n maxHeight: '95vh',\n '.modal__content': {\n p: spacing(2),\n overflow: 'auto',\n },\n },\n cal: {\n variant: 'layout.common.modals.sm',\n width: '350px',\n\n '.react-calendar': {\n backgroundColor: 'palette.background.paper',\n\n button: {\n ...getColorsAndStatesByPath('form.fields'),\n\n '&.react-calendar__tile--active': {\n ...getColorsAndStatesByPath('buttons.primary'),\n },\n },\n },\n },\n editGrid: {\n variant: 'layout.common.modals.main',\n width: 'root',\n maxHeight: '90vh',\n },\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '@apia/theme';\n\nexport function getSelectionStyles() {\n return {\n 'td[data-focused=\"false\"], th[data-focused=\"false\"]': {\n '*:focus-visible, &:focus, &:focus-visible': {\n outline: 'none',\n },\n\n '*:focus': {\n ...focusOutline,\n },\n },\n '[data-focused=\"true\"]:not(.row__separator__cell)': {\n '&:not([data-editionmode=\"true\"])': {\n '&:focus, & > *:focus, *:focus-visible': {\n ...focusOutline,\n\n '&.cell__download__document': {\n outlineOffset: 0,\n },\n },\n },\n '&[data-editionmode=\"true\"]': {\n '&:focus, *:focus, *:focus-visible': {\n ...focusOutline,\n outlineStyle: 'dotted',\n outlineWidth: '6px',\n outlineOffset: '-4px',\n },\n },\n },\n '[data-focused=\"true\"].row__separator__cell': {\n backgroundColor: 'palette.secondary.main',\n outline: 'none',\n },\n } as ThemeUICSSObject;\n}\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive, spacing } from '../../../../util';\nimport { getSelectedColors } from '../../../colors';\nimport getColorsByPath from '../../../colors/util/getColorsByPath';\nimport { getSelectionStyles } from './getSelectionStyles';\n\nexport const primary: ThemeUICSSObject = {\n variant: 'colors.tables.primary',\n\n backgroundColor: 'palette.background.paper',\n borderCollapse: 'separate',\n borderSpacing: 0,\n tableLayout: 'fixed',\n\n thead: {\n ...getColorsByPath('tables.primary.thead'),\n zIndex: 1,\n position: 'sticky',\n insetBlockStart: 0,\n backgroundColor: 'palette.background.paper',\n\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\n 'th, td': {\n variant: 'buttons.primary',\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 3, 4: 4 }),\n width: 'breakWidth',\n backgroundColor: 'palette.primary.main',\n borderColor: 'palette.primary.dark',\n borderRadius: 0,\n borderStyle: 'solid',\n borderWidth: '1px',\n display: 'table-cell',\n verticalAlign: 'center',\n wordBreak: 'break-word',\n\n '&:last-of-type:not(td)': {\n maxWidth: '100%',\n width: '100%',\n },\n '.headButton__label': {\n textAlign: 'left',\n },\n '.headButton__resizer': {\n width: '20px',\n cursor: 'ew-resize',\n zIndex: 1000,\n position: 'absolute',\n right: '-10px',\n height: '100%',\n },\n '&:last-of-type .headButton__resizer': {\n right: '0px',\n },\n\n '&.additionalColumn': {\n minWidth: '50px',\n maxWidth: '50px',\n width: '50px',\n p: 0,\n textAlign: 'center',\n verticalAlign: 'center',\n },\n\n '.headButton__container': {\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 3,\n\n svg: {\n flexShrink: 0,\n },\n },\n\n '&>div': {\n color: 'palette.primary.contrastText',\n\n svg: {\n color: 'palette.text.primary',\n },\n },\n '&:not(:last-of-type)': {\n '&>div': {\n borderRightWidth: '1px',\n },\n },\n },\n 'th.requiredFilterColumn': {\n borderLeft: '4px solid !important',\n borderLeftColor: '#dc3545 !important', // TODO USAR PALETTE\n },\n },\n 'tr.filtersRow, tr.responsiveTable__filters__row': {\n backgroundColor: 'palette.background.paper',\n borderBottomWidth: '1px',\n borderBottomStyle: 'solid',\n borderBottomColor: 'palette.border.row',\n\n 'th.noFilter': {\n background: 'transparent',\n },\n\n td: {\n 'input:not([disabled]), select:not([disabled])': {\n border: '1px solid white',\n },\n background: 'transparent',\n border: '1px solid',\n borderColor: 'palette.gray.800',\n p: 0,\n },\n\n transition: 'height 0.3s',\n\n '&.hidden': {\n height: '0',\n overflow: 'hidden',\n p: spacing(0),\n border: 'none',\n\n '& *': {\n height: '0',\n overflow: 'hidden',\n fontSize: 0,\n lineHeight: 0,\n p: spacing(0),\n border: 'none',\n },\n },\n },\n },\n tbody: {\n tr: {\n borderBottomWidth: '1px',\n borderBottomStyle: 'solid',\n\n '&.non-selectable': {\n cursor: 'not-allowed',\n },\n\n '&.hidden': {\n display: 'none',\n },\n\n '&.locked': {\n background: 'palette.gray.900',\n },\n\n ...getSelectedColors(),\n\n '&.draggingRow': {\n outline: '3px dotted',\n outlineColor: 'palette.primary.main',\n outlineOffset: '-3px',\n\n '*': {\n outline: 'none !important',\n },\n },\n\n borderColor: 'palette.gray.800',\n\n '.rowStatesList': {\n display: 'flex',\n gap: spacing(3),\n alignItems: 'center',\n\n svg: {\n width: 'smallIcon',\n height: 'smallIcon',\n cursor: 'pointer',\n },\n },\n\n td: {\n verticalAlign: 'top',\n wordBreak: 'break-word',\n\n border: '1px solid',\n borderColor: 'palette.gray.900',\n\n '&.stickyColumn': {\n position: 'sticky',\n left: 0,\n backgroundColor: 'palette.background.paper',\n },\n\n '.moreInformationButton': {\n width: '30px',\n height: '30px',\n padding: '3px',\n border: 'none',\n background: 'transparent',\n },\n },\n },\n td: {\n p: spacing(3),\n },\n\n '.responsiveTable__additionalInfoContainer': {\n display: 'grid',\n gridTemplateColumns: responsive({\n 0: 'repeat(2, 1fr)',\n 5: 'repeat(4, 1fr)',\n }),\n columnGap: 3,\n rowGap: 2,\n },\n '.responsiveTable__additionalInfoContainer .responsiveTable__additionalInfoItem.separator':\n {\n gridColumnStart: '1',\n gridColumnEnd: '5',\n borderBottom: '1px solid',\n borderBottomColor: 'palette.gray.700',\n height: 'auto',\n },\n },\n '.row__separator__cell': {\n backgroundColor: 'palette.secondary.light',\n },\n '.pro_inst_warn_date': {\n backgroundColor: 'palette.warning.light',\n },\n '.pro_inst_overdue_date': {\n backgroundColor: 'palette.error.light',\n },\n '.pro_ele_inst_warn_date': {\n backgroundColor: 'palette.warning.light',\n },\n '.pro_ele_inst_overdue_date': {\n backgroundColor: 'palette.error.light',\n },\n '.pro_inst_warn_date__row': {},\n '.pro_inst_overdue_date__row': {},\n '.pro_ele_inst_warn_date__row': {},\n '.pro_ele_inst_overdue_date__row': {},\n '.priority': {\n textAlign: 'center',\n },\n\n '.editionMode': {\n border: '3px solid',\n borderColor: 'palette.primary.main',\n borderWidth: '1.5px',\n borderStyle: 'dotted',\n },\n\n '.stateCell': {\n width: '50px',\n maxWidth: '50px',\n minWidth: '50px',\n textAlign: 'center',\n verticalAlign: 'middle',\n },\n\n ...getSelectionStyles(),\n '.no__registers': {\n py: 6,\n },\n '.requiredFilter__Marker': {\n color: 'red',\n paddingX: '5px',\n },\n '.requiredFilter__Column': {\n fontWeight: 'bold',\n },\n\n '&.dataGrid__printTable': {\n m: 2,\n border: '1px solid',\n borderColor: 'palette.border.article',\n },\n\n '.bold': {\n fontWeight: 'bold',\n },\n\n '.light': {\n color: '#6a6a6a',\n },\n\n '.additionalInfo__cell, .stateCell': {\n verticalAlign: 'middle',\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const information: ThemeUICSSObject = {\n width: '100%',\n\n border: '1px solid',\n borderColor: 'primary',\n borderCollapse: 'collapse',\n\n thead: {\n tr: {\n th: {\n bg: 'primary',\n color: 'white',\n textAlign: 'center',\n fontWeight: 'bold',\n p: spacing(4),\n },\n },\n },\n\n tbody: {\n tr: {\n 'td,th': {\n borderColor: 'muted',\n p: spacing(4),\n },\n\n '&:not(tr:last-of-type)': {\n 'td,th': {\n borderBottom: '1px solid',\n },\n },\n\n 'td:not(td:last-child),th:not(th:last-child)': {\n borderRight: '1px solid',\n },\n\n th: {\n textAlign: 'left',\n whiteSpace: 'nowrap',\n minWidth: 'min-content',\n width: 0,\n },\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const accordion: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(2),\n\n '.responsiveTable__accordionElement__toggler': {\n variant: 'buttons.outline',\n borderWidth: '1px',\n display: 'flex',\n gap: spacing(3),\n alignItems: 'stretch',\n width: '100%',\n px: 4,\n py: 3,\n\n '&:hover h3': {\n color: 'palette.primary.contrastText',\n },\n\n '.accordionElement__toggler__checkbox': {\n flexShrink: 0,\n m: spacing(2),\n },\n\n '.accordionElement__toggler__button': {\n flexGrow: 100,\n display: 'flex',\n justifyContent: 'space-between',\n py: 2,\n pr: spacing(2),\n alignItems: 'center',\n\n '.accordionElement__toggler__label': {\n flexGrow: 100,\n m: spacing(0),\n textAlign: 'left',\n fontSize: 16,\n },\n\n '.accordionElement__toggler__expandIcon': {\n flexShrink: 0,\n svg: {\n width: '32px',\n },\n },\n },\n },\n\n '.responsiveTable__accordionElement__content': {\n '& > div': {\n backgroundColor: 'palette.background.paper',\n transition: 'padding-bottom 300ms, padding-top 300ms',\n px: 5,\n },\n\n '&.rah-static--height-zero': {\n '& > div': { py: 0 },\n },\n\n '&.rah-static--height-auto, &.rah-animating--down': {\n '& > div': { py: 5 },\n },\n '.pro_inst_warn_date': {\n color: 'priorityNormal',\n // backgroundColor: 'priorityNormal',\n },\n '.pro_inst_overdue_date': {\n color: 'priorityUrgent',\n // backgroundColor: 'priorityUrgent',\n },\n '.pro_ele_inst_warn_date': {\n color: 'priorityNormal',\n // backgroundColor: 'priorityNormal',\n },\n '.pro_ele_inst_overdue_date': {\n color: 'priorityUrgent',\n // backgroundColor: 'priorityUrgent',\n },\n '.pro_inst_warn_date__row': {\n // color: 'priorityNormal',\n // backgroundColor: 'priorityNormal',\n },\n '.pro_inst_overdue_date__row': {\n // color: 'priorityUrgent',\n backgroundColor: 'priorityUrgent',\n },\n '.pro_ele_inst_warn_date__row': {\n // color: 'priorityNormal',\n // backgroundColor: 'priorityNormal',\n },\n '.pro_ele_inst_overdue_date__row': {\n // color: 'priorityUrgent',\n // backgroundColor: 'priorityUrgent',\n },\n '.priority_container': { display: 'flex', alignItems: 'center' },\n '.priority': { display: 'flex' },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\n\nexport const print: ThemeUICSSObject = {\n border: '2px solid',\n borderColor: 'printView.list.table.borderColor',\n\n 'td, th': {\n p: 3,\n textAlign: 'left',\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport tinycolor from 'tinycolor2';\n/* IMPORT HERE */\n\nexport const responsive: ThemeUICSSObject = {\n maxHeight: '100%',\n overflow: 'auto',\n position: 'relative',\n\n table: {\n width: '100%',},\n\n '&.isLoading': {\n overflow: 'hidden',\n },\n\n '.responsiveTable__isLoading': {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: tinycolor(window.currentPalette.background.paper)\n .setAlpha(0.7)\n .toRgbString(),\n zIndex: 1,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n\n '.cell__download__document': {\n display: 'flex',\n gap: 3,\n alignItems: 'center',\n justifyContent: 'start',\n\n '&, *': {\n color: 'palette.primary.main',\n },\n\n svg: {\n flexShrink: 0,\n },\n },\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { primary } from './primary';\nimport { information } from './information';\nimport { accordion } from './accordion';\nimport { print } from './print';\nimport { responsive } from './responsive';\n\nexport const tables: ThemeUICSSObject = {\n accordion,\n information,\n primary,\n print,\n responsive,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n/* IMPORT HERE */\n\nexport const captcha: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(2),\n\n '.captcha__imageContainer': {\n border: '1px solid',\n borderColor: 'palette.border.field',\n p: spacing(4),\n },\n\n '.captcha__inputContainer': {\n display: 'flex',\n gap: spacing(2),\n justifyContent: 'stretch',\n\n input: {\n flexGrow: 1,\n width: '100%',\n },\n\n '.captcha__buttons': {\n width: '24px',\n flexDirection: 'column',\n display: 'flex',\n gap: spacing(2),\n flexShrink: 0,\n\n button: {\n width: '24px',\n height: '24px',\n p: '5px',\n variant: 'buttons.icon-outline',\n\n svg: {\n color: 'palette.text.primary',\n height: '16px',\n width: '16px',\n },\n },\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { captcha } from './captcha';\n/* IMPORT HERE */\n\nexport const forms: ThemeUICSSObject = {\n captcha,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline, spacing } from '../../../../util';\nimport getColorState from '../../../colors/util/getColorState';\n\nconst primary: ThemeUICSSObject = {\n /* PREPEND HERE */\n position: 'relative',\n '[role=\"tree\"]:focus': {\n outline: 'none',\n '.focus': focusOutline,\n },\n\n ul: {\n listStyle: 'none',\n p: 0,\n },\n\n '.tree__searchLabelBox': {\n alignItems: 'center',\n borderRadius: '2px',\n display: 'flex',\n float: 'right',\n gap: spacing(3),\n justifyContent: 'center',\n position: 'sticky',\n right: '4px',\n top: '4px',\n transform: 'translateX(0)',\n width: '100%',\n zIndex: 'stickyElements',\n\n '.tree__loading': {\n position: 'fixed',\n top: 0,\n right: '4px',\n height: 'iconmd',\n width: 'iconmd',\n background: 'palette.background.paper',\n },\n\n button: {\n cursor: 'pointer',\n },\n },\n\n '.tree__searchLabel': {\n alignItems: 'center',\n display: 'flex',\n gap: spacing(3),\n justifyContent: 'center',\n position: 'fixed',\n p: '2px 5px',\n right: 0,\n top: 0,\n\n ...getColorState(\n { backgroundColor: 'palette.background.paper' },\n 'selected',\n ),\n },\n\n '[role=\"treeitem\"]': {\n '&[aria-expanded=\"false\"] ul': {\n display: 'none',\n },\n\n '&[aria-selected=\"true\"] > .tree__nodeItemLabel': getColorState(\n { backgroundColor: 'palette.background.paper' },\n 'selected',\n ),\n\n background: 'transparent',\n },\n\n '.tree__nodeItemLabel': {\n display: 'flex',\n flexWrap: 'nowrap',\n gap: 3,\n alignItems: 'center',\n\n '& > *:not(.tree__nodeItemLabelRenderer)': {\n flexShrink: 0,\n textAlign: 'left',\n },\n\n '&:hover': getColorState(\n { backgroundColor: 'palette.background.paper' },\n 'hover',\n ),\n },\n\n '.spacer': {\n borderLeft: '1px solid',\n borderLeftColor: 'palette.border.section',\n width: '20px',\n alignSelf: 'stretch',\n },\n};\n\nexport default primary;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport primary from './primary';\n\nexport const trees: ThemeUICSSObject = {\n primary,\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { modals } from './modals';\nimport { tables } from './tables';\nimport { forms } from './forms';\nimport { trees } from './trees';\n/* IMPORT HERE */\nexport const common: ThemeUICSSObject = {\n forms,\n modals,\n tables,\n trees,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { common } from './common';\n/* IMPORT HERE */\n\nexport const layout: Record<string, ThemeUICSSObject> = {\n common,\n /* PREPEND HERE */\n};\n","import { ThemeUIStyleObject } from 'theme-ui';\n\nexport const transitions: ThemeUIStyleObject = {\n '@keyframes growHorizontal': {\n from: { transform: 'scaleX(0)' },\n to: { transform: 'scaleY(100%)' },\n },\n '.mainMenu__animate': {\n transition: 'transform 150ms, opacity 150ms',\n transform: 'translateX(-1000px)',\n opacity: 0,\n },\n '.mainMenu-enter,\\n.mainMenu-appear': {\n transform: 'translateX(-1000px)',\n opacity: 0,\n },\n '.mainMenu-enter-active,\\n.mainMenu-appear-active': {\n transform: 'translateX(0)',\n opacity: 1,\n },\n '.mainMenu-enter-done,\\n.mainMenu-appear-done': {\n transform: 'translateX(0)',\n opacity: 1,\n },\n '.mainMenu-exit': { opacity: 0 },\n '.mainMenu-exit-done': { transform: 'translateX(-1000px)', opacity: 0 },\n '.mainMenu-exit-active': { transform: 'translateX(-1000px)', opacity: 1 },\n '.hamburguerMenu': { display: 'none' },\n '.hamburguerMenu-enter,\\n.hamburguerMenu-appear': {\n display: 'block',\n transform: 'scale(0.7)',\n opacity: 0,\n },\n '.hamburguerMenu-enter-active,\\n.hamburguerMenu-appear-active': {\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transformOrigin: 'right top',\n opacity: 1,\n },\n '.hamburguerMenu-enter-done,\\n.hamburguerMenu-appear-done': {\n display: 'block',\n },\n '.hamburguerMenu-exit': {\n display: 'block',\n transform: 'scale(1)',\n opacity: 1,\n },\n '.hamburguerMenu-exit-active': {\n transform: 'scale(0.7) translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n display: 'block',\n opacity: 0,\n transformOrigin: 'right top',\n },\n '.hamburguerMenu-exit-done': { display: 'none' },\n '.modal-enter,\\n.modal-appear': { opacity: 0, transform: 'scale(0.8)' },\n '.modal-enter-active,\\n.modal-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.modal-exit': { opacity: 0 },\n '.modal-exit-done': { opacity: 0, display: 'none' },\n '.modal-exit-active': {\n opacity: 0,\n transform: 'scale(100)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.overlayAnimation-enter .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear .overlayAnimation:not(.not-released)':\n {\n opacity: 0,\n },\n '.overlayAnimation-enter-active .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear-active .overlayAnimation:not(.not-released)':\n {\n opacity: 1,\n transition: 'opacity 150ms',\n },\n '.overlayAnimation-exit': { opacity: 1 },\n '.overlayAnimation-exit-active': { opacity: 0, transition: 'opacity 150ms' },\n '.fromRight-enter,\\n.fromRight-appear': { transform: 'translateX(550px)' },\n '.fromRight-enter-active,\\n.fromRight-appear-active': {\n transition: 'transform 150ms',\n transform: 'translateX(0)',\n },\n '.fromRight-exit': { transform: 'translateX(0)' },\n '.fromRight-exit-active': {\n transition: 'transform 150ms',\n transform: 'translateX(550px)',\n },\n '.notification-enter,\\n.notification-appear': {\n opacity: 0,\n transform: 'scale(0.8)',\n },\n '.notification-enter-active,\\n.notification-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.notification-exit': { opacity: 1 },\n '.notification-exit-active': {\n opacity: 0,\n transform: 'scale(0.8)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.schedulerStage-enter,\\n.schedulerStage-appear': {\n opacity: 0,\n transform: 'scale(0.8)',\n },\n '.schedulerStage-enter-active,\\n.schedulerStage-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.schedulerStage-exit': { opacity: 1 },\n '.schedulerStage-exit-active': {\n opacity: 0,\n transform: 'scale(0.8)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n};\n","import { ThemeUIStyleObject } from 'theme-ui';\nimport { focusOutline, responsive } from '../../util';\nimport { transitions } from './transitions';\nimport { getPalette } from '../colors';\n\nexport const root: ThemeUIStyleObject = {\n '*': {\n fontFamily: 'body',\n fontWeight: 'body',\n fontSize: '100%',\n code: {\n fontFamily: 'monospace',\n },\n\n '&:focus': focusOutline,\n },\n\n body: {\n minHeight: '100vh',\n },\n h1: {\n fontSize: responsive({ 0: 26, 3: 32 }),\n },\n h2: {\n fontSize: responsive({ 0: 22, 3: 28 }),\n },\n h3: {\n fontSize: responsive({ 0: 19, 3: 25 }),\n },\n h4: {\n fontSize: responsive({ 0: 18, 3: 22 }),\n },\n h5: {\n fontSize: responsive({ 0: 18, 3: 22 }),\n },\n h6: {\n fontSize: responsive({ 0: 17, 3: 17 }),\n },\n\n 'h1,h2,h3,h4,h5,h6': {\n letterSpacing: 'heading',\n lineHeight: 'heading',\n variant: 'text.title',\n },\n '*:not(h1, h2, h3, h4, h5, h6, code)': {\n fontFamily: 'body',\n fontSize: 16,\n fontWeight: 'body',\n letterSpacing: 'body',\n lineHeight: 'body',\n },\n\n '.section': {\n border: '2px solid green',\n '&.apia_section_row': {\n display: 'flex',\n flexDirection: 'row',\n },\n '.panel': {\n width: 'fit-content',\n height: '100%',\n },\n },\n\n '.top': {\n display: 'flex',\n },\n '.bottom': {\n display: 'block',\n width: '100%',\n },\n '.planelContainer': {\n overflowAnchor: 'none',\n },\n\n '.minimap': {\n background: '#00000015',\n border: '1px solid #00000025',\n position: 'fixed',\n bottom: '10px',\n right: '10px',\n '& > *': {\n background: '#00000015',\n position: 'absolute',\n },\n\n '.dragging': {\n background: '#55000015',\n },\n\n '.windowFrame': {\n background: '#00005515',\n border: '1px solid #00005525',\n position: 'absolute',\n zIndex: 1,\n },\n },\n\n 'abbr.required': {\n color: 'danger',\n textDecoration: 'none',\n },\n\n '[aria-selected=\"true\"], .selected': {\n ...getPalette().getOneState(\n { backgroundColor: getPalette().primary.main },\n 'selected',\n ),\n },\n\n ...transitions,\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../util';\n\nconst text: Record<string, ThemeUICSSObject> = {\n default: {\n color: 'palette.text.primary',\n fontFamily: 'body',\n fontWeight: 'body',\n fontSize: 16,\n m: spacing(0),\n width: '100%',\n },\n title: {\n letterSpacing: 'heading',\n wordBreak: 'normal',\n color: 'title',\n fontFamily: 'heading',\n lineHeight: 'heading',\n fontWeight: 'heading',\n },\n};\n\nexport default text;\n","import { ColorModesScale, Theme } from 'theme-ui';\nimport { getThemeColorsObject } from './colors';\nimport { alerts } from './alerts';\nimport buttons from './buttons';\nimport forms from './forms';\nimport { layout } from './layout';\nimport { root } from './rootStyles/rootStyles';\nimport text from './text';\n\nexport const baseTheme: Theme = {\n alerts,\n breakpoints: ['0px', '250px', '500px', '700px', '1000px', '1260px', '1580px'],\n buttons,\n colors: getThemeColorsObject() as unknown as ColorModesScale,\n fonts: {\n body: 'Arial',\n heading: 'inherit',\n monospace: 'Menlo, monospace',\n },\n fontSizes: Array(60)\n .fill(1)\n .map((_, i) => {\n return i;\n }),\n forms: forms(),\n layout,\n lineHeights: {\n body: 1.5,\n heading: 1.125,\n },\n letterSpacings: {\n body: '0.01em',\n heading: '-0.015em',\n },\n radii: {\n alerts: 0,\n buttons: 0,\n default: 0,\n },\n shadows: {\n modals: '',\n tabs: '',\n },\n space: [0, 2, 4, 8, 12, 16, 24, 32, 40, 48, 64, 80, 96, 112, 128],\n sizes: {\n // Layout\n applicationMenu: '350px',\n floatingNotifications: 'min(550px, calc(100vw - 30px))',\n root: '992px',\n mainImage: '64px',\n twoColumns: 'calc(992px + 350px)',\n twoColumnsCentered: 'calc(992px + 350px + 16px)',\n\n // Icons\n iconxs: '12px',\n iconsm: '16px',\n iconmd: '22px',\n iconlg: '32px',\n iconxl: '48px',\n },\n styles: {\n root,\n },\n text,\n zIndices: {\n stickyElements: 600,\n menu: 1000,\n maximizedTables: 1100,\n modal: 1200,\n tooltip: 1400,\n notifications: 1600,\n contextMenu: 1800,\n },\n useRootStyles: true,\n};\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { merge } from 'lodash';\nimport { EventEmitter, setValueByPath } from '@apia/util';\nimport { baseTheme } from '../base/baseTheme';\n\nconst makeTheme = <T extends Theme>(t: T) => {\n return t;\n};\n\nlet declaredStyles: ThemeUICSSObject = {};\n\nexport const mainThemeEmitter =\n new (class MainThemeEmitter extends EventEmitter<{\n newStyles: {\n path: string;\n styles: ThemeUICSSObject;\n };\n }> {})();\n\nexport function declareStyles(\n path: string,\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\n) {\n const newStyles = {};\n setValueByPath(newStyles, path, styles);\n declaredStyles = merge(declaredStyles, newStyles);\n}\n\nexport function getMainTheme(customTheme?: Theme) {\n return makeTheme(\n merge(baseTheme, { layout: declaredStyles }, customTheme ?? {}),\n );\n}\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { merge } from 'lodash';\nimport { EventEmitter, setValueByPath, useMount } from '@apia/util';\nimport { useState } from 'react';\nimport { getMainTheme } from './getMainTheme';\n\nlet declaredStyles: ThemeUICSSObject = {};\n\nconst injectedStyles: Record<string, ThemeUICSSObject> = {};\n\nexport const mainThemeEmitter =\n new (class MainThemeEmitter extends EventEmitter<{\n newStyles: {\n path: string;\n styles: ThemeUICSSObject;\n };\n }> {})();\n\nfunction handleNewStyles(ev: { path: string; styles: ThemeUICSSObject }) {\n injectedStyles[ev.path] = ev.styles;\n}\n\nmainThemeEmitter.on('newStyles', handleNewStyles);\n\nexport function declareStyles(\n path: string,\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\n) {\n const newStyles = {};\n setValueByPath(newStyles, path, styles);\n declaredStyles = merge(declaredStyles, newStyles);\n}\n\nexport function useMainTheme(customTheme?: Theme) {\n const [theme, setTheme] = useState<Theme>(getMainTheme(customTheme));\n\n useMount(() => {\n setTheme((current) => {\n mainThemeEmitter.off('newStyles', handleNewStyles);\n let initialTheme = { ...current };\n Object.entries(injectedStyles).forEach(([path, styles]) => {\n const newStyles = setValueByPath({}, path, styles);\n initialTheme = merge(initialTheme, newStyles);\n });\n return initialTheme;\n });\n return mainThemeEmitter.on('newStyles', (ev) => {\n const newStyles = setValueByPath({}, ev.path, ev.styles);\n setTheme((current) => merge({ ...current }, newStyles));\n });\n });\n\n return theme;\n}\n","import { Theme, ThemeProvider as TUIThemeProvider } from 'theme-ui';\nimport { createContext, ReactNode } from 'react';\nimport { useMainTheme } from './methods/useMainTheme';\n\ninterface TThemeProvider {\n children: ReactNode;\n customTheme?: Theme;\n}\n\nlet timeout = -1;\nfunction logTheme(theme: unknown) {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n console.info({ theme });\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, 100) as any;\n}\n\nexport const ThemeProviderContext = createContext<Theme>({} as Theme);\n\nexport const ThemeProvider = ({ children, customTheme }: TThemeProvider) => {\n const theme: Theme = useMainTheme(customTheme);\n\n logTheme(theme);\n\n return (\n <ThemeProviderContext.Provider value={theme}>\n <TUIThemeProvider theme={theme}>{children}</TUIThemeProvider>\n </ThemeProviderContext.Provider>\n );\n};\n","import { merge } from 'lodash';\nimport { TGetColorStateDefinition } from '../types';\nimport buildColorsObject from './buildColorsObject';\n\n/**\n * Esta función arma un objeto con los colores que se deben aplicar para\n * garantizar que el resultado sea el esperado, por ejemplo, al aplicar un\n * color a un border. Esto es así ya que en ThemeUI hay situaciones en las que\n * si no se aplican el color de borde a cada uno de los lados, no se aplica el\n * color deseado.\n *\n * Ejemplo de lo antedicho es:\n *\n * borderRight: '1px solid',\n * borderColor: 'red'.\n *\n * En este caso, el borde derecho no será rojo como se espera, ya que la\n * propiedad borderRight aplicará un borderRightColor: 'initial', que solamente\n * puede ser reescrito por borderRightColor: 'red'.\n */\nexport default function getColorsByDefinition(\n definition: Partial<TGetColorStateDefinition>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: { mergeObject?: Record<string, any> },\n) {\n return merge(\n buildColorsObject({\n ...(definition.color ? { color: definition.color } : null),\n ...(definition.backgroundColor\n ? { backgroundColor: definition.backgroundColor }\n : null),\n ...(definition.borderColor\n ? {\n borderColor: definition.borderColor,\n }\n : null),\n }),\n options?.mergeObject,\n );\n}\n","import { merge } from 'lodash';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { TGetColorStateDefinition } from '../types';\nimport buildStateObject from './buildStateObject';\nimport { TGetColorsAndStatesOptions } from './getColorsAndStatesByPath';\nimport getColorsByDefinition from './getColorsByDefinition';\nimport getColorState from './getColorState';\n\n/**\n * Esta función calcula los colores de los estados a partir de la definición\n * pasada.\n */\nexport default function getColorsAndStatesByDefinition(\n definition: Partial<TGetColorStateDefinition>,\n options?: TGetColorsAndStatesOptions,\n) {\n const active = getColorState(definition, 'active');\n const checked = getColorState(definition, 'checked');\n const disabled = getColorState(definition, 'disabled');\n const focus = options?.states?.focus\n ? getColorState(definition, 'focus')\n : {};\n const hover = getColorState(definition, 'hover');\n const readonly = getColorState(definition, 'readonly');\n const selected = getColorState(definition, 'selected');\n\n return merge(\n options?.states?.default !== false\n ? getColorsByDefinition(definition)\n : null,\n options?.states?.checked !== false\n ? buildStateObject(checked, 'checked')\n : {},\n options?.states?.focus !== false ? buildStateObject(focus, 'focus') : {},\n options?.states?.hover !== false ? buildStateObject(hover, 'hover') : {},\n options?.states?.active !== false ? buildStateObject(active, 'active') : {},\n options?.states?.selected !== false\n ? buildStateObject(selected, 'selected')\n : {},\n options?.states?.disabled !== false\n ? buildStateObject(disabled, 'disabled')\n : {},\n options?.states?.readonly !== false\n ? buildStateObject(readonly, 'readonly')\n : {},\n options?.mergeObject,\n ) as ThemeUICSSObject;\n}\n","import { Theme, ThemeProvider as TUIThemeProvider } from 'theme-ui';\nimport { ReactNode } from 'react';\nimport { getMainTheme } from './getMainTheme';\n\ninterface TThemeProvider {\n children: ReactNode;\n customTheme?: Theme;\n}\n\nexport const CustomThemeProvider = ({\n children,\n customTheme,\n}: TThemeProvider) => {\n const theme: Theme = getMainTheme(customTheme);\n\n return <TUIThemeProvider theme={theme}>{children}</TUIThemeProvider>;\n};\n","import { setValueByPath } from '@apia/util';\nimport { FC, MutableRefObject, ReactNode, Suspense, useRef } from 'react';\nimport { Theme, ThemeUICSSObject, Box } from 'theme-ui';\nimport { getVariant } from '../util';\nimport { CustomThemeProvider } from './CustomThemeProvider';\n\n/**\n * Permite crear un componente cuyos estilos pueden ser redefinidos por un\n * usuario final.\n *\n * Esto es así puesto que los estilos definidos serán agregados a un árbol que\n * el usuario puede consultar y sobreescribir. De esta manera los estilos\n * finales del componente serán aquellos definidos en este método pero\n * sobreescritos por los definidos por el usuario si es que existen.\n *\n * **Importante** Para aplicar la variante, se aplica un box alrededor del\n * componente que se está renderizando, con className=\"variant__holder\". En caso\n * de que se quisiera evitar este comportamiento, se debe pasar unwraped = true\n *\n * @param displayName Este parámetro es importante para el debugger de React.\n * @param stylesPath La ruta donde se aplicarán los estilos, es importante asegurarse de que esa ruta ya no está siendo utilizada por otro componente.\n * @param styles Un objeto de estilos de ThemeUI\n * @param Component La definición del componente.\n * @returns Un componente reutilizable y exportable que tiene estilos aplicados.\n */\nexport function makeStyledComponent<T extends object>(\n displayName: string,\n stylesPath: string,\n styles: ThemeUICSSObject,\n Component: FC<T>,\n unwraped = false,\n) {\n const theme = setValueByPath({}, stylesPath, styles) as Theme;\n\n return Object.assign(\n (props: T) => {\n const avoidFirstRender = useRef(0);\n\n if (unwraped) {\n return (\n <CustomThemeProvider customTheme={theme}>\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\n <Suspense>\n <Component {...props} />\n </Suspense>\n </NoThemePrevent>\n </CustomThemeProvider>\n );\n }\n return (\n <CustomThemeProvider customTheme={theme}>\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\n <Box className=\"variant__holder\" {...getVariant(stylesPath)}>\n <Suspense>\n <Component {...props} />\n </Suspense>\n </Box>\n </NoThemePrevent>\n </CustomThemeProvider>\n );\n },\n { displayName },\n );\n}\n\nconst NoThemePrevent = ({\n avoidFirstRender,\n children,\n}: {\n avoidFirstRender: MutableRefObject<number>;\n children: ReactNode;\n}) => {\n // eslint-disable-next-line no-param-reassign\n avoidFirstRender.current++;\n\n if (avoidFirstRender.current <= 1) return null;\n\n return <>{children}</>;\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { mainThemeEmitter } from './useMainTheme';\n\n/**\n * Esta función permite agregar estilos al tema principal de la aplicación, de\n * modo que estén disponibles para cualquier componente que lo requirea.\n *\n * @example\n *\n * injectStyles('buttons.myRedButton', {\n * variant: 'buttons.primary',\n * backgroundColor: 'red',\n * })\n */\nexport function injectStyles(path: string, styles: ThemeUICSSObject): void;\n\n/**\n * Esta función permite agregar estilos al tema principal de la aplicación, de\n * modo que estén disponibles para cualquier componente que lo requirea.\n *\n * @example\n *\n * injectStyles({\n * layout: {\n * panels: {\n * myPanel: {\n * ...\n * }\n * }\n * }\n * })\n */\nexport function injectStyles(styles: ThemeUICSSObject): void;\n\nexport function injectStyles(\n par1: string | ThemeUICSSObject,\n par2?: ThemeUICSSObject,\n) {\n const path = typeof par1 === 'string' ? par1 : '';\n const styles = typeof par1 === 'string' ? (par2 as ThemeUICSSObject) : par1;\n\n mainThemeEmitter.emit('newStyles', { path, styles });\n}\n"],"names":["responsive","__spreadValues","_a","_b","_c","__spreadProps","forms","focusOutline","primary","TUIThemeProvider"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/util.ts","../src/base/colors/defaultPalette.ts","../src/base/colors/util/buildColorsObject.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/util.ts","../src/base/colors/util/buildStateObject.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/parsePalette.ts","../src/base/colors/schemas.ts","../src/base/colors/components.ts","../src/base/colors/index.ts","../src/base/alerts.ts","../src/base/buttons.ts","../src/base/forms/customCheckbox.ts","../src/base/forms/checkbox.ts","../src/base/forms/dateInput.ts","../src/base/forms/iconInput.ts","../src/base/forms/input.ts","../src/base/forms/label.ts","../src/base/forms/radio.ts","../src/base/forms/select.ts","../src/base/forms/selectMultiple.ts","../src/base/forms/switch.ts","../src/base/forms/textarea.ts","../src/base/forms/deletableInput.ts","../src/base/forms/index.ts","../src/base/layout/common/modals/overlay.ts","../src/base/layout/common/modals/apiaApi.ts","../src/base/layout/common/modals/index.ts","../src/base/layout/common/tables/getSelectionStyles.ts","../src/base/colors/util/getColorsByDefinition.ts","../src/base/colors/util/getColorsAndStatesByDefinition.ts","../src/methods/CustomThemeProvider.tsx","../src/methods/makeStyledComponent.tsx","../src/methods/injectStyles.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/index.ts","../src/base/layout/common/forms/captcha.ts","../src/base/layout/common/forms/index.ts","../src/base/layout/common/trees/primary.ts","../src/base/layout/common/trees/index.ts","../src/base/layout/common/index.ts","../src/base/rootStyles/transitions.ts","../src/base/rootStyles/rootStyles.ts","../src/base/layout/index.ts","../src/base/text.ts","../src/base/baseTheme.ts","../src/methods/getMainTheme.ts","../src/methods/useMainTheme.ts","../src/ThemeProvider.tsx"],"sourcesContent":["import { ResponsiveStyleValue, ThemeUICSSObject } from 'theme-ui';\nimport defaultPalette from './base/colors/defaultPalette';\n\n/**\n * Esta función devuelve un array de valores para los distintos breakpoints.\n *\n * **Importante** Debido a un issue con ThemeUI, es necesario agregar un\n * breakpoint inicial de 0px para las vistas de impresión. El comportamiento por\n * defecto será, si se pasa un valor para el índice 4, esta será tomada como\n * vista de impresión, sino se tomará el valor de mayor índice menor que 4.\n *\n * @example\n *\n * display: responsive({0: 'none', 3: 'block'}) // display: ['block', 'none', null, null, 'block'];\n */\n\nexport function responsive<T>(values: {\n print?: T;\n [key: number]: undefined | T;\n}): ResponsiveStyleValue<T> {\n const returnArray = [];\n const max = 6;\n for (let i = 0; i <= max; i++) returnArray[i + 1] = values[i] ?? null;\n\n if (values.print) returnArray[0] = values.print;\n else {\n for (let i = 5; i >= 0; i--) {\n if (values[i] !== undefined) returnArray[0] = values[i];\n }\n }\n\n return returnArray;\n}\n\n/**\n * Este método permite aplicar espacios (gaps, márgenes y paddings) que se\n * tendrán un comportamiento responsivo por defecto. Esto es, cuando tenemos un\n * padding en una vista de escritorio, probablemente sea demasiado grande al\n * llevarlo a celular. Con esta función se elimina el problema de calcular para\n * cada elemento en forma individual y el problema se convierte en encontrar\n * una única fórmula que quede correcta para todos los breakpoints.\n *\n * @example\n *\n * '.wellPaddedElement': {\n * p: spacing(6),\n * pt: spacing(8)\n * }\n */\nexport function spacing(index: number): ResponsiveStyleValue<number> {\n return defaultPalette.spacing(index) ?? index;\n}\n\nexport const smallButton = {\n py: 2,\n px: 4,\n fontSize: '0.9em',\n};\n\nexport const focusOutline: ThemeUICSSObject = {\n outlineColor: 'outlineColor',\n outlineWidth: '3px',\n outlineStyle: 'solid',\n outlineOffset: '-3px',\n};\n\nexport function getVariant(variant: string) {\n return { variant, 'data-variant': variant };\n}\n","import { responsive } from '../../util';\nimport { TPalette } from './types';\n\nconst actions = { dark: '#cce5ff', light: '#557' };\nconst spacingArray = Array(50)\n .fill(1)\n .map((_, i) => {\n return responsive<number>({\n 0: Math.ceil(i / 2.5),\n 1: Math.ceil(i / 2.1),\n 2: Math.ceil(i / 1.7),\n 3: Math.ceil(i / 1.3),\n 4: i,\n });\n });\n\nconst defaultPalette: TPalette = {\n action: {\n disabled: '#d9d9d9',\n disabledOpacity: 1,\n active: actions,\n activeOpacity: 0.45,\n focus: actions,\n focusOpacity: 0.05,\n hover: actions,\n hoverOpacity: 0.1,\n readonly: actions,\n readonlyOpacity: 0.4,\n selected: 'rgb(204 214 222)',\n selectedOpacity: 1,\n },\n background: {\n default: '#f4f4f4',\n overlay: 'rgba(0, 0, 0, 0.2)',\n paper: 'white',\n },\n border: {\n article: '#cacaca',\n field: '#444',\n section: '#aaa',\n },\n common: {\n black: 'black',\n white: 'white',\n },\n info: {\n main: '#fff',\n },\n primary: {\n main: '#00496c',\n },\n secondary: {\n main: '#6c757d',\n },\n spacing: (index: number) => {\n return spacingArray[index];\n },\n text: {\n accent: '#609',\n disabled: '#555',\n icon: 'white',\n link: '#00496c',\n primary: '#4a4a4a',\n secondary: 'white',\n title: '#00496c',\n },\n error: {\n main: '#db7678',\n light: '#fff2f4',\n },\n success: {\n main: '#8bde8b',\n light: '#e7ffd9',\n },\n warning: {\n main: '#f8f588',\n light: '#fffdd9',\n },\n darkenRatio: 15,\n lightenRatio: 35,\n responsive,\n queryColumnsMultiplier: 2,\n};\nexport default defaultPalette;\n","import { TGetColorStateDefinition } from '../types';\n\n/**\n * Básicamente agrega la definición de borderLeftColor, borderRightColor, etc.\n */\nfunction buildColorsObject(definition: Partial<TGetColorStateDefinition>) {\n return {\n ...definition,\n ...(definition.borderColor\n ? {\n borderLeftColor: definition.borderColor,\n borderRightColor: definition.borderColor,\n borderBottomColor: definition.borderColor,\n borderTopColor: definition.borderColor,\n }\n : undefined),\n } as TGetColorStateDefinition;\n}\n\nexport default buildColorsObject;\n","import tinycolor from 'tinycolor2';\nimport { getPalette } from '../index';\nimport { TStateRetriever, TActionDefinition } from '../types';\nimport buildColorsObject from './buildColorsObject';\nimport { getValueByPath } from '@apia/util';\n\n/**\n * Este método acepta un objeto con backgroundColor y borderColor y aplica el\n * estado pasado como segundo parámetro de la siguiente manera:\n *\n * Si se pasa backgroundColor, se devuelve un backgroundColor y un color, que\n * corresponden al backgroundColor con el estado aplicado y un color calculado\n * con la función getContrastText.\n *\n * Si se pasa borderColor, se devuelve un nuevo borderColor calculado con el\n * estado aplicado.\n */\nconst getColorState: TStateRetriever = (definition, state) => {\n if (state === 'default') return buildColorsObject(definition);\n\n const palette = getPalette();\n const opacity: number = palette.action[\n `${state}Opacity` as keyof TActionDefinition\n ] as number;\n\n const actualState = state === 'checked' ? 'selected' : state;\n\n // eslint-disable-next-line no-param-reassign\n definition = Object.fromEntries(\n Object.entries(definition).map(([name, value]) => {\n if (\n [\n 'backgroundColor',\n 'borderColor',\n 'borderLeftColor',\n 'borderRightColor',\n 'borderBottomColor',\n 'borderTopColor',\n 'color',\n ].includes(name) &&\n ((value ?? '') as string).startsWith('palette')\n )\n // eslint-disable-next-line no-param-reassign\n value = getValueByPath(\n palette,\n (value as string).slice('palette.'.length),\n ) as string;\n\n return [name, value];\n }),\n );\n\n const calculatedBackgroundColor = tinycolor\n .mix(\n (definition.backgroundColor ?? '') as string,\n tinycolor((definition.backgroundColor ?? '') as string).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n 100 * opacity,\n )\n .toRgbString();\n\n return buildColorsObject({\n ...(definition.backgroundColor\n ? {\n backgroundColor:\n state === 'checked'\n ? definition.backgroundColor ?? ''\n : calculatedBackgroundColor,\n color:\n state === 'checked'\n ? tinycolor\n .mix(\n tinycolor((definition.color ?? 'black') as string),\n tinycolor(palette.action.selected.dark),\n 100 * palette.action.selectedOpacity,\n )\n .toRgbString()\n : window.currentPalette.getContrastText(\n calculatedBackgroundColor,\n ),\n }\n : null),\n ...(definition.borderColor\n ? {\n borderColor: tinycolor\n .mix(\n definition.borderColor as string,\n tinycolor(definition.borderColor as string).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n 100 * opacity,\n )\n .toRgbString(),\n }\n : null),\n });\n};\nexport default getColorState;\n","import { cloneDeep } from 'lodash';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { TStatesRetriever } from '../types';\nimport getColorState from './getColorState';\n\n/**\n * Este método está pensado para usarse únicamente dentro de applyStates, si se\n * desea obtener un objeto con las propiedades correspondientes a un estado,\n * utilizar el método getColorStates.\n */\nconst applyStatesGetColor: TStatesRetriever = (definition, states) => {\n const newStates: ThemeUICSSObject =\n states?.default !== false\n ? cloneDeep(definition)\n : ({} as ThemeUICSSObject);\n if (states?.active !== false) {\n newStates.active = getColorState(definition, 'active');\n }\n if (states?.disabled !== false) {\n newStates.disabled = getColorState(definition, 'disabled');\n }\n if (states?.focus !== false) {\n newStates.focus = getColorState(definition, 'focus');\n }\n if (states?.hover !== false) {\n newStates.hover = getColorState(definition, 'hover');\n }\n if (states?.readonly !== false) {\n newStates.readonly = getColorState(definition, 'readonly');\n }\n if (states?.selected !== false) {\n newStates.selected = getColorState(definition, 'selected');\n }\n if (states?.checked !== false) {\n newStates.checked = getColorState(definition, 'checked');\n }\n return newStates;\n};\n\nexport default applyStatesGetColor;\n","import { merge } from 'lodash';\nimport { TColorDefinition, TStates } from '../types';\nimport applyStatesGetColor from './applyStatesGetColor';\n\n/**\n * Esta función está pensada para ser utilizada dentro del objeto colors del\n * tema. Aplica recursivamente los distintos estados a todos los elementos\n * contenidos dentro de los objetos pasados como parámetro en properties.\n *\n * Es posible elegir cuáles estados se aplican y cuáles no mediante el segundo\n * parámetro, que es un objeto cuyas propiedades serán tomadas en cuenta\n * únicamente cuando tienen valor false, en cuyo caso no se aplicará el estado\n * correspondiente.\n *\n * @param properties\n * @param states\n */\nexport default function applyStates(\n properties: Record<\n string,\n TColorDefinition | string | Record<string, unknown>\n >[],\n states?: TStates,\n) {\n properties.forEach((def) => {\n Object.entries(def).forEach(([key, value]) => {\n if (typeof value === 'string') return;\n const definition = value as TColorDefinition;\n if (!definition.active) definition.active = {};\n if (!definition.checked) definition.checked = {};\n if (!definition.focus) definition.focus = {};\n if (!definition.disabled) definition.disabled = {};\n if (!definition.hover) definition.hover = {};\n if (!definition.selected) definition.selected = {};\n\n const newDefinition = applyStatesGetColor(definition, states);\n // eslint-disable-next-line no-param-reassign\n def[key] = merge(newDefinition, definition);\n });\n });\n}\n","import { ResponsiveStyleValue, ThemeUICSSObject } from 'theme-ui';\nimport { responsive } from '../../util';\nimport getColorsAndStatesByPath from './util/getColorsAndStatesByPath';\n\n/* eslint-disable @typescript-eslint/naming-convention */\nexport function isColorDefinition(\n value:\n | IColorDefinition\n | TColorModifier\n | Record<string, unknown>\n | string\n | number\n | TActionDefinition\n | TStatesRetriever\n | ((index: number) => ResponsiveStyleValue<number>)\n | typeof responsive,\n): value is IColorDefinition {\n return !!value && typeof value === 'object' && 'main' in value;\n}\n\nexport interface IColorDefinition {\n main: string;\n light?: string;\n dark?: string;\n contrastText?: string;\n}\n\nexport interface IActionOpacity {\n light: string;\n dark: string;\n}\n\nexport interface TStates {\n active?: boolean;\n checked?: boolean;\n default?: boolean;\n disabled?: boolean;\n focus?: boolean;\n hover?: boolean;\n readonly?: boolean;\n selected?: boolean;\n}\n\nexport type TGetColorStateDefinition = Pick<\n ThemeUICSSObject,\n | 'backgroundColor'\n | 'borderColor'\n | 'borderLeftColor'\n | 'borderRightColor'\n | 'borderBottomColor'\n | 'borderTopColor'\n | 'color'\n>;\n\nexport type TColorStateRetriever = (\n color: string,\n state: keyof TStates,\n) => string;\n\nexport type TStateRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n state: keyof TStates,\n) => TGetColorStateDefinition;\n\nexport type TStatesRetriever = (\n definition: Partial<TGetColorStateDefinition>,\n states?: TStates,\n) => ThemeUICSSObject;\n\nexport interface TActionDefinition<\n OpacityColor = undefined | string | IActionOpacity,\n> {\n active: OpacityColor;\n activeOpacity: number;\n disabled: OpacityColor;\n disabledOpacity: number;\n focus: OpacityColor;\n focusOpacity: number;\n hover: OpacityColor;\n hoverOpacity: number;\n readonly: OpacityColor;\n readonlyOpacity: number;\n selected: OpacityColor;\n selectedOpacity: number;\n}\n\nexport type TColorModifier = (color: string, ratio?: number) => string;\nexport interface TPalette<\n ColorDefinition = IColorDefinition,\n ColorModifier = TColorModifier,\n ActionDefinition = TActionDefinition,\n> {\n action: ActionDefinition;\n background: {\n default: string;\n overlay: string;\n paper: string;\n };\n border: {\n article: string;\n field: string;\n section: string;\n };\n common: {\n white: string;\n black: string;\n };\n error: ColorDefinition;\n gray?: {\n 100: string;\n 150: string;\n 200: string;\n 250: string;\n 300: string;\n 350: string;\n 400: string;\n 450: string;\n 500: string;\n 550: string;\n 600: string;\n 650: string;\n 700: string;\n 750: string;\n 800: string;\n 850: string;\n 900: string;\n 950: string;\n };\n info: ColorDefinition;\n primary: ColorDefinition;\n secondary: ColorDefinition;\n spacing: (index: number) => ResponsiveStyleValue<number>;\n success: ColorDefinition;\n text: {\n accent: string;\n disabled: string;\n icon: string;\n link: string;\n primary: string;\n secondary: string;\n title: string;\n };\n warning: ColorDefinition;\n\n lightenRatio?: number;\n darkenRatio?: number;\n /**\n * Acepta un ratio entre 0 y 100\n */\n lightenColor?: ColorModifier;\n /**\n * Acepta un ratio entre 0 y 100\n */\n darkenColor?: ColorModifier;\n getContrastText?: ColorModifier;\n responsive: typeof responsive;\n\n queryColumnsMultiplier?: number;\n}\n\nexport type TBuildStateObject = <T extends Partial<ThemeUICSSObject>>(\n props: T,\n state: keyof Required<TStates> | 'checked',\n) => ThemeUICSSObject;\n\nexport type TParsedPalette = Required<\n TPalette<\n Required<IColorDefinition>,\n TColorModifier,\n Required<TActionDefinition<IActionOpacity>>\n >\n> & {\n buildStateObject: TBuildStateObject;\n getColor: TColorStateRetriever;\n getOneState: TStateRetriever;\n getStatesForColors: TStatesRetriever;\n getStatesFromDefinition: TStatesRetriever;\n getStatesFromPath: typeof getColorsAndStatesByPath;\n};\n\nexport type TColorDefinitionPrimitive = Pick<\n ThemeUICSSObject,\n 'color' | 'backgroundColor' | 'borderColor'\n>;\n\nexport type TColorDefinition = TColorDefinitionPrimitive & {\n active?: TColorDefinitionPrimitive;\n checked?: TColorDefinitionPrimitive;\n disabled?: TColorDefinitionPrimitive;\n focus?: TColorDefinitionPrimitive;\n hover?: TColorDefinitionPrimitive;\n selected?: TColorDefinitionPrimitive;\n};\n\ndeclare global {\n interface Window {\n currentPalette: TParsedPalette;\n customPalette?: TPalette;\n defaultPalette?: TPalette;\n }\n}\n","import tinycolor from 'tinycolor2';\n\nexport function defaultLighten(color: string, ratio?: number) {\n return tinycolor(color)\n .lighten(ratio ?? 20)\n .toRgbString();\n}\nexport function defaultDarken(color: string, ratio?: number) {\n return tinycolor(color)\n .darken(ratio ?? 20)\n .toRgbString();\n}\nexport function defaultGetContrastText(color: string) {\n const current = tinycolor(color);\n return tinycolor.readability('white', current) <\n tinycolor.readability('black', current)\n ? 'black'\n : 'white';\n}\n","import { merge } from 'lodash';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../../util';\nimport { TBuildStateObject } from '../types';\n\n/**\n * Dado un estado, se devuelven las propiedades necesarias para garantizar que\n * dicho estado se aplique en variadas circunstancias.\n */\nconst buildStateObject: TBuildStateObject = (props, state) => {\n switch (state) {\n case 'active':\n return {\n '&:active': props,\n 'input[role]:active ~ &': props,\n 'input[role]:active ~ & path': props,\n };\n case 'checked':\n return {\n '&:checked': props,\n 'input[role]:checked ~ &': props,\n 'input[role]:checked ~ & path': props,\n };\n case 'disabled':\n return {\n '&:disabled': props,\n 'input[role]:disabled ~ &': props,\n 'input[role]:disabled ~ & path': props,\n };\n case 'focus': {\n const focusObject = merge({}, focusOutline, props);\n return {\n '&:focus': focusObject,\n 'input[role]:focus ~ &': focusObject,\n };\n }\n case 'hover': {\n return {\n '&:hover:not([readonly], :disabled,[aria-selected=\"true\"],:active)':\n props,\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"])':\n props,\n 'input[role]:hover:not([readonly], :active, :disabled) ~ &:not(:disabled,[aria-selected=\"true\"]) path':\n props,\n };\n }\n case 'readonly':\n return {\n '&[readonly]': props,\n 'input[role][readonly] ~ &': props,\n 'input[role][readonly] ~ & path': props,\n '&.readonly input ~ &, &.readOnly input ~ &': props,\n '&.readonly input ~ & path, &.readOnly input ~ & path': props,\n '&.readonly, &.readOnly': props,\n };\n case 'selected':\n return {\n '&:selected': props,\n 'input[role]:selected ~ &': props,\n 'input[role]:selected ~ & path': props,\n '&[aria-selected=\"true\"]': props,\n };\n default:\n return props as unknown as ThemeUICSSObject;\n }\n};\nexport default buildStateObject;\n","import { merge } from 'lodash';\nimport buildColorsObject from './buildColorsObject';\n\n/**\n * Esta función NO CALCULA ningún color, simplemente devuelve un objeto con las\n * rutas de color con el formato de ThemeUI. Es útil cuando se desea aplicar\n * colores definidos en el objeto colors.\n *\n * Si se desea generar un objeto con los colores a partir de una definición de\n * colores del tipo TGetColorStateDefinition se debe utilizar el método\n * getColorsByDefinition.\n */\nexport default function getColorsByPath(\n path: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: { mergeObject?: Record<string, any> },\n) {\n return merge(\n buildColorsObject({\n color: `${path}.color`,\n backgroundColor: `${path}.backgroundColor`,\n borderColor: `${path}.borderColor`,\n }),\n options?.mergeObject,\n );\n}\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { merge } from 'lodash';\nimport buildStateObject from './buildStateObject';\nimport getColorsByPath from './getColorsByPath';\n\nexport interface TGetColorsAndStatesOptions {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n mergeObject?: Record<string, any>;\n states?: {\n active?: boolean;\n checked?: boolean;\n default?: boolean;\n disabled?: boolean;\n focus?: boolean;\n hover?: boolean;\n readonly?: boolean;\n selected?: boolean;\n };\n}\n\n/**\n * Esta función es útil para devolver los estados calculados por la aplicación\n * dentro del objeto colors de ThemeUI. Si se desea calcular los estados en\n * base a un color, se debe utilizar el método getColorsAndStatesByColor.\n */\nexport default function getColorsAndStatesByPath(\n path: string,\n options?: TGetColorsAndStatesOptions,\n) {\n const active = getColorsByPath(`${path}.active`, options);\n const checked = getColorsByPath(`${path}.checked`, options);\n const disabled = {\n cursor: 'not-allowed',\n ...getColorsByPath(`${path}.disabled`, options),\n };\n const hover = getColorsByPath(`${path}.hover`, options);\n const focus =\n options?.states?.focus !== false\n ? getColorsByPath(`${path}.focus`, options)\n : {};\n const readonly = {\n cursor: 'notAllowed',\n ...getColorsByPath(`${path}.readonly`, options),\n };\n const selected = getColorsByPath(`${path}.selected`, options);\n\n return merge(\n {\n ...(options?.states?.default !== false\n ? getColorsByPath(path, options)\n : null),\n ...(options?.states?.checked !== false\n ? buildStateObject(checked, 'checked')\n : null),\n ...buildStateObject(focus, 'focus'),\n ...(options?.states?.hover !== false\n ? buildStateObject(hover, 'hover')\n : null),\n ...(options?.states?.selected !== false\n ? buildStateObject(selected, 'selected')\n : null),\n ...(options?.states?.active !== false\n ? buildStateObject(active, 'active')\n : null),\n ...(options?.states?.disabled !== false\n ? buildStateObject(disabled, 'disabled')\n : null),\n ...(options?.states?.readonly !== false\n ? buildStateObject(readonly, 'readonly')\n : null),\n },\n options?.mergeObject,\n ) as Record<string, ThemeUICSSObject>;\n}\n","import { TStatesRetriever } from '../types';\nimport buildStateObject from './buildStateObject';\nimport getColorState from './getColorState';\n\n/**\n * Con este método es posible construir un objeto con las propiedades\n * necesarias para aplicar los colores correspondientes a los estados deseados\n * a partir de la definición provista.\n */\nconst getColorStates: TStatesRetriever = (definition, states) => {\n return {\n ...(states?.default !== false ? definition : null),\n ...(states?.checked !== false\n ? buildStateObject(getColorState(definition, 'checked'), 'checked')\n : null),\n ...buildStateObject(getColorState(definition, 'focus'), 'focus'),\n ...(states?.selected !== false\n ? buildStateObject(getColorState(definition, 'selected'), 'selected')\n : null),\n ...(states?.hover !== false\n ? buildStateObject(getColorState(definition, 'hover'), 'hover')\n : null),\n ...(states?.active !== false\n ? buildStateObject(getColorState(definition, 'active'), 'active')\n : null),\n ...(states?.disabled !== false\n ? buildStateObject(getColorState(definition, 'disabled'), 'disabled')\n : null),\n ...(states?.readonly !== false\n ? buildStateObject(getColorState(definition, 'readonly'), 'readonly')\n : null),\n };\n};\n\nexport default getColorStates;\n","import tinycolor from 'tinycolor2';\n\nimport { getPalette } from '../index';\n\nimport { TColorStateRetriever, TActionDefinition } from '../types';\n\n/**\n\n * Este método acepta un color y aplica el estado pasado como segundo\n\n * parámetro. De esta forma se puede obtener el color correspondiente al estado\n\n * calculado automáticamente por la aplicación.\n\n */\n\nconst getOneColorState: TColorStateRetriever = (color, state) => {\n if (state === 'default') return color;\n\n const actualState = state === 'checked' ? 'selected' : state;\n\n const palette = getPalette();\n\n const opacity: number = palette.action[\n `${state}Opacity` as keyof TActionDefinition\n ] as number;\n\n return tinycolor\n\n .mix(\n color,\n\n tinycolor(color).isLight()\n ? palette.action[actualState].light\n : palette.action[actualState].dark,\n\n 100 * opacity,\n )\n\n .toRgbString();\n};\n\nexport default getOneColorState;\n","import { cloneDeep } from 'lodash';\nimport {\n TPalette,\n TParsedPalette,\n isColorDefinition,\n IActionOpacity,\n IColorDefinition,\n} from '../types';\nimport { defaultLighten, defaultDarken, defaultGetContrastText } from '../util';\nimport applyStatesGetColor from './applyStatesGetColor';\nimport buildStateObject from './buildStateObject';\nimport getColorsAndStatesByPath from './getColorsAndStatesByPath';\nimport getColorState from './getColorState';\nimport getColorStates from './getColorStates';\nimport getOneColorState from './getOneColorState';\n\nexport default function parsePalette(palette: TPalette) {\n const newPalette: TParsedPalette = cloneDeep(palette) as TParsedPalette;\n\n // Put methods\n newPalette.lightenColor =\n palette.lightenColor ??\n ((color: string, ratio?: number) => {\n return defaultLighten(color, ratio ?? palette.lightenRatio);\n });\n newPalette.darkenColor =\n palette.darkenColor ??\n ((color: string, ratio?: number) => {\n return defaultDarken(color, ratio ?? palette.darkenRatio);\n });\n newPalette.getContrastText =\n palette.getContrastText ?? defaultGetContrastText;\n\n // Fill colors\n Object.entries(palette).forEach(([key, value]) => {\n const castedValue = value as string | number | IColorDefinition;\n if (isColorDefinition(castedValue)) {\n (newPalette as Record<string, unknown>)[key] = {\n main: castedValue.main,\n light: castedValue.light ?? newPalette.lightenColor(castedValue.main),\n dark: castedValue.dark ?? newPalette.darkenColor(castedValue.main),\n contrastText:\n castedValue.contrastText ??\n newPalette.getContrastText(castedValue.main),\n };\n } else {\n (newPalette as Record<string, unknown>)[key] = value;\n }\n });\n\n // Draw borders\n newPalette.border.article =\n newPalette.border.article ?? newPalette.secondary.main;\n newPalette.border.field = newPalette.border.field ?? newPalette.text.primary;\n newPalette.border.section =\n newPalette.border.section ?? newPalette.primary.main;\n\n // Define actions\n function parseAction(action: string | IActionOpacity): IActionOpacity {\n if (typeof action === 'string')\n return {\n dark: action,\n light: action,\n };\n return {\n dark: action.dark ?? action.light,\n light: action.light ?? action.dark,\n };\n }\n\n newPalette.action.active = parseAction(newPalette.action.active);\n newPalette.action.disabled = parseAction(newPalette.action.disabled);\n newPalette.action.focus = parseAction(newPalette.action.focus);\n newPalette.action.hover = parseAction(newPalette.action.hover);\n newPalette.action.readonly = parseAction(newPalette.action.readonly);\n newPalette.action.selected = parseAction(newPalette.action.selected);\n\n newPalette.buildStateObject = buildStateObject;\n newPalette.getColor = getOneColorState;\n newPalette.getStatesForColors = applyStatesGetColor;\n newPalette.getOneState = getColorState;\n newPalette.getStatesFromDefinition = getColorStates;\n newPalette.getStatesFromPath = getColorsAndStatesByPath;\n\n newPalette.gray = newPalette.gray ?? {};\n for (let i = 1; i <= 18; i++) {\n const index = Math.round(((255 - 255 / 18) / 18) * i);\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] =\n newPalette.gray[(i * 50) as keyof typeof newPalette.gray] ??\n `rgb(${index},${index},${index})`;\n }\n\n return newPalette;\n}\n","export const schemas: Record<string, string[]> = {\n ocean: ['#008E1B', '#009155', '#009187', '#008EB1', '#006872', '#2F4858'],\n sunset: ['#ae76de', '#D65DB1', '#FF6F91', '#FF9671', '#FFC75F', '#F9F871'],\n red: ['#dc143c', '#ff2400', '#800020', '#b22222', '#e52b50', '#ff7f50'],\n orange: ['#F76E11', '#FF9F45', '#FFBC80', '#FC4F4F', '#eb9605', '#964000'],\n green: ['#a4de02', '#76ba1b', '#4c9a2a', '#acdf87', '#68bb59', '#1e5631'],\n blue: ['#7ad6f4', '#45bdee', '#28a7ea', '#006cbb', '#034698', '#032f64'],\n violet: ['#80007e', '#a02d9c', '#c37ecd', '#9e5fb8', '#7f3e98', '#4c197f'],\n turquoise: ['#0ddbcc', '#43ebff', '#19ceeb', '#28acea', '#388ee9', '#3d76e0'],\n yellow: ['#fff700', '#ffff9f', '#fef54f', '#f9e231', '#f6c616', '#eab200'],\n grey: ['#b1b5ba', '#d2d5d6', '#dee0e0', '#bdbdbb', '#9fa19c', '#686e67'],\n};\n","const components = () => {\n const palette = window.currentPalette;\n\n return {\n datagrid: {\n borderColor: palette.background.paper,\n header: {\n backgroundColor: palette.background.default,\n color: palette.text.primary,\n borderColor: palette.background.default,\n },\n body: {\n preventParse: true,\n backgroundColor: palette.background.paper,\n evenRowsBackgroundColor: palette.darkenColor(\n palette.background.paper,\n 3,\n ),\n color: palette.text.primary,\n borderColor: palette.gray['800'],\n\n selectedRows: {\n borderColor: palette.gray['800'],\n backgroundColor: palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor,\n color: palette.getContrastText(\n palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor as string,\n ),\n },\n },\n },\n pagination: {\n backgroundColor: palette.primary.main,\n icons: {\n backgroundColor: palette.primary.main,\n borderColor: palette.primary.main,\n color: palette.primary.contrastText,\n },\n pagesBox: {\n preventParse: true,\n backgroundColor: palette.background.paper,\n borderColor: palette.border.field,\n color: palette.text.primary,\n },\n },\n primaryTable: {\n borderColor: palette.background.paper,\n header: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n borderColor: palette.primary.main,\n },\n body: {\n preventParse: true,\n backgroundColor: palette.background.paper,\n evenRowsBackgroundColor: palette.darkenColor(\n palette.background.paper,\n 3,\n ),\n color: palette.text.primary,\n borderColor: palette.gray['800'],\n selectedRows: {\n borderColor: palette.gray['800'],\n backgroundColor: palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor,\n color: palette.getContrastText(\n palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor as string,\n ),\n },\n },\n },\n secondaryTable: {\n borderColor: palette.background.paper,\n header: {\n backgroundColor: palette.background.default,\n color: palette.text.primary,\n borderColor: palette.background.default,\n },\n body: {\n preventParse: true,\n backgroundColor: palette.background.paper,\n evenRowsBackgroundColor: palette.darkenColor(\n palette.background.paper,\n 3,\n ),\n color: palette.text.primary,\n borderColor: palette.gray['800'],\n\n selectedRows: {\n borderColor: palette.gray['800'],\n backgroundColor: palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor,\n color: palette.getContrastText(\n palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor as string,\n ),\n },\n },\n },\n };\n};\n\nexport default components;\n","import { cloneDeep, merge } from 'lodash';\nimport tinycolor from 'tinycolor2';\nimport defaultPalette from './defaultPalette';\nimport { TColorDefinition, TPalette } from './types';\nimport applyStates from './util/applyStates';\nimport applyStatesGetColor from './util/applyStatesGetColor';\nimport parsePalette from './util/parsePalette';\nimport { schemas } from './schemas';\nimport components from './components';\n\n// Colors\nconst darkBlue = '#004085';\nconst lightBlue = '#cce5ff';\nconst white = 'white';\n\nexport function getSelectedColors() {\n const palette = getPalette();\n return palette.getStatesFromDefinition(\n {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n },\n {\n active: false,\n checked: false,\n default: false,\n disabled: false,\n focus: false,\n readonly: false,\n },\n );\n}\n\nexport function getPalette(arg?: TPalette | boolean) {\n const shouldReparsePalette = arg === true;\n const customPalette = typeof arg !== 'boolean' ? arg : undefined;\n\n if (window.currentPalette && !shouldReparsePalette)\n return window.currentPalette;\n\n window.currentPalette = parsePalette(\n merge(\n defaultPalette,\n window.defaultPalette,\n customPalette ?? window.customPalette,\n ),\n );\n return window.currentPalette;\n}\n\nexport function getThemeColorsObject() {\n const palette = cloneDeep(window.currentPalette ?? getPalette());\n\n const colors = {\n palette: {\n ...palette,\n lightenColor: undefined,\n darkenColor: undefined,\n getContrastText: undefined,\n\n buildStateObject: undefined,\n getColor: undefined,\n getOneState: undefined,\n getStatesForColors: undefined,\n getStatesFromDefinition: undefined,\n getStatesFromPath: undefined,\n },\n accordion: {\n borderColor: palette.border.section,\n },\n buttons: {\n accordion: {\n backgroundColor: palette.primary.main,\n borderColor: palette.border.section,\n color: palette.primary.contrastText,\n },\n accordionPrimary: {\n backgroundColor: palette.primary.main,\n borderColor: palette.border.section,\n color: palette.primary.contrastText,\n },\n close: {\n ...applyStatesGetColor({\n color: palette.text.primary,\n backgroundColor: palette.background.paper,\n }),\n backgroundColor: 'transparent',\n },\n collapsibleAsidePanelTitle: {\n color: palette.text.primary,\n },\n deletableInputButton: {\n backgroundColor: 'transparent',\n color: palette.secondary.main,\n\n active: {\n color: palette.darkenColor(palette.secondary.main, 40),\n },\n disabled: {\n color: palette.secondary.main,\n },\n focus: {\n color: palette.darkenColor(palette.secondary.main, 20),\n },\n hover: {\n color: palette.darkenColor(palette.secondary.main, 20),\n },\n },\n icon: {\n backgroundColor: palette.secondary.main,\n color: palette.text.icon,\n\n hover: {\n color: palette.secondary.contrastText,\n },\n\n focus: {\n color: palette.secondary.contrastText,\n },\n },\n iconAlert: {\n backgroundColor: 'transparent',\n color: palette.text.icon,\n\n active: {\n backgroundColor: 'transparent',\n color: tinycolor('#e5c200').darken(10).toRgbString(),\n },\n\n focus: {\n backgroundColor: 'transparent',\n color: tinycolor('#e5c200').darken(5).toRgbString(),\n },\n\n hover: {\n backgroundColor: 'transparent',\n color: tinycolor('#e5c200').darken(5).toRgbString(),\n },\n },\n iconPrimary: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n\n active: {\n color: palette.primary.contrastText,\n },\n\n focus: {\n color: palette.primary.contrastText,\n },\n\n hover: {\n color: palette.primary.contrastText,\n },\n\n disabled: {\n color: palette.gray['500'],\n },\n },\n iconToggled: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n\n active: {\n color: palette.primary.contrastText,\n },\n\n focus: {\n color: palette.common.white,\n },\n\n hover: {\n color: palette.common.white,\n },\n },\n iconOutline: {\n backgroundColor: palette.background.paper,\n color: palette.primary.main,\n borderColor: palette.border.article,\n },\n imagePreview: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.border.article,\n },\n link: {\n backgroundColor: 'transparent',\n color: palette.text.primary,\n borderColor: 'transparent',\n\n active: {\n color: palette.text.primary,\n },\n\n focus: {\n color: palette.text.primary,\n },\n\n hover: {\n color: palette.text.primary,\n },\n },\n openTab: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n borderColor: palette.primary.dark,\n },\n outline: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.primary.main,\n },\n outlineDanger: {\n backgroundColor: palette.background.paper,\n color: palette.primary.main,\n borderColor: palette.primary.main,\n\n active: {\n borderColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 80,\n ),\n backgroundColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 80,\n ),\n color: palette.getContrastText(\n palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 80,\n ),\n ),\n },\n\n focus: {\n borderColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 60,\n ),\n backgroundColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 60,\n ),\n color: palette.getContrastText(\n palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 60,\n ),\n ),\n },\n\n hover: {\n borderColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 70,\n ),\n backgroundColor: palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 70,\n ),\n color: palette.getContrastText(\n palette.darkenColor(\n palette.error.dark,\n palette.action.activeOpacity * 70,\n ),\n ),\n },\n },\n outlineWarning: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.primary.main,\n\n active: {\n borderColor: palette.warning.main,\n backgroundColor: palette.warning.main,\n color: palette.warning.contrastText,\n },\n\n focus: {\n borderColor: palette.warning.main,\n backgroundColor: palette.warning.main,\n color: palette.warning.contrastText,\n },\n\n hover: {\n borderColor: palette.warning.main,\n backgroundColor: palette.warning.main,\n color: palette.warning.contrastText,\n },\n },\n paper: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.background.paper,\n },\n primary: {\n backgroundColor: palette.primary.main,\n color: palette.primary.contrastText,\n borderColor: palette.primary.main,\n },\n secondary: {\n backgroundColor: palette.secondary.main,\n color: palette.secondary.contrastText,\n borderColor: palette.secondary.main,\n },\n tab: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.border.article,\n },\n toggleIcon: {\n color: palette.secondary.contrastText,\n backgroundColor: palette.secondary.main,\n borderColor: palette.border.field,\n\n danger: {\n backgroundColor: palette.error.main,\n borderColor: palette.border.field,\n color: palette.error.contrastText,\n },\n toggled: {\n backgroundColor: palette.primary.main,\n borderColor: palette.border.field,\n color: palette.primary.contrastText,\n },\n },\n transparentIcon: {\n backgroundColor: 'transparent',\n color: palette.text.primary,\n\n hover: {\n color: palette.primary.main,\n },\n\n focus: {\n color: palette.primary.main,\n },\n },\n },\n components: components(),\n dropzone: {\n backgroundColor: palette.background.paper,\n borderColor: palette.border.section,\n color: palette.background.default,\n },\n form: {\n backgroundColor: palette.background.paper,\n\n fields: {\n backgroundColor: palette.background.paper,\n color: palette.text.primary,\n borderColor: palette.border.field,\n },\n\n radio: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(15)\n .toRgbString(),\n borderColor: palette.text.primary,\n active: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(0)\n .toRgbString(),\n },\n checked: {\n backgroundColor: 'red',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(15)\n .toRgbString(),\n },\n disabled: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(55)\n .toRgbString(),\n },\n hover: {\n backgroundColor: 'transparent',\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(7)\n .toRgbString(),\n },\n readonly: {\n color: tinycolor(window.currentPalette.text.primary)\n .lighten(38)\n .toRgbString(),\n backgroundColor: 'transparent',\n },\n },\n },\n modal: {\n borderColor: palette.border.section,\n backgroundColor: palette.background.paper,\n },\n notifications: {\n error: {\n backgroundColor: palette.error.light,\n color: palette.getContrastText(palette.error.light),\n borderColor: palette.error.main,\n },\n success: {\n backgroundColor: palette.success.light,\n color: palette.getContrastText(palette.success.light),\n borderColor: palette.success.main,\n },\n warning: {\n backgroundColor: palette.warning.light,\n color: palette.getContrastText(palette.warning.light),\n borderColor: palette.warning.main,\n },\n },\n pagination: {\n color: palette.primary.contrastText,\n backgroundColor: palette.primary.main,\n },\n printView: {\n main: {\n backgroundColor: palette.background.default,\n\n page: {\n backgroundColor: palette.background.paper,\n borderColor: palette.border.article,\n },\n },\n list: {\n table: {\n borderColor: palette.border.section,\n },\n th: { backgroundColor: '#eee' },\n cell: {\n borderColor: palette.border.article,\n },\n },\n },\n schemas,\n scrollbars: {\n bar: {\n color: palette.secondary.main,\n backgroundColor: palette.background.default,\n\n hover: {\n backgroundColor: palette.lightenColor(palette.background.default, 10),\n color: palette.lightenColor(palette.secondary.main, 10),\n },\n\n active: {\n backgroundColor: palette.lightenColor(palette.background.default, 10),\n color: palette.lightenColor(palette.secondary.main, 20),\n },\n } /*\n buttons: {\n backgroundColor: palette.secondary.main,\n\n hover: {\n color: palette.lightenColor(palette.secondary.main, 10),\n },\n\n active: {\n color: palette.lightenColor(palette.secondary.main, 20),\n },\n }, */,\n },\n tab: {\n backgroundColor: palette.background.paper,\n borderColor: palette.border.section,\n },\n topBar: {\n backgroundColor: palette.primary.main,\n },\n\n // Default ThemeUI colors\n accent: palette.text.accent,\n background: palette.background.default,\n iconWarning: 'rgb(246 222 87)',\n muted: palette.text.disabled,\n primary: palette.primary.main,\n secondary: palette.secondary.main,\n text: palette.text.primary,\n warning: palette.warning.main,\n danger: palette.error.main,\n link: palette.text.accent,\n success: palette.success.main,\n title: palette.text.title,\n selected: palette.getOneState(\n { backgroundColor: palette.background.paper },\n 'selected',\n ).backgroundColor,\n\n // Meaningful colors\n lightBorder: 'hsl(0, 12%, 85%)',\n outlineColor: '#00a8f6',\n touchedBorderColor: 'orange',\n\n // Custom Apia colors\n baseGrey: '#dfdfdf',\n darkBorder: 'hsl(247, 98%, 10%)',\n darkBlue,\n disabled: '#efefef',\n favorite: '#e5c200',\n filtersRowBackground: white,\n formBackground: white,\n grey: '#777',\n gridRowHighlight: '#e1f3ff',\n highlightButton: 'hsl(61, 100%, 91%)',\n lightBlue,\n oddRow: '#f0f5ff',\n paginationBackground: 'hsl(229deg, 75%, 90%)',\n readOnlyText: '#737373',\n required: 'darkred',\n scrollbarBack: 'rgb(206, 206, 206)',\n scrollbarFront: 'rgb(156, 156, 156)',\n sysExceptionNotificationBg: '#f8d7da',\n sysMessageNotificationBg: '#fff3cd',\n tabBackground: 'white',\n treeRuler: '#ccc',\n white,\n priorityNone: 'gray',\n priorityLow: palette.success.main,\n priorityNormal: 'rgb(255 211 34)',\n priorityHigh: 'rgb(255 150 0)',\n priorityUrgent: 'red',\n\n // modes: {\n // dark: {\n // // TODO: dark-mode uhhhhhhh!!!\n // //text: '#fff',\n // },\n // },\n charts: {\n front: darkBlue,\n },\n };\n\n applyStates([\n colors?.buttons as Record<string, string | TColorDefinition>,\n colors?.form as Record<string, string | TColorDefinition>,\n ]);\n\n return colors;\n}\n","import { ThemeUIStyleObject } from 'theme-ui';\nimport { focusOutline, spacing } from '../util';\nimport getColorsByPath from './colors/util/getColorsByPath';\n\nexport const alerts: Record<string, ThemeUIStyleObject> = {\n primary: {\n border: '1px solid',\n borderLeft: '12px solid',\n borderRadius: 'alerts',\n\n display: 'flex',\n flexDirection: 'column',\n fontWeight: 'normal',\n\n maxHeight: '60vh',\n overflow: 'auto',\n p: 0,\n\n '&:focus': {\n outline: 'none',\n },\n\n '.notification__header': {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n position: 'sticky',\n top: 0,\n width: '100%',\n p: spacing(5),\n },\n\n '.notification__title': {\n fontSize: 18,\n fontWeight: 'bold',\n color: 'palette.text.primary',\n display: 'flex',\n gap: spacing(5),\n alignItems: 'center',\n },\n\n '.notification__closeButton': {\n flexShrink: 0,\n },\n\n '.notification__body': {\n alignItems: 'center',\n display: 'flex',\n flexDirection: 'row',\n gap: spacing(5),\n width: '100%',\n p: spacing(5),\n },\n\n '.notification__header ~ .notification__body': {\n pt: 0,\n },\n\n '.notification__content': {\n display: 'flex',\n alignItems: 'stretch',\n flexDirection: 'column',\n gap: spacing(5),\n width: '100%',\n },\n\n '.notification__icon': {\n flexShrink: 0,\n height: 'iconMd',\n svg: {\n height: 'iconMd',\n width: 'iconMd',\n },\n },\n\n '.notification__message': {\n display: 'flex',\n flexDirection: 'column',\n fontWeight: 'normal',\n gap: spacing(3),\n width: '100%',\n wordBreak: 'break-word',\n },\n\n '.notification__trace': {\n maxWidth: '100%',\n overflow: 'hidden',\n maxHeight: '30vh',\n flexShrink: 0,\n backgroundColor: 'rgba(10,10,10,0.02)',\n pt: spacing(5),\n\n '.notification__traceLabel': {\n pl: spacing(5),\n display: 'flex',\n gap: 2,\n },\n '.notification__traceText': {\n fontWeight: 'normal',\n p: spacing(5),\n maxHeight: '30vh',\n overflow: 'auto',\n maxWidth: '100%',\n position: 'relative',\n },\n },\n\n '&:focus .notification__closeButton': focusOutline,\n },\n warning: {\n variant: 'alerts.primary',\n\n '&, & .notification__header': {\n ...getColorsByPath('notifications.warning'),\n },\n },\n danger: {\n variant: 'alerts.primary',\n '&, & .notification__header': {\n ...getColorsByPath('notifications.error'),\n },\n },\n success: {\n variant: 'alerts.primary',\n '&, & .notification__header': {\n ...getColorsByPath('notifications.success'),\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive, smallButton, spacing } from '../util';\nimport getColorsAndStatesByPath from './colors/util/getColorsAndStatesByPath';\n\nconst buttons: Record<string, ThemeUICSSObject> = {\n inherit: {\n color: 'inherit',\n background: 'inherit',\n border: 'none',\n borderRadius: 0,\n font: 'inherit',\n cursor: 'pointer',\n padding: 0,\n margin: 0,\n },\n collapsibleAsidePanelTitle: {\n variant: 'buttons.inherit',\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n width: '100%',\n ...getColorsAndStatesByPath('buttons.collapsibleAsidePanelTitle'),\n },\n primary: {\n borderWidth: '2px',\n borderStyle: 'solid',\n variant: 'text.default',\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 5, 4: 6 }),\n display: 'inline-block',\n width: responsive({ 0: '100%', 1: 'auto' }),\n cursor: 'pointer',\n borderRadius: 'buttons',\n fontWeight: 'normal',\n userSelect: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n wordBreak: 'keep-all',\n\n ...getColorsAndStatesByPath('buttons.primary'),\n\n '&:focus, &:focus-visible': {\n outlineColor: '#00daff',\n },\n },\n 'primary-sm': {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n ...smallButton,\n },\n secondary: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n borderWidth: '0px',\n borderStyle: 'solid',\n\n ...getColorsAndStatesByPath('buttons.secondary'),\n },\n 'secondary-sm': {\n variant: 'buttons.secondary',\n ...smallButton,\n },\n 'light-secondary': {\n variant: 'buttons.secondary',\n\n ...getColorsAndStatesByPath('buttons.lightSecondary'),\n },\n danger: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.danger'),\n },\n 'danger-sm': {\n variant: 'buttons.danger',\n ...smallButton,\n },\n warning: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.warning'),\n },\n 'warning-sm': {\n variant: 'buttons.warning',\n ...smallButton,\n },\n close: {\n cursor: 'pointer',\n ml: 'auto',\n mr: '2',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.close'),\n },\n accordion: {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n cursor: 'pointer',\n m: spacing(0),\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 5, 4: 6 }),\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n borderRadius: 'buttons',\n textAlign: 'left',\n fontFamily: 'heading',\n fontSize: 'text.default',\n textDecoration: 'none',\n textTransform: 'none',\n fontWeight: 'bold',\n border: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n userSelect: 'text',\n\n '&, *': getColorsAndStatesByPath('buttons.accordion'),\n\n 'h3.toggleAccordionElementLabel': {\n variant: 'text.default',\n\n color: 'inherit',\n margin: 0,\n wordBreak: 'break-word',\n },\n },\n 'accordion-primary': {\n variant: 'buttons.accordion',\n border: 'none',\n\n ...getColorsAndStatesByPath('buttons.accordionPrimary'),\n },\n icon: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n p: spacing(0),\n m: spacing(0),\n bg: 'secondary',\n cursor: 'pointer',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n borderRadius: 'buttons',\n border: 'none',\n\n ...getColorsAndStatesByPath('buttons.icon'),\n\n svg: {\n width: 'auto',\n height: '20px',\n display: 'block',\n },\n\n '&.isToggled': {\n ...getColorsAndStatesByPath('buttons.iconToggled'),\n },\n },\n 'icon-primary': {\n variant: 'buttons.icon',\n ...getColorsAndStatesByPath('buttons.iconPrimary'),\n },\n 'icon-outline': {\n variant: 'buttons.icon',\n bg: 'white',\n border: '1px solid',\n\n ...getColorsAndStatesByPath('buttons.iconOutline'),\n },\n 'icon-outline-danger': {\n variant: 'buttons.icon',\n bg: 'white',\n border: '1px solid',\n\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\n },\n 'icon-only': {\n variant: 'buttons.icon',\n\n ...getColorsAndStatesByPath('buttons.iconOnly'),\n },\n link: {\n variant: 'inherit',\n width: 'auto',\n border: 'none',\n textDecoration: 'underline',\n px: 2,\n py: 1,\n borderRadius: 'buttons',\n cursor: 'pointer',\n textTransform: 'none',\n transition: 'background-color 300ms ease-out, color 300ms ease-out',\n\n ...getColorsAndStatesByPath('buttons.link'),\n },\n 'link-sm': {\n variant: 'buttons.link',\n ...smallButton,\n },\n outline: {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n '&:focus, &:focus-visible': {},\n ...getColorsAndStatesByPath('buttons.outline', {\n states: {\n active: false,\n checked: false,\n disabled: false,\n focus: false,\n hover: false,\n readonly: false,\n selected: false,\n },\n }),\n },\n 'outline-sm': {\n variant: 'buttons.outline',\n ...smallButton,\n },\n 'transparent-sm': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n bg: 'transparent',\n color: 'inherit',\n border: 'none',\n font: 'inherit',\n textTransform: 'inherit',\n ...smallButton,\n },\n 'outline-danger': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.outlineDanger'),\n },\n 'outline-danger-sm': {\n variant: 'buttons.outline-danger',\n ...smallButton,\n },\n 'outline-warning': {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n\n ...getColorsAndStatesByPath('buttons.outlineWarning'),\n },\n 'outline-warning-sm': {\n variant: 'buttons.outline-warning',\n ...smallButton,\n },\n 'outline-extended': {\n variant: 'buttons.outline',\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n 'outline-danger-extended': {\n variant: 'buttons.outline-danger',\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n 'primary-extended': {\n variant: 'buttons.primary',\n '&:focus, &:focus-visible': {},\n gridColumnStart: 1,\n gridColumnEnd: 3,\n width: '100%',\n },\n query: {\n extended: {\n variant: 'buttons.outline',\n '&:focus, &:focus-visible': {},\n gridColumnStart: 1,\n gridColumnEnd: 3,\n },\n },\n tableAccordion: {\n variant: 'buttons.accordion',\n fontSize: 'text.default',\n p: spacing(3),\n wordBreak: 'keep-all',\n a: {\n color: 'background',\n },\n\n ...getColorsAndStatesByPath('buttons.tableAccordion'),\n },\n tableHeader: {\n variant: 'buttons.tableAccordion',\n alignItems: 'center',\n justifyContent: 'center',\n height: '100%',\n border: 'none',\n svg: {\n ml: spacing(2),\n },\n ...getColorsAndStatesByPath('buttons.tableHeader'),\n },\n paper: {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.paper'),\n },\n 'paper-sm': {\n variant: 'buttons.primary',\n borderWidth: '2px',\n borderStyle: 'solid',\n borderRadius: 'buttons',\n\n ...getColorsAndStatesByPath('buttons.paper'),\n ...smallButton,\n },\n};\n\nexport default buttons;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst customCheckbox: ThemeUICSSObject = {\n display: 'inline-flex',\n borderRadius: 'default',\n flexBasis: '32px',\n flexShrink: 0,\n width: '32px',\n height: '32px',\n alignItems: 'center',\n justifyContent: 'center',\n p: '3px',\n border: '1px solid',\n svg: {\n width: '20px',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n\n /* PREPEND HERE */\n};\n\nexport default customCheckbox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst checkbox: ThemeUICSSObject = {\n borderRadius: 'default',\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n focus: false,\n hover: false,\n },\n }),\n backgroundColor: 'unset',\n alignItems: 'center',\n\n '&.nativeCheckbox': {\n appearance: 'none',\n width: '25px',\n height: '25px',\n border: 'solid 1px #cccccc',\n marginRight: '8px',\n position: 'relative',\n cursor: 'pointer',\n\n '&:checked::before': {\n content: '\"✓\"',\n color: 'palette.text.primary',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n fontSize: 'larger',\n fontWeight: 'bolder',\n borderRadius: '5px',\n cursor: 'pointer',\n },\n\n '&:indeterminate::before': {\n content: '\"-\"',\n color: 'palette.text.primary',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n top: '-1px',\n left: 0,\n right: 0,\n bottom: 0,\n fontSize: 'xx-large',\n fontWeight: '600',\n borderRadius: '5px',\n cursor: 'pointer',\n },\n },\n};\n\nexport default checkbox;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst dateInput: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n justifyContent: 'stretch',\n gap: spacing(2),\n width: '100%',\n\n '&.readOnly': {\n input: {\n color: 'Text.fields',\n bg: 'Background.fields',\n },\n },\n\n '.iconInput': {\n width: '100%',\n position: 'relative',\n },\n\n 'input:hover~.delete_date_button:not(:disabled,[aria-selected=\"true\"]), input:hover~.delete_date_button:not(:disabled,[aria-selected=\"true\"]) path, .delete_date_button':\n {\n position: 'absolute',\n right: '59px',\n padding: 0,\n top: 'calc(50% - 10px)',\n margin: 0,\n marginRight: 0,\n borderRadius: '100%',\n width: '20px',\n height: '20px',\n\n ...getColorsAndStatesByPath('buttons.icon-outline'),\n },\n\n input: {\n flexShrink: 1,\n },\n\n '& > div': {\n display: 'flex',\n gap: spacing(2),\n flexShrink: 0,\n width: 'auto',\n maxWidth: '100%',\n minWidth: 0,\n\n button: {\n width: '45px',\n flexShrink: 0,\n },\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n hover: false,\n active: false,\n focus: false,\n },\n }),\n\n backgroundColor: undefined,\n};\n\nexport default dateInput;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsByPath from '../colors/util/getColorsByPath';\n/* IMPORT HERE */\n\nconst iconInput: ThemeUICSSObject = {\n display: 'flex',\n gap: spacing(1),\n justifyContent: 'stretch',\n alignItems: 'center',\n '&.readOnly': {\n input: {\n ...getColorsByPath('form.fields'),\n },\n },\n\n input: {\n height: '50px',\n width: '100%',\n },\n\n button: {\n display: 'flex',\n width: '45px',\n flexShrink: 0,\n height: '50px',\n },\n};\n\nexport default iconInput;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst input: ThemeUICSSObject = {\n variant: 'text.default',\n border: '1px solid',\n borderRadius: 'default',\n padding: responsive({ 0: 3, 3: 4 }),\n '::placeholder': {\n color: '#b0b0b0',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n\n material: {\n input: {\n borderLeft: 'none',\n borderRight: 'none',\n borderTop: 'none',\n borderBottomColor: 'palette.border.section',\n\n '& + .input__underline': {\n transform: 'scale(1)',\n },\n\n '&:focus': {\n outline: 'none',\n\n '~::after': {\n animationName: 'growHorizontal',\n animationDuration: '150ms',\n animationTimingFunction: 'ease-out',\n content: '\"\"',\n display: 'block',\n height: '0',\n outlineColor: 'palette.primary.main',\n outlineStyle: 'solid',\n outlineWidth: '1.5px',\n outlineOffset: 0,\n position: 'fixed',\n transformOrigin: 'center center',\n width: '100%',\n },\n },\n },\n },\n};\n\nexport default input;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\n/* IMPORT HERE */\n\nconst label: ThemeUICSSObject = {\n variant: 'text.default',\n alignItems: 'center',\n width: 'auto',\n textTransform: 'none',\n cursor: 'pointer',\n\n '&:not(.radio-label)': {\n fontWeight: 'bold',\n },\n\n '&.required': {\n position: 'relative',\n '&::before': {\n color: 'danger',\n position: 'absolute',\n content: '\"*\"',\n top: 0,\n left: '-10px',\n },\n },\n\n '&:last-of-type': {\n 'input, textarea, select': {\n mb: spacing(0),\n },\n },\n};\n\nexport default label;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst radio: ThemeUICSSObject = {\n width: '32px',\n height: '32px',\n input: {\n height: '32px !important',\n },\n ...getColorsAndStatesByPath('form.radio'),\n};\n\nexport default radio;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst select: ThemeUICSSObject = {\n variant: 'text.default',\n display: 'inline-block',\n fontFamily: 'body',\n p: spacing(4),\n pr: 7,\n borderRadius: 'default',\n width: '100%',\n maxWidth: '100%',\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n};\n\nexport default select;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { getSelectedColors } from '../colors/index';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n/* IMPORT HERE */\n\nconst selectMultiple: ThemeUICSSObject = {\n variant: 'text.default',\n height: '100%',\n padding: '4px',\n borderRadius: 'default',\n border: '1px solid',\n width: '100%',\n transition: 'background-color 100ms ease-out, color 100ms ease-out',\n overflow: 'auto',\n option: {\n padding: 2,\n ...getSelectedColors(),\n\n '&:checked': {\n backgroundColor: window.currentPalette.getColor(\n window.currentPalette.background.paper,\n 'selected',\n ),\n color: window.currentPalette.getContrastText(\n window.currentPalette.getColor(\n window.currentPalette.background.paper,\n 'selected',\n ),\n ),\n },\n },\n '+ svg': {\n display: 'none',\n },\n ...getColorsAndStatesByPath('form.fields', {\n states: {\n active: false,\n hover: false,\n focus: false,\n },\n }),\n};\n\nexport default selectMultiple;\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nconst Switch: ThemeUICSSObject = {\n '+ span': {\n fontSize: 14,\n fontWeight: 'normal',\n wordBreak: 'break-all',\n },\n backgroundColor: 'form.fields.checked.borderColor',\n};\n\nexport default Switch;\n","import { ThemeUICSSObject } from 'theme-ui';\n/* IMPORT HERE */\n\nconst textarea: ThemeUICSSObject = {\n '&, & textarea': {\n height: '100%',\n minHeight: '130px',\n resize: 'vertical',\n },\n\n textarea: {\n variant: 'forms.input',\n },\n};\n\nexport default textarea;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '../../util';\nimport getColorsAndStatesByPath from '../colors/util/getColorsAndStatesByPath';\n\nconst deletableInput: ThemeUICSSObject = {\n border: '1px solid',\n borderColor: 'palette.border.field',\n display: 'inline-block',\n position: 'relative',\n pr: '45px',\n\n '.deletableInput__input': {\n border: 'none',\n },\n\n '.deletableInput__deleteButton': {\n height: '100%',\n outlineOffset: '-2px',\n position: 'absolute',\n right: 0,\n top: 0,\n width: '45px',\n\n ...getColorsAndStatesByPath('buttons.deletableInputButton'),\n },\n\n '&:focus-within:not(.asMaterial)': {\n ...focusOutline,\n\n '.deletableInput__input:focus': {\n outline: 'none',\n },\n\n '.deletableInput__deleteButton:focus': {\n outline: 'none',\n },\n },\n\n '&.asMaterial': {\n borderLeft: 'none',\n borderRight: 'none',\n borderTop: 'none',\n borderBottomColor: 'palette.border.section',\n\n '& + .input__underline': {\n transform: 'scale(1)',\n },\n\n '.deletableInput__input:focus': {\n outline: 'none',\n\n '~.input__underline::after': {\n animationName: 'growHorizontal',\n animationDuration: '150ms',\n animationTimingFunction: 'ease-out',\n content: '\"\"',\n display: 'block',\n height: '0',\n outlineColor: 'palette.primary.main',\n outlineStyle: 'solid',\n outlineWidth: '1.5px',\n outlineOffset: 0,\n position: 'absolute',\n transformOrigin: 'center center',\n left: 0,\n right: 0,\n },\n },\n },\n};\n\nexport default deletableInput;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport customCheckbox from './customCheckbox';\nimport checkbox from './checkbox';\nimport dateInput from './dateInput';\nimport iconInput from './iconInput';\nimport input from './input';\nimport label from './label';\nimport radio from './radio';\nimport select from './select';\nimport selectMultiple from './selectMultiple';\nimport Switch from './switch';\nimport textarea from './textarea';\nimport deletableInput from './deletableInput';\n/* IMPORT HERE */\n\nconst forms: () => Record<string, ThemeUICSSObject> = () => {\n return {\n checkbox,\n customCheckbox,\n dateInput,\n deletableInput,\n iconInput,\n input,\n label,\n radio,\n select,\n selectMultiple,\n switch: Switch,\n textarea,\n /* PREPEND HERE */\n 'input[type=\"date\"]': {\n variant: 'forms.input',\n },\n };\n};\n\nexport default forms;\n","import { ThemeUICSSObject } from 'theme-ui';\n\nexport const overlay: Record<string, ThemeUICSSObject> = {\n overlay: {\n position: 'fixed',\n overflow: 'hidden',\n top: '0',\n right: '0',\n bottom: '0',\n left: '0',\n width: '100vw',\n height: '100vh',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: `palette.background.overlay`,\n zIndex: 'modal',\n\n '&:not(.screenLock) .modal-enter-done': {\n boxShadow: 'modals',\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n/* IMPORT HERE */\n\nexport const apiaApi: ThemeUICSSObject = {\n margin: 'auto',\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n overflow: 'hidden',\n width: '100%',\n\n '.handler__form': {\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n gap: spacing(6),\n\n '.toggleAccordionElement': {\n position: 'sticky',\n top: 0,\n },\n\n '.handler__form__elements': {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n overflowY: 'auto',\n maxHeight: '60vh',\n gap: spacing(3),\n pr: spacing(3),\n },\n\n '.handler__form__elements__section__content': {\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n background: 'palette.background.paper',\n p: 0,\n gap: spacing(3),\n },\n\n '.content .handler__form__elements__section__content': {\n border: '1px solid',\n borderColor: 'palette.border.section',\n borderTop: 'none',\n p: spacing(6),\n },\n\n '.handler__form__buttons': {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n p: 0,\n gap: '0px',\n textAlign: 'center',\n },\n\n '.radio': {\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'wrap',\n listStyle: 'none',\n variant: 'layout.execution.form.fields.radio',\n },\n\n '.handler__checkbox, .handler__radio': {\n 'label span': {\n fontWeight: 'normal',\n },\n },\n\n '.checkbox': {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n justifyContent: 'start',\n gap: spacing(4),\n '.semicolon': {\n display: 'none',\n },\n input: {\n width: '100%',\n },\n },\n\n '.handler__hidden': {\n display: 'none',\n },\n\n 'label.select > div': {\n width: '100%',\n },\n\n '.spacer': {\n height: spacing(7),\n },\n },\n '.progressBox': {\n p: spacing(5),\n pt: spacing(0),\n },\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { overlay } from './overlay';\nimport { spacing, responsive } from '../../../../util';\nimport getColorsAndStatesByPath from '../../../colors/util/getColorsAndStatesByPath';\nimport getColorsByPath from '../../../colors/util/getColorsByPath';\nimport { apiaApi } from './apiaApi';\n/* IMPORT HERE */\n\nexport const modals: ThemeUICSSObject = {\n apiaApi,\n ...overlay,\n main: {\n zIndex: 'modal',\n display: 'flex',\n flexDirection: 'column',\n p: spacing(6),\n alignItems: 'center',\n justifyItems: 'center',\n maxHeight: '100vh',\n maxWidth: 'calc(100vw - 10px)',\n resize: 'both',\n overflow: 'auto',\n border: '1px solid',\n gap: spacing(5),\n\n '&>div': {\n overflow: 'hidden',\n flexGrow: 0,\n flexShrink: 0,\n p: '3px',\n width: '100%',\n },\n '&>div.modal__header': {\n alignItems: responsive({ 0: 'end', 4: 'center' }),\n flexShrink: 0,\n overflow: 'visible',\n\n '.modal__headerBar': {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: spacing(3),\n },\n },\n '&>div.modal__content, &>div.modal__content>form': {\n overflow: 'auto',\n width: '100%',\n flexBasis: '100%',\n flexShrink: 1,\n display: 'flex',\n justifyContent: 'stretch',\n alignItems: 'stretch',\n },\n ...getColorsByPath('modal'),\n },\n finder: {\n variant: 'layout.common.modals.main',\n height: responsive({ 0: '100vh', 3: '80vh' }),\n width: responsive({ 0: '95vw', 3: '80vw', 4: '70vw' }),\n\n '.modal__content': {\n p: spacing(2),\n overflow: 'hidden',\n\n '.confirm__content': {\n overflow: 'hidden',\n\n '.finder__content': {\n display: 'flex',\n alignItems: 'stretch',\n },\n\n '.selection__keyHandler': {\n overflow: 'hidden',\n height: '100%',\n\n '.responsiveTable__wrapper': {\n height: '100%',\n\n border: '1px solid',\n borderColor: 'palette.border.article',\n backgroundColor: 'palette.gray.900',\n },\n },\n },\n },\n },\n sm: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(350px, calc(100vw - 10px))',\n },\n md: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(500px, calc(100vw - 10px))',\n },\n 'md-fixed': {\n variant: 'layout.common.modals.main',\n width: 'min(500px, calc(100vw - 10px))',\n maxHeight: responsive({ 0: '95vh', 2: '80vh' }),\n },\n lg: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(640px, calc(100vw - 10px))',\n },\n 'lg-fixed': {\n variant: 'layout.common.modals.main',\n width: '640px',\n height: '60vh',\n },\n xl: {\n variant: 'layout.common.modals.main',\n maxWidth: 'min(730px, calc(100vw - 10px))',\n },\n 'xl-fixed': {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '60vw' }),\n height: responsive({ 0: '95vh', 2: '80vh' }),\n },\n xxl: {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '80vw' }),\n maxHeight: responsive({ 0: '95vh', 2: '80vh' }),\n },\n 'xxl-fixed': {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '80vw' }),\n height: responsive({ 0: '95vh', 2: '80vh' }),\n },\n xxxl: {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '95vw' }),\n maxHeight: responsive({ 0: '95vh', 2: '95vh' }),\n },\n 'xxxl-fixed': {\n variant: 'layout.common.modals.main',\n width: responsive({ 0: '95vw', 2: '95vw' }),\n height: responsive({ 0: '95vh', 2: '95vh' }),\n },\n flex: {\n variant: 'layout.common.modals.main',\n maxWidth: '95vw',\n maxHeight: '95vh',\n '.modal__content': {\n p: spacing(2),\n overflow: 'auto',\n },\n },\n cal: {\n variant: 'layout.common.modals.sm',\n width: '350px',\n\n '.react-calendar': {\n backgroundColor: 'palette.background.paper',\n\n button: {\n ...getColorsAndStatesByPath('form.fields'),\n\n '&.react-calendar__tile--active': {\n ...getColorsAndStatesByPath('buttons.primary'),\n },\n },\n },\n },\n editGrid: {\n variant: 'layout.common.modals.main',\n width: 'root',\n maxHeight: '90vh',\n },\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline } from '@apia/theme';\n\nexport function getSelectionStyles() {\n return {\n 'td[data-focused=\"false\"], th[data-focused=\"false\"]': {\n '*:focus-visible, &:focus, &:focus-visible': {\n outline: 'none',\n },\n\n '*:focus': {\n ...focusOutline,\n },\n },\n '[data-focused=\"true\"]:not(.row__separator__cell)': {\n '&:not([data-editionmode=\"true\"])': {\n '&:focus, & > *:focus, *:focus-visible': {\n ...focusOutline,\n\n '&.cell__download__document': {\n outlineOffset: 0,\n },\n },\n },\n '&[data-editionmode=\"true\"]': {\n '&:focus, *:focus, *:focus-visible': {\n ...focusOutline,\n outlineStyle: 'dotted',\n outlineWidth: '6px',\n outlineOffset: '-4px',\n },\n },\n },\n '[data-focused=\"true\"].row__separator__cell': {\n backgroundColor: 'palette.secondary.main',\n outline: 'none',\n },\n } as ThemeUICSSObject;\n}\n","import { merge } from 'lodash';\nimport { TGetColorStateDefinition } from '../types';\nimport buildColorsObject from './buildColorsObject';\n\n/**\n * Esta función arma un objeto con los colores que se deben aplicar para\n * garantizar que el resultado sea el esperado, por ejemplo, al aplicar un\n * color a un border. Esto es así ya que en ThemeUI hay situaciones en las que\n * si no se aplican el color de borde a cada uno de los lados, no se aplica el\n * color deseado.\n *\n * Ejemplo de lo antedicho es:\n *\n * borderRight: '1px solid',\n * borderColor: 'red'.\n *\n * En este caso, el borde derecho no será rojo como se espera, ya que la\n * propiedad borderRight aplicará un borderRightColor: 'initial', que solamente\n * puede ser reescrito por borderRightColor: 'red'.\n */\nexport default function getColorsByDefinition(\n definition: Partial<TGetColorStateDefinition>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: { mergeObject?: Record<string, any> },\n) {\n return merge(\n buildColorsObject({\n ...(definition.color ? { color: definition.color } : null),\n ...(definition.backgroundColor\n ? { backgroundColor: definition.backgroundColor }\n : null),\n ...(definition.borderColor\n ? {\n borderColor: definition.borderColor,\n }\n : null),\n }),\n options?.mergeObject,\n );\n}\n","import { merge } from 'lodash';\nimport { ThemeUICSSObject } from 'theme-ui';\nimport { TGetColorStateDefinition } from '../types';\nimport buildStateObject from './buildStateObject';\nimport { TGetColorsAndStatesOptions } from './getColorsAndStatesByPath';\nimport getColorsByDefinition from './getColorsByDefinition';\nimport getColorState from './getColorState';\n\n/**\n * Esta función calcula los colores de los estados a partir de la definición\n * pasada.\n */\nexport default function getColorsAndStatesByDefinition(\n definition: Partial<TGetColorStateDefinition>,\n options?: TGetColorsAndStatesOptions,\n) {\n const active = getColorState(definition, 'active');\n const checked = getColorState(definition, 'checked');\n const disabled = getColorState(definition, 'disabled');\n const focus = options?.states?.focus\n ? getColorState(definition, 'focus')\n : {};\n const hover = getColorState(definition, 'hover');\n const readonly = getColorState(definition, 'readonly');\n const selected = getColorState(definition, 'selected');\n\n return merge(\n options?.states?.default !== false\n ? getColorsByDefinition(definition)\n : null,\n options?.states?.checked !== false\n ? buildStateObject(checked, 'checked')\n : {},\n options?.states?.focus !== false ? buildStateObject(focus, 'focus') : {},\n options?.states?.hover !== false ? buildStateObject(hover, 'hover') : {},\n options?.states?.active !== false ? buildStateObject(active, 'active') : {},\n options?.states?.selected !== false\n ? buildStateObject(selected, 'selected')\n : {},\n options?.states?.disabled !== false\n ? buildStateObject(disabled, 'disabled')\n : {},\n options?.states?.readonly !== false\n ? buildStateObject(readonly, 'readonly')\n : {},\n options?.mergeObject,\n ) as ThemeUICSSObject;\n}\n","import { Theme, ThemeProvider as TUIThemeProvider } from 'theme-ui';\nimport { ReactNode } from 'react';\nimport { getMainTheme } from './getMainTheme';\n\ninterface TThemeProvider {\n children: ReactNode;\n customTheme?: Theme;\n}\n\nexport const CustomThemeProvider = ({\n children,\n customTheme,\n}: TThemeProvider) => {\n const theme: Theme = getMainTheme(customTheme);\n\n return <TUIThemeProvider theme={theme}>{children}</TUIThemeProvider>;\n};\n","import { setValueByPath } from '@apia/util';\nimport { FC, MutableRefObject, ReactNode, Suspense, useRef } from 'react';\nimport { Theme, ThemeUICSSObject, Box } from 'theme-ui';\nimport { getVariant } from '../util';\nimport { CustomThemeProvider } from './CustomThemeProvider';\n\n/**\n * Permite crear un componente cuyos estilos pueden ser redefinidos por un\n * usuario final.\n *\n * Esto es así puesto que los estilos definidos serán agregados a un árbol que\n * el usuario puede consultar y sobreescribir. De esta manera los estilos\n * finales del componente serán aquellos definidos en este método pero\n * sobreescritos por los definidos por el usuario si es que existen.\n *\n * **Importante** Para aplicar la variante, se aplica un box alrededor del\n * componente que se está renderizando, con className=\"variant__holder\". En caso\n * de que se quisiera evitar este comportamiento, se debe pasar unwraped = true\n *\n * @param displayName Este parámetro es importante para el debugger de React.\n * @param stylesPath La ruta donde se aplicarán los estilos, es importante asegurarse de que esa ruta ya no está siendo utilizada por otro componente.\n * @param styles Un objeto de estilos de ThemeUI\n * @param Component La definición del componente.\n * @returns Un componente reutilizable y exportable que tiene estilos aplicados.\n */\nexport function makeStyledComponent<T extends object>(\n displayName: string,\n stylesPath: string,\n styles: ThemeUICSSObject,\n Component: FC<T>,\n unwraped = false,\n) {\n const theme = setValueByPath({}, stylesPath, styles) as Theme;\n\n return Object.assign(\n (props: T) => {\n const avoidFirstRender = useRef(0);\n\n if (unwraped) {\n return (\n <CustomThemeProvider customTheme={theme}>\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\n <Suspense>\n <Component {...props} />\n </Suspense>\n </NoThemePrevent>\n </CustomThemeProvider>\n );\n }\n return (\n <CustomThemeProvider customTheme={theme}>\n <NoThemePrevent avoidFirstRender={avoidFirstRender}>\n <Box className=\"variant__holder\" {...getVariant(stylesPath)}>\n <Suspense>\n <Component {...props} />\n </Suspense>\n </Box>\n </NoThemePrevent>\n </CustomThemeProvider>\n );\n },\n { displayName },\n );\n}\n\nconst NoThemePrevent = ({\n avoidFirstRender,\n children,\n}: {\n avoidFirstRender: MutableRefObject<number>;\n children: ReactNode;\n}) => {\n // eslint-disable-next-line no-param-reassign\n avoidFirstRender.current++;\n\n if (avoidFirstRender.current <= 1) return null;\n\n return <>{children}</>;\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { mainThemeEmitter } from './useMainTheme';\n\n/**\n * Esta función permite agregar estilos al tema principal de la aplicación, de\n * modo que estén disponibles para cualquier componente que lo requirea.\n *\n * @example\n *\n * injectStyles('buttons.myRedButton', {\n * variant: 'buttons.primary',\n * backgroundColor: 'red',\n * })\n */\nexport function injectStyles(path: string, styles: ThemeUICSSObject): void;\n\n/**\n * Esta función permite agregar estilos al tema principal de la aplicación, de\n * modo que estén disponibles para cualquier componente que lo requirea.\n *\n * @example\n *\n * injectStyles({\n * layout: {\n * panels: {\n * myPanel: {\n * ...\n * }\n * }\n * }\n * })\n */\nexport function injectStyles(styles: ThemeUICSSObject): void;\n\nexport function injectStyles(\n par1: string | ThemeUICSSObject,\n par2?: ThemeUICSSObject,\n) {\n const path = typeof par1 === 'string' ? par1 : '';\n const styles = typeof par1 === 'string' ? (par2 as ThemeUICSSObject) : par1;\n\n mainThemeEmitter.emit('newStyles', { path, styles });\n}\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { responsive, spacing } from '../../../../util';\nimport { getSelectedColors } from '../../../colors';\nimport getColorsByPath from '../../../colors/util/getColorsByPath';\nimport { getSelectionStyles } from './getSelectionStyles';\nimport { getColorsAndStatesByPath } from '../../../../methods';\n\nexport const primary: ThemeUICSSObject = {\n variant: 'colors.tables.primary',\n\n backgroundColor: 'components.primaryTable.body.backgroundColor',\n border: '1px solid',\n borderColor: 'components.primaryTable.borderColor',\n borderCollapse: 'separate',\n borderSpacing: 0,\n tableLayout: 'fixed',\n\n thead: {\n ...getColorsByPath('tables.primary.thead'),\n zIndex: 1,\n position: 'sticky',\n insetBlockStart: 0,\n\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\n 'th, td': {\n variant: 'buttons.primary',\n py: responsive({ 0: 3, 4: 4 }),\n px: responsive({ 0: 3, 4: 4 }),\n width: 'breakWidth',\n borderRadius: 0,\n borderStyle: 'solid',\n borderWidth: '1px',\n display: 'table-cell',\n verticalAlign: 'center',\n wordBreak: 'break-word',\n\n '&[role=\"presentation\"]': {\n display: 'none',\n },\n\n ...getColorsAndStatesByPath('components.primaryTable.header'),\n\n '& *': {\n color: 'inherit',\n },\n\n '&:last-of-type:not(td)': {\n maxWidth: '100%',\n width: '100%',\n },\n '.headButton__label': {\n textAlign: 'left',\n },\n '.headButton__resizer': {\n width: '20px',\n cursor: 'ew-resize',\n zIndex: 1000,\n position: 'absolute',\n right: '-10px',\n height: '100%',\n },\n '&:last-of-type .headButton__resizer': {\n right: '0px',\n },\n\n '&.additionalColumn': {\n minWidth: '50px',\n maxWidth: '50px',\n width: '50px',\n p: 0,\n textAlign: 'center',\n verticalAlign: 'center',\n },\n\n '.headButton__container': {\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 3,\n\n svg: {\n flexShrink: 0,\n },\n },\n\n '&>div': {\n color: 'components.primaryTable.header.color',\n\n svg: {\n color: 'components.primaryTable.body.color',\n },\n },\n '&:not(:last-of-type)': {\n '&>div': {\n borderRightWidth: '1px',\n },\n },\n },\n 'th.requiredFilterColumn': {\n borderLeft: '4px solid !important',\n borderLeftColor: 'palette.error.main !important',\n },\n },\n 'tr.filtersRow, tr.responsiveTable__filters__row': {\n backgroundColor: 'components.primaryTable.body.backgroundColor',\n\n 'th.noFilter': {\n background: 'transparent',\n },\n 'td.requiredFilter__Border': {\n borderLeftStyle: 'solid !important',\n borderLeftWidth: '4px !important',\n borderLeftColor: 'palette.error.main',\n },\n\n td: {\n 'input:not([disabled]), select:not([disabled])': {\n border: '1px solid white',\n },\n background: 'transparent',\n border: '1px solid',\n borderColor: 'components.primaryTable.body.borderColor',\n p: 0,\n },\n\n transition: 'height 0.3s',\n\n '&.hidden': {\n height: '0',\n overflow: 'hidden',\n p: spacing(0),\n border: 'none',\n\n '& *': {\n height: '0',\n overflow: 'hidden',\n fontSize: 0,\n lineHeight: 0,\n p: spacing(0),\n border: 'none',\n },\n },\n },\n },\n tbody: {\n tr: {\n borderBottomWidth: '1px',\n borderBottomStyle: 'solid',\n ...getColorsAndStatesByPath('components.primaryTable.body', {\n states: {\n disabled: false,\n readonly: false,\n active: false,\n hover: false,\n checked: false,\n focus: false,\n selected: false,\n },\n }),\n '&:nth-of-type(2n)': {\n backgroundColor: 'components.primaryTable.body.evenRowsBackgroundColor',\n },\n\n '&.non-selectable': {\n cursor: 'not-allowed',\n },\n\n '&.hidden': {\n display: 'none',\n },\n\n '&.locked': {\n background: 'palette.gray.900',\n td: {\n borderColor: 'palette.gray.850',\n },\n },\n\n ...getSelectedColors(),\n\n '&.draggingRow': {\n outline: '3px dotted',\n outlineColor: 'components.primaryTable.header.borderColor',\n outlineOffset: '-3px',\n\n '*': {\n outline: 'none !important',\n },\n },\n\n borderColor: 'components.primaryTable.body.borderColor',\n\n '.rowStatesList': {\n display: 'flex',\n gap: spacing(3),\n alignItems: 'center',\n\n svg: {\n width: 'smallIcon',\n height: 'smallIcon',\n cursor: 'pointer',\n },\n },\n\n td: {\n verticalAlign: 'top',\n wordBreak: 'break-word',\n\n border: '1px solid',\n borderColor: 'components.primaryTable.body.borderColor',\n\n '&.stickyColumn': {\n position: 'sticky',\n left: 0,\n backgroundColor: 'components.primaryTable.body.backgroundColor',\n },\n\n '.moreInformationButton': {\n width: '30px',\n height: '30px',\n padding: '3px',\n border: 'none',\n background: 'transparent',\n },\n },\n },\n td: {\n p: spacing(3),\n },\n\n '.responsiveTable__additionalInfoContainer': {\n display: 'grid',\n gridTemplateColumns: responsive({\n 0: 'repeat(2, 1fr)',\n 5: 'repeat(4, 1fr)',\n }),\n columnGap: 3,\n rowGap: 2,\n },\n '.responsiveTable__additionalInfoContainer .responsiveTable__additionalInfoItem.separator':\n {\n gridColumnStart: '1',\n gridColumnEnd: '5',\n borderBottom: '1px solid',\n borderBottomColor: 'palette.gray.700',\n height: 'auto',\n },\n },\n '.editionMode': {\n border: '3px solid',\n borderColor: 'components.primaryTable.header.borderColor',\n borderWidth: '1.5px',\n borderStyle: 'dotted',\n },\n\n '.stateCell': {\n width: '50px',\n maxWidth: '50px',\n minWidth: '50px',\n textAlign: 'center',\n verticalAlign: 'middle',\n },\n\n ...getSelectionStyles(),\n '.no__registers': {\n py: 6,\n minWidth: '200px',\n },\n '.requiredFilter__Column': {\n fontWeight: 'bold',\n },\n\n '.bold': {\n fontWeight: 'bold',\n },\n\n '.light': {\n color: '#6a6a6a',\n },\n\n '.additionalInfo__cell, .stateCell': {\n verticalAlign: 'middle',\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const information: ThemeUICSSObject = {\n width: '100%',\n\n border: '1px solid',\n borderColor: 'primary',\n borderCollapse: 'collapse',\n\n thead: {\n tr: {\n th: {\n bg: 'primary',\n color: 'white',\n textAlign: 'center',\n fontWeight: 'bold',\n p: spacing(4),\n },\n },\n },\n\n tbody: {\n tr: {\n 'td,th': {\n borderColor: 'muted',\n p: spacing(4),\n },\n\n '&:not(tr:last-of-type)': {\n 'td,th': {\n borderBottom: '1px solid',\n },\n },\n\n 'td:not(td:last-child),th:not(th:last-child)': {\n borderRight: '1px solid',\n },\n\n th: {\n textAlign: 'left',\n whiteSpace: 'nowrap',\n minWidth: 'min-content',\n width: 0,\n },\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n\nexport const accordion: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(2),\n\n '.responsiveTable__accordionElement__toggler': {\n variant: 'buttons.outline',\n borderWidth: '1px',\n display: 'flex',\n gap: spacing(3),\n alignItems: 'stretch',\n width: '100%',\n px: 4,\n py: 3,\n\n '&:hover h3': {\n color: 'palette.primary.contrastText',\n },\n\n '.accordionElement__toggler__checkbox': {\n flexShrink: 0,\n m: spacing(2),\n },\n\n '.accordionElement__toggler__button': {\n flexGrow: 100,\n display: 'flex',\n justifyContent: 'space-between',\n py: 2,\n pr: spacing(2),\n alignItems: 'center',\n\n '.accordionElement__toggler__label': {\n flexGrow: 100,\n m: spacing(0),\n textAlign: 'left',\n fontSize: 16,\n },\n\n '.accordionElement__toggler__expandIcon': {\n flexShrink: 0,\n svg: {\n width: '32px',\n },\n },\n },\n },\n\n '.responsiveTable__accordionElement__content': {\n '& > div': {\n backgroundColor: 'palette.background.paper',\n transition: 'padding-bottom 300ms, padding-top 300ms',\n px: 5,\n },\n\n '&.rah-static--height-zero': {\n '& > div': { py: 0 },\n },\n\n '&.rah-static--height-auto, &.rah-animating--down': {\n '& > div': { py: 5 },\n },\n '.priority_container': { display: 'flex', alignItems: 'center' },\n '.priority': { display: 'flex' },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\n\nexport const print: ThemeUICSSObject = {\n border: '2px solid',\n borderColor: 'printView.list.table.borderColor',\n\n 'td, th': {\n p: 3,\n textAlign: 'left',\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport tinycolor from 'tinycolor2';\n/* IMPORT HERE */\n\nexport const responsive: ThemeUICSSObject = {\n maxHeight: '100%',\n overflow: 'auto',\n position: 'relative',\n\n table: {\n width: '100%',\n },\n\n '&.isLoading': {\n overflow: 'hidden',\n },\n\n '.responsiveTable__isLoading': {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: tinycolor(window.currentPalette.background.paper)\n .setAlpha(0.7)\n .toRgbString(),\n zIndex: 1,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n\n '.cell__download__document': {\n display: 'flex',\n gap: 3,\n alignItems: 'center',\n justifyContent: 'start',\n\n '&, *': {\n color: 'palette.primary.main',\n },\n\n svg: {\n flexShrink: 0,\n },\n },\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport getColorsAndStatesByPath from '../../../colors/util/getColorsAndStatesByPath';\n\nexport const secondary: ThemeUICSSObject = {\n variant: 'layout.common.tables.primary',\n borderColor: 'components.secondaryTable.borderColor',\n\n '& thead': {\n 'tr:not(.filtersRow):not(.responsiveTable__filters__row)': {\n '& th, & td': () => ({\n ...getColorsAndStatesByPath('components.secondaryTable.header'),\n }),\n },\n },\n '& tbody': {\n tr: {\n '&:nth-of-type(2n)': {\n backgroundColor:\n 'components.secondaryTable.body.evenRowsBackgroundColor',\n },\n\n td: {\n borderColor: 'components.secondaryTable.body.borderColor',\n },\n\n '&[aria-selected=\"true\"]': {\n backgroundColor:\n 'components.secondaryTable.body.selectedRows.backgroundColor',\n '& td': {\n borderColor:\n 'components.secondaryTable.body.selectedRows.borderColor',\n },\n color: 'components.secondaryTable.body.selectedRows.color',\n },\n\n borderBottomWidth: '1px',\n borderBottomStyle: 'solid',\n ...getColorsAndStatesByPath('components.secondaryTable.body', {\n states: {\n disabled: false,\n readonly: false,\n active: false,\n hover: false,\n checked: false,\n focus: false,\n selected: false,\n },\n }),\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { primary } from './primary';\nimport { information } from './information';\nimport { accordion } from './accordion';\nimport { print } from './print';\nimport { responsive } from './responsive';\nimport { secondary } from './secondary';\n\nexport const tables: ThemeUICSSObject = {\n accordion,\n information,\n primary,\n print,\n responsive,\n secondary,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../../../../util';\n/* IMPORT HERE */\n\nexport const captcha: ThemeUICSSObject = {\n display: 'flex',\n flexDirection: 'column',\n gap: spacing(2),\n\n '.captcha__imageContainer': {\n border: '1px solid',\n borderColor: 'palette.border.field',\n p: spacing(4),\n },\n\n '.captcha__inputContainer': {\n display: 'flex',\n gap: spacing(2),\n justifyContent: 'stretch',\n\n input: {\n flexGrow: 1,\n width: '100%',\n },\n\n '.captcha__buttons': {\n width: '24px',\n flexDirection: 'column',\n display: 'flex',\n gap: spacing(2),\n flexShrink: 0,\n\n button: {\n width: '24px',\n height: '24px',\n p: '5px',\n variant: 'buttons.icon-outline',\n\n svg: {\n color: 'palette.text.primary',\n height: '16px',\n width: '16px',\n },\n },\n },\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { captcha } from './captcha';\n/* IMPORT HERE */\n\nexport const forms: ThemeUICSSObject = {\n captcha,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline, spacing } from '../../../../util';\nimport getColorState from '../../../colors/util/getColorState';\n\nconst primary: ThemeUICSSObject = {\n /* PREPEND HERE */\n position: 'relative',\n '[role=\"tree\"]:focus': {\n outline: 'none',\n '.focus': focusOutline,\n },\n\n ul: {\n listStyle: 'none',\n p: 0,\n },\n\n '.tree__searchLabelBox': {\n alignItems: 'center',\n borderRadius: '2px',\n display: 'flex',\n float: 'right',\n gap: spacing(3),\n justifyContent: 'center',\n position: 'sticky',\n right: '4px',\n top: '4px',\n transform: 'translateX(0)',\n width: '100%',\n zIndex: 'stickyElements',\n\n '.tree__loading': {\n position: 'fixed',\n top: 0,\n right: '4px',\n height: 'iconMd',\n width: 'iconMd',\n background: 'palette.background.paper',\n },\n\n button: {\n cursor: 'pointer',\n },\n },\n\n '.tree__searchLabel': {\n alignItems: 'center',\n display: 'flex',\n gap: spacing(3),\n justifyContent: 'center',\n position: 'fixed',\n p: '2px 5px',\n right: 0,\n top: 0,\n\n ...getColorState(\n { backgroundColor: 'palette.background.paper' },\n 'selected',\n ),\n },\n\n '[role=\"treeitem\"]': {\n '&[aria-expanded=\"false\"] ul': {\n display: 'none',\n },\n\n '&[aria-selected=\"true\"] > .tree__nodeItemLabel': getColorState(\n { backgroundColor: 'palette.background.paper' },\n 'selected',\n ),\n\n background: 'transparent',\n },\n\n '.tree__nodeItemLabel': {\n display: 'flex',\n flexWrap: 'nowrap',\n gap: 3,\n alignItems: 'center',\n wordBreak: 'break-all',\n\n '.button__content': {\n textAlign: 'left',\n },\n\n '& > *:not(.tree__nodeItemLabelRenderer)': {\n flexShrink: 0,\n textAlign: 'left',\n },\n\n '&:hover': getColorState(\n { backgroundColor: 'palette.background.paper' },\n 'hover',\n ),\n },\n\n '.spacer': {\n borderLeft: '1px solid',\n borderLeftColor: 'palette.border.section',\n width: '20px',\n alignSelf: 'stretch',\n },\n};\n\nexport default primary;\n","import { ThemeUICSSObject } from 'theme-ui';\nimport primary from './primary';\n\nexport const trees: ThemeUICSSObject = {\n primary,\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { modals } from './modals';\nimport { tables } from './tables';\nimport { forms } from './forms';\nimport { trees } from './trees';\n/* IMPORT HERE */\nexport const common: ThemeUICSSObject = {\n forms,\n modals,\n tables,\n trees,\n /* PREPEND HERE */\n};\n","import { ThemeUIStyleObject } from 'theme-ui';\n\nexport const transitions: ThemeUIStyleObject = {\n '@keyframes growHorizontal': {\n from: { transform: 'scaleX(0)' },\n to: { transform: 'scaleY(100%)' },\n },\n '.hamburguerMenu': { display: 'none' },\n '.hamburguerMenu-enter,\\n.hamburguerMenu-appear': {\n display: 'block',\n transform: 'scale(0.7)',\n opacity: 0,\n },\n '.hamburguerMenu-enter-active,\\n.hamburguerMenu-appear-active': {\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transformOrigin: 'right top',\n opacity: 1,\n },\n '.hamburguerMenu-enter-done,\\n.hamburguerMenu-appear-done': {\n display: 'block',\n },\n '.hamburguerMenu-exit': {\n display: 'block',\n transform: 'scale(1)',\n opacity: 1,\n },\n '.hamburguerMenu-exit-active': {\n transform: 'scale(0.7) translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n display: 'block',\n opacity: 0,\n transformOrigin: 'right top',\n },\n '.hamburguerMenu-exit-done': { display: 'none' },\n '.modal-enter,\\n.modal-appear': { opacity: 0, transform: 'scale(0.8)' },\n '.modal-enter-active,\\n.modal-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.modal-exit': { opacity: 0 },\n '.modal-exit-done': { opacity: 0, display: 'none' },\n '.modal-exit-active': {\n opacity: 0,\n transform: 'scale(100)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.overlayAnimation-enter .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear .overlayAnimation:not(.not-released)':\n {\n opacity: 0,\n },\n '.overlayAnimation-enter-active .overlayAnimation:not(.not-released),\\n.overlayAnimation-appear-active .overlayAnimation:not(.not-released)':\n {\n opacity: 1,\n transition: 'opacity 150ms',\n },\n '.overlayAnimation-exit': { opacity: 1 },\n '.overlayAnimation-exit-active': { opacity: 0, transition: 'opacity 150ms' },\n '.fromRight-enter,\\n.fromRight-appear': { transform: 'translateX(550px)' },\n '.fromRight-enter-active,\\n.fromRight-appear-active': {\n transition: 'transform 150ms',\n transform: 'translateX(0)',\n },\n '.fromRight-exit': { transform: 'translateX(0)' },\n '.fromRight-exit-active': {\n transition: 'transform 150ms',\n transform: 'translateX(550px)',\n },\n '.notification-enter,\\n.notification-appear': {\n opacity: 0,\n transform: 'scale(0.8)',\n },\n '.notification-enter-active,\\n.notification-appear-active': {\n opacity: 1,\n transform: 'translateX(0)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n '.notification-exit': { opacity: 1 },\n '.notification-exit-active': {\n opacity: 0,\n transform: 'scale(0.8)',\n transition: 'opacity 150ms, transform 150ms',\n transitionDelay: '0',\n },\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { focusOutline, responsive, spacing } from '../../util';\nimport { transitions } from './transitions';\n// import { getPalette } from '../colors';\n\nexport const root: ThemeUICSSObject = {\n '*': {\n fontFamily: 'body',\n fontWeight: 'body',\n\n code: {\n fontFamily: 'monospace',\n },\n\n '&:focus': focusOutline,\n },\n\n body: {\n minHeight: '100vh',\n },\n h1: {\n fontSize: responsive({ 0: 26, 3: 32 }),\n },\n h2: {\n fontSize: responsive({ 0: 22, 3: 28 }),\n },\n h3: {\n fontSize: responsive({ 0: 19, 3: 25 }),\n },\n h4: {\n fontSize: responsive({ 0: 18, 3: 22 }),\n },\n h5: {\n fontSize: responsive({ 0: 18, 3: 22 }),\n },\n h6: {\n fontSize: responsive({ 0: 17, 3: 17 }),\n },\n\n 'h1,h2,h3,h4,h5,h6': {\n letterSpacing: 'heading',\n lineHeight: 'heading',\n variant: 'text.title',\n },\n '*:not(h1, h2, h3, h4, h5, h6, code)': {\n fontFamily: 'body',\n fontSize: 16,\n fontWeight: 'body',\n letterSpacing: 'body',\n lineHeight: 'body',\n },\n a: {\n textDecoration: 'underline',\n },\n 'textarea,a': {\n transition: 'color 200ms ease-out',\n ':focus': {\n ...focusOutline,\n },\n ':focus-visible': {\n ...focusOutline,\n },\n },\n '*:focus': focusOutline,\n ul: {\n listStyle: 'none',\n listStyleType: 'none',\n margin: 0,\n padding: 0,\n },\n\n abbr: {\n '&.required': {\n textDecoration: 'none',\n border: 'none',\n mx: 1,\n alignSelf: 'baseline',\n fontWeight: 'bold',\n color: 'danger',\n },\n },\n table: {\n borderCollapse: 'separate',\n borderSpacing: 0,\n },\n\n // '[aria-selected=\"true\"], .selected': {\n // ...getPalette().getOneState(\n // { backgroundColor: getPalette().primary.main },\n // 'selected',\n // ),\n // },\n\n '& label': {\n display: 'flex',\n\n '& > span': {\n mb: spacing(1),\n fontWeight: 'bold',\n },\n\n '&.required': {\n position: 'relative',\n '&::before': {\n color: 'danger',\n position: 'absolute',\n content: '\"*\"',\n top: 0,\n left: '-10px',\n },\n\n '*:invalid': {\n borderColor: 'danger',\n },\n },\n },\n '.bold': {\n fontWeight: 'bold',\n },\n\n ...transitions,\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { common } from './common';\nimport { root } from '../rootStyles/rootStyles';\n/* IMPORT HERE */\n\nexport const layout: Record<string, ThemeUICSSObject> = {\n common,\n root,\n /* PREPEND HERE */\n};\n","import { ThemeUICSSObject } from 'theme-ui';\nimport { spacing } from '../util';\n\nconst text: Record<string, ThemeUICSSObject> = {\n default: {\n color: 'palette.text.primary',\n fontFamily: 'body',\n fontWeight: 'body',\n fontSize: 16,\n m: spacing(0),\n width: '100%',\n },\n title: {\n letterSpacing: 'heading',\n wordBreak: 'normal',\n color: 'title',\n fontFamily: 'heading',\n lineHeight: 'heading',\n fontWeight: 'heading',\n },\n};\n\nexport default text;\n","import { ColorModesScale, Theme } from 'theme-ui';\nimport { getThemeColorsObject } from './colors';\nimport { alerts } from './alerts';\nimport buttons from './buttons';\nimport forms from './forms';\nimport { layout } from './layout';\nimport text from './text';\nimport { root } from './rootStyles/rootStyles';\n\nexport const baseTheme: Theme = {\n alerts,\n breakpoints: ['0px', '250px', '500px', '700px', '1000px', '1260px', '1580px'],\n buttons,\n colors: getThemeColorsObject() as unknown as ColorModesScale,\n fonts: {\n body: 'Arial',\n heading: 'inherit',\n monospace: 'Menlo, monospace',\n },\n fontSizes: Array(60)\n .fill(1)\n .map((_, i) => {\n return i;\n }),\n forms: forms(),\n layout,\n lineHeights: {\n body: 1.5,\n heading: 1.125,\n },\n letterSpacings: {\n body: '0.01em',\n heading: '-0.015em',\n },\n radii: {\n alerts: 0,\n buttons: 0,\n default: 0,\n },\n shadows: {\n modals: '',\n tabs: '',\n },\n space: [0, 2, 4, 8, 12, 16, 24, 32, 40, 48, 64, 80, 96, 112, 128],\n sizes: {\n // Layout\n applicationMenu: '350px',\n floatingNotifications: 'min(550px, calc(100vw - 30px))',\n root: '992px',\n mainImage: '64px',\n twoColumns: 'calc(992px + 350px)',\n twoColumnsCentered: 'calc(992px + 350px + 16px)',\n\n // Icons\n iconXs: '12px',\n iconSm: '16px',\n iconMd: '22px',\n iconLg: '32px',\n iconXl: '48px',\n },\n text,\n zIndices: {\n stickyElements: 600,\n menu: 1000,\n maximizedTables: 1100,\n modal: 1200,\n tooltip: 1400,\n notifications: 1600,\n contextMenu: 1800,\n },\n styles: { root },\n useRootStyles: true,\n};\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { merge } from 'lodash';\nimport { EventEmitter, setValueByPath } from '@apia/util';\nimport { baseTheme } from '../base/baseTheme';\n\nconst makeTheme = <T extends Theme>(t: T) => {\n return t;\n};\n\nlet declaredStyles: ThemeUICSSObject = {};\n\nexport const mainThemeEmitter =\n new (class MainThemeEmitter extends EventEmitter<{\n newStyles: {\n path: string;\n styles: ThemeUICSSObject;\n };\n }> {})();\n\nexport function declareStyles(\n path: string,\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\n) {\n const newStyles = {};\n setValueByPath(newStyles, path, styles);\n declaredStyles = merge(declaredStyles, newStyles);\n}\n\nexport function getMainTheme(customTheme?: Theme) {\n return makeTheme(\n merge(baseTheme, { layout: declaredStyles }, customTheme ?? {}),\n );\n}\n","import { Theme, ThemeUICSSObject } from 'theme-ui';\nimport { merge } from 'lodash';\nimport { EventEmitter, setValueByPath, useMount } from '@apia/util';\nimport { useState } from 'react';\nimport { getMainTheme } from './getMainTheme';\n\nlet declaredStyles: ThemeUICSSObject = {};\n\nconst injectedStyles: Record<string, ThemeUICSSObject> = {};\n\nexport const mainThemeEmitter =\n new (class MainThemeEmitter extends EventEmitter<{\n newStyles: {\n path: string;\n styles: ThemeUICSSObject;\n };\n }> {})();\n\nfunction handleNewStyles(ev: { path: string; styles: ThemeUICSSObject }) {\n injectedStyles[ev.path] = ev.styles;\n}\n\nmainThemeEmitter.on('newStyles', handleNewStyles);\n\nexport function declareStyles(\n path: string,\n styles: ThemeUICSSObject | Record<string, ThemeUICSSObject>,\n) {\n const newStyles = {};\n setValueByPath(newStyles, path, styles);\n declaredStyles = merge(declaredStyles, newStyles);\n}\n\nexport function useMainTheme(customTheme?: Theme) {\n const [theme, setTheme] = useState<Theme>(getMainTheme(customTheme));\n\n useMount(() => {\n setTheme((current) => {\n mainThemeEmitter.off('newStyles', handleNewStyles);\n let initialTheme = { ...current };\n Object.entries(injectedStyles).forEach(([path, styles]) => {\n const newStyles = setValueByPath({}, path, styles);\n initialTheme = merge(initialTheme, newStyles);\n });\n return initialTheme;\n });\n return mainThemeEmitter.on('newStyles', (ev) => {\n const newStyles = setValueByPath({}, ev.path, ev.styles);\n setTheme((current) => merge({ ...current }, newStyles));\n });\n });\n\n return theme;\n}\n","import { Box, Theme, ThemeProvider as TUIThemeProvider } from 'theme-ui';\nimport { createContext, ReactNode } from 'react';\nimport { useMainTheme } from './methods/useMainTheme';\nimport { getVariant } from './util';\n\ninterface TThemeProvider {\n children: ReactNode;\n customTheme?: Theme;\n}\n\nlet timeout = -1;\nfunction logTheme(theme: unknown) {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n console.info({ theme });\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, 100) as any;\n}\n\nexport const ThemeProviderContext = createContext<Theme>({} as Theme);\n\nexport const ThemeProvider = ({ children, customTheme }: TThemeProvider) => {\n const theme: Theme = useMainTheme(customTheme);\n\n logTheme(theme);\n\n return (\n <ThemeProviderContext.Provider value={theme}>\n <TUIThemeProvider theme={theme}>\n <Box {...getVariant('layout.root')}>{children}</Box>\n </TUIThemeProvider>\n </ThemeProviderContext.Provider>\n );\n};\n"],"names":["responsive","__spreadValues","_a","_b","_c","__spreadProps","forms","focusOutline","TUIThemeProvider","primary"],"mappings":"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"}