@uni-design-system/uni-core 3.0.0 → 3.0.1

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/README.md CHANGED
@@ -17,6 +17,7 @@ pnpm add @uni-design-system/uni-core
17
17
  ## 🚚 Distribution Formats
18
18
 
19
19
  This package is compiled using **Vite** as a dual-package distribution to ensure broad ecosystem compatibility with no strict ESM extension path errors:
20
+
20
21
  - **ESM (`dist/esm/index.js`)**: For modern, tree-shakable environments.
21
22
  - **CommonJS (`dist/cjs/index.cjs`)**: Explicit fallback extensions for legacy bundlers (like Webpack 5).
22
23
  - **Types (`dist/types/`)**: Pre-isolated TypeScript definitions.
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":[],"sources":["../../src/concepts/animation/keyframes.constants.ts","../../src/concepts/color/color.records.ts","../../src/concepts/color/color.utils.ts","../../src/concepts/color/color.helper.ts","../../src/concepts/elevation/zIndex.ts","../../src/concepts/gradient/gradient.helper.ts","../../src/concepts/layout/layout.helper.ts","../../src/concepts/shadow/shadow.utils.ts","../../src/concepts/shadow/shadow.records.ts","../../src/concepts/theme/palettes/theme.palette.ts","../../src/concepts/theme/themes/base.theme.ts","../../src/concepts/theme/themes/dark.theme.ts","../../src/concepts/theme/themes/light.theme.ts","../../src/concepts/theme/theme.records.ts","../../src/concepts/typography/typography.records.ts","../../src/utils/getValue.ts","../../src/utils/debounce.ts"],"sourcesContent":["import type { StyleExpression } from '../style/style.types';\n\nexport type PercentageString = `${number}%`;\nexport type KeyframesExpression = Record<PercentageString, StyleExpression>;\n\nexport const fadeIn: KeyframesExpression = {\n '0%': {\n opacity: 0,\n },\n '100%': {\n opacity: 1,\n },\n};\n\nexport const fadeOut: KeyframesExpression = {\n '0%': {\n opacity: 1,\n },\n '100%': {\n opacity: 0,\n },\n};\n\nexport const expandFadeIn = {\n '0%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n '100%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n};\n\nexport const collapseFadeOut = {\n '0%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n '100%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n};\n","import { Range } from './color.model';\nimport { ColorCategory, ColorRole, UtilityColorRole } from './color.types';\n\nexport const CategorySaturation: Record<ColorCategory, Range> = {\n jewel: { low: 73, high: 83 },\n pastel: { low: 14, high: 21 },\n earth: { low: 36, high: 41 },\n neutral: { low: 1, high: 10 },\n florescent: { low: 63, high: 100 },\n shades: { low: 0, high: 0 },\n};\n\nexport const CategoryLightness: Record<ColorCategory, Range> = {\n jewel: { low: 56, high: 76 },\n pastel: { low: 89, high: 96 },\n earth: { low: 36, high: 77 },\n neutral: { low: 70, high: 99 },\n florescent: { low: 82, high: 100 },\n shades: { low: 0, high: 100 },\n};\n\nexport const RoleHues: Record<ColorRole | UtilityColorRole, Range> = {\n primary: { low: 73, high: 83, default: 0 },\n secondary: { low: 14, high: 21, default: 0 },\n tertiary: { low: 36, high: 41, default: 0 },\n inverse: { low: 63, high: 100, default: 0 },\n ghost: { low: 0, high: 0, default: 0 },\n warn: { low: 320, high: 20, default: 0 }, // red\n alert: { low: 40, high: 70, default: 60 }, // yellow\n success: { low: 90, high: 150, default: 120 }, // green\n info: { low: 200, high: 260, default: 240 }, // blue\n};\n","import { Range } from './color.model';\n\nexport const randomRangeValue = ({ low, high }: Range): number => {\n low = Math.ceil(low);\n high = Math.floor(high);\n return Math.floor(Math.random() * (high - low + 1)) + low;\n};\n\nexport const cycle = (angle: number): number => {\n if (angle > 360) return angle - 360;\n if (angle < 0) return angle + 360;\n return angle;\n};\n\nexport const getAnalogousHues = (hue: number): number[] => [cycle(hue + 30), cycle(hue + 60)];\nexport const getComplimentaryHue = (hue: number): number => cycle(hue + 180);\nexport const getTriadicHues = (hue: number): number[] => [cycle(hue + 120), cycle(hue - 120)];\nexport const getSplitComplimentaryHues = (hue: number): number[] => [\n cycle(hue + 150),\n cycle(hue - 150),\n];\n","import { HSL, HSLA, RGB, UniColor } from './color.model';\nimport { CategoryLightness, CategorySaturation, RoleHues } from './color.records';\nimport { randomRangeValue } from './color.utils';\n\nexport function HSLAToString({ hue, saturation, lightness, alpha = 1 }: HSLA): string {\n return `hsla(${hue}, ${saturation}%, ${lightness}%, ${alpha})`;\n}\n\nexport function RGBToString({ red, green, blue }: RGB): string {\n return `rgb(${red}, ${green}, ${blue})`;\n}\n\nexport function uniColor({ role, category, alpha = 1 }: UniColor): string {\n const hue = randomRangeValue(RoleHues[role]);\n const saturation = randomRangeValue(CategorySaturation[category]);\n const lightness = randomRangeValue(CategoryLightness[category]);\n\n return HSLAToString({ hue, saturation, lightness, alpha });\n}\n\nexport const RGBToHSL = ({ red, green, blue }: RGB): HSL => {\n red /= 255;\n green /= 255;\n blue /= 255;\n const l = Math.max(red, green, blue);\n const s = l - Math.min(red, green, blue);\n const h = s\n ? l === red\n ? (green - blue) / s\n : l === green\n ? 2 + (blue - red) / s\n : 4 + (red - green) / s\n : 0;\n return {\n hue: 60 * h < 0 ? 60 * h + 360 : 60 * h,\n saturation: 100 * (s ? (l <= 0.5 ? s / (2 * l - s) : s / (2 - (2 * l - s))) : 0),\n lightness: (100 * (2 * l - s)) / 2,\n };\n};\n\n// Future Methods - https://codepen.io/jkantner/pen/VVEMRK\n","export type ZIndexableElements =\n | 'dropdown'\n | 'sticky'\n | 'fixed'\n | 'backdrop'\n | 'dialog'\n | 'popover'\n | 'tooltip'\n | 'overlay';\n\nexport const Z_INDEX: Record<ZIndexableElements, number> = {\n dropdown: 1000,\n sticky: 1020,\n fixed: 1030,\n backdrop: 1040,\n dialog: 1050,\n popover: 1060,\n tooltip: 1070,\n overlay: 1080,\n};\n","import { Gradient } from './gradient.model';\n\nexport function gradient(config: Gradient): string {\n return ``;\n}\n","import { Size } from '../core.types';\nimport { DeviceOrientation } from './layout.types';\n\nexport function getDeviceSize(height: number, width: number): Size {\n if (!height || !width) return 'md';\n\n const max = Math.max(height, width);\n\n if (max <= 600)\n // Small Mobile\n return 'xs';\n\n if (max <= 960)\n // Large Mobile\n return 'sm';\n\n if (max <= 1264)\n // Tablets\n return 'md';\n\n if (max <= 1904)\n // Laptops & Monitors\n return 'lg';\n\n return 'xl'; // Large Monitors\n}\n\nexport function getDeviceOrientation(height: number, width: number): DeviceOrientation {\n if (!height || !width) return 'landscape';\n\n return height > width ? 'portrait' : 'landscape';\n}\n","import { BoxShadow, ShadowDefinition } from './shadow.model';\n\n// box-shadow: none|h-offset v-offset blur spread color\nexport const GetBoxShadow = ({ offset, blur, opacity }: BoxShadow): string => {\n return `0 ${offset}px ${blur}px rgba(0,0,0,0.${opacity})`;\n};\n\nexport const GetBoxShadows = ({ umbra, penumbra }: ShadowDefinition): string => {\n return GetBoxShadow(umbra) + ', ' + GetBoxShadow(penumbra);\n};\n","import { ShadowDefinition } from './shadow.model';\nimport { ShadowElevation } from './shadow.types';\nimport { GetBoxShadows } from './shadow.utils';\n\nexport const ShadowMap: Record<ShadowElevation, ShadowDefinition> = {\n pressed: {\n umbra: {\n offset: 1,\n blur: 2,\n opacity: 24,\n },\n penumbra: {\n offset: 1,\n blur: 3,\n opacity: 12,\n },\n },\n raised: {\n umbra: {\n offset: 3,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 3,\n blur: 6,\n opacity: 16,\n },\n },\n focussed: {\n umbra: {\n offset: 6,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 10,\n blur: 20,\n opacity: 19,\n },\n },\n navigation: {\n umbra: {\n offset: 10,\n blur: 10,\n opacity: 22,\n },\n penumbra: {\n offset: 14,\n blur: 28,\n opacity: 25,\n },\n },\n modal: {\n umbra: {\n offset: 15,\n blur: 12,\n opacity: 22,\n },\n penumbra: {\n offset: 19,\n blur: 38,\n opacity: 30,\n },\n },\n};\n\nexport const ShadowCssMap: Record<ShadowElevation, string> = {\n pressed: GetBoxShadows(ShadowMap['pressed']),\n raised: GetBoxShadows(ShadowMap['raised']),\n focussed: GetBoxShadows(ShadowMap['focussed']),\n navigation: GetBoxShadows(ShadowMap['navigation']),\n modal: GetBoxShadows(ShadowMap['modal']),\n};\n","export interface ThemePalette {\n primary: string;\n secondary: string;\n tertiary: string;\n quaternary: string;\n warn: string;\n success: string;\n light: string;\n onLight: string;\n onLightVariant: string;\n dark: string;\n onDark: string;\n background: string;\n disabled: string;\n onDisabled: string;\n}\n\n// ==========================================\n// 🏛️ 1. GENERIC BASE PALETTES (WCAG AA)\n// ==========================================\n\nexport const genericLightTheme: ThemePalette = {\n primary: '#0066B2',\n secondary: '#008528',\n tertiary: '#D97706',\n quaternary: '#52525B',\n warn: '#DC2626',\n success: '#008528',\n light: '#F4F4F5',\n onLight: '#18181B',\n onLightVariant: 'rgba(24, 24, 27, 0.6)',\n dark: '#18181B',\n onDark: 'rgba(255, 255, 255, 0.85)',\n background: '#FFFFFF',\n disabled: 'rgba(24, 24, 27, 0.08)',\n onDisabled: 'rgba(24, 24, 27, 0.4)',\n};\n\nexport const genericDarkTheme: ThemePalette = {\n primary: '#4DABFF',\n secondary: '#47D973',\n tertiary: '#FBBF24',\n quaternary: '#A1A1AA',\n warn: '#FCA5A5',\n success: '#47D973',\n light: '#27272A',\n onLight: '#F4F4F5',\n onLightVariant: 'rgba(244, 244, 245, 0.5)',\n dark: '#09090B',\n onDark: 'rgba(244, 244, 245, 0.85)',\n background: '#09090B',\n disabled: 'rgba(244, 244, 245, 0.12)',\n onDisabled: 'rgba(244, 244, 245, 0.4)',\n};\n\n// ==========================================\n// 🎨 2. STYLIZED PALETTES (Vibrant Varsity)\n// ==========================================\n\nexport const stylizedLightTheme: ThemePalette = {\n primary: '#6366F1',\n secondary: '#EC4899',\n tertiary: '#F59E0B',\n quaternary: '#64748B',\n warn: '#EF4444',\n success: '#10B981',\n light: '#F8FAFC',\n onLight: '#0F172A',\n onLightVariant: 'rgba(15, 23, 42, 0.6)',\n dark: '#0F172A',\n onDark: 'rgba(255, 255, 255, 0.9)',\n background: '#FFFFFF',\n disabled: 'rgba(15, 23, 42, 0.08)',\n onDisabled: 'rgba(15, 23, 42, 0.4)',\n};\n\nexport const stylizedDarkTheme: ThemePalette = {\n primary: '#818CF8',\n secondary: '#F472B6',\n tertiary: '#FBBF24',\n quaternary: '#94A3B8',\n warn: '#F87171',\n success: '#34D399',\n light: '#1E293B',\n onLight: '#F8FAFC',\n onLightVariant: 'rgba(248, 250, 252, 0.5)',\n dark: '#020617',\n onDark: 'rgba(248, 250, 252, 0.85)',\n background: '#020617',\n disabled: 'rgba(248, 250, 252, 0.12)',\n onDisabled: 'rgba(248, 250, 252, 0.4)',\n};\n\n// ==========================================\n// 👁️ 3. HIGH-CONTRAST PALETTES (WCAG AAA)\n// ==========================================\n\nexport const highContrastLightTheme: ThemePalette = {\n primary: '#004080',\n secondary: '#005914',\n tertiary: '#804B00',\n quaternary: '#262626',\n warn: '#990000',\n success: '#005914',\n light: '#FFFFFF',\n onLight: '#000000',\n onLightVariant: '#262626',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#FFFFFF',\n disabled: '#CCCCCC',\n onDisabled: '#000000', // High visibility fallback override for high contrast users\n};\n\nexport const highContrastDarkTheme: ThemePalette = {\n primary: '#99CCFF',\n secondary: '#86FFAC',\n tertiary: '#FFE066',\n quaternary: '#E5E5E5',\n warn: '#FF9999',\n success: '#86FFAC',\n light: '#121212',\n onLight: '#FFFFFF',\n onLightVariant: '#E5E5E5',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#000000',\n disabled: '#333333',\n onDisabled: '#FFFFFF', // High visibility fallback override for high contrast users\n};\n","import { Button } from '../../button';\nimport { Container } from '../../container';\nimport type { UniTheme } from '../theme.model';\n\nimport { genericLightTheme as palette } from '../palettes/theme.palette';\n\nconst BaseButton: Button = {\n borderRadius: 100,\n color: 'primary-container',\n contentColor: 'on-primary-container',\n verticalPadding: { xxs: 2, xs: 5, sm: 8, md: 12, lg: 16, xl: 20, xxl: 24 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n};\n\nconst BaseContainer: Container = {\n color: 'primary-container',\n contentColor: 'on-primary-container',\n borderRadii: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n horizontalPadding: { xxs: 6, xs: 12, sm: 18, md: 24, lg: 30, xl: 36, xxl: 42 },\n contentSpacing: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n};\n\nexport const BaseTheme: UniTheme = {\n id: 'BaseTheme',\n name: 'Base Theme',\n colors: {\n primary: '#6750A4',\n 'on-primary': '#FFFFFF',\n 'primary-container': '#EADDFF',\n 'on-primary-container': '#21005E',\n secondary: '#625B71',\n 'on-secondary': '#FFFFFF',\n 'secondary-container': '#E8DEF8',\n 'on-secondary-container': '#1E192B',\n tertiary: '#7D5260',\n 'on-tertiary': '#FFFFFF',\n 'tertiary-container': '#FFD8E4',\n 'on-tertiary-container': '#370B1E',\n error: '#B3261E',\n 'on-error': '#FFFFFF',\n 'error-container': '#F9DEDC',\n 'on-error-container': '#370B1E',\n background: '#FFFBFE',\n 'on-background': '#1C1B1F',\n surface: '#FFFBFE',\n 'on-surface': '#1C1B1F',\n 'surface-variant': '#E7E0EC',\n 'on-surface-variant': '#49454E',\n outline: '#79747E',\n shadow: '#000000',\n 'surface-tint': '#6750A4',\n 'inverse-surface': '#313033',\n 'on-inverse-surface': '#F4EFF4',\n 'on-inverse-surface-primary': '#D0BCFF',\n scrim: '#000000',\n transparent: 'rgba(0,0,0,0)',\n\n 'primary-surface': palette.background,\n 'on-primary-surface': palette.onLight,\n 'on-primary-surface-variant': palette.primary,\n },\n typography: {\n 'display-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 57,\n lineHeight: 64,\n fontWeight: 'normal',\n letterSpacing: -0.25,\n },\n 'display-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 45,\n lineHeight: 52,\n fontWeight: 'normal',\n },\n 'display-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 36,\n lineHeight: 44,\n fontWeight: 'normal',\n },\n 'headline-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 32,\n lineHeight: 40,\n fontWeight: 'normal',\n },\n 'headline-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 28,\n lineHeight: 36,\n fontWeight: 'normal',\n },\n 'headline-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 24,\n lineHeight: 32,\n fontWeight: 'normal',\n },\n 'title-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 22,\n lineHeight: 28,\n fontWeight: 'normal',\n },\n 'title-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n fontWeight: 'medium',\n letterSpacing: 0.15,\n },\n 'title-small': {\n fontFamily: 'Red Hat Display',\n fontWeight: 'medium',\n fontSize: 14,\n lineHeight: 20,\n letterSpacing: 0.1,\n },\n 'body-1-long': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 22,\n },\n 'body-1-short': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n 'body-2-long': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 18,\n },\n 'body-2-short': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n 'subtitle-1': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n letterSpacing: 0.15,\n },\n 'subtitle-2': {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n letterSpacing: 0.1,\n },\n label: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n button: {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n textTransform: 'capitalize',\n },\n caption: {\n fontFamily: 'Roboto',\n fontSize: 12,\n lineHeight: 18,\n letterSpacing: 0.4,\n },\n overline: {\n fontFamily: 'Red Hat Display',\n fontSize: 10,\n lineHeight: 18,\n letterSpacing: 1.5,\n textTransform: 'uppercase',\n },\n paragraph: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n quote: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n note: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 22,\n fontStyle: 'italic',\n },\n },\n\n borders: {\n primary: `1px solid ${palette.primary}`,\n secondary: `1px solid ${palette.secondary}`,\n tertiary: `1px solid ${palette.tertiary}`,\n quaternary: `1px solid ${palette.quaternary}`,\n warn: `1px solid ${palette.warn}`,\n success: `1px solid ${palette.secondary}`,\n light: `1px solid ${palette.light}`,\n dark: `1px solid ${palette.dark}`,\n dotted: `1px dotted ${palette.dark}`,\n },\n\n shadows: {\n raised:\n 'rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px',\n menu: 'rgba(0, 0, 0, 0.2) 0px 3px 3px -2px, rgba(0, 0, 0, 0.14) 0px 3px 4px 0px, rgba(0, 0, 0, 0.12) 0px 1px 8px 0px;',\n dialog:\n 'rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px',\n warn: '0 0 5px rgba(255, 0, 0, 0.5), inset 0 0 5px rgba(255, 0, 0, 0.3)',\n },\n\n spacing: {\n none: 'none',\n xxs: '2px',\n xs: '4px',\n sm: '8px',\n md: '16px',\n lg: '32px',\n xl: '64px',\n },\n\n thicknesses: {\n thin: 1,\n standard: 2,\n thick: 4,\n },\n\n radii: {\n none: 'none',\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n max: '999px',\n },\n buttons: {\n elevated: {\n ...BaseButton,\n color: 'surface',\n contentColor: 'on-surface',\n shadowElevation: 'raised',\n },\n filled: {\n ...BaseButton,\n color: 'primary',\n },\n 'filled-secondary': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n },\n outlined: {\n ...BaseButton,\n color: 'transparent',\n borderColor: 'primary',\n contentColor: 'on-primary',\n borderWidth: 1,\n },\n text: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n },\n icon: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n horizontalPadding: BaseButton.verticalPadding,\n },\n 'floating-action': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n borderRadii: { xxs: 3, xs: 5, sm: 8, md: 12, lg: 16, xl: 12, xxl: 20 },\n shadowElevation: 'navigation',\n verticalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n },\n },\n containers: {\n card: {\n ...BaseContainer,\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'interactive',\n },\n screen: {\n ...BaseContainer,\n color: 'background',\n contentColor: 'on-background',\n },\n modal: {\n ...BaseContainer,\n borderRadii: { xxs: 8, xs: 16, sm: 22, md: 28, lg: 32, xl: 38, xxl: 44 },\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'static',\n shadowElevation: 'modal',\n maxWidth: 560,\n },\n },\n typefaces: {},\n icons: {},\n components: {\n alert: {\n options: {\n topPosition: 40,\n borderRadius: 'sm',\n transitionSpeed: 0.35,\n elevation: 'md',\n },\n },\n checkbox: {\n options: {\n size: 20,\n },\n },\n dialog: {\n options: {\n borderRadius: 'lg',\n color: 'primary-surface',\n border: 'quaternary',\n padding: 'sm',\n elevation: 'dialog',\n backdrop: {\n background: 'rgba(255, 255, 255, 0.6)',\n backdropFilter: 'blur(2px)',\n },\n },\n },\n dialogHeader: {\n options: {\n borderRadius: 'max',\n color: 'primary',\n height: 48,\n textRole: 'title-large',\n textAlign: 'center',\n closeButtonIcon: 'close',\n closeButtonSize: 'md',\n },\n },\n dropdown: {\n options: {\n border: 'none',\n borderRadius: 'xxs',\n color: 'primary-surface',\n shadow: 'menu',\n },\n },\n footer: {\n options: {\n height: 52,\n color: 'primary',\n logoHeight: 18.6,\n logoPadding: 'md',\n },\n },\n input: {\n options: {\n typeFace: 'input',\n color: 'primary-surface',\n textColor: 'on-primary-surface',\n disabledColor: 'disabled-surface',\n disabledTextColor: 'on-disabled-surface',\n border: 'light',\n borderRadius: 'xs',\n errorShadow: 'warn',\n errorBorder: 'warn',\n height: 32,\n paddingLeft: 'sm',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n multiSelectDropdown: {\n options: {\n textRole: 'input',\n textColor: 'on-primary-surface',\n dividerBorder: 'light',\n searchInputBorder: 'light',\n searchInputBorderRadius: 'xxs',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n badge: {\n options: {\n borderRadius: 'xxs',\n },\n },\n button: {\n fixed: {\n position: 'relative',\n overflow: 'hidden',\n outline: '0',\n border: '0',\n cursor: 'pointer',\n fontFamily: 'Euphemia, sans-serif',\n transition: 'all 0.28s ease',\n },\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: `${palette.disabled} !important`,\n color: '#fff !important',\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n sizes: {\n sm: {\n height: 22,\n borderRadius: 11,\n fontSize: 12,\n padding: '0 12px',\n fontFamily: 'Euphemia Bold, sans-serif',\n fontWeight: 600,\n },\n md: {\n height: 26,\n borderRadius: 13,\n fontSize: 16,\n padding: '0 16px',\n },\n lg: {\n height: 36,\n borderRadius: 18,\n fontSize: 18,\n padding: '0 18px',\n },\n xl: {\n height: 48,\n borderRadius: 24,\n fontSize: 24,\n padding: '0 22px',\n },\n },\n },\n iconButton: {\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: 'transparent !important',\n color: 'rgba(0,0,0,0.25) !important',\n },\n },\n sizes: {\n sm: {\n height: 22,\n minHeight: 22,\n width: 22,\n minWidth: 22,\n fontSize: 18,\n },\n md: {\n height: 26,\n minHeight: 26,\n width: 26,\n minWidth: 26,\n fontSize: 22,\n },\n lg: {\n height: 36,\n minHeight: 36,\n width: 36,\n minWidth: 36,\n fontSize: 30,\n },\n xl: {\n height: 40,\n minHeight: 40,\n width: 40,\n minWidth: 40,\n fontSize: 34,\n },\n },\n },\n progressGauge: {\n fixed: {\n textFill: palette.onLight,\n },\n colors: {\n primary: {\n backgroundColor: '#b3d4ea',\n color: palette.primary,\n },\n secondary: {\n backgroundColor: '#b3e7c2',\n color: palette.secondary,\n },\n tertiary: {\n backgroundColor: '#ffe2b3',\n color: palette.tertiary,\n },\n warn: {\n backgroundColor: '#ffc2b3',\n color: palette.warn,\n },\n success: {\n backgroundColor: '#b3e7c2',\n color: palette.success,\n },\n },\n sizes: {\n sm: { height: '54px' },\n md: { height: '68px' },\n lg: { height: '82px' },\n xl: { height: '104px' },\n },\n },\n card: {\n fixed: {\n borderStyle: 'solid',\n borderWidth: '1px',\n borderRadius: '8px',\n overflow: 'hidden',\n },\n colors: {\n primary: {\n borderColor: palette.primary,\n backgroundColor: palette.background,\n },\n secondary: {\n borderColor: palette.secondary,\n backgroundColor: palette.background,\n },\n tertiary: {\n borderColor: palette.tertiary,\n backgroundColor: palette.background,\n },\n warn: {\n borderColor: palette.warn,\n backgroundColor: palette.background,\n },\n success: {\n borderColor: palette.success,\n backgroundColor: palette.background,\n },\n },\n },\n cardHeader: {\n fixed: { padding: '12px 24px' },\n colors: {\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n },\n cardContent: {\n fixed: {\n padding: '12px 24px',\n },\n },\n dataSearch: {\n options: {\n border: 'light',\n borderRadius: 'xs',\n color: 'primary-surface',\n placeholderColor: 'disabled',\n },\n },\n dataTable: {\n options: {\n color: 'primary-surface',\n border: 'light',\n borderRadius: 'sm',\n elevation: undefined,\n headerPadding: 'sm',\n footerPadding: 'sm',\n thTextRole: 'headline-small',\n thColor: 'primary-container',\n thVerticalBorder: 'dotted',\n thHorizontalBorder: 'light',\n thPadding: 'sm',\n tdTextRole: 'title-small',\n tdColor: 'primary-surface',\n tdStickyColor: 'primary-container',\n tdPadding: 'sm',\n tdVerticalBorder: 'dotted',\n tdHorizontalBorder: 'light',\n rowHoverColor: 'primary-container',\n loadingOverlayColor: 'scrim',\n loadingSpinnerColor: 'primary',\n loadingSpinnerSize: 40,\n },\n },\n notificationBadge: {\n options: {\n borderRadius: 'sm',\n offset: -10,\n },\n },\n paginator: {\n options: {\n gap: 'xs',\n textRole: 'label',\n inputBorder: 'light',\n inputBorderRadius: 'xs',\n pageBorderRadius: 'xs',\n currentPageBorder: 'light',\n currentPageBorderRadius: 'xs',\n },\n },\n snackbar: {\n options: {\n bottomPosition: 40, // px\n transitionDelay: '0.35s', // ms\n autoCloseDelay: 35000, // ms\n },\n },\n toggle: {\n options: {\n size: 20,\n },\n },\n tooltip: {\n options: {\n border: undefined,\n borderRadius: 'xs',\n shadow: 'raised',\n color: 'inverse-surface',\n typeface: 'label',\n },\n },\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const DarkTheme: UniTheme = {\n ...BaseTheme,\n id: 'DarkTheme',\n name: 'Dark Theme',\n colors: {\n primary: '#D0BCFF',\n 'on-primary': '#371E73',\n 'primary-container': '#4F378B',\n 'on-primary-container': '#EADDFF',\n secondary: '#CCC2DC',\n 'on-secondary': '#332D41',\n 'secondary-container': '#4A4458',\n 'on-secondary-container': '#E8DEF8',\n tertiary: '#EFB8C8',\n 'on-tertiary': '#492532',\n 'tertiary-container': '#633B48',\n 'on-tertiary-container': '#FFD8E4',\n error: '#F2B8B5',\n 'on-error': '#601410',\n 'error-container': '#8C1D18',\n 'on-error-container': '#F9DEDC',\n background: '#1C1B1F',\n 'on-background': '#E6E1E5',\n surface: '#1C1B1F',\n 'on-surface': '#E6E1E5',\n 'surface-variant': '#49454F',\n 'on-surface-variant': '#CAC4D0',\n outline: '#938F99',\n shadow: '#000000',\n 'surface-tint': '#D0BCFF',\n 'inverse-surface': '#E6E1E5',\n 'inverse-on-surface': '#313033',\n 'inverse-on-surface-primary': '#6750A4',\n transparent: 'rgba(0,0,0,0)',\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const LightTheme: UniTheme = {\n ...BaseTheme,\n id: 'LightTheme',\n name: 'Light Theme',\n};\n","import { type UniTheme } from './theme.model';\nimport { DarkTheme } from './themes/dark.theme';\nimport { LightTheme } from './themes/light.theme';\n\nexport const UniThemes: Record<string, UniTheme> = {\n LightTheme,\n DarkTheme,\n};\n\n// First Theme is default.\nexport const DefaultThemeId = Object.keys(UniThemes)[0];\n","import { FontWeight } from './typography.types';\n\nexport const FontWeightMap: Record<FontWeight, number> = {\n thin: 100,\n 'extra-light': 200,\n light: 200,\n normal: 400,\n medium: 500,\n 'semi-bold': 600,\n bold: 700,\n 'extra-bold': 800,\n black: 900,\n 'extra-black': 950,\n};\n","import { GetFieldType } from './types';\n\nexport function getValue<TData, TPath extends string, TDefault = GetFieldType<TData, TPath>>(\n data: TData,\n path: TPath,\n defaultValue?: TDefault\n): GetFieldType<TData, TPath> | TDefault {\n const value = path\n .split(/[.[\\]]/)\n .filter(Boolean)\n .reduce<GetFieldType<TData, TPath>>((value, key) => (value as any)?.[key], data as any);\n\n return value !== undefined ? value : (defaultValue as TDefault);\n}\n","export const debounce = <T extends (...args: any[]) => ReturnType<T>>(\n callback: T,\n timeout: number\n): ((...args: Parameters<T>) => void) => {\n let timer: ReturnType<typeof setTimeout>;\n\n return (...args: Parameters<T>) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n callback(...args);\n }, timeout);\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","names":[],"sources":["../../src/concepts/animation/keyframes.constants.ts","../../src/concepts/color/color.records.ts","../../src/concepts/color/color.utils.ts","../../src/concepts/color/color.helper.ts","../../src/concepts/elevation/zIndex.ts","../../src/concepts/gradient/gradient.helper.ts","../../src/concepts/layout/layout.helper.ts","../../src/concepts/shadow/shadow.utils.ts","../../src/concepts/shadow/shadow.records.ts","../../src/concepts/theme/palettes/theme.palette.ts","../../src/concepts/theme/themes/base.theme.ts","../../src/concepts/theme/themes/dark.theme.ts","../../src/concepts/theme/themes/light.theme.ts","../../src/concepts/theme/theme.records.ts","../../src/concepts/typography/typography.records.ts","../../src/utils/getValue.ts","../../src/utils/debounce.ts"],"sourcesContent":["import type { StyleExpression } from '../style/style.types';\n\nexport type PercentageString = `${number}%`;\nexport type KeyframesExpression = Record<PercentageString, StyleExpression>;\n\nexport const fadeIn: KeyframesExpression = {\n '0%': {\n opacity: 0,\n },\n '100%': {\n opacity: 1,\n },\n};\n\nexport const fadeOut: KeyframesExpression = {\n '0%': {\n opacity: 1,\n },\n '100%': {\n opacity: 0,\n },\n};\n\nexport const expandFadeIn = {\n '0%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n '100%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n};\n\nexport const collapseFadeOut = {\n '0%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n '100%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n};\n","import { Range } from './color.model';\nimport { ColorCategory, ColorRole, UtilityColorRole } from './color.types';\n\nexport const CategorySaturation: Record<ColorCategory, Range> = {\n jewel: { low: 73, high: 83 },\n pastel: { low: 14, high: 21 },\n earth: { low: 36, high: 41 },\n neutral: { low: 1, high: 10 },\n florescent: { low: 63, high: 100 },\n shades: { low: 0, high: 0 },\n};\n\nexport const CategoryLightness: Record<ColorCategory, Range> = {\n jewel: { low: 56, high: 76 },\n pastel: { low: 89, high: 96 },\n earth: { low: 36, high: 77 },\n neutral: { low: 70, high: 99 },\n florescent: { low: 82, high: 100 },\n shades: { low: 0, high: 100 },\n};\n\nexport const RoleHues: Record<ColorRole | UtilityColorRole, Range> = {\n primary: { low: 73, high: 83, default: 0 },\n secondary: { low: 14, high: 21, default: 0 },\n tertiary: { low: 36, high: 41, default: 0 },\n inverse: { low: 63, high: 100, default: 0 },\n ghost: { low: 0, high: 0, default: 0 },\n warn: { low: 320, high: 20, default: 0 }, // red\n alert: { low: 40, high: 70, default: 60 }, // yellow\n success: { low: 90, high: 150, default: 120 }, // green\n info: { low: 200, high: 260, default: 240 }, // blue\n};\n","import { Range } from './color.model';\n\nexport const randomRangeValue = ({ low, high }: Range): number => {\n low = Math.ceil(low);\n high = Math.floor(high);\n return Math.floor(Math.random() * (high - low + 1)) + low;\n};\n\nexport const cycle = (angle: number): number => {\n if (angle > 360) return angle - 360;\n if (angle < 0) return angle + 360;\n return angle;\n};\n\nexport const getAnalogousHues = (hue: number): number[] => [cycle(hue + 30), cycle(hue + 60)];\nexport const getComplimentaryHue = (hue: number): number => cycle(hue + 180);\nexport const getTriadicHues = (hue: number): number[] => [cycle(hue + 120), cycle(hue - 120)];\nexport const getSplitComplimentaryHues = (hue: number): number[] => [\n cycle(hue + 150),\n cycle(hue - 150),\n];\n","import { HSL, HSLA, RGB, UniColor } from './color.model';\nimport { CategoryLightness, CategorySaturation, RoleHues } from './color.records';\nimport { randomRangeValue } from './color.utils';\n\nexport function HSLAToString({ hue, saturation, lightness, alpha = 1 }: HSLA): string {\n return `hsla(${hue}, ${saturation}%, ${lightness}%, ${alpha})`;\n}\n\nexport function RGBToString({ red, green, blue }: RGB): string {\n return `rgb(${red}, ${green}, ${blue})`;\n}\n\nexport function uniColor({ role, category, alpha = 1 }: UniColor): string {\n const hue = randomRangeValue(RoleHues[role]);\n const saturation = randomRangeValue(CategorySaturation[category]);\n const lightness = randomRangeValue(CategoryLightness[category]);\n\n return HSLAToString({ hue, saturation, lightness, alpha });\n}\n\nexport const RGBToHSL = ({ red, green, blue }: RGB): HSL => {\n red /= 255;\n green /= 255;\n blue /= 255;\n const l = Math.max(red, green, blue);\n const s = l - Math.min(red, green, blue);\n const h = s\n ? l === red\n ? (green - blue) / s\n : l === green\n ? 2 + (blue - red) / s\n : 4 + (red - green) / s\n : 0;\n return {\n hue: 60 * h < 0 ? 60 * h + 360 : 60 * h,\n saturation: 100 * (s ? (l <= 0.5 ? s / (2 * l - s) : s / (2 - (2 * l - s))) : 0),\n lightness: (100 * (2 * l - s)) / 2,\n };\n};\n\n// Future Methods - https://codepen.io/jkantner/pen/VVEMRK\n","export type ZIndexableElements =\n | 'dropdown'\n | 'sticky'\n | 'fixed'\n | 'backdrop'\n | 'dialog'\n | 'popover'\n | 'tooltip'\n | 'overlay';\n\nexport const Z_INDEX: Record<ZIndexableElements, number> = {\n dropdown: 1000,\n sticky: 1020,\n fixed: 1030,\n backdrop: 1040,\n dialog: 1050,\n popover: 1060,\n tooltip: 1070,\n overlay: 1080,\n};\n","import { Gradient } from './gradient.model';\n\nexport function gradient(config: Gradient): string {\n return ``;\n}\n","import { Size } from '../core.types';\nimport { DeviceOrientation } from './layout.types';\n\nexport function getDeviceSize(height: number, width: number): Size {\n if (!height || !width) return 'md';\n\n const max = Math.max(height, width);\n\n if (max <= 600)\n // Small Mobile\n return 'xs';\n\n if (max <= 960)\n // Large Mobile\n return 'sm';\n\n if (max <= 1264)\n // Tablets\n return 'md';\n\n if (max <= 1904)\n // Laptops & Monitors\n return 'lg';\n\n return 'xl'; // Large Monitors\n}\n\nexport function getDeviceOrientation(height: number, width: number): DeviceOrientation {\n if (!height || !width) return 'landscape';\n\n return height > width ? 'portrait' : 'landscape';\n}\n","import { BoxShadow, ShadowDefinition } from './shadow.model';\n\n// box-shadow: none|h-offset v-offset blur spread color\nexport const GetBoxShadow = ({ offset, blur, opacity }: BoxShadow): string => {\n return `0 ${offset}px ${blur}px rgba(0,0,0,0.${opacity})`;\n};\n\nexport const GetBoxShadows = ({ umbra, penumbra }: ShadowDefinition): string => {\n return GetBoxShadow(umbra) + ', ' + GetBoxShadow(penumbra);\n};\n","import { ShadowDefinition } from './shadow.model';\nimport { ShadowElevation } from './shadow.types';\nimport { GetBoxShadows } from './shadow.utils';\n\nexport const ShadowMap: Record<ShadowElevation, ShadowDefinition> = {\n pressed: {\n umbra: {\n offset: 1,\n blur: 2,\n opacity: 24,\n },\n penumbra: {\n offset: 1,\n blur: 3,\n opacity: 12,\n },\n },\n raised: {\n umbra: {\n offset: 3,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 3,\n blur: 6,\n opacity: 16,\n },\n },\n focussed: {\n umbra: {\n offset: 6,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 10,\n blur: 20,\n opacity: 19,\n },\n },\n navigation: {\n umbra: {\n offset: 10,\n blur: 10,\n opacity: 22,\n },\n penumbra: {\n offset: 14,\n blur: 28,\n opacity: 25,\n },\n },\n modal: {\n umbra: {\n offset: 15,\n blur: 12,\n opacity: 22,\n },\n penumbra: {\n offset: 19,\n blur: 38,\n opacity: 30,\n },\n },\n};\n\nexport const ShadowCssMap: Record<ShadowElevation, string> = {\n pressed: GetBoxShadows(ShadowMap['pressed']),\n raised: GetBoxShadows(ShadowMap['raised']),\n focussed: GetBoxShadows(ShadowMap['focussed']),\n navigation: GetBoxShadows(ShadowMap['navigation']),\n modal: GetBoxShadows(ShadowMap['modal']),\n};\n","export interface ThemePalette {\n primary: string;\n secondary: string;\n tertiary: string;\n quaternary: string;\n warn: string;\n success: string;\n light: string;\n onLight: string;\n onLightVariant: string;\n dark: string;\n onDark: string;\n background: string;\n disabled: string;\n onDisabled: string;\n}\n\n// ==========================================\n// 🏛️ 1. GENERIC BASE PALETTES (WCAG AA)\n// ==========================================\n\nexport const genericLightTheme: ThemePalette = {\n primary: '#0066B2',\n secondary: '#008528',\n tertiary: '#D97706',\n quaternary: '#52525B',\n warn: '#DC2626',\n success: '#008528',\n light: '#F4F4F5',\n onLight: '#18181B',\n onLightVariant: 'rgba(24, 24, 27, 0.6)',\n dark: '#18181B',\n onDark: 'rgba(255, 255, 255, 0.85)',\n background: '#FFFFFF',\n disabled: 'rgba(24, 24, 27, 0.08)',\n onDisabled: 'rgba(24, 24, 27, 0.4)',\n};\n\nexport const genericDarkTheme: ThemePalette = {\n primary: '#4DABFF',\n secondary: '#47D973',\n tertiary: '#FBBF24',\n quaternary: '#A1A1AA',\n warn: '#FCA5A5',\n success: '#47D973',\n light: '#27272A',\n onLight: '#F4F4F5',\n onLightVariant: 'rgba(244, 244, 245, 0.5)',\n dark: '#09090B',\n onDark: 'rgba(244, 244, 245, 0.85)',\n background: '#09090B',\n disabled: 'rgba(244, 244, 245, 0.12)',\n onDisabled: 'rgba(244, 244, 245, 0.4)',\n};\n\n// ==========================================\n// 🎨 2. STYLIZED PALETTES (Vibrant Varsity)\n// ==========================================\n\nexport const stylizedLightTheme: ThemePalette = {\n primary: '#6366F1',\n secondary: '#EC4899',\n tertiary: '#F59E0B',\n quaternary: '#64748B',\n warn: '#EF4444',\n success: '#10B981',\n light: '#F8FAFC',\n onLight: '#0F172A',\n onLightVariant: 'rgba(15, 23, 42, 0.6)',\n dark: '#0F172A',\n onDark: 'rgba(255, 255, 255, 0.9)',\n background: '#FFFFFF',\n disabled: 'rgba(15, 23, 42, 0.08)',\n onDisabled: 'rgba(15, 23, 42, 0.4)',\n};\n\nexport const stylizedDarkTheme: ThemePalette = {\n primary: '#818CF8',\n secondary: '#F472B6',\n tertiary: '#FBBF24',\n quaternary: '#94A3B8',\n warn: '#F87171',\n success: '#34D399',\n light: '#1E293B',\n onLight: '#F8FAFC',\n onLightVariant: 'rgba(248, 250, 252, 0.5)',\n dark: '#020617',\n onDark: 'rgba(248, 250, 252, 0.85)',\n background: '#020617',\n disabled: 'rgba(248, 250, 252, 0.12)',\n onDisabled: 'rgba(248, 250, 252, 0.4)',\n};\n\n// ==========================================\n// 👁️ 3. HIGH-CONTRAST PALETTES (WCAG AAA)\n// ==========================================\n\nexport const highContrastLightTheme: ThemePalette = {\n primary: '#004080',\n secondary: '#005914',\n tertiary: '#804B00',\n quaternary: '#262626',\n warn: '#990000',\n success: '#005914',\n light: '#FFFFFF',\n onLight: '#000000',\n onLightVariant: '#262626',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#FFFFFF',\n disabled: '#CCCCCC',\n onDisabled: '#000000', // High visibility fallback override for high contrast users\n};\n\nexport const highContrastDarkTheme: ThemePalette = {\n primary: '#99CCFF',\n secondary: '#86FFAC',\n tertiary: '#FFE066',\n quaternary: '#E5E5E5',\n warn: '#FF9999',\n success: '#86FFAC',\n light: '#121212',\n onLight: '#FFFFFF',\n onLightVariant: '#E5E5E5',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#000000',\n disabled: '#333333',\n onDisabled: '#FFFFFF', // High visibility fallback override for high contrast users\n};\n","import { Button } from '../../button';\nimport { Container } from '../../container';\nimport type { UniTheme } from '../theme.model';\n\nimport { genericLightTheme as palette } from '../palettes/theme.palette';\n\nconst BaseButton: Button = {\n borderRadius: 100,\n color: 'primary-container',\n contentColor: 'on-primary-container',\n verticalPadding: { xxs: 2, xs: 5, sm: 8, md: 12, lg: 16, xl: 20, xxl: 24 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n};\n\nconst BaseContainer: Container = {\n color: 'primary-container',\n contentColor: 'on-primary-container',\n borderRadii: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n horizontalPadding: { xxs: 6, xs: 12, sm: 18, md: 24, lg: 30, xl: 36, xxl: 42 },\n contentSpacing: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n};\n\nexport const BaseTheme: UniTheme = {\n id: 'BaseTheme',\n name: 'Base Theme',\n colors: {\n primary: '#6750A4',\n 'on-primary': '#FFFFFF',\n 'primary-container': '#EADDFF',\n 'on-primary-container': '#21005E',\n secondary: '#625B71',\n 'on-secondary': '#FFFFFF',\n 'secondary-container': '#E8DEF8',\n 'on-secondary-container': '#1E192B',\n tertiary: '#7D5260',\n 'on-tertiary': '#FFFFFF',\n 'tertiary-container': '#FFD8E4',\n 'on-tertiary-container': '#370B1E',\n error: '#B3261E',\n 'on-error': '#FFFFFF',\n 'error-container': '#F9DEDC',\n 'on-error-container': '#370B1E',\n background: '#FFFBFE',\n 'on-background': '#1C1B1F',\n surface: '#FFFBFE',\n 'on-surface': '#1C1B1F',\n 'surface-variant': '#E7E0EC',\n 'on-surface-variant': '#49454E',\n outline: '#79747E',\n shadow: '#000000',\n 'surface-tint': '#6750A4',\n 'inverse-surface': '#313033',\n 'on-inverse-surface': '#F4EFF4',\n 'on-inverse-surface-primary': '#D0BCFF',\n scrim: '#000000',\n transparent: 'rgba(0,0,0,0)',\n\n 'primary-surface': palette.background,\n 'on-primary-surface': palette.onLight,\n 'on-primary-surface-variant': palette.primary,\n },\n typography: {\n 'display-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 57,\n lineHeight: 64,\n fontWeight: 'normal',\n letterSpacing: -0.25,\n },\n 'display-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 45,\n lineHeight: 52,\n fontWeight: 'normal',\n },\n 'display-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 36,\n lineHeight: 44,\n fontWeight: 'normal',\n },\n 'headline-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 32,\n lineHeight: 40,\n fontWeight: 'normal',\n },\n 'headline-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 28,\n lineHeight: 36,\n fontWeight: 'normal',\n },\n 'headline-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 24,\n lineHeight: 32,\n fontWeight: 'normal',\n },\n 'title-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 22,\n lineHeight: 28,\n fontWeight: 'normal',\n },\n 'title-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n fontWeight: 'medium',\n letterSpacing: 0.15,\n },\n 'title-small': {\n fontFamily: 'Red Hat Display',\n fontWeight: 'medium',\n fontSize: 14,\n lineHeight: 20,\n letterSpacing: 0.1,\n },\n 'body-1-long': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 22,\n },\n 'body-1-short': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n 'body-2-long': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 18,\n },\n 'body-2-short': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n 'subtitle-1': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n letterSpacing: 0.15,\n },\n 'subtitle-2': {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n letterSpacing: 0.1,\n },\n label: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n button: {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n textTransform: 'capitalize',\n },\n caption: {\n fontFamily: 'Roboto',\n fontSize: 12,\n lineHeight: 18,\n letterSpacing: 0.4,\n },\n overline: {\n fontFamily: 'Red Hat Display',\n fontSize: 10,\n lineHeight: 18,\n letterSpacing: 1.5,\n textTransform: 'uppercase',\n },\n paragraph: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n quote: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n note: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 22,\n fontStyle: 'italic',\n },\n },\n borders: {\n primary: `1px solid ${palette.primary}`,\n secondary: `1px solid ${palette.secondary}`,\n tertiary: `1px solid ${palette.tertiary}`,\n quaternary: `1px solid ${palette.quaternary}`,\n warn: `1px solid ${palette.warn}`,\n success: `1px solid ${palette.secondary}`,\n light: `1px solid ${palette.light}`,\n dark: `1px solid ${palette.dark}`,\n dotted: `1px dotted ${palette.dark}`,\n },\n\n shadows: {\n raised:\n 'rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px',\n menu: 'rgba(0, 0, 0, 0.2) 0px 3px 3px -2px, rgba(0, 0, 0, 0.14) 0px 3px 4px 0px, rgba(0, 0, 0, 0.12) 0px 1px 8px 0px;',\n dialog:\n 'rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px',\n warn: '0 0 5px rgba(255, 0, 0, 0.5), inset 0 0 5px rgba(255, 0, 0, 0.3)',\n },\n\n spacing: {\n none: 'none',\n xxs: '2px',\n xs: '4px',\n sm: '8px',\n md: '16px',\n lg: '32px',\n xl: '64px',\n },\n\n thicknesses: {\n thin: 1,\n standard: 2,\n thick: 4,\n },\n\n radii: {\n none: 'none',\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n max: '999px',\n },\n buttons: {\n elevated: {\n ...BaseButton,\n color: 'surface',\n contentColor: 'on-surface',\n shadowElevation: 'raised',\n },\n filled: {\n ...BaseButton,\n color: 'primary',\n },\n 'filled-secondary': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n },\n outlined: {\n ...BaseButton,\n color: 'transparent',\n borderColor: 'primary',\n contentColor: 'on-primary',\n borderWidth: 1,\n },\n text: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n },\n icon: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n horizontalPadding: BaseButton.verticalPadding,\n },\n 'floating-action': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n borderRadii: { xxs: 3, xs: 5, sm: 8, md: 12, lg: 16, xl: 12, xxl: 20 },\n shadowElevation: 'navigation',\n verticalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n },\n },\n containers: {\n card: {\n ...BaseContainer,\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'interactive',\n },\n screen: {\n ...BaseContainer,\n color: 'background',\n contentColor: 'on-background',\n },\n modal: {\n ...BaseContainer,\n borderRadii: { xxs: 8, xs: 16, sm: 22, md: 28, lg: 32, xl: 38, xxl: 44 },\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'static',\n shadowElevation: 'modal',\n maxWidth: 560,\n },\n },\n typefaces: {},\n icons: {},\n components: {\n alert: {\n options: {\n topPosition: 40,\n borderRadius: 'sm',\n transitionSpeed: 0.35,\n elevation: 'md',\n },\n },\n checkbox: {\n options: {\n size: 20,\n },\n },\n dialog: {\n options: {\n borderRadius: 'lg',\n color: 'primary-surface',\n border: 'quaternary',\n padding: 'sm',\n elevation: 'dialog',\n backdrop: {\n background: 'rgba(255, 255, 255, 0.6)',\n backdropFilter: 'blur(2px)',\n },\n },\n },\n dialogHeader: {\n options: {\n borderRadius: 'max',\n color: 'primary',\n height: 48,\n textRole: 'title-large',\n textAlign: 'center',\n closeButtonIcon: 'close',\n closeButtonSize: 'md',\n },\n },\n dropdown: {\n options: {\n border: 'none',\n borderRadius: 'xxs',\n color: 'primary-surface',\n shadow: 'menu',\n },\n },\n footer: {\n options: {\n height: 52,\n color: 'primary',\n logoHeight: 18.6,\n logoPadding: 'md',\n },\n },\n input: {\n options: {\n typeFace: 'input',\n color: 'primary-surface',\n textColor: 'on-primary-surface',\n disabledColor: 'disabled-surface',\n disabledTextColor: 'on-disabled-surface',\n border: 'light',\n borderRadius: 'xs',\n errorShadow: 'warn',\n errorBorder: 'warn',\n height: 32,\n paddingLeft: 'sm',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n multiSelectDropdown: {\n options: {\n textRole: 'input',\n textColor: 'on-primary-surface',\n dividerBorder: 'light',\n searchInputBorder: 'light',\n searchInputBorderRadius: 'xxs',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n badge: {\n options: {\n borderRadius: 'xxs',\n },\n },\n button: {\n fixed: {\n position: 'relative',\n overflow: 'hidden',\n outline: '0',\n border: '0',\n cursor: 'pointer',\n fontFamily: 'Euphemia, sans-serif',\n transition: 'all 0.28s ease',\n },\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: `${palette.disabled} !important`,\n color: '#fff !important',\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n sizes: {\n sm: {\n height: 22,\n borderRadius: 11,\n fontSize: 12,\n padding: '0 12px',\n fontFamily: 'Euphemia Bold, sans-serif',\n fontWeight: 600,\n },\n md: {\n height: 26,\n borderRadius: 13,\n fontSize: 16,\n padding: '0 16px',\n },\n lg: {\n height: 36,\n borderRadius: 18,\n fontSize: 18,\n padding: '0 18px',\n },\n xl: {\n height: 48,\n borderRadius: 24,\n fontSize: 24,\n padding: '0 22px',\n },\n },\n },\n iconButton: {\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: 'transparent !important',\n color: 'rgba(0,0,0,0.25) !important',\n },\n },\n sizes: {\n sm: {\n height: 22,\n minHeight: 22,\n width: 22,\n minWidth: 22,\n fontSize: 18,\n },\n md: {\n height: 26,\n minHeight: 26,\n width: 26,\n minWidth: 26,\n fontSize: 22,\n },\n lg: {\n height: 36,\n minHeight: 36,\n width: 36,\n minWidth: 36,\n fontSize: 30,\n },\n xl: {\n height: 40,\n minHeight: 40,\n width: 40,\n minWidth: 40,\n fontSize: 34,\n },\n },\n },\n progressGauge: {\n fixed: {\n textFill: palette.onLight,\n },\n colors: {\n primary: {\n backgroundColor: '#b3d4ea',\n color: palette.primary,\n },\n secondary: {\n backgroundColor: '#b3e7c2',\n color: palette.secondary,\n },\n tertiary: {\n backgroundColor: '#ffe2b3',\n color: palette.tertiary,\n },\n warn: {\n backgroundColor: '#ffc2b3',\n color: palette.warn,\n },\n success: {\n backgroundColor: '#b3e7c2',\n color: palette.success,\n },\n },\n sizes: {\n sm: { height: '54px' },\n md: { height: '68px' },\n lg: { height: '82px' },\n xl: { height: '104px' },\n },\n },\n card: {\n fixed: {\n borderStyle: 'solid',\n borderWidth: '1px',\n borderRadius: '8px',\n overflow: 'hidden',\n },\n colors: {\n primary: {\n borderColor: palette.primary,\n backgroundColor: palette.background,\n },\n secondary: {\n borderColor: palette.secondary,\n backgroundColor: palette.background,\n },\n tertiary: {\n borderColor: palette.tertiary,\n backgroundColor: palette.background,\n },\n warn: {\n borderColor: palette.warn,\n backgroundColor: palette.background,\n },\n success: {\n borderColor: palette.success,\n backgroundColor: palette.background,\n },\n },\n },\n cardHeader: {\n fixed: { padding: '12px 24px' },\n colors: {\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n },\n cardContent: {\n fixed: {\n padding: '12px 24px',\n },\n },\n dataSearch: {\n options: {\n border: 'light',\n borderRadius: 'xs',\n color: 'primary-surface',\n placeholderColor: 'disabled',\n },\n },\n dataTable: {\n options: {\n color: 'primary-surface',\n border: 'light',\n borderRadius: 'sm',\n elevation: undefined,\n headerPadding: 'sm',\n footerPadding: 'sm',\n thTextRole: 'headline-small',\n thColor: 'primary-container',\n thVerticalBorder: 'dotted',\n thHorizontalBorder: 'light',\n thPadding: 'sm',\n tdTextRole: 'title-small',\n tdColor: 'primary-surface',\n tdStickyColor: 'primary-container',\n tdPadding: 'sm',\n tdVerticalBorder: 'dotted',\n tdHorizontalBorder: 'light',\n rowHoverColor: 'primary-container',\n loadingOverlayColor: 'scrim',\n loadingSpinnerColor: 'primary',\n loadingSpinnerSize: 40,\n },\n },\n notificationBadge: {\n options: {\n borderRadius: 'sm',\n offset: -10,\n },\n },\n paginator: {\n options: {\n gap: 'xs',\n textRole: 'label',\n inputBorder: 'light',\n inputBorderRadius: 'xs',\n pageBorderRadius: 'xs',\n currentPageBorder: 'light',\n currentPageBorderRadius: 'xs',\n },\n },\n snackbar: {\n options: {\n bottomPosition: 40, // px\n transitionDelay: '0.35s', // ms\n autoCloseDelay: 35000, // ms\n },\n },\n toggle: {\n options: {\n size: 20,\n },\n },\n tooltip: {\n options: {\n border: undefined,\n borderRadius: 'xs',\n shadow: 'raised',\n color: 'inverse-surface',\n typeface: 'label',\n },\n },\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const DarkTheme: UniTheme = {\n ...BaseTheme,\n id: 'DarkTheme',\n name: 'Dark Theme',\n colors: {\n primary: '#D0BCFF',\n 'on-primary': '#371E73',\n 'primary-container': '#4F378B',\n 'on-primary-container': '#EADDFF',\n secondary: '#CCC2DC',\n 'on-secondary': '#332D41',\n 'secondary-container': '#4A4458',\n 'on-secondary-container': '#E8DEF8',\n tertiary: '#EFB8C8',\n 'on-tertiary': '#492532',\n 'tertiary-container': '#633B48',\n 'on-tertiary-container': '#FFD8E4',\n error: '#F2B8B5',\n 'on-error': '#601410',\n 'error-container': '#8C1D18',\n 'on-error-container': '#F9DEDC',\n background: '#1C1B1F',\n 'on-background': '#E6E1E5',\n surface: '#1C1B1F',\n 'on-surface': '#E6E1E5',\n 'surface-variant': '#49454F',\n 'on-surface-variant': '#CAC4D0',\n outline: '#938F99',\n shadow: '#000000',\n 'surface-tint': '#D0BCFF',\n 'inverse-surface': '#E6E1E5',\n 'inverse-on-surface': '#313033',\n 'inverse-on-surface-primary': '#6750A4',\n transparent: 'rgba(0,0,0,0)',\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const LightTheme: UniTheme = {\n ...BaseTheme,\n id: 'LightTheme',\n name: 'Light Theme',\n};\n","import { type UniTheme } from './theme.model';\nimport { DarkTheme } from './themes/dark.theme';\nimport { LightTheme } from './themes/light.theme';\n\nexport const UniThemes: Record<string, UniTheme> = {\n LightTheme,\n DarkTheme,\n};\n\n// First Theme is default.\nexport const DefaultThemeId = Object.keys(UniThemes)[0];\n","import { FontWeight } from './typography.types';\n\nexport const FontWeightMap: Record<FontWeight, number> = {\n thin: 100,\n 'extra-light': 200,\n light: 200,\n normal: 400,\n medium: 500,\n 'semi-bold': 600,\n bold: 700,\n 'extra-bold': 800,\n black: 900,\n 'extra-black': 950,\n};\n","import { GetFieldType } from './types';\n\nexport function getValue<TData, TPath extends string, TDefault = GetFieldType<TData, TPath>>(\n data: TData,\n path: TPath,\n defaultValue?: TDefault\n): GetFieldType<TData, TPath> | TDefault {\n const value = path\n .split(/[.[\\]]/)\n .filter(Boolean)\n .reduce<GetFieldType<TData, TPath>>((value, key) => (value as any)?.[key], data as any);\n\n return value !== undefined ? value : (defaultValue as TDefault);\n}\n","export const debounce = <T extends (...args: any[]) => ReturnType<T>>(\n callback: T,\n timeout: number\n): ((...args: Parameters<T>) => void) => {\n let timer: ReturnType<typeof setTimeout>;\n\n return (...args: Parameters<T>) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n callback(...args);\n }, timeout);\n };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/concepts/animation/keyframes.constants.ts","../../src/concepts/color/color.records.ts","../../src/concepts/color/color.utils.ts","../../src/concepts/color/color.helper.ts","../../src/concepts/elevation/zIndex.ts","../../src/concepts/gradient/gradient.helper.ts","../../src/concepts/layout/layout.helper.ts","../../src/concepts/shadow/shadow.utils.ts","../../src/concepts/shadow/shadow.records.ts","../../src/concepts/theme/palettes/theme.palette.ts","../../src/concepts/theme/themes/base.theme.ts","../../src/concepts/theme/themes/dark.theme.ts","../../src/concepts/theme/themes/light.theme.ts","../../src/concepts/theme/theme.records.ts","../../src/concepts/typography/typography.records.ts","../../src/utils/getValue.ts","../../src/utils/debounce.ts"],"sourcesContent":["import type { StyleExpression } from '../style/style.types';\n\nexport type PercentageString = `${number}%`;\nexport type KeyframesExpression = Record<PercentageString, StyleExpression>;\n\nexport const fadeIn: KeyframesExpression = {\n '0%': {\n opacity: 0,\n },\n '100%': {\n opacity: 1,\n },\n};\n\nexport const fadeOut: KeyframesExpression = {\n '0%': {\n opacity: 1,\n },\n '100%': {\n opacity: 0,\n },\n};\n\nexport const expandFadeIn = {\n '0%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n '100%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n};\n\nexport const collapseFadeOut = {\n '0%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n '100%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n};\n","import { Range } from './color.model';\nimport { ColorCategory, ColorRole, UtilityColorRole } from './color.types';\n\nexport const CategorySaturation: Record<ColorCategory, Range> = {\n jewel: { low: 73, high: 83 },\n pastel: { low: 14, high: 21 },\n earth: { low: 36, high: 41 },\n neutral: { low: 1, high: 10 },\n florescent: { low: 63, high: 100 },\n shades: { low: 0, high: 0 },\n};\n\nexport const CategoryLightness: Record<ColorCategory, Range> = {\n jewel: { low: 56, high: 76 },\n pastel: { low: 89, high: 96 },\n earth: { low: 36, high: 77 },\n neutral: { low: 70, high: 99 },\n florescent: { low: 82, high: 100 },\n shades: { low: 0, high: 100 },\n};\n\nexport const RoleHues: Record<ColorRole | UtilityColorRole, Range> = {\n primary: { low: 73, high: 83, default: 0 },\n secondary: { low: 14, high: 21, default: 0 },\n tertiary: { low: 36, high: 41, default: 0 },\n inverse: { low: 63, high: 100, default: 0 },\n ghost: { low: 0, high: 0, default: 0 },\n warn: { low: 320, high: 20, default: 0 }, // red\n alert: { low: 40, high: 70, default: 60 }, // yellow\n success: { low: 90, high: 150, default: 120 }, // green\n info: { low: 200, high: 260, default: 240 }, // blue\n};\n","import { Range } from './color.model';\n\nexport const randomRangeValue = ({ low, high }: Range): number => {\n low = Math.ceil(low);\n high = Math.floor(high);\n return Math.floor(Math.random() * (high - low + 1)) + low;\n};\n\nexport const cycle = (angle: number): number => {\n if (angle > 360) return angle - 360;\n if (angle < 0) return angle + 360;\n return angle;\n};\n\nexport const getAnalogousHues = (hue: number): number[] => [cycle(hue + 30), cycle(hue + 60)];\nexport const getComplimentaryHue = (hue: number): number => cycle(hue + 180);\nexport const getTriadicHues = (hue: number): number[] => [cycle(hue + 120), cycle(hue - 120)];\nexport const getSplitComplimentaryHues = (hue: number): number[] => [\n cycle(hue + 150),\n cycle(hue - 150),\n];\n","import { HSL, HSLA, RGB, UniColor } from './color.model';\nimport { CategoryLightness, CategorySaturation, RoleHues } from './color.records';\nimport { randomRangeValue } from './color.utils';\n\nexport function HSLAToString({ hue, saturation, lightness, alpha = 1 }: HSLA): string {\n return `hsla(${hue}, ${saturation}%, ${lightness}%, ${alpha})`;\n}\n\nexport function RGBToString({ red, green, blue }: RGB): string {\n return `rgb(${red}, ${green}, ${blue})`;\n}\n\nexport function uniColor({ role, category, alpha = 1 }: UniColor): string {\n const hue = randomRangeValue(RoleHues[role]);\n const saturation = randomRangeValue(CategorySaturation[category]);\n const lightness = randomRangeValue(CategoryLightness[category]);\n\n return HSLAToString({ hue, saturation, lightness, alpha });\n}\n\nexport const RGBToHSL = ({ red, green, blue }: RGB): HSL => {\n red /= 255;\n green /= 255;\n blue /= 255;\n const l = Math.max(red, green, blue);\n const s = l - Math.min(red, green, blue);\n const h = s\n ? l === red\n ? (green - blue) / s\n : l === green\n ? 2 + (blue - red) / s\n : 4 + (red - green) / s\n : 0;\n return {\n hue: 60 * h < 0 ? 60 * h + 360 : 60 * h,\n saturation: 100 * (s ? (l <= 0.5 ? s / (2 * l - s) : s / (2 - (2 * l - s))) : 0),\n lightness: (100 * (2 * l - s)) / 2,\n };\n};\n\n// Future Methods - https://codepen.io/jkantner/pen/VVEMRK\n","export type ZIndexableElements =\n | 'dropdown'\n | 'sticky'\n | 'fixed'\n | 'backdrop'\n | 'dialog'\n | 'popover'\n | 'tooltip'\n | 'overlay';\n\nexport const Z_INDEX: Record<ZIndexableElements, number> = {\n dropdown: 1000,\n sticky: 1020,\n fixed: 1030,\n backdrop: 1040,\n dialog: 1050,\n popover: 1060,\n tooltip: 1070,\n overlay: 1080,\n};\n","import { Gradient } from './gradient.model';\n\nexport function gradient(config: Gradient): string {\n return ``;\n}\n","import { Size } from '../core.types';\nimport { DeviceOrientation } from './layout.types';\n\nexport function getDeviceSize(height: number, width: number): Size {\n if (!height || !width) return 'md';\n\n const max = Math.max(height, width);\n\n if (max <= 600)\n // Small Mobile\n return 'xs';\n\n if (max <= 960)\n // Large Mobile\n return 'sm';\n\n if (max <= 1264)\n // Tablets\n return 'md';\n\n if (max <= 1904)\n // Laptops & Monitors\n return 'lg';\n\n return 'xl'; // Large Monitors\n}\n\nexport function getDeviceOrientation(height: number, width: number): DeviceOrientation {\n if (!height || !width) return 'landscape';\n\n return height > width ? 'portrait' : 'landscape';\n}\n","import { BoxShadow, ShadowDefinition } from './shadow.model';\n\n// box-shadow: none|h-offset v-offset blur spread color\nexport const GetBoxShadow = ({ offset, blur, opacity }: BoxShadow): string => {\n return `0 ${offset}px ${blur}px rgba(0,0,0,0.${opacity})`;\n};\n\nexport const GetBoxShadows = ({ umbra, penumbra }: ShadowDefinition): string => {\n return GetBoxShadow(umbra) + ', ' + GetBoxShadow(penumbra);\n};\n","import { ShadowDefinition } from './shadow.model';\nimport { ShadowElevation } from './shadow.types';\nimport { GetBoxShadows } from './shadow.utils';\n\nexport const ShadowMap: Record<ShadowElevation, ShadowDefinition> = {\n pressed: {\n umbra: {\n offset: 1,\n blur: 2,\n opacity: 24,\n },\n penumbra: {\n offset: 1,\n blur: 3,\n opacity: 12,\n },\n },\n raised: {\n umbra: {\n offset: 3,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 3,\n blur: 6,\n opacity: 16,\n },\n },\n focussed: {\n umbra: {\n offset: 6,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 10,\n blur: 20,\n opacity: 19,\n },\n },\n navigation: {\n umbra: {\n offset: 10,\n blur: 10,\n opacity: 22,\n },\n penumbra: {\n offset: 14,\n blur: 28,\n opacity: 25,\n },\n },\n modal: {\n umbra: {\n offset: 15,\n blur: 12,\n opacity: 22,\n },\n penumbra: {\n offset: 19,\n blur: 38,\n opacity: 30,\n },\n },\n};\n\nexport const ShadowCssMap: Record<ShadowElevation, string> = {\n pressed: GetBoxShadows(ShadowMap['pressed']),\n raised: GetBoxShadows(ShadowMap['raised']),\n focussed: GetBoxShadows(ShadowMap['focussed']),\n navigation: GetBoxShadows(ShadowMap['navigation']),\n modal: GetBoxShadows(ShadowMap['modal']),\n};\n","export interface ThemePalette {\n primary: string;\n secondary: string;\n tertiary: string;\n quaternary: string;\n warn: string;\n success: string;\n light: string;\n onLight: string;\n onLightVariant: string;\n dark: string;\n onDark: string;\n background: string;\n disabled: string;\n onDisabled: string;\n}\n\n// ==========================================\n// 🏛️ 1. GENERIC BASE PALETTES (WCAG AA)\n// ==========================================\n\nexport const genericLightTheme: ThemePalette = {\n primary: '#0066B2',\n secondary: '#008528',\n tertiary: '#D97706',\n quaternary: '#52525B',\n warn: '#DC2626',\n success: '#008528',\n light: '#F4F4F5',\n onLight: '#18181B',\n onLightVariant: 'rgba(24, 24, 27, 0.6)',\n dark: '#18181B',\n onDark: 'rgba(255, 255, 255, 0.85)',\n background: '#FFFFFF',\n disabled: 'rgba(24, 24, 27, 0.08)',\n onDisabled: 'rgba(24, 24, 27, 0.4)',\n};\n\nexport const genericDarkTheme: ThemePalette = {\n primary: '#4DABFF',\n secondary: '#47D973',\n tertiary: '#FBBF24',\n quaternary: '#A1A1AA',\n warn: '#FCA5A5',\n success: '#47D973',\n light: '#27272A',\n onLight: '#F4F4F5',\n onLightVariant: 'rgba(244, 244, 245, 0.5)',\n dark: '#09090B',\n onDark: 'rgba(244, 244, 245, 0.85)',\n background: '#09090B',\n disabled: 'rgba(244, 244, 245, 0.12)',\n onDisabled: 'rgba(244, 244, 245, 0.4)',\n};\n\n// ==========================================\n// 🎨 2. STYLIZED PALETTES (Vibrant Varsity)\n// ==========================================\n\nexport const stylizedLightTheme: ThemePalette = {\n primary: '#6366F1',\n secondary: '#EC4899',\n tertiary: '#F59E0B',\n quaternary: '#64748B',\n warn: '#EF4444',\n success: '#10B981',\n light: '#F8FAFC',\n onLight: '#0F172A',\n onLightVariant: 'rgba(15, 23, 42, 0.6)',\n dark: '#0F172A',\n onDark: 'rgba(255, 255, 255, 0.9)',\n background: '#FFFFFF',\n disabled: 'rgba(15, 23, 42, 0.08)',\n onDisabled: 'rgba(15, 23, 42, 0.4)',\n};\n\nexport const stylizedDarkTheme: ThemePalette = {\n primary: '#818CF8',\n secondary: '#F472B6',\n tertiary: '#FBBF24',\n quaternary: '#94A3B8',\n warn: '#F87171',\n success: '#34D399',\n light: '#1E293B',\n onLight: '#F8FAFC',\n onLightVariant: 'rgba(248, 250, 252, 0.5)',\n dark: '#020617',\n onDark: 'rgba(248, 250, 252, 0.85)',\n background: '#020617',\n disabled: 'rgba(248, 250, 252, 0.12)',\n onDisabled: 'rgba(248, 250, 252, 0.4)',\n};\n\n// ==========================================\n// 👁️ 3. HIGH-CONTRAST PALETTES (WCAG AAA)\n// ==========================================\n\nexport const highContrastLightTheme: ThemePalette = {\n primary: '#004080',\n secondary: '#005914',\n tertiary: '#804B00',\n quaternary: '#262626',\n warn: '#990000',\n success: '#005914',\n light: '#FFFFFF',\n onLight: '#000000',\n onLightVariant: '#262626',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#FFFFFF',\n disabled: '#CCCCCC',\n onDisabled: '#000000', // High visibility fallback override for high contrast users\n};\n\nexport const highContrastDarkTheme: ThemePalette = {\n primary: '#99CCFF',\n secondary: '#86FFAC',\n tertiary: '#FFE066',\n quaternary: '#E5E5E5',\n warn: '#FF9999',\n success: '#86FFAC',\n light: '#121212',\n onLight: '#FFFFFF',\n onLightVariant: '#E5E5E5',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#000000',\n disabled: '#333333',\n onDisabled: '#FFFFFF', // High visibility fallback override for high contrast users\n};\n","import { Button } from '../../button';\nimport { Container } from '../../container';\nimport type { UniTheme } from '../theme.model';\n\nimport { genericLightTheme as palette } from '../palettes/theme.palette';\n\nconst BaseButton: Button = {\n borderRadius: 100,\n color: 'primary-container',\n contentColor: 'on-primary-container',\n verticalPadding: { xxs: 2, xs: 5, sm: 8, md: 12, lg: 16, xl: 20, xxl: 24 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n};\n\nconst BaseContainer: Container = {\n color: 'primary-container',\n contentColor: 'on-primary-container',\n borderRadii: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n horizontalPadding: { xxs: 6, xs: 12, sm: 18, md: 24, lg: 30, xl: 36, xxl: 42 },\n contentSpacing: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n};\n\nexport const BaseTheme: UniTheme = {\n id: 'BaseTheme',\n name: 'Base Theme',\n colors: {\n primary: '#6750A4',\n 'on-primary': '#FFFFFF',\n 'primary-container': '#EADDFF',\n 'on-primary-container': '#21005E',\n secondary: '#625B71',\n 'on-secondary': '#FFFFFF',\n 'secondary-container': '#E8DEF8',\n 'on-secondary-container': '#1E192B',\n tertiary: '#7D5260',\n 'on-tertiary': '#FFFFFF',\n 'tertiary-container': '#FFD8E4',\n 'on-tertiary-container': '#370B1E',\n error: '#B3261E',\n 'on-error': '#FFFFFF',\n 'error-container': '#F9DEDC',\n 'on-error-container': '#370B1E',\n background: '#FFFBFE',\n 'on-background': '#1C1B1F',\n surface: '#FFFBFE',\n 'on-surface': '#1C1B1F',\n 'surface-variant': '#E7E0EC',\n 'on-surface-variant': '#49454E',\n outline: '#79747E',\n shadow: '#000000',\n 'surface-tint': '#6750A4',\n 'inverse-surface': '#313033',\n 'on-inverse-surface': '#F4EFF4',\n 'on-inverse-surface-primary': '#D0BCFF',\n scrim: '#000000',\n transparent: 'rgba(0,0,0,0)',\n\n 'primary-surface': palette.background,\n 'on-primary-surface': palette.onLight,\n 'on-primary-surface-variant': palette.primary,\n },\n typography: {\n 'display-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 57,\n lineHeight: 64,\n fontWeight: 'normal',\n letterSpacing: -0.25,\n },\n 'display-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 45,\n lineHeight: 52,\n fontWeight: 'normal',\n },\n 'display-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 36,\n lineHeight: 44,\n fontWeight: 'normal',\n },\n 'headline-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 32,\n lineHeight: 40,\n fontWeight: 'normal',\n },\n 'headline-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 28,\n lineHeight: 36,\n fontWeight: 'normal',\n },\n 'headline-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 24,\n lineHeight: 32,\n fontWeight: 'normal',\n },\n 'title-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 22,\n lineHeight: 28,\n fontWeight: 'normal',\n },\n 'title-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n fontWeight: 'medium',\n letterSpacing: 0.15,\n },\n 'title-small': {\n fontFamily: 'Red Hat Display',\n fontWeight: 'medium',\n fontSize: 14,\n lineHeight: 20,\n letterSpacing: 0.1,\n },\n 'body-1-long': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 22,\n },\n 'body-1-short': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n 'body-2-long': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 18,\n },\n 'body-2-short': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n 'subtitle-1': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n letterSpacing: 0.15,\n },\n 'subtitle-2': {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n letterSpacing: 0.1,\n },\n label: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n button: {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n textTransform: 'capitalize',\n },\n caption: {\n fontFamily: 'Roboto',\n fontSize: 12,\n lineHeight: 18,\n letterSpacing: 0.4,\n },\n overline: {\n fontFamily: 'Red Hat Display',\n fontSize: 10,\n lineHeight: 18,\n letterSpacing: 1.5,\n textTransform: 'uppercase',\n },\n paragraph: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n quote: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n note: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 22,\n fontStyle: 'italic',\n },\n },\n\n borders: {\n primary: `1px solid ${palette.primary}`,\n secondary: `1px solid ${palette.secondary}`,\n tertiary: `1px solid ${palette.tertiary}`,\n quaternary: `1px solid ${palette.quaternary}`,\n warn: `1px solid ${palette.warn}`,\n success: `1px solid ${palette.secondary}`,\n light: `1px solid ${palette.light}`,\n dark: `1px solid ${palette.dark}`,\n dotted: `1px dotted ${palette.dark}`,\n },\n\n shadows: {\n raised:\n 'rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px',\n menu: 'rgba(0, 0, 0, 0.2) 0px 3px 3px -2px, rgba(0, 0, 0, 0.14) 0px 3px 4px 0px, rgba(0, 0, 0, 0.12) 0px 1px 8px 0px;',\n dialog:\n 'rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px',\n warn: '0 0 5px rgba(255, 0, 0, 0.5), inset 0 0 5px rgba(255, 0, 0, 0.3)',\n },\n\n spacing: {\n none: 'none',\n xxs: '2px',\n xs: '4px',\n sm: '8px',\n md: '16px',\n lg: '32px',\n xl: '64px',\n },\n\n thicknesses: {\n thin: 1,\n standard: 2,\n thick: 4,\n },\n\n radii: {\n none: 'none',\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n max: '999px',\n },\n buttons: {\n elevated: {\n ...BaseButton,\n color: 'surface',\n contentColor: 'on-surface',\n shadowElevation: 'raised',\n },\n filled: {\n ...BaseButton,\n color: 'primary',\n },\n 'filled-secondary': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n },\n outlined: {\n ...BaseButton,\n color: 'transparent',\n borderColor: 'primary',\n contentColor: 'on-primary',\n borderWidth: 1,\n },\n text: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n },\n icon: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n horizontalPadding: BaseButton.verticalPadding,\n },\n 'floating-action': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n borderRadii: { xxs: 3, xs: 5, sm: 8, md: 12, lg: 16, xl: 12, xxl: 20 },\n shadowElevation: 'navigation',\n verticalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n },\n },\n containers: {\n card: {\n ...BaseContainer,\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'interactive',\n },\n screen: {\n ...BaseContainer,\n color: 'background',\n contentColor: 'on-background',\n },\n modal: {\n ...BaseContainer,\n borderRadii: { xxs: 8, xs: 16, sm: 22, md: 28, lg: 32, xl: 38, xxl: 44 },\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'static',\n shadowElevation: 'modal',\n maxWidth: 560,\n },\n },\n typefaces: {},\n icons: {},\n components: {\n alert: {\n options: {\n topPosition: 40,\n borderRadius: 'sm',\n transitionSpeed: 0.35,\n elevation: 'md',\n },\n },\n checkbox: {\n options: {\n size: 20,\n },\n },\n dialog: {\n options: {\n borderRadius: 'lg',\n color: 'primary-surface',\n border: 'quaternary',\n padding: 'sm',\n elevation: 'dialog',\n backdrop: {\n background: 'rgba(255, 255, 255, 0.6)',\n backdropFilter: 'blur(2px)',\n },\n },\n },\n dialogHeader: {\n options: {\n borderRadius: 'max',\n color: 'primary',\n height: 48,\n textRole: 'title-large',\n textAlign: 'center',\n closeButtonIcon: 'close',\n closeButtonSize: 'md',\n },\n },\n dropdown: {\n options: {\n border: 'none',\n borderRadius: 'xxs',\n color: 'primary-surface',\n shadow: 'menu',\n },\n },\n footer: {\n options: {\n height: 52,\n color: 'primary',\n logoHeight: 18.6,\n logoPadding: 'md',\n },\n },\n input: {\n options: {\n typeFace: 'input',\n color: 'primary-surface',\n textColor: 'on-primary-surface',\n disabledColor: 'disabled-surface',\n disabledTextColor: 'on-disabled-surface',\n border: 'light',\n borderRadius: 'xs',\n errorShadow: 'warn',\n errorBorder: 'warn',\n height: 32,\n paddingLeft: 'sm',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n multiSelectDropdown: {\n options: {\n textRole: 'input',\n textColor: 'on-primary-surface',\n dividerBorder: 'light',\n searchInputBorder: 'light',\n searchInputBorderRadius: 'xxs',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n badge: {\n options: {\n borderRadius: 'xxs',\n },\n },\n button: {\n fixed: {\n position: 'relative',\n overflow: 'hidden',\n outline: '0',\n border: '0',\n cursor: 'pointer',\n fontFamily: 'Euphemia, sans-serif',\n transition: 'all 0.28s ease',\n },\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: `${palette.disabled} !important`,\n color: '#fff !important',\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n sizes: {\n sm: {\n height: 22,\n borderRadius: 11,\n fontSize: 12,\n padding: '0 12px',\n fontFamily: 'Euphemia Bold, sans-serif',\n fontWeight: 600,\n },\n md: {\n height: 26,\n borderRadius: 13,\n fontSize: 16,\n padding: '0 16px',\n },\n lg: {\n height: 36,\n borderRadius: 18,\n fontSize: 18,\n padding: '0 18px',\n },\n xl: {\n height: 48,\n borderRadius: 24,\n fontSize: 24,\n padding: '0 22px',\n },\n },\n },\n iconButton: {\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: 'transparent !important',\n color: 'rgba(0,0,0,0.25) !important',\n },\n },\n sizes: {\n sm: {\n height: 22,\n minHeight: 22,\n width: 22,\n minWidth: 22,\n fontSize: 18,\n },\n md: {\n height: 26,\n minHeight: 26,\n width: 26,\n minWidth: 26,\n fontSize: 22,\n },\n lg: {\n height: 36,\n minHeight: 36,\n width: 36,\n minWidth: 36,\n fontSize: 30,\n },\n xl: {\n height: 40,\n minHeight: 40,\n width: 40,\n minWidth: 40,\n fontSize: 34,\n },\n },\n },\n progressGauge: {\n fixed: {\n textFill: palette.onLight,\n },\n colors: {\n primary: {\n backgroundColor: '#b3d4ea',\n color: palette.primary,\n },\n secondary: {\n backgroundColor: '#b3e7c2',\n color: palette.secondary,\n },\n tertiary: {\n backgroundColor: '#ffe2b3',\n color: palette.tertiary,\n },\n warn: {\n backgroundColor: '#ffc2b3',\n color: palette.warn,\n },\n success: {\n backgroundColor: '#b3e7c2',\n color: palette.success,\n },\n },\n sizes: {\n sm: { height: '54px' },\n md: { height: '68px' },\n lg: { height: '82px' },\n xl: { height: '104px' },\n },\n },\n card: {\n fixed: {\n borderStyle: 'solid',\n borderWidth: '1px',\n borderRadius: '8px',\n overflow: 'hidden',\n },\n colors: {\n primary: {\n borderColor: palette.primary,\n backgroundColor: palette.background,\n },\n secondary: {\n borderColor: palette.secondary,\n backgroundColor: palette.background,\n },\n tertiary: {\n borderColor: palette.tertiary,\n backgroundColor: palette.background,\n },\n warn: {\n borderColor: palette.warn,\n backgroundColor: palette.background,\n },\n success: {\n borderColor: palette.success,\n backgroundColor: palette.background,\n },\n },\n },\n cardHeader: {\n fixed: { padding: '12px 24px' },\n colors: {\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n },\n cardContent: {\n fixed: {\n padding: '12px 24px',\n },\n },\n dataSearch: {\n options: {\n border: 'light',\n borderRadius: 'xs',\n color: 'primary-surface',\n placeholderColor: 'disabled',\n },\n },\n dataTable: {\n options: {\n color: 'primary-surface',\n border: 'light',\n borderRadius: 'sm',\n elevation: undefined,\n headerPadding: 'sm',\n footerPadding: 'sm',\n thTextRole: 'headline-small',\n thColor: 'primary-container',\n thVerticalBorder: 'dotted',\n thHorizontalBorder: 'light',\n thPadding: 'sm',\n tdTextRole: 'title-small',\n tdColor: 'primary-surface',\n tdStickyColor: 'primary-container',\n tdPadding: 'sm',\n tdVerticalBorder: 'dotted',\n tdHorizontalBorder: 'light',\n rowHoverColor: 'primary-container',\n loadingOverlayColor: 'scrim',\n loadingSpinnerColor: 'primary',\n loadingSpinnerSize: 40,\n },\n },\n notificationBadge: {\n options: {\n borderRadius: 'sm',\n offset: -10,\n },\n },\n paginator: {\n options: {\n gap: 'xs',\n textRole: 'label',\n inputBorder: 'light',\n inputBorderRadius: 'xs',\n pageBorderRadius: 'xs',\n currentPageBorder: 'light',\n currentPageBorderRadius: 'xs',\n },\n },\n snackbar: {\n options: {\n bottomPosition: 40, // px\n transitionDelay: '0.35s', // ms\n autoCloseDelay: 35000, // ms\n },\n },\n toggle: {\n options: {\n size: 20,\n },\n },\n tooltip: {\n options: {\n border: undefined,\n borderRadius: 'xs',\n shadow: 'raised',\n color: 'inverse-surface',\n typeface: 'label',\n },\n },\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const DarkTheme: UniTheme = {\n ...BaseTheme,\n id: 'DarkTheme',\n name: 'Dark Theme',\n colors: {\n primary: '#D0BCFF',\n 'on-primary': '#371E73',\n 'primary-container': '#4F378B',\n 'on-primary-container': '#EADDFF',\n secondary: '#CCC2DC',\n 'on-secondary': '#332D41',\n 'secondary-container': '#4A4458',\n 'on-secondary-container': '#E8DEF8',\n tertiary: '#EFB8C8',\n 'on-tertiary': '#492532',\n 'tertiary-container': '#633B48',\n 'on-tertiary-container': '#FFD8E4',\n error: '#F2B8B5',\n 'on-error': '#601410',\n 'error-container': '#8C1D18',\n 'on-error-container': '#F9DEDC',\n background: '#1C1B1F',\n 'on-background': '#E6E1E5',\n surface: '#1C1B1F',\n 'on-surface': '#E6E1E5',\n 'surface-variant': '#49454F',\n 'on-surface-variant': '#CAC4D0',\n outline: '#938F99',\n shadow: '#000000',\n 'surface-tint': '#D0BCFF',\n 'inverse-surface': '#E6E1E5',\n 'inverse-on-surface': '#313033',\n 'inverse-on-surface-primary': '#6750A4',\n transparent: 'rgba(0,0,0,0)',\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const LightTheme: UniTheme = {\n ...BaseTheme,\n id: 'LightTheme',\n name: 'Light Theme',\n};\n","import { type UniTheme } from './theme.model';\nimport { DarkTheme } from './themes/dark.theme';\nimport { LightTheme } from './themes/light.theme';\n\nexport const UniThemes: Record<string, UniTheme> = {\n LightTheme,\n DarkTheme,\n};\n\n// First Theme is default.\nexport const DefaultThemeId = Object.keys(UniThemes)[0];\n","import { FontWeight } from './typography.types';\n\nexport const FontWeightMap: Record<FontWeight, number> = {\n thin: 100,\n 'extra-light': 200,\n light: 200,\n normal: 400,\n medium: 500,\n 'semi-bold': 600,\n bold: 700,\n 'extra-bold': 800,\n black: 900,\n 'extra-black': 950,\n};\n","import { GetFieldType } from './types';\n\nexport function getValue<TData, TPath extends string, TDefault = GetFieldType<TData, TPath>>(\n data: TData,\n path: TPath,\n defaultValue?: TDefault\n): GetFieldType<TData, TPath> | TDefault {\n const value = path\n .split(/[.[\\]]/)\n .filter(Boolean)\n .reduce<GetFieldType<TData, TPath>>((value, key) => (value as any)?.[key], data as any);\n\n return value !== undefined ? value : (defaultValue as TDefault);\n}\n","export const debounce = <T extends (...args: any[]) => ReturnType<T>>(\n callback: T,\n timeout: number\n): ((...args: Parameters<T>) => void) => {\n let timer: ReturnType<typeof setTimeout>;\n\n return (...args: Parameters<T>) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n callback(...args);\n }, timeout);\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/concepts/animation/keyframes.constants.ts","../../src/concepts/color/color.records.ts","../../src/concepts/color/color.utils.ts","../../src/concepts/color/color.helper.ts","../../src/concepts/elevation/zIndex.ts","../../src/concepts/gradient/gradient.helper.ts","../../src/concepts/layout/layout.helper.ts","../../src/concepts/shadow/shadow.utils.ts","../../src/concepts/shadow/shadow.records.ts","../../src/concepts/theme/palettes/theme.palette.ts","../../src/concepts/theme/themes/base.theme.ts","../../src/concepts/theme/themes/dark.theme.ts","../../src/concepts/theme/themes/light.theme.ts","../../src/concepts/theme/theme.records.ts","../../src/concepts/typography/typography.records.ts","../../src/utils/getValue.ts","../../src/utils/debounce.ts"],"sourcesContent":["import type { StyleExpression } from '../style/style.types';\n\nexport type PercentageString = `${number}%`;\nexport type KeyframesExpression = Record<PercentageString, StyleExpression>;\n\nexport const fadeIn: KeyframesExpression = {\n '0%': {\n opacity: 0,\n },\n '100%': {\n opacity: 1,\n },\n};\n\nexport const fadeOut: KeyframesExpression = {\n '0%': {\n opacity: 1,\n },\n '100%': {\n opacity: 0,\n },\n};\n\nexport const expandFadeIn = {\n '0%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n '100%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n};\n\nexport const collapseFadeOut = {\n '0%': {\n gridTemplateRows: '1fr',\n opacity: 1,\n },\n '100%': {\n gridTemplateRows: '0fr',\n opacity: 0,\n },\n};\n","import { Range } from './color.model';\nimport { ColorCategory, ColorRole, UtilityColorRole } from './color.types';\n\nexport const CategorySaturation: Record<ColorCategory, Range> = {\n jewel: { low: 73, high: 83 },\n pastel: { low: 14, high: 21 },\n earth: { low: 36, high: 41 },\n neutral: { low: 1, high: 10 },\n florescent: { low: 63, high: 100 },\n shades: { low: 0, high: 0 },\n};\n\nexport const CategoryLightness: Record<ColorCategory, Range> = {\n jewel: { low: 56, high: 76 },\n pastel: { low: 89, high: 96 },\n earth: { low: 36, high: 77 },\n neutral: { low: 70, high: 99 },\n florescent: { low: 82, high: 100 },\n shades: { low: 0, high: 100 },\n};\n\nexport const RoleHues: Record<ColorRole | UtilityColorRole, Range> = {\n primary: { low: 73, high: 83, default: 0 },\n secondary: { low: 14, high: 21, default: 0 },\n tertiary: { low: 36, high: 41, default: 0 },\n inverse: { low: 63, high: 100, default: 0 },\n ghost: { low: 0, high: 0, default: 0 },\n warn: { low: 320, high: 20, default: 0 }, // red\n alert: { low: 40, high: 70, default: 60 }, // yellow\n success: { low: 90, high: 150, default: 120 }, // green\n info: { low: 200, high: 260, default: 240 }, // blue\n};\n","import { Range } from './color.model';\n\nexport const randomRangeValue = ({ low, high }: Range): number => {\n low = Math.ceil(low);\n high = Math.floor(high);\n return Math.floor(Math.random() * (high - low + 1)) + low;\n};\n\nexport const cycle = (angle: number): number => {\n if (angle > 360) return angle - 360;\n if (angle < 0) return angle + 360;\n return angle;\n};\n\nexport const getAnalogousHues = (hue: number): number[] => [cycle(hue + 30), cycle(hue + 60)];\nexport const getComplimentaryHue = (hue: number): number => cycle(hue + 180);\nexport const getTriadicHues = (hue: number): number[] => [cycle(hue + 120), cycle(hue - 120)];\nexport const getSplitComplimentaryHues = (hue: number): number[] => [\n cycle(hue + 150),\n cycle(hue - 150),\n];\n","import { HSL, HSLA, RGB, UniColor } from './color.model';\nimport { CategoryLightness, CategorySaturation, RoleHues } from './color.records';\nimport { randomRangeValue } from './color.utils';\n\nexport function HSLAToString({ hue, saturation, lightness, alpha = 1 }: HSLA): string {\n return `hsla(${hue}, ${saturation}%, ${lightness}%, ${alpha})`;\n}\n\nexport function RGBToString({ red, green, blue }: RGB): string {\n return `rgb(${red}, ${green}, ${blue})`;\n}\n\nexport function uniColor({ role, category, alpha = 1 }: UniColor): string {\n const hue = randomRangeValue(RoleHues[role]);\n const saturation = randomRangeValue(CategorySaturation[category]);\n const lightness = randomRangeValue(CategoryLightness[category]);\n\n return HSLAToString({ hue, saturation, lightness, alpha });\n}\n\nexport const RGBToHSL = ({ red, green, blue }: RGB): HSL => {\n red /= 255;\n green /= 255;\n blue /= 255;\n const l = Math.max(red, green, blue);\n const s = l - Math.min(red, green, blue);\n const h = s\n ? l === red\n ? (green - blue) / s\n : l === green\n ? 2 + (blue - red) / s\n : 4 + (red - green) / s\n : 0;\n return {\n hue: 60 * h < 0 ? 60 * h + 360 : 60 * h,\n saturation: 100 * (s ? (l <= 0.5 ? s / (2 * l - s) : s / (2 - (2 * l - s))) : 0),\n lightness: (100 * (2 * l - s)) / 2,\n };\n};\n\n// Future Methods - https://codepen.io/jkantner/pen/VVEMRK\n","export type ZIndexableElements =\n | 'dropdown'\n | 'sticky'\n | 'fixed'\n | 'backdrop'\n | 'dialog'\n | 'popover'\n | 'tooltip'\n | 'overlay';\n\nexport const Z_INDEX: Record<ZIndexableElements, number> = {\n dropdown: 1000,\n sticky: 1020,\n fixed: 1030,\n backdrop: 1040,\n dialog: 1050,\n popover: 1060,\n tooltip: 1070,\n overlay: 1080,\n};\n","import { Gradient } from './gradient.model';\n\nexport function gradient(config: Gradient): string {\n return ``;\n}\n","import { Size } from '../core.types';\nimport { DeviceOrientation } from './layout.types';\n\nexport function getDeviceSize(height: number, width: number): Size {\n if (!height || !width) return 'md';\n\n const max = Math.max(height, width);\n\n if (max <= 600)\n // Small Mobile\n return 'xs';\n\n if (max <= 960)\n // Large Mobile\n return 'sm';\n\n if (max <= 1264)\n // Tablets\n return 'md';\n\n if (max <= 1904)\n // Laptops & Monitors\n return 'lg';\n\n return 'xl'; // Large Monitors\n}\n\nexport function getDeviceOrientation(height: number, width: number): DeviceOrientation {\n if (!height || !width) return 'landscape';\n\n return height > width ? 'portrait' : 'landscape';\n}\n","import { BoxShadow, ShadowDefinition } from './shadow.model';\n\n// box-shadow: none|h-offset v-offset blur spread color\nexport const GetBoxShadow = ({ offset, blur, opacity }: BoxShadow): string => {\n return `0 ${offset}px ${blur}px rgba(0,0,0,0.${opacity})`;\n};\n\nexport const GetBoxShadows = ({ umbra, penumbra }: ShadowDefinition): string => {\n return GetBoxShadow(umbra) + ', ' + GetBoxShadow(penumbra);\n};\n","import { ShadowDefinition } from './shadow.model';\nimport { ShadowElevation } from './shadow.types';\nimport { GetBoxShadows } from './shadow.utils';\n\nexport const ShadowMap: Record<ShadowElevation, ShadowDefinition> = {\n pressed: {\n umbra: {\n offset: 1,\n blur: 2,\n opacity: 24,\n },\n penumbra: {\n offset: 1,\n blur: 3,\n opacity: 12,\n },\n },\n raised: {\n umbra: {\n offset: 3,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 3,\n blur: 6,\n opacity: 16,\n },\n },\n focussed: {\n umbra: {\n offset: 6,\n blur: 6,\n opacity: 23,\n },\n penumbra: {\n offset: 10,\n blur: 20,\n opacity: 19,\n },\n },\n navigation: {\n umbra: {\n offset: 10,\n blur: 10,\n opacity: 22,\n },\n penumbra: {\n offset: 14,\n blur: 28,\n opacity: 25,\n },\n },\n modal: {\n umbra: {\n offset: 15,\n blur: 12,\n opacity: 22,\n },\n penumbra: {\n offset: 19,\n blur: 38,\n opacity: 30,\n },\n },\n};\n\nexport const ShadowCssMap: Record<ShadowElevation, string> = {\n pressed: GetBoxShadows(ShadowMap['pressed']),\n raised: GetBoxShadows(ShadowMap['raised']),\n focussed: GetBoxShadows(ShadowMap['focussed']),\n navigation: GetBoxShadows(ShadowMap['navigation']),\n modal: GetBoxShadows(ShadowMap['modal']),\n};\n","export interface ThemePalette {\n primary: string;\n secondary: string;\n tertiary: string;\n quaternary: string;\n warn: string;\n success: string;\n light: string;\n onLight: string;\n onLightVariant: string;\n dark: string;\n onDark: string;\n background: string;\n disabled: string;\n onDisabled: string;\n}\n\n// ==========================================\n// 🏛️ 1. GENERIC BASE PALETTES (WCAG AA)\n// ==========================================\n\nexport const genericLightTheme: ThemePalette = {\n primary: '#0066B2',\n secondary: '#008528',\n tertiary: '#D97706',\n quaternary: '#52525B',\n warn: '#DC2626',\n success: '#008528',\n light: '#F4F4F5',\n onLight: '#18181B',\n onLightVariant: 'rgba(24, 24, 27, 0.6)',\n dark: '#18181B',\n onDark: 'rgba(255, 255, 255, 0.85)',\n background: '#FFFFFF',\n disabled: 'rgba(24, 24, 27, 0.08)',\n onDisabled: 'rgba(24, 24, 27, 0.4)',\n};\n\nexport const genericDarkTheme: ThemePalette = {\n primary: '#4DABFF',\n secondary: '#47D973',\n tertiary: '#FBBF24',\n quaternary: '#A1A1AA',\n warn: '#FCA5A5',\n success: '#47D973',\n light: '#27272A',\n onLight: '#F4F4F5',\n onLightVariant: 'rgba(244, 244, 245, 0.5)',\n dark: '#09090B',\n onDark: 'rgba(244, 244, 245, 0.85)',\n background: '#09090B',\n disabled: 'rgba(244, 244, 245, 0.12)',\n onDisabled: 'rgba(244, 244, 245, 0.4)',\n};\n\n// ==========================================\n// 🎨 2. STYLIZED PALETTES (Vibrant Varsity)\n// ==========================================\n\nexport const stylizedLightTheme: ThemePalette = {\n primary: '#6366F1',\n secondary: '#EC4899',\n tertiary: '#F59E0B',\n quaternary: '#64748B',\n warn: '#EF4444',\n success: '#10B981',\n light: '#F8FAFC',\n onLight: '#0F172A',\n onLightVariant: 'rgba(15, 23, 42, 0.6)',\n dark: '#0F172A',\n onDark: 'rgba(255, 255, 255, 0.9)',\n background: '#FFFFFF',\n disabled: 'rgba(15, 23, 42, 0.08)',\n onDisabled: 'rgba(15, 23, 42, 0.4)',\n};\n\nexport const stylizedDarkTheme: ThemePalette = {\n primary: '#818CF8',\n secondary: '#F472B6',\n tertiary: '#FBBF24',\n quaternary: '#94A3B8',\n warn: '#F87171',\n success: '#34D399',\n light: '#1E293B',\n onLight: '#F8FAFC',\n onLightVariant: 'rgba(248, 250, 252, 0.5)',\n dark: '#020617',\n onDark: 'rgba(248, 250, 252, 0.85)',\n background: '#020617',\n disabled: 'rgba(248, 250, 252, 0.12)',\n onDisabled: 'rgba(248, 250, 252, 0.4)',\n};\n\n// ==========================================\n// 👁️ 3. HIGH-CONTRAST PALETTES (WCAG AAA)\n// ==========================================\n\nexport const highContrastLightTheme: ThemePalette = {\n primary: '#004080',\n secondary: '#005914',\n tertiary: '#804B00',\n quaternary: '#262626',\n warn: '#990000',\n success: '#005914',\n light: '#FFFFFF',\n onLight: '#000000',\n onLightVariant: '#262626',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#FFFFFF',\n disabled: '#CCCCCC',\n onDisabled: '#000000', // High visibility fallback override for high contrast users\n};\n\nexport const highContrastDarkTheme: ThemePalette = {\n primary: '#99CCFF',\n secondary: '#86FFAC',\n tertiary: '#FFE066',\n quaternary: '#E5E5E5',\n warn: '#FF9999',\n success: '#86FFAC',\n light: '#121212',\n onLight: '#FFFFFF',\n onLightVariant: '#E5E5E5',\n dark: '#000000',\n onDark: '#FFFFFF',\n background: '#000000',\n disabled: '#333333',\n onDisabled: '#FFFFFF', // High visibility fallback override for high contrast users\n};\n","import { Button } from '../../button';\nimport { Container } from '../../container';\nimport type { UniTheme } from '../theme.model';\n\nimport { genericLightTheme as palette } from '../palettes/theme.palette';\n\nconst BaseButton: Button = {\n borderRadius: 100,\n color: 'primary-container',\n contentColor: 'on-primary-container',\n verticalPadding: { xxs: 2, xs: 5, sm: 8, md: 12, lg: 16, xl: 20, xxl: 24 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n};\n\nconst BaseContainer: Container = {\n color: 'primary-container',\n contentColor: 'on-primary-container',\n borderRadii: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n horizontalPadding: { xxs: 6, xs: 12, sm: 18, md: 24, lg: 30, xl: 36, xxl: 42 },\n contentSpacing: { xxs: 4, xs: 8, sm: 12, md: 16, lg: 20, xl: 24, xxl: 28 },\n};\n\nexport const BaseTheme: UniTheme = {\n id: 'BaseTheme',\n name: 'Base Theme',\n colors: {\n primary: '#6750A4',\n 'on-primary': '#FFFFFF',\n 'primary-container': '#EADDFF',\n 'on-primary-container': '#21005E',\n secondary: '#625B71',\n 'on-secondary': '#FFFFFF',\n 'secondary-container': '#E8DEF8',\n 'on-secondary-container': '#1E192B',\n tertiary: '#7D5260',\n 'on-tertiary': '#FFFFFF',\n 'tertiary-container': '#FFD8E4',\n 'on-tertiary-container': '#370B1E',\n error: '#B3261E',\n 'on-error': '#FFFFFF',\n 'error-container': '#F9DEDC',\n 'on-error-container': '#370B1E',\n background: '#FFFBFE',\n 'on-background': '#1C1B1F',\n surface: '#FFFBFE',\n 'on-surface': '#1C1B1F',\n 'surface-variant': '#E7E0EC',\n 'on-surface-variant': '#49454E',\n outline: '#79747E',\n shadow: '#000000',\n 'surface-tint': '#6750A4',\n 'inverse-surface': '#313033',\n 'on-inverse-surface': '#F4EFF4',\n 'on-inverse-surface-primary': '#D0BCFF',\n scrim: '#000000',\n transparent: 'rgba(0,0,0,0)',\n\n 'primary-surface': palette.background,\n 'on-primary-surface': palette.onLight,\n 'on-primary-surface-variant': palette.primary,\n },\n typography: {\n 'display-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 57,\n lineHeight: 64,\n fontWeight: 'normal',\n letterSpacing: -0.25,\n },\n 'display-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 45,\n lineHeight: 52,\n fontWeight: 'normal',\n },\n 'display-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 36,\n lineHeight: 44,\n fontWeight: 'normal',\n },\n 'headline-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 32,\n lineHeight: 40,\n fontWeight: 'normal',\n },\n 'headline-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 28,\n lineHeight: 36,\n fontWeight: 'normal',\n },\n 'headline-small': {\n fontFamily: 'Red Hat Display',\n fontSize: 24,\n lineHeight: 32,\n fontWeight: 'normal',\n },\n 'title-large': {\n fontFamily: 'Red Hat Display',\n fontSize: 22,\n lineHeight: 28,\n fontWeight: 'normal',\n },\n 'title-medium': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n fontWeight: 'medium',\n letterSpacing: 0.15,\n },\n 'title-small': {\n fontFamily: 'Red Hat Display',\n fontWeight: 'medium',\n fontSize: 14,\n lineHeight: 20,\n letterSpacing: 0.1,\n },\n 'body-1-long': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 22,\n },\n 'body-1-short': {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n 'body-2-long': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 18,\n },\n 'body-2-short': {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n 'subtitle-1': {\n fontFamily: 'Red Hat Display',\n fontSize: 16,\n lineHeight: 24,\n letterSpacing: 0.15,\n },\n 'subtitle-2': {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n letterSpacing: 0.1,\n },\n label: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 20,\n },\n button: {\n fontFamily: 'Red Hat Display',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'medium',\n textTransform: 'capitalize',\n },\n caption: {\n fontFamily: 'Roboto',\n fontSize: 12,\n lineHeight: 18,\n letterSpacing: 0.4,\n },\n overline: {\n fontFamily: 'Red Hat Display',\n fontSize: 10,\n lineHeight: 18,\n letterSpacing: 1.5,\n textTransform: 'uppercase',\n },\n paragraph: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n quote: {\n fontFamily: 'Roboto',\n fontSize: 16,\n lineHeight: 24,\n },\n note: {\n fontFamily: 'Roboto',\n fontSize: 14,\n lineHeight: 22,\n fontStyle: 'italic',\n },\n },\n borders: {\n primary: `1px solid ${palette.primary}`,\n secondary: `1px solid ${palette.secondary}`,\n tertiary: `1px solid ${palette.tertiary}`,\n quaternary: `1px solid ${palette.quaternary}`,\n warn: `1px solid ${palette.warn}`,\n success: `1px solid ${palette.secondary}`,\n light: `1px solid ${palette.light}`,\n dark: `1px solid ${palette.dark}`,\n dotted: `1px dotted ${palette.dark}`,\n },\n\n shadows: {\n raised:\n 'rgba(0, 0, 0, 0.2) 0px 2px 1px -1px, rgba(0, 0, 0, 0.14) 0px 1px 1px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px',\n menu: 'rgba(0, 0, 0, 0.2) 0px 3px 3px -2px, rgba(0, 0, 0, 0.14) 0px 3px 4px 0px, rgba(0, 0, 0, 0.12) 0px 1px 8px 0px;',\n dialog:\n 'rgba(0, 0, 0, 0.2) 0px 3px 5px -1px, rgba(0, 0, 0, 0.14) 0px 6px 10px 0px, rgba(0, 0, 0, 0.12) 0px 1px 18px 0px',\n warn: '0 0 5px rgba(255, 0, 0, 0.5), inset 0 0 5px rgba(255, 0, 0, 0.3)',\n },\n\n spacing: {\n none: 'none',\n xxs: '2px',\n xs: '4px',\n sm: '8px',\n md: '16px',\n lg: '32px',\n xl: '64px',\n },\n\n thicknesses: {\n thin: 1,\n standard: 2,\n thick: 4,\n },\n\n radii: {\n none: 'none',\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n max: '999px',\n },\n buttons: {\n elevated: {\n ...BaseButton,\n color: 'surface',\n contentColor: 'on-surface',\n shadowElevation: 'raised',\n },\n filled: {\n ...BaseButton,\n color: 'primary',\n },\n 'filled-secondary': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n },\n outlined: {\n ...BaseButton,\n color: 'transparent',\n borderColor: 'primary',\n contentColor: 'on-primary',\n borderWidth: 1,\n },\n text: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n },\n icon: {\n ...BaseButton,\n color: 'transparent',\n contentColor: 'on-surface',\n horizontalPadding: BaseButton.verticalPadding,\n },\n 'floating-action': {\n ...BaseButton,\n color: 'secondary',\n contentColor: 'on-secondary',\n borderRadii: { xxs: 3, xs: 5, sm: 8, md: 12, lg: 16, xl: 12, xxl: 20 },\n shadowElevation: 'navigation',\n verticalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n horizontalPadding: { xxs: 4, xs: 8, sm: 12, md: 18, lg: 24, xl: 30, xxl: 36 },\n },\n },\n containers: {\n card: {\n ...BaseContainer,\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'interactive',\n },\n screen: {\n ...BaseContainer,\n color: 'background',\n contentColor: 'on-background',\n },\n modal: {\n ...BaseContainer,\n borderRadii: { xxs: 8, xs: 16, sm: 22, md: 28, lg: 32, xl: 38, xxl: 44 },\n color: 'surface',\n contentColor: 'on-surface',\n shadowMode: 'static',\n shadowElevation: 'modal',\n maxWidth: 560,\n },\n },\n typefaces: {},\n icons: {},\n components: {\n alert: {\n options: {\n topPosition: 40,\n borderRadius: 'sm',\n transitionSpeed: 0.35,\n elevation: 'md',\n },\n },\n checkbox: {\n options: {\n size: 20,\n },\n },\n dialog: {\n options: {\n borderRadius: 'lg',\n color: 'primary-surface',\n border: 'quaternary',\n padding: 'sm',\n elevation: 'dialog',\n backdrop: {\n background: 'rgba(255, 255, 255, 0.6)',\n backdropFilter: 'blur(2px)',\n },\n },\n },\n dialogHeader: {\n options: {\n borderRadius: 'max',\n color: 'primary',\n height: 48,\n textRole: 'title-large',\n textAlign: 'center',\n closeButtonIcon: 'close',\n closeButtonSize: 'md',\n },\n },\n dropdown: {\n options: {\n border: 'none',\n borderRadius: 'xxs',\n color: 'primary-surface',\n shadow: 'menu',\n },\n },\n footer: {\n options: {\n height: 52,\n color: 'primary',\n logoHeight: 18.6,\n logoPadding: 'md',\n },\n },\n input: {\n options: {\n typeFace: 'input',\n color: 'primary-surface',\n textColor: 'on-primary-surface',\n disabledColor: 'disabled-surface',\n disabledTextColor: 'on-disabled-surface',\n border: 'light',\n borderRadius: 'xs',\n errorShadow: 'warn',\n errorBorder: 'warn',\n height: 32,\n paddingLeft: 'sm',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n multiSelectDropdown: {\n options: {\n textRole: 'input',\n textColor: 'on-primary-surface',\n dividerBorder: 'light',\n searchInputBorder: 'light',\n searchInputBorderRadius: 'xxs',\n focusOutline: `2px solid ${palette.primary}`,\n focusOutlineOffset: 2,\n },\n },\n badge: {\n options: {\n borderRadius: 'xxs',\n },\n },\n button: {\n fixed: {\n position: 'relative',\n overflow: 'hidden',\n outline: '0',\n border: '0',\n cursor: 'pointer',\n fontFamily: 'Euphemia, sans-serif',\n transition: 'all 0.28s ease',\n },\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: `${palette.disabled} !important`,\n color: '#fff !important',\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n sizes: {\n sm: {\n height: 22,\n borderRadius: 11,\n fontSize: 12,\n padding: '0 12px',\n fontFamily: 'Euphemia Bold, sans-serif',\n fontWeight: 600,\n },\n md: {\n height: 26,\n borderRadius: 13,\n fontSize: 16,\n padding: '0 16px',\n },\n lg: {\n height: 36,\n borderRadius: 18,\n fontSize: 18,\n padding: '0 18px',\n },\n xl: {\n height: 48,\n borderRadius: 24,\n fontSize: 24,\n padding: '0 22px',\n },\n },\n },\n iconButton: {\n colors: {\n ghost: {\n backgroundColor: 'transparent',\n color: 'currentcolor',\n },\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n disabled: {\n backgroundColor: 'transparent !important',\n color: 'rgba(0,0,0,0.25) !important',\n },\n },\n sizes: {\n sm: {\n height: 22,\n minHeight: 22,\n width: 22,\n minWidth: 22,\n fontSize: 18,\n },\n md: {\n height: 26,\n minHeight: 26,\n width: 26,\n minWidth: 26,\n fontSize: 22,\n },\n lg: {\n height: 36,\n minHeight: 36,\n width: 36,\n minWidth: 36,\n fontSize: 30,\n },\n xl: {\n height: 40,\n minHeight: 40,\n width: 40,\n minWidth: 40,\n fontSize: 34,\n },\n },\n },\n progressGauge: {\n fixed: {\n textFill: palette.onLight,\n },\n colors: {\n primary: {\n backgroundColor: '#b3d4ea',\n color: palette.primary,\n },\n secondary: {\n backgroundColor: '#b3e7c2',\n color: palette.secondary,\n },\n tertiary: {\n backgroundColor: '#ffe2b3',\n color: palette.tertiary,\n },\n warn: {\n backgroundColor: '#ffc2b3',\n color: palette.warn,\n },\n success: {\n backgroundColor: '#b3e7c2',\n color: palette.success,\n },\n },\n sizes: {\n sm: { height: '54px' },\n md: { height: '68px' },\n lg: { height: '82px' },\n xl: { height: '104px' },\n },\n },\n card: {\n fixed: {\n borderStyle: 'solid',\n borderWidth: '1px',\n borderRadius: '8px',\n overflow: 'hidden',\n },\n colors: {\n primary: {\n borderColor: palette.primary,\n backgroundColor: palette.background,\n },\n secondary: {\n borderColor: palette.secondary,\n backgroundColor: palette.background,\n },\n tertiary: {\n borderColor: palette.tertiary,\n backgroundColor: palette.background,\n },\n warn: {\n borderColor: palette.warn,\n backgroundColor: palette.background,\n },\n success: {\n borderColor: palette.success,\n backgroundColor: palette.background,\n },\n },\n },\n cardHeader: {\n fixed: { padding: '12px 24px' },\n colors: {\n primary: {\n backgroundColor: palette.primary,\n color: palette.onDark,\n },\n secondary: {\n backgroundColor: palette.secondary,\n color: palette.onDark,\n },\n tertiary: {\n backgroundColor: palette.tertiary,\n color: palette.onDark,\n },\n warn: {\n backgroundColor: palette.warn,\n color: palette.onDark,\n },\n success: {\n backgroundColor: palette.success,\n color: palette.onDark,\n },\n },\n },\n cardContent: {\n fixed: {\n padding: '12px 24px',\n },\n },\n dataSearch: {\n options: {\n border: 'light',\n borderRadius: 'xs',\n color: 'primary-surface',\n placeholderColor: 'disabled',\n },\n },\n dataTable: {\n options: {\n color: 'primary-surface',\n border: 'light',\n borderRadius: 'sm',\n elevation: undefined,\n headerPadding: 'sm',\n footerPadding: 'sm',\n thTextRole: 'headline-small',\n thColor: 'primary-container',\n thVerticalBorder: 'dotted',\n thHorizontalBorder: 'light',\n thPadding: 'sm',\n tdTextRole: 'title-small',\n tdColor: 'primary-surface',\n tdStickyColor: 'primary-container',\n tdPadding: 'sm',\n tdVerticalBorder: 'dotted',\n tdHorizontalBorder: 'light',\n rowHoverColor: 'primary-container',\n loadingOverlayColor: 'scrim',\n loadingSpinnerColor: 'primary',\n loadingSpinnerSize: 40,\n },\n },\n notificationBadge: {\n options: {\n borderRadius: 'sm',\n offset: -10,\n },\n },\n paginator: {\n options: {\n gap: 'xs',\n textRole: 'label',\n inputBorder: 'light',\n inputBorderRadius: 'xs',\n pageBorderRadius: 'xs',\n currentPageBorder: 'light',\n currentPageBorderRadius: 'xs',\n },\n },\n snackbar: {\n options: {\n bottomPosition: 40, // px\n transitionDelay: '0.35s', // ms\n autoCloseDelay: 35000, // ms\n },\n },\n toggle: {\n options: {\n size: 20,\n },\n },\n tooltip: {\n options: {\n border: undefined,\n borderRadius: 'xs',\n shadow: 'raised',\n color: 'inverse-surface',\n typeface: 'label',\n },\n },\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const DarkTheme: UniTheme = {\n ...BaseTheme,\n id: 'DarkTheme',\n name: 'Dark Theme',\n colors: {\n primary: '#D0BCFF',\n 'on-primary': '#371E73',\n 'primary-container': '#4F378B',\n 'on-primary-container': '#EADDFF',\n secondary: '#CCC2DC',\n 'on-secondary': '#332D41',\n 'secondary-container': '#4A4458',\n 'on-secondary-container': '#E8DEF8',\n tertiary: '#EFB8C8',\n 'on-tertiary': '#492532',\n 'tertiary-container': '#633B48',\n 'on-tertiary-container': '#FFD8E4',\n error: '#F2B8B5',\n 'on-error': '#601410',\n 'error-container': '#8C1D18',\n 'on-error-container': '#F9DEDC',\n background: '#1C1B1F',\n 'on-background': '#E6E1E5',\n surface: '#1C1B1F',\n 'on-surface': '#E6E1E5',\n 'surface-variant': '#49454F',\n 'on-surface-variant': '#CAC4D0',\n outline: '#938F99',\n shadow: '#000000',\n 'surface-tint': '#D0BCFF',\n 'inverse-surface': '#E6E1E5',\n 'inverse-on-surface': '#313033',\n 'inverse-on-surface-primary': '#6750A4',\n transparent: 'rgba(0,0,0,0)',\n },\n};\n","import { type UniTheme } from '../theme.model';\nimport { BaseTheme } from './base.theme';\n\nexport const LightTheme: UniTheme = {\n ...BaseTheme,\n id: 'LightTheme',\n name: 'Light Theme',\n};\n","import { type UniTheme } from './theme.model';\nimport { DarkTheme } from './themes/dark.theme';\nimport { LightTheme } from './themes/light.theme';\n\nexport const UniThemes: Record<string, UniTheme> = {\n LightTheme,\n DarkTheme,\n};\n\n// First Theme is default.\nexport const DefaultThemeId = Object.keys(UniThemes)[0];\n","import { FontWeight } from './typography.types';\n\nexport const FontWeightMap: Record<FontWeight, number> = {\n thin: 100,\n 'extra-light': 200,\n light: 200,\n normal: 400,\n medium: 500,\n 'semi-bold': 600,\n bold: 700,\n 'extra-bold': 800,\n black: 900,\n 'extra-black': 950,\n};\n","import { GetFieldType } from './types';\n\nexport function getValue<TData, TPath extends string, TDefault = GetFieldType<TData, TPath>>(\n data: TData,\n path: TPath,\n defaultValue?: TDefault\n): GetFieldType<TData, TPath> | TDefault {\n const value = path\n .split(/[.[\\]]/)\n .filter(Boolean)\n .reduce<GetFieldType<TData, TPath>>((value, key) => (value as any)?.[key], data as any);\n\n return value !== undefined ? value : (defaultValue as TDefault);\n}\n","export const debounce = <T extends (...args: any[]) => ReturnType<T>>(\n callback: T,\n timeout: number\n): ((...args: Parameters<T>) => void) => {\n let timer: ReturnType<typeof setTimeout>;\n\n return (...args: Parameters<T>) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n callback(...args);\n }, timeout);\n };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.theme.d.ts","sourceRoot":"","sources":["../../../../../src/concepts/theme/themes/base.theme.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAoB/C,eAAO,MAAM,SAAS,EAAE,QA8pBvB,CAAC"}
1
+ {"version":3,"file":"base.theme.d.ts","sourceRoot":"","sources":["../../../../../src/concepts/theme/themes/base.theme.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAoB/C,eAAO,MAAM,SAAS,EAAE,QA6pBvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uni-design-system/uni-core",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/uni-design-system/uni",