@ebtgames/theme 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -541,6 +541,8 @@ var timerRecipe = defineRecipe3({
541
541
  borderStyle: "solid",
542
542
  borderColor: "border.strong",
543
543
  background: "surface.1",
544
+ borderRadius: "md",
545
+ boxShadow: "var(--chakra-shadows-sm), inset 0 1px 0 rgba(255, 255, 255, 0.05)",
544
546
  justifyContent: "center"
545
547
  }
546
548
  });
@@ -603,9 +605,72 @@ var modalSlotRecipe = defineSlotRecipe({
603
605
  }
604
606
  });
605
607
 
606
- // src/slotRecipes/victoryScreen.ts
608
+ // src/slotRecipes/switch.ts
607
609
  import { defineSlotRecipe as defineSlotRecipe2 } from "@chakra-ui/react";
608
- var victoryScreenSlotRecipe = defineSlotRecipe2({
610
+ var switchSlotRecipe = defineSlotRecipe2({
611
+ className: "switch",
612
+ slots: ["root", "label", "control", "thumb", "indicator"],
613
+ base: {
614
+ root: {
615
+ display: "inline-flex",
616
+ alignItems: "center",
617
+ gap: "sm",
618
+ position: "relative",
619
+ "--switch-width": "sizes.10",
620
+ "--switch-height": "sizes.5",
621
+ "--switch-diff": "calc(var(--switch-width) - var(--switch-height))",
622
+ "--switch-x": {
623
+ base: "var(--switch-diff)",
624
+ _rtl: "calc(var(--switch-diff) * -1)"
625
+ }
626
+ },
627
+ label: {
628
+ fontFamily: "body",
629
+ fontSize: "xs",
630
+ color: "text.primary",
631
+ textTransform: "uppercase",
632
+ letterSpacing: "wide",
633
+ textShadow: "0 1px 2px rgba(0, 0, 0, 0.4)",
634
+ userSelect: "none"
635
+ },
636
+ control: {
637
+ display: "inline-flex",
638
+ alignItems: "center",
639
+ position: "relative",
640
+ width: "var(--switch-width)",
641
+ height: "var(--switch-height)",
642
+ borderRadius: "full",
643
+ borderWidth: "base",
644
+ borderStyle: "solid",
645
+ borderColor: "border.strong",
646
+ background: "linear-gradient(140deg, {colors.surface.2}, {colors.surface.1} 50%, {colors.surface.0})",
647
+ boxShadow: "{shadows.sm}, inset 0 1px 0 rgba(255, 255, 255, 0.06)",
648
+ transition: "all 200ms ease",
649
+ _checked: {
650
+ borderColor: "primary.DEFAULT",
651
+ background: "linear-gradient(140deg, {colors.primary.hover}, {colors.primary.DEFAULT})",
652
+ boxShadow: "{shadows.md}, {shadows.glow.primary}, inset 0 1px 0 rgba(255, 255, 255, 0.1)"
653
+ }
654
+ },
655
+ thumb: {
656
+ width: "var(--switch-height)",
657
+ height: "var(--switch-height)",
658
+ borderRadius: "full",
659
+ background: "surface.0",
660
+ boxShadow: "{shadows.sm}",
661
+ transitionProperty: "translate",
662
+ transitionDuration: "fast",
663
+ _checked: {
664
+ translate: "var(--switch-x) 0",
665
+ background: "surface.0"
666
+ }
667
+ }
668
+ }
669
+ });
670
+
671
+ // src/slotRecipes/victoryScreen.ts
672
+ import { defineSlotRecipe as defineSlotRecipe3 } from "@chakra-ui/react";
673
+ var victoryScreenSlotRecipe = defineSlotRecipe3({
609
674
  slots: ["overlay", "content", "title", "stats", "badge", "actions"],
610
675
  base: {
611
676
  overlay: {
@@ -668,6 +733,7 @@ var victoryScreenSlotRecipe = defineSlotRecipe2({
668
733
  // src/slotRecipes/index.ts
669
734
  var slotRecipes = {
670
735
  modal: modalSlotRecipe,
736
+ switch: switchSlotRecipe,
671
737
  victoryScreen: victoryScreenSlotRecipe
672
738
  };
673
739
 
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/tokens/colors.ts","../src/tokens/typography.ts","../src/tokens/spacing.ts","../src/tokens/borders.ts","../src/tokens/shadows.ts","../src/tokens/zIndex.ts","../src/semanticTokens/colors.ts","../src/semanticTokens/shadows.ts","../src/semanticTokens/index.ts","../src/keyframes/animations.ts","../src/globalStyles.ts","../src/breakpoints.ts","../src/recipes/button.ts","../src/recipes/cell.ts","../src/recipes/timer.ts","../src/recipes/index.ts","../src/slotRecipes/modal.ts","../src/slotRecipes/victoryScreen.ts","../src/slotRecipes/index.ts"],"sourcesContent":["import { createSystem, defaultConfig } from '@chakra-ui/react'\nimport { colors } from './tokens/colors'\nimport { fonts, fontSizes, fontWeights, letterSpacings } from './tokens/typography'\nimport { spacing } from './tokens/spacing'\nimport { borderWidths, radii } from './tokens/borders'\nimport { shadows } from './tokens/shadows'\nimport { zIndex } from './tokens/zIndex'\nimport { semanticTokens } from './semanticTokens'\nimport { keyframes } from './keyframes/animations'\nimport { globalCss } from './globalStyles'\nimport { breakpoints } from './breakpoints'\nimport { recipes } from './recipes'\nimport { slotRecipes } from './slotRecipes'\n\nexport const system = createSystem(defaultConfig, {\n theme: {\n tokens: {\n colors,\n fonts,\n fontSizes,\n fontWeights,\n letterSpacings,\n spacing,\n borderWidths,\n radii,\n shadows,\n zIndex,\n },\n semanticTokens,\n keyframes,\n breakpoints,\n recipes,\n slotRecipes,\n },\n globalCss,\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const colors = defineTokens.colors({\n // Surface Colors (deep purple monochrome)\n surface: {\n 0: { value: '#1B0F26' }, // Base background - darkest\n 1: { value: '#24122F' }, // Elevated surfaces\n 2: { value: '#2B173A' }, // Cards/panels\n 3: { value: '#342046' }, // Raised/hover states\n },\n\n // Text Colors (WCAG AA verified)\n text: {\n primary: { value: '#F5F1FA' }, // 16.49:1 contrast\n secondary: { value: '#D8D0E3' }, // 12.29:1 contrast\n muted: { value: '#B9AEC9' }, // 8.72:1 contrast\n disabled: { value: '#9E92B4' }, // 6.32:1 contrast\n },\n\n // Primary (Purple - interactive)\n primary: {\n DEFAULT: { value: '#7C5BD6' },\n hover: { value: '#6F4FCB' },\n },\n\n // Utility (Teal - complementary)\n utility: {\n DEFAULT: { value: '#2AB9B0' },\n hover: { value: '#52D6CC' },\n },\n\n // Emphasis (Rose - sparingly)\n emphasis: {\n DEFAULT: { value: '#D86B9A' },\n },\n\n // Border Colors (neutral gray)\n border: {\n subtle: { value: '#3A3341' },\n strong: { value: '#4A4354' },\n },\n\n // Status Colors\n status: {\n success: { value: '#2AB9B0' }, // Use teal\n warning: { value: '#D9A24F' }, // Amber\n error: { value: '#D8524D' }, // Red\n },\n\n // Overlays (purple-based transparency)\n overlay: {\n subtle: { value: 'rgba(124, 91, 214, 0.05)' }, // Purple hover tint\n light: { value: 'rgba(124, 91, 214, 0.1)' }, // Purple selected\n medium: { value: 'rgba(124, 91, 214, 0.15)' }, // Purple active\n heavy: { value: 'rgba(124, 91, 214, 0.25)' }, // Purple emphasis\n error: { value: 'rgba(216, 82, 77, 0.12)' }, // Error tint\n backdrop: {\n light: { value: 'rgba(27, 15, 38, 0.8)' },\n heavy: { value: 'rgba(27, 15, 38, 0.95)' },\n },\n },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const fonts = defineTokens.fonts({\n display: { value: \"'Courier New', 'Courier', monospace\" },\n heading: { value: \"'Courier New', 'Courier', monospace\" },\n body: { value: \"'Courier New', 'Courier', monospace\" },\n})\n\nexport const fontSizes = defineTokens.fontSizes({\n xs: { value: '0.75rem' }, // 12px - helper text\n sm: { value: '0.875rem' }, // 14px - secondary labels\n base: { value: '1rem' }, // 16px - body text\n md: { value: '1.125rem' }, // 18px - emphasized body\n lg: { value: '1.25rem' }, // 20px - section headings\n xl: { value: '1.5rem' }, // 24px - modal titles\n '2xl': { value: '2rem' }, // 32px - page titles\n '3xl': { value: '3rem' }, // 48px - hero text\n '4xl': { value: '4rem' }, // 64px - display text\n\n // Responsive sizes\n cell: { value: 'clamp(1rem, 3vw, 1.5rem)' },\n hero: { value: 'clamp(2.5rem, 8vw, 4rem)' },\n subtitle: { value: 'clamp(1rem, 3vw, 1.25rem)' },\n})\n\nexport const fontWeights = defineTokens.fontWeights({\n normal: { value: 400 },\n medium: { value: 600 },\n bold: { value: 700 },\n})\n\nexport const letterSpacings = defineTokens.letterSpacings({\n tight: { value: '0.05em' },\n normal: { value: '0.1em' },\n wide: { value: '0.2em' },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const spacing = defineTokens.spacing({\n '2xs': { value: '0.125rem' }, // 2px - micro gaps\n xs: { value: '0.25rem' }, // 4px\n sm: { value: '0.5rem' }, // 8px\n md: { value: '1rem' }, // 16px\n lg: { value: '1.5rem' }, // 24px\n xl: { value: '2rem' }, // 32px\n '2xl': { value: '3rem' }, // 48px\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const borderWidths = defineTokens.borderWidths({\n thin: { value: '1px' },\n base: { value: '2px' },\n thick: { value: '3px' },\n})\n\nexport const radii = defineTokens.radii({\n sm: { value: '2px' },\n md: { value: '4px' },\n lg: { value: '6px' },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const shadows = defineTokens.shadows({\n // Depth shadows (layered)\n xs: { value: '0 1px 2px rgba(0, 0, 0, 0.4)' },\n sm: { value: '0 2px 8px rgba(0, 0, 0, 0.5), 0 1px 3px rgba(0, 0, 0, 0.3)' },\n md: { value: '0 4px 16px rgba(0, 0, 0, 0.6), 0 2px 6px rgba(0, 0, 0, 0.4)' },\n lg: { value: '0 8px 24px rgba(0, 0, 0, 0.7), 0 4px 12px rgba(0, 0, 0, 0.5)' },\n xl: { value: '0 16px 48px rgba(0, 0, 0, 0.8), 0 8px 24px rgba(0, 0, 0, 0.6)' },\n\n // Glow shadows (primary - purple)\n glow: {\n primary: { value: '0 0 10px rgba(124, 91, 214, 0.4)' },\n 'primary-lg': { value: '0 0 20px rgba(124, 91, 214, 0.5), 0 0 40px rgba(124, 91, 214, 0.3)' },\n 'primary-xl': { value: '0 0 30px rgba(124, 91, 214, 0.6), 0 0 60px rgba(124, 91, 214, 0.4)' },\n\n // Utility (teal)\n utility: { value: '0 0 10px rgba(42, 185, 176, 0.3)' },\n 'utility-lg': { value: '0 0 20px rgba(42, 185, 176, 0.4), 0 0 40px rgba(42, 185, 176, 0.2)' },\n\n // Emphasis (rose)\n emphasis: { value: '0 0 10px rgba(216, 107, 154, 0.3)' },\n 'emphasis-lg': { value: '0 0 20px rgba(216, 107, 154, 0.4), 0 0 40px rgba(216, 107, 154, 0.2)' },\n\n // Error (red)\n error: { value: '0 0 10px rgba(216, 82, 77, 0.4)' },\n },\n\n // Inset shadows\n inset: {\n primary: { value: 'inset 0 0 10px rgba(124, 91, 214, 0.3)' },\n subtle: { value: 'inset 0 1px 3px rgba(0, 0, 0, 0.3)' },\n deep: { value: 'inset 0 2px 8px rgba(0, 0, 0, 0.5)' },\n },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const zIndex = defineTokens.zIndex({\n base: { value: 1 },\n dropdown: { value: 100 },\n overlay: { value: 500 },\n modal: { value: 1000 },\n toast: { value: 1500 },\n fullscreen: { value: 2000 },\n})\n","import { defineSemanticTokens } from '@chakra-ui/react'\n\nexport const semanticColors = defineSemanticTokens.colors({\n // Background mappings\n bg: {\n base: { value: '{colors.surface.0}' },\n elevated: { value: '{colors.surface.1}' },\n card: { value: '{colors.surface.2}' },\n raised: { value: '{colors.surface.3}' },\n },\n\n // Interactive states\n interactive: {\n base: { value: '{colors.primary.DEFAULT}' },\n hover: { value: '{colors.primary.hover}' },\n },\n\n // Border (for buttons, inputs, cards)\n border: {\n subtle: { value: '{colors.border.subtle}' },\n strong: { value: '{colors.border.strong}' },\n },\n})\n","import { defineSemanticTokens } from '@chakra-ui/react'\n\nexport const semanticShadows = defineSemanticTokens.shadows({\n // Button shadows\n button: {\n base: { value: '{shadows.sm}, {shadows.inset.subtle}' },\n hover: { value: '{shadows.md}, {shadows.glow.primary-lg}' },\n },\n\n // Cell shadows (most complex - 4-layer stack for selected state)\n cell: {\n selected: {\n value:\n '{shadows.inset.primary}, 0 0 0 {borderWidths.base} rgba(124, 91, 214, 0.55), {shadows.glow.primary}, 0 4px 12px rgba(124, 91, 214, 0.2)',\n },\n conflict: {\n value: '{shadows.glow.error}, 0 2px 6px rgba(216, 82, 77, 0.3)',\n },\n },\n})\n","import { semanticColors } from './colors'\nimport { semanticShadows } from './shadows'\n\nexport const semanticTokens = {\n colors: semanticColors,\n shadows: semanticShadows,\n}\n","import { defineKeyframes } from '@chakra-ui/react'\n\nexport const keyframes = defineKeyframes({\n fadeIn: {\n from: { opacity: '0' },\n to: { opacity: '1' },\n },\n\n fadeOut: {\n from: { opacity: '1' },\n to: { opacity: '0' },\n },\n\n pulse: {\n '0%, 100%': {\n transform: 'scale(1)',\n opacity: '1',\n },\n '50%': {\n transform: 'scale(1.03)',\n opacity: '0.95',\n },\n },\n\n glow: {\n '0%, 100%': {\n boxShadow: '0 0 10px rgba(124, 91, 214, 0.4)',\n },\n '50%': {\n boxShadow: '0 0 20px rgba(124, 91, 214, 0.5), 0 0 40px rgba(124, 91, 214, 0.3)',\n },\n },\n\n glowHighlight: {\n '0%, 100%': {\n boxShadow: '0 0 10px rgba(216, 107, 154, 0.3)',\n },\n '50%': {\n boxShadow: '0 0 20px rgba(216, 107, 154, 0.4), 0 0 40px rgba(216, 107, 154, 0.2)',\n },\n },\n\n blink: {\n '0%, 100%': { opacity: '1' },\n '50%': { opacity: '0.3' },\n },\n\n bounce: {\n '0%, 80%, 100%': {\n transform: 'scale(0)',\n opacity: '0.5',\n },\n '40%': {\n transform: 'scale(1)',\n opacity: '1',\n },\n },\n\n scaleIn: {\n from: {\n transform: 'scale(0.8)',\n opacity: '0',\n },\n to: {\n transform: 'scale(1)',\n opacity: '1',\n },\n },\n})\n","import { defineGlobalStyles } from '@chakra-ui/react'\n\nexport const globalCss = defineGlobalStyles({\n // Universal reset\n '*, *::before, *::after': {\n boxSizing: 'border-box',\n },\n\n // Body pseudo-elements for background effects\n 'body::before': {\n content: '\"\"',\n position: 'fixed',\n inset: 0,\n backgroundImage: `\n radial-gradient(circle at 20% 50%, rgba(124, 91, 214, 0.03) 0%, transparent 50%),\n radial-gradient(circle at 80% 80%, rgba(42, 185, 176, 0.02) 0%, transparent 50%)\n `,\n pointerEvents: 'none',\n zIndex: 0,\n },\n\n 'body::after': {\n content: '\"\"',\n position: 'fixed',\n inset: 0,\n backgroundImage: `url('data:image/svg+xml,%3Csvg viewBox=\"0 0 200 200\" xmlns=\"http://www.w3.org/2000/svg\"%3E%3Cfilter id=\"noise\"%3E%3CfeTurbulence type=\"fractalNoise\" baseFrequency=\"0.9\" numOctaves=\"4\" stitchTiles=\"stitch\"/%3E%3C/filter%3E%3Crect width=\"100%25\" height=\"100%25\" filter=\"url(%23noise)\" opacity=\"0.03\"/%3E%3C/svg%3E')`,\n opacity: 0.03,\n pointerEvents: 'none',\n zIndex: 0,\n },\n\n // Custom scrollbar (webkit)\n '::-webkit-scrollbar': {\n width: '8px',\n height: '8px',\n },\n\n '::-webkit-scrollbar-track': {\n background: '{colors.surface.1}',\n },\n\n '::-webkit-scrollbar-thumb': {\n background: '{colors.utility.DEFAULT}',\n borderRadius: '{radii.sm}',\n },\n\n '::-webkit-scrollbar-thumb:hover': {\n background: '{colors.utility.hover}',\n },\n\n // Firefox scrollbar\n '*': {\n scrollbarWidth: 'thin',\n scrollbarColor: '{colors.utility.DEFAULT} {colors.surface.1}',\n },\n\n // Selection styling\n '::selection': {\n background: '{colors.primary.DEFAULT}',\n color: '{colors.text.primary}',\n },\n\n // Focus visible outline\n ':focus-visible': {\n outline: '2px solid {colors.primary.DEFAULT}',\n outlineOffset: '2px',\n },\n})\n","export const breakpoints = {\n mobile: '767px',\n tablet: '768px',\n desktop: '1024px',\n}\n","import { defineRecipe } from '@chakra-ui/react'\n\nexport const buttonRecipe = defineRecipe({\n className: 'button',\n base: {\n fontFamily: 'body',\n fontSize: 'base',\n px: 'lg',\n py: 'sm',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background: 'linear-gradient(145deg, var(--chakra-colors-surface-1), var(--chakra-colors-surface-0))',\n color: 'text.primary',\n cursor: 'pointer',\n pointerEvents: 'auto',\n userSelect: 'none',\n transition: 'all 200ms ease',\n textTransform: 'uppercase',\n letterSpacing: 'tight',\n fontWeight: 'medium',\n borderRadius: 'md',\n boxShadow: 'var(--chakra-shadows-sm), inset 0 1px 0 rgba(255, 255, 255, 0.05)',\n\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n\n _focusVisible: {\n outline: 'var(--chakra-border-widths-base) solid var(--chakra-colors-primary)',\n outlineOffset: 'var(--chakra-border-widths-base)',\n },\n },\n variants: {\n variant: {\n primary: {\n borderColor: 'primary',\n color: 'primary',\n\n _hover: {\n background: 'linear-gradient(145deg, var(--chakra-colors-primary-hover), var(--chakra-colors-primary))',\n color: 'surface.0',\n boxShadow: 'var(--chakra-shadows-md), var(--chakra-shadows-glow-primary-lg)',\n transform: 'translateY(-2px)',\n },\n\n _active: {\n transform: 'translateY(0)',\n boxShadow: 'var(--chakra-shadows-xs), var(--chakra-shadows-glow-primary)',\n },\n },\n secondary: {\n borderColor: 'utility',\n color: 'utility',\n\n _hover: {\n background: 'linear-gradient(145deg, var(--chakra-colors-utility), var(--chakra-colors-utility-hover))',\n color: 'surface.0',\n boxShadow: 'var(--chakra-shadows-md), var(--chakra-shadows-glow-utility-lg)',\n transform: 'translateY(-2px)',\n },\n\n _active: {\n transform: 'translateY(0)',\n boxShadow: 'var(--chakra-shadows-xs), var(--chakra-shadows-glow-utility)',\n },\n },\n danger: {\n borderColor: 'status.error',\n color: 'status.error',\n\n _hover: {\n background: 'linear-gradient(145deg, var(--chakra-colors-status-error), var(--chakra-colors-status-error))',\n color: 'surface.0',\n boxShadow: 'var(--chakra-shadows-md), var(--chakra-shadows-glow-error)',\n transform: 'translateY(-2px)',\n },\n\n _active: {\n transform: 'translateY(0)',\n boxShadow: 'var(--chakra-shadows-xs), var(--chakra-shadows-glow-error)',\n },\n },\n },\n },\n defaultVariants: {\n variant: 'primary',\n },\n})\n","import { defineRecipe } from '@chakra-ui/react'\n\nexport const cellRecipe = defineRecipe({\n className: 'ninefold-cell',\n base: {\n aspectRatio: '1',\n background: 'linear-gradient(145deg, {colors.surface.1}, {colors.surface.0})',\n borderWidth: 'thin',\n borderColor: 'border.subtle',\n borderStyle: 'solid',\n color: 'text.primary',\n fontFamily: 'body',\n fontSize: 'cell',\n cursor: 'pointer',\n transition: 'all var(--transition-fast) var(--ease-default)',\n p: 0,\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n boxShadow: '{shadows.inset.subtle}, 0 1px 2px rgba(0, 0, 0, 0.2)',\n _focusVisible: {\n outline: '{borderWidths.base} solid {colors.primary.DEFAULT}',\n outlineOffset: '-2px',\n zIndex: 'base',\n },\n },\n variants: {\n state: {\n normal: {\n _hover: {\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderColor: 'primary.hover',\n boxShadow:\n '{shadows.inset.subtle}, 0 2px 4px rgba(0, 0, 0, 0.3), {shadows.glow.primary}',\n transform: 'translateY(-1px)',\n },\n },\n given: {\n fontWeight: 'bold',\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderColor: 'border.strong',\n cursor: 'default',\n boxShadow: '{shadows.inset.subtle}, 0 2px 4px rgba(0, 0, 0, 0.3)',\n _hover: {\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderColor: 'border.strong',\n boxShadow: '{shadows.inset.subtle}, 0 2px 4px rgba(0, 0, 0, 0.3)',\n transform: 'none',\n },\n },\n selected: {\n background: 'linear-gradient(145deg, rgba(124, 91, 214, 0.2), rgba(124, 91, 214, 0.1))',\n borderColor: 'primary.DEFAULT',\n boxShadow: 'cell.selected',\n transform: 'translateY(-2px)',\n },\n conflict: {\n background: 'linear-gradient(145deg, rgba(216, 82, 77, 0.2), rgba(216, 82, 77, 0.1))',\n borderColor: 'status.error',\n color: 'status.error',\n boxShadow: 'cell.conflict',\n },\n selectedConflict: {\n background: 'linear-gradient(145deg, rgba(216, 82, 77, 0.2), rgba(216, 82, 77, 0.1))',\n borderColor: 'status.error',\n color: 'status.error',\n boxShadow: 'cell.conflict',\n transform: 'translateY(-2px)',\n },\n },\n },\n defaultVariants: {\n state: 'normal',\n },\n})\n","import { defineRecipe } from '@chakra-ui/react'\n\nexport const timerRecipe = defineRecipe({\n base: {\n display: 'flex',\n alignItems: 'center',\n gap: 'sm',\n fontFamily: 'body',\n fontSize: 'lg',\n color: 'primary',\n paddingY: 'sm',\n paddingX: 'md',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background: 'surface.1',\n justifyContent: 'center',\n },\n})\n","import { buttonRecipe } from './button'\nimport { cellRecipe } from './cell'\nimport { timerRecipe } from './timer'\n\nexport const recipes = {\n button: buttonRecipe,\n cell: cellRecipe,\n timer: timerRecipe,\n}\n","import { defineSlotRecipe } from '@chakra-ui/react'\n\nexport const modalSlotRecipe = defineSlotRecipe({\n className: 'modal',\n slots: ['backdrop', 'modal', 'header', 'title', 'content'],\n base: {\n backdrop: {\n position: 'fixed',\n inset: 0,\n background: '{colors.overlay.backdrop.heavy}',\n backdropFilter: 'blur(8px)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 'modal',\n padding: 'md',\n },\n modal: {\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'primary.DEFAULT',\n maxWidth: '500px',\n width: '100%',\n maxHeight: '90vh',\n overflowY: 'auto',\n boxShadow: '{shadows.xl}, {shadows.glow.primary-xl}, inset 0 1px 0 rgba(255, 255, 255, 0.1)',\n borderRadius: 'md',\n },\n header: {\n padding: 'lg',\n borderBottomWidth: 'thin',\n borderBottomStyle: 'solid',\n borderBottomColor: 'border.subtle',\n background: 'linear-gradient(180deg, {colors.overlay.light}, transparent)',\n },\n title: {\n margin: 0,\n fontFamily: 'display',\n fontSize: 'xl',\n color: 'text.primary',\n textTransform: 'uppercase',\n letterSpacing: 'tight',\n textShadow: '0 2px 4px rgba(0, 0, 0, 0.5)',\n },\n content: {\n padding: 'lg',\n },\n },\n})\n","import { defineSlotRecipe } from '@chakra-ui/react'\n\nexport const victoryScreenSlotRecipe = defineSlotRecipe({\n slots: ['overlay', 'content', 'title', 'stats', 'badge', 'actions'],\n base: {\n overlay: {\n position: 'fixed',\n inset: 0,\n background: 'overlay.backdrop.heavy',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 'overlay',\n padding: 'md',\n },\n content: {\n maxWidth: '400px',\n width: '100%',\n textAlign: 'center',\n display: 'flex',\n flexDirection: 'column',\n gap: 'xl',\n padding: 'xl',\n borderWidth: 'thick',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background: 'surface.2',\n boxShadow: 'glow.primary-xl',\n },\n title: {\n fontFamily: 'display',\n fontSize: '3xl',\n color: 'text.primary',\n letterSpacing: 'wide',\n textShadow: 'glow.emphasis-lg',\n animation: 'pulse 2s ease-in-out infinite',\n },\n stats: {\n display: 'flex',\n flexDirection: 'column',\n gap: 'md',\n },\n badge: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n gap: 'sm',\n padding: 'md',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'emphasis',\n background: 'overlay.subtle',\n animation: 'glowHighlight 2s ease-in-out infinite',\n },\n actions: {\n display: 'flex',\n flexDirection: 'column',\n gap: 'md',\n },\n },\n})\n","import { modalSlotRecipe } from './modal'\nimport { victoryScreenSlotRecipe } from './victoryScreen'\n\nexport const slotRecipes = {\n modal: modalSlotRecipe,\n victoryScreen: victoryScreenSlotRecipe,\n}\n"],"mappings":"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","names":["defineTokens","defineTokens","defineTokens","defineTokens","defineTokens","defineSemanticTokens","defineRecipe","defineRecipe","defineSlotRecipe"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/tokens/colors.ts","../src/tokens/typography.ts","../src/tokens/spacing.ts","../src/tokens/borders.ts","../src/tokens/shadows.ts","../src/tokens/zIndex.ts","../src/semanticTokens/colors.ts","../src/semanticTokens/shadows.ts","../src/semanticTokens/index.ts","../src/keyframes/animations.ts","../src/globalStyles.ts","../src/breakpoints.ts","../src/recipes/button.ts","../src/recipes/cell.ts","../src/recipes/timer.ts","../src/recipes/index.ts","../src/slotRecipes/modal.ts","../src/slotRecipes/switch.ts","../src/slotRecipes/victoryScreen.ts","../src/slotRecipes/index.ts"],"sourcesContent":["import { createSystem, defaultConfig } from '@chakra-ui/react'\nimport { colors } from './tokens/colors'\nimport { fonts, fontSizes, fontWeights, letterSpacings } from './tokens/typography'\nimport { spacing } from './tokens/spacing'\nimport { borderWidths, radii } from './tokens/borders'\nimport { shadows } from './tokens/shadows'\nimport { zIndex } from './tokens/zIndex'\nimport { semanticTokens } from './semanticTokens'\nimport { keyframes } from './keyframes/animations'\nimport { globalCss } from './globalStyles'\nimport { breakpoints } from './breakpoints'\nimport { recipes } from './recipes'\nimport { slotRecipes } from './slotRecipes'\n\nexport const system = createSystem(defaultConfig, {\n theme: {\n tokens: {\n colors,\n fonts,\n fontSizes,\n fontWeights,\n letterSpacings,\n spacing,\n borderWidths,\n radii,\n shadows,\n zIndex,\n },\n semanticTokens,\n keyframes,\n breakpoints,\n recipes,\n slotRecipes,\n },\n globalCss,\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const colors = defineTokens.colors({\n // Surface Colors (deep purple monochrome)\n surface: {\n 0: { value: '#1B0F26' }, // Base background - darkest\n 1: { value: '#24122F' }, // Elevated surfaces\n 2: { value: '#2B173A' }, // Cards/panels\n 3: { value: '#342046' }, // Raised/hover states\n },\n\n // Text Colors (WCAG AA verified)\n text: {\n primary: { value: '#F5F1FA' }, // 16.49:1 contrast\n secondary: { value: '#D8D0E3' }, // 12.29:1 contrast\n muted: { value: '#B9AEC9' }, // 8.72:1 contrast\n disabled: { value: '#9E92B4' }, // 6.32:1 contrast\n },\n\n // Primary (Purple - interactive)\n primary: {\n DEFAULT: { value: '#7C5BD6' },\n hover: { value: '#6F4FCB' },\n },\n\n // Utility (Teal - complementary)\n utility: {\n DEFAULT: { value: '#2AB9B0' },\n hover: { value: '#52D6CC' },\n },\n\n // Emphasis (Rose - sparingly)\n emphasis: {\n DEFAULT: { value: '#D86B9A' },\n },\n\n // Border Colors (neutral gray)\n border: {\n subtle: { value: '#3A3341' },\n strong: { value: '#4A4354' },\n },\n\n // Status Colors\n status: {\n success: { value: '#2AB9B0' }, // Use teal\n warning: { value: '#D9A24F' }, // Amber\n error: { value: '#D8524D' }, // Red\n },\n\n // Overlays (purple-based transparency)\n overlay: {\n subtle: { value: 'rgba(124, 91, 214, 0.05)' }, // Purple hover tint\n light: { value: 'rgba(124, 91, 214, 0.1)' }, // Purple selected\n medium: { value: 'rgba(124, 91, 214, 0.15)' }, // Purple active\n heavy: { value: 'rgba(124, 91, 214, 0.25)' }, // Purple emphasis\n error: { value: 'rgba(216, 82, 77, 0.12)' }, // Error tint\n backdrop: {\n light: { value: 'rgba(27, 15, 38, 0.8)' },\n heavy: { value: 'rgba(27, 15, 38, 0.95)' },\n },\n },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const fonts = defineTokens.fonts({\n display: { value: \"'Courier New', 'Courier', monospace\" },\n heading: { value: \"'Courier New', 'Courier', monospace\" },\n body: { value: \"'Courier New', 'Courier', monospace\" },\n})\n\nexport const fontSizes = defineTokens.fontSizes({\n xs: { value: '0.75rem' }, // 12px - helper text\n sm: { value: '0.875rem' }, // 14px - secondary labels\n base: { value: '1rem' }, // 16px - body text\n md: { value: '1.125rem' }, // 18px - emphasized body\n lg: { value: '1.25rem' }, // 20px - section headings\n xl: { value: '1.5rem' }, // 24px - modal titles\n '2xl': { value: '2rem' }, // 32px - page titles\n '3xl': { value: '3rem' }, // 48px - hero text\n '4xl': { value: '4rem' }, // 64px - display text\n\n // Responsive sizes\n cell: { value: 'clamp(1rem, 3vw, 1.5rem)' },\n hero: { value: 'clamp(2.5rem, 8vw, 4rem)' },\n subtitle: { value: 'clamp(1rem, 3vw, 1.25rem)' },\n})\n\nexport const fontWeights = defineTokens.fontWeights({\n normal: { value: 400 },\n medium: { value: 600 },\n bold: { value: 700 },\n})\n\nexport const letterSpacings = defineTokens.letterSpacings({\n tight: { value: '0.05em' },\n normal: { value: '0.1em' },\n wide: { value: '0.2em' },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const spacing = defineTokens.spacing({\n '2xs': { value: '0.125rem' }, // 2px - micro gaps\n xs: { value: '0.25rem' }, // 4px\n sm: { value: '0.5rem' }, // 8px\n md: { value: '1rem' }, // 16px\n lg: { value: '1.5rem' }, // 24px\n xl: { value: '2rem' }, // 32px\n '2xl': { value: '3rem' }, // 48px\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const borderWidths = defineTokens.borderWidths({\n thin: { value: '1px' },\n base: { value: '2px' },\n thick: { value: '3px' },\n})\n\nexport const radii = defineTokens.radii({\n sm: { value: '2px' },\n md: { value: '4px' },\n lg: { value: '6px' },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const shadows = defineTokens.shadows({\n // Depth shadows (layered)\n xs: { value: '0 1px 2px rgba(0, 0, 0, 0.4)' },\n sm: { value: '0 2px 8px rgba(0, 0, 0, 0.5), 0 1px 3px rgba(0, 0, 0, 0.3)' },\n md: { value: '0 4px 16px rgba(0, 0, 0, 0.6), 0 2px 6px rgba(0, 0, 0, 0.4)' },\n lg: { value: '0 8px 24px rgba(0, 0, 0, 0.7), 0 4px 12px rgba(0, 0, 0, 0.5)' },\n xl: { value: '0 16px 48px rgba(0, 0, 0, 0.8), 0 8px 24px rgba(0, 0, 0, 0.6)' },\n\n // Glow shadows (primary - purple)\n glow: {\n primary: { value: '0 0 10px rgba(124, 91, 214, 0.4)' },\n 'primary-lg': { value: '0 0 20px rgba(124, 91, 214, 0.5), 0 0 40px rgba(124, 91, 214, 0.3)' },\n 'primary-xl': { value: '0 0 30px rgba(124, 91, 214, 0.6), 0 0 60px rgba(124, 91, 214, 0.4)' },\n\n // Utility (teal)\n utility: { value: '0 0 10px rgba(42, 185, 176, 0.3)' },\n 'utility-lg': { value: '0 0 20px rgba(42, 185, 176, 0.4), 0 0 40px rgba(42, 185, 176, 0.2)' },\n\n // Emphasis (rose)\n emphasis: { value: '0 0 10px rgba(216, 107, 154, 0.3)' },\n 'emphasis-lg': { value: '0 0 20px rgba(216, 107, 154, 0.4), 0 0 40px rgba(216, 107, 154, 0.2)' },\n\n // Error (red)\n error: { value: '0 0 10px rgba(216, 82, 77, 0.4)' },\n },\n\n // Inset shadows\n inset: {\n primary: { value: 'inset 0 0 10px rgba(124, 91, 214, 0.3)' },\n subtle: { value: 'inset 0 1px 3px rgba(0, 0, 0, 0.3)' },\n deep: { value: 'inset 0 2px 8px rgba(0, 0, 0, 0.5)' },\n },\n})\n","import { defineTokens } from '@chakra-ui/react'\n\nexport const zIndex = defineTokens.zIndex({\n base: { value: 1 },\n dropdown: { value: 100 },\n overlay: { value: 500 },\n modal: { value: 1000 },\n toast: { value: 1500 },\n fullscreen: { value: 2000 },\n})\n","import { defineSemanticTokens } from '@chakra-ui/react'\n\nexport const semanticColors = defineSemanticTokens.colors({\n // Background mappings\n bg: {\n base: { value: '{colors.surface.0}' },\n elevated: { value: '{colors.surface.1}' },\n card: { value: '{colors.surface.2}' },\n raised: { value: '{colors.surface.3}' },\n },\n\n // Interactive states\n interactive: {\n base: { value: '{colors.primary.DEFAULT}' },\n hover: { value: '{colors.primary.hover}' },\n },\n\n // Border (for buttons, inputs, cards)\n border: {\n subtle: { value: '{colors.border.subtle}' },\n strong: { value: '{colors.border.strong}' },\n },\n})\n","import { defineSemanticTokens } from '@chakra-ui/react'\n\nexport const semanticShadows = defineSemanticTokens.shadows({\n // Button shadows\n button: {\n base: { value: '{shadows.sm}, {shadows.inset.subtle}' },\n hover: { value: '{shadows.md}, {shadows.glow.primary-lg}' },\n },\n\n // Cell shadows (most complex - 4-layer stack for selected state)\n cell: {\n selected: {\n value:\n '{shadows.inset.primary}, 0 0 0 {borderWidths.base} rgba(124, 91, 214, 0.55), {shadows.glow.primary}, 0 4px 12px rgba(124, 91, 214, 0.2)',\n },\n conflict: {\n value: '{shadows.glow.error}, 0 2px 6px rgba(216, 82, 77, 0.3)',\n },\n },\n})\n","import { semanticColors } from './colors'\nimport { semanticShadows } from './shadows'\n\nexport const semanticTokens = {\n colors: semanticColors,\n shadows: semanticShadows,\n}\n","import { defineKeyframes } from '@chakra-ui/react'\n\nexport const keyframes = defineKeyframes({\n fadeIn: {\n from: { opacity: '0' },\n to: { opacity: '1' },\n },\n\n fadeOut: {\n from: { opacity: '1' },\n to: { opacity: '0' },\n },\n\n pulse: {\n '0%, 100%': {\n transform: 'scale(1)',\n opacity: '1',\n },\n '50%': {\n transform: 'scale(1.03)',\n opacity: '0.95',\n },\n },\n\n glow: {\n '0%, 100%': {\n boxShadow: '0 0 10px rgba(124, 91, 214, 0.4)',\n },\n '50%': {\n boxShadow: '0 0 20px rgba(124, 91, 214, 0.5), 0 0 40px rgba(124, 91, 214, 0.3)',\n },\n },\n\n glowHighlight: {\n '0%, 100%': {\n boxShadow: '0 0 10px rgba(216, 107, 154, 0.3)',\n },\n '50%': {\n boxShadow: '0 0 20px rgba(216, 107, 154, 0.4), 0 0 40px rgba(216, 107, 154, 0.2)',\n },\n },\n\n blink: {\n '0%, 100%': { opacity: '1' },\n '50%': { opacity: '0.3' },\n },\n\n bounce: {\n '0%, 80%, 100%': {\n transform: 'scale(0)',\n opacity: '0.5',\n },\n '40%': {\n transform: 'scale(1)',\n opacity: '1',\n },\n },\n\n scaleIn: {\n from: {\n transform: 'scale(0.8)',\n opacity: '0',\n },\n to: {\n transform: 'scale(1)',\n opacity: '1',\n },\n },\n})\n","import { defineGlobalStyles } from '@chakra-ui/react'\n\nexport const globalCss = defineGlobalStyles({\n // Universal reset\n '*, *::before, *::after': {\n boxSizing: 'border-box',\n },\n\n // Body pseudo-elements for background effects\n 'body::before': {\n content: '\"\"',\n position: 'fixed',\n inset: 0,\n backgroundImage: `\n radial-gradient(circle at 20% 50%, rgba(124, 91, 214, 0.03) 0%, transparent 50%),\n radial-gradient(circle at 80% 80%, rgba(42, 185, 176, 0.02) 0%, transparent 50%)\n `,\n pointerEvents: 'none',\n zIndex: 0,\n },\n\n 'body::after': {\n content: '\"\"',\n position: 'fixed',\n inset: 0,\n backgroundImage: `url('data:image/svg+xml,%3Csvg viewBox=\"0 0 200 200\" xmlns=\"http://www.w3.org/2000/svg\"%3E%3Cfilter id=\"noise\"%3E%3CfeTurbulence type=\"fractalNoise\" baseFrequency=\"0.9\" numOctaves=\"4\" stitchTiles=\"stitch\"/%3E%3C/filter%3E%3Crect width=\"100%25\" height=\"100%25\" filter=\"url(%23noise)\" opacity=\"0.03\"/%3E%3C/svg%3E')`,\n opacity: 0.03,\n pointerEvents: 'none',\n zIndex: 0,\n },\n\n // Custom scrollbar (webkit)\n '::-webkit-scrollbar': {\n width: '8px',\n height: '8px',\n },\n\n '::-webkit-scrollbar-track': {\n background: '{colors.surface.1}',\n },\n\n '::-webkit-scrollbar-thumb': {\n background: '{colors.utility.DEFAULT}',\n borderRadius: '{radii.sm}',\n },\n\n '::-webkit-scrollbar-thumb:hover': {\n background: '{colors.utility.hover}',\n },\n\n // Firefox scrollbar\n '*': {\n scrollbarWidth: 'thin',\n scrollbarColor: '{colors.utility.DEFAULT} {colors.surface.1}',\n },\n\n // Selection styling\n '::selection': {\n background: '{colors.primary.DEFAULT}',\n color: '{colors.text.primary}',\n },\n\n // Focus visible outline\n ':focus-visible': {\n outline: '2px solid {colors.primary.DEFAULT}',\n outlineOffset: '2px',\n },\n})\n","export const breakpoints = {\n mobile: '767px',\n tablet: '768px',\n desktop: '1024px',\n}\n","import { defineRecipe } from '@chakra-ui/react'\n\nexport const buttonRecipe = defineRecipe({\n className: 'button',\n base: {\n fontFamily: 'body',\n fontSize: 'base',\n px: 'lg',\n py: 'sm',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background: 'linear-gradient(145deg, var(--chakra-colors-surface-1), var(--chakra-colors-surface-0))',\n color: 'text.primary',\n cursor: 'pointer',\n pointerEvents: 'auto',\n userSelect: 'none',\n transition: 'all 200ms ease',\n textTransform: 'uppercase',\n letterSpacing: 'tight',\n fontWeight: 'medium',\n borderRadius: 'md',\n boxShadow: 'var(--chakra-shadows-sm), inset 0 1px 0 rgba(255, 255, 255, 0.05)',\n\n _disabled: {\n opacity: 0.5,\n cursor: 'not-allowed',\n },\n\n _focusVisible: {\n outline: 'var(--chakra-border-widths-base) solid var(--chakra-colors-primary)',\n outlineOffset: 'var(--chakra-border-widths-base)',\n },\n },\n variants: {\n variant: {\n primary: {\n borderColor: 'primary',\n color: 'primary',\n\n _hover: {\n background: 'linear-gradient(145deg, var(--chakra-colors-primary-hover), var(--chakra-colors-primary))',\n color: 'surface.0',\n boxShadow: 'var(--chakra-shadows-md), var(--chakra-shadows-glow-primary-lg)',\n transform: 'translateY(-2px)',\n },\n\n _active: {\n transform: 'translateY(0)',\n boxShadow: 'var(--chakra-shadows-xs), var(--chakra-shadows-glow-primary)',\n },\n },\n secondary: {\n borderColor: 'utility',\n color: 'utility',\n\n _hover: {\n background: 'linear-gradient(145deg, var(--chakra-colors-utility), var(--chakra-colors-utility-hover))',\n color: 'surface.0',\n boxShadow: 'var(--chakra-shadows-md), var(--chakra-shadows-glow-utility-lg)',\n transform: 'translateY(-2px)',\n },\n\n _active: {\n transform: 'translateY(0)',\n boxShadow: 'var(--chakra-shadows-xs), var(--chakra-shadows-glow-utility)',\n },\n },\n danger: {\n borderColor: 'status.error',\n color: 'status.error',\n\n _hover: {\n background: 'linear-gradient(145deg, var(--chakra-colors-status-error), var(--chakra-colors-status-error))',\n color: 'surface.0',\n boxShadow: 'var(--chakra-shadows-md), var(--chakra-shadows-glow-error)',\n transform: 'translateY(-2px)',\n },\n\n _active: {\n transform: 'translateY(0)',\n boxShadow: 'var(--chakra-shadows-xs), var(--chakra-shadows-glow-error)',\n },\n },\n },\n },\n defaultVariants: {\n variant: 'primary',\n },\n})\n","import { defineRecipe } from '@chakra-ui/react'\n\nexport const cellRecipe = defineRecipe({\n className: 'ninefold-cell',\n base: {\n aspectRatio: '1',\n background: 'linear-gradient(145deg, {colors.surface.1}, {colors.surface.0})',\n borderWidth: 'thin',\n borderColor: 'border.subtle',\n borderStyle: 'solid',\n color: 'text.primary',\n fontFamily: 'body',\n fontSize: 'cell',\n cursor: 'pointer',\n transition: 'all var(--transition-fast) var(--ease-default)',\n p: 0,\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n boxShadow: '{shadows.inset.subtle}, 0 1px 2px rgba(0, 0, 0, 0.2)',\n _focusVisible: {\n outline: '{borderWidths.base} solid {colors.primary.DEFAULT}',\n outlineOffset: '-2px',\n zIndex: 'base',\n },\n },\n variants: {\n state: {\n normal: {\n _hover: {\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderColor: 'primary.hover',\n boxShadow:\n '{shadows.inset.subtle}, 0 2px 4px rgba(0, 0, 0, 0.3), {shadows.glow.primary}',\n transform: 'translateY(-1px)',\n },\n },\n given: {\n fontWeight: 'bold',\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderColor: 'border.strong',\n cursor: 'default',\n boxShadow: '{shadows.inset.subtle}, 0 2px 4px rgba(0, 0, 0, 0.3)',\n _hover: {\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderColor: 'border.strong',\n boxShadow: '{shadows.inset.subtle}, 0 2px 4px rgba(0, 0, 0, 0.3)',\n transform: 'none',\n },\n },\n selected: {\n background: 'linear-gradient(145deg, rgba(124, 91, 214, 0.2), rgba(124, 91, 214, 0.1))',\n borderColor: 'primary.DEFAULT',\n boxShadow: 'cell.selected',\n transform: 'translateY(-2px)',\n },\n conflict: {\n background: 'linear-gradient(145deg, rgba(216, 82, 77, 0.2), rgba(216, 82, 77, 0.1))',\n borderColor: 'status.error',\n color: 'status.error',\n boxShadow: 'cell.conflict',\n },\n selectedConflict: {\n background: 'linear-gradient(145deg, rgba(216, 82, 77, 0.2), rgba(216, 82, 77, 0.1))',\n borderColor: 'status.error',\n color: 'status.error',\n boxShadow: 'cell.conflict',\n transform: 'translateY(-2px)',\n },\n },\n },\n defaultVariants: {\n state: 'normal',\n },\n})\n","import { defineRecipe } from '@chakra-ui/react'\n\nexport const timerRecipe = defineRecipe({\n base: {\n display: 'flex',\n alignItems: 'center',\n gap: 'sm',\n fontFamily: 'body',\n fontSize: 'lg',\n color: 'primary',\n paddingY: 'sm',\n paddingX: 'md',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background: 'surface.1',\n borderRadius: 'md',\n boxShadow: 'var(--chakra-shadows-sm), inset 0 1px 0 rgba(255, 255, 255, 0.05)',\n justifyContent: 'center',\n },\n})\n","import { buttonRecipe } from './button'\nimport { cellRecipe } from './cell'\nimport { timerRecipe } from './timer'\n\nexport const recipes = {\n button: buttonRecipe,\n cell: cellRecipe,\n timer: timerRecipe,\n}\n","import { defineSlotRecipe } from '@chakra-ui/react'\n\nexport const modalSlotRecipe = defineSlotRecipe({\n className: 'modal',\n slots: ['backdrop', 'modal', 'header', 'title', 'content'],\n base: {\n backdrop: {\n position: 'fixed',\n inset: 0,\n background: '{colors.overlay.backdrop.heavy}',\n backdropFilter: 'blur(8px)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 'modal',\n padding: 'md',\n },\n modal: {\n background: 'linear-gradient(145deg, {colors.surface.2}, {colors.surface.1})',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'primary.DEFAULT',\n maxWidth: '500px',\n width: '100%',\n maxHeight: '90vh',\n overflowY: 'auto',\n boxShadow: '{shadows.xl}, {shadows.glow.primary-xl}, inset 0 1px 0 rgba(255, 255, 255, 0.1)',\n borderRadius: 'md',\n },\n header: {\n padding: 'lg',\n borderBottomWidth: 'thin',\n borderBottomStyle: 'solid',\n borderBottomColor: 'border.subtle',\n background: 'linear-gradient(180deg, {colors.overlay.light}, transparent)',\n },\n title: {\n margin: 0,\n fontFamily: 'display',\n fontSize: 'xl',\n color: 'text.primary',\n textTransform: 'uppercase',\n letterSpacing: 'tight',\n textShadow: '0 2px 4px rgba(0, 0, 0, 0.5)',\n },\n content: {\n padding: 'lg',\n },\n },\n})\n","import { defineSlotRecipe } from '@chakra-ui/react'\n\nexport const switchSlotRecipe = defineSlotRecipe({\n className: 'switch',\n slots: ['root', 'label', 'control', 'thumb', 'indicator'],\n base: {\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 'sm',\n position: 'relative',\n '--switch-width': 'sizes.10',\n '--switch-height': 'sizes.5',\n '--switch-diff': 'calc(var(--switch-width) - var(--switch-height))',\n '--switch-x': {\n base: 'var(--switch-diff)',\n _rtl: 'calc(var(--switch-diff) * -1)',\n },\n },\n label: {\n fontFamily: 'body',\n fontSize: 'xs',\n color: 'text.primary',\n textTransform: 'uppercase',\n letterSpacing: 'wide',\n textShadow: '0 1px 2px rgba(0, 0, 0, 0.4)',\n userSelect: 'none',\n },\n control: {\n display: 'inline-flex',\n alignItems: 'center',\n position: 'relative',\n width: 'var(--switch-width)',\n height: 'var(--switch-height)',\n borderRadius: 'full',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background:\n 'linear-gradient(140deg, {colors.surface.2}, {colors.surface.1} 50%, {colors.surface.0})',\n boxShadow: '{shadows.sm}, inset 0 1px 0 rgba(255, 255, 255, 0.06)',\n transition: 'all 200ms ease',\n _checked: {\n borderColor: 'primary.DEFAULT',\n background:\n 'linear-gradient(140deg, {colors.primary.hover}, {colors.primary.DEFAULT})',\n boxShadow: '{shadows.md}, {shadows.glow.primary}, inset 0 1px 0 rgba(255, 255, 255, 0.1)',\n },\n },\n thumb: {\n width: 'var(--switch-height)',\n height: 'var(--switch-height)',\n borderRadius: 'full',\n background: 'surface.0',\n boxShadow: '{shadows.sm}',\n transitionProperty: 'translate',\n transitionDuration: 'fast',\n _checked: {\n translate: 'var(--switch-x) 0',\n background: 'surface.0',\n },\n },\n },\n})\n","import { defineSlotRecipe } from '@chakra-ui/react'\n\nexport const victoryScreenSlotRecipe = defineSlotRecipe({\n slots: ['overlay', 'content', 'title', 'stats', 'badge', 'actions'],\n base: {\n overlay: {\n position: 'fixed',\n inset: 0,\n background: 'overlay.backdrop.heavy',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 'overlay',\n padding: 'md',\n },\n content: {\n maxWidth: '400px',\n width: '100%',\n textAlign: 'center',\n display: 'flex',\n flexDirection: 'column',\n gap: 'xl',\n padding: 'xl',\n borderWidth: 'thick',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n background: 'surface.2',\n boxShadow: 'glow.primary-xl',\n },\n title: {\n fontFamily: 'display',\n fontSize: '3xl',\n color: 'text.primary',\n letterSpacing: 'wide',\n textShadow: 'glow.emphasis-lg',\n animation: 'pulse 2s ease-in-out infinite',\n },\n stats: {\n display: 'flex',\n flexDirection: 'column',\n gap: 'md',\n },\n badge: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n gap: 'sm',\n padding: 'md',\n borderWidth: 'base',\n borderStyle: 'solid',\n borderColor: 'emphasis',\n background: 'overlay.subtle',\n animation: 'glowHighlight 2s ease-in-out infinite',\n },\n actions: {\n display: 'flex',\n flexDirection: 'column',\n gap: 'md',\n },\n },\n})\n","import { modalSlotRecipe } from './modal'\nimport { switchSlotRecipe } from './switch'\nimport { victoryScreenSlotRecipe } from './victoryScreen'\n\nexport const slotRecipes = {\n modal: modalSlotRecipe,\n switch: switchSlotRecipe,\n victoryScreen: victoryScreenSlotRecipe,\n}\n"],"mappings":"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","names":["defineTokens","defineTokens","defineTokens","defineTokens","defineTokens","defineSemanticTokens","defineRecipe","defineRecipe","defineSlotRecipe","defineSlotRecipe"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ebtgames/theme",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",