@knkcs/anker 0.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.
Files changed (39) hide show
  1. package/LICENSE +30 -0
  2. package/README.md +129 -0
  3. package/dist/atoms/index.d.ts +536 -0
  4. package/dist/atoms/index.js +845 -0
  5. package/dist/atoms/index.js.map +1 -0
  6. package/dist/avatar-DhqkKdqc.d.ts +29 -0
  7. package/dist/chunk-4D3EY2W2.js +1628 -0
  8. package/dist/chunk-4D3EY2W2.js.map +1 -0
  9. package/dist/chunk-4T32UC26.js +81 -0
  10. package/dist/chunk-4T32UC26.js.map +1 -0
  11. package/dist/chunk-FGKGX4UF.js +36 -0
  12. package/dist/chunk-FGKGX4UF.js.map +1 -0
  13. package/dist/chunk-PZCL4M6I.js +62 -0
  14. package/dist/chunk-PZCL4M6I.js.map +1 -0
  15. package/dist/chunk-QSCNXHMU.js +32 -0
  16. package/dist/chunk-QSCNXHMU.js.map +1 -0
  17. package/dist/chunk-RJPEVNMJ.js +23 -0
  18. package/dist/chunk-RJPEVNMJ.js.map +1 -0
  19. package/dist/chunk-YXTW5OAJ.js +303 -0
  20. package/dist/chunk-YXTW5OAJ.js.map +1 -0
  21. package/dist/components/index.d.ts +413 -0
  22. package/dist/components/index.js +982 -0
  23. package/dist/components/index.js.map +1 -0
  24. package/dist/feedback/index.d.ts +27 -0
  25. package/dist/feedback/index.js +100 -0
  26. package/dist/feedback/index.js.map +1 -0
  27. package/dist/forms/index.d.ts +272 -0
  28. package/dist/forms/index.js +947 -0
  29. package/dist/forms/index.js.map +1 -0
  30. package/dist/number-input-D2X0rWOg.d.ts +18 -0
  31. package/dist/primitives/index.d.ts +396 -0
  32. package/dist/primitives/index.js +478 -0
  33. package/dist/primitives/index.js.map +1 -0
  34. package/dist/search-input-C_Cl2OEx.d.ts +17 -0
  35. package/dist/switch-B0o6G2XE.d.ts +28 -0
  36. package/dist/theme/index.d.ts +496 -0
  37. package/dist/theme/index.js +3 -0
  38. package/dist/theme/index.js.map +1 -0
  39. package/package.json +96 -0
@@ -0,0 +1,1628 @@
1
+ import { defineRecipe, defineSlotRecipe, createSystem, defaultConfig } from '@chakra-ui/react';
2
+ import { toHex, transparentize as transparentize$1 } from 'color2k';
3
+
4
+ // src/theme/index.ts
5
+ var buttonTheme = defineRecipe({
6
+ base: {
7
+ lineHeight: "1.2",
8
+ borderRadius: "md",
9
+ fontWeight: "semibold",
10
+ transitionProperty: "common",
11
+ transitionDuration: "normal",
12
+ _focusVisible: {
13
+ boxShadow: "none",
14
+ outlineOffset: "2px",
15
+ outlineWidth: "2px",
16
+ outlineStyle: "solid",
17
+ outlineColor: "primary.600"
18
+ },
19
+ _disabled: {
20
+ opacity: 0.4,
21
+ cursor: "not-allowed",
22
+ boxShadow: "none"
23
+ },
24
+ _hover: {
25
+ _disabled: {
26
+ bg: "initial"
27
+ }
28
+ }
29
+ },
30
+ variants: {
31
+ size: {
32
+ xl: {
33
+ rounded: "md",
34
+ px: 3.5,
35
+ fontSize: "sm",
36
+ lineHeight: 1.5,
37
+ fontWeight: 600,
38
+ h: "10",
39
+ minW: "10"
40
+ },
41
+ lg: {
42
+ rounded: "md",
43
+ px: 3,
44
+ fontSize: "sm",
45
+ lineHeight: 1.5,
46
+ fontWeight: 600,
47
+ h: "9",
48
+ minW: "9"
49
+ },
50
+ md: {
51
+ rounded: "md",
52
+ px: 2.5,
53
+ fontSize: "sm",
54
+ lineHeight: 1.5,
55
+ fontWeight: 600,
56
+ h: "8",
57
+ minW: "8"
58
+ },
59
+ sm: {
60
+ rounded: "md",
61
+ px: 2,
62
+ fontSize: "sm",
63
+ lineHeight: 1.5,
64
+ fontWeight: 600,
65
+ h: "7",
66
+ minW: "7"
67
+ },
68
+ xs: {
69
+ h: "6",
70
+ minW: "6",
71
+ rounded: "md",
72
+ px: 2,
73
+ fontSize: "xs",
74
+ lineHeight: "1rem",
75
+ fontWeight: 600
76
+ }
77
+ },
78
+ variant: {
79
+ // Solid variant: highlights the current page item
80
+ solid: {
81
+ '&[aria-current="page"]': {
82
+ bg: "colorPalette.300",
83
+ _dark: {
84
+ bg: "colorPalette.400"
85
+ }
86
+ }
87
+ },
88
+ // Primary: solid style locked to the primary color palette
89
+ primary: {
90
+ bg: "primary.500",
91
+ color: "white",
92
+ _hover: {
93
+ bg: "primary.600",
94
+ _disabled: {
95
+ bg: "primary.500"
96
+ }
97
+ },
98
+ _active: {
99
+ bg: "primary.700"
100
+ }
101
+ },
102
+ // Secondary: outline style using gray color palette
103
+ secondary: {
104
+ bg: { base: "white", _dark: "gray.800" },
105
+ borderWidth: "1px",
106
+ borderColor: "gray.200",
107
+ color: "gray.800",
108
+ _dark: {
109
+ borderColor: "gray.600",
110
+ color: "gray.200"
111
+ },
112
+ _hover: {
113
+ bg: { base: "gray.50", _dark: "gray.700" }
114
+ },
115
+ _active: {
116
+ bg: { base: "gray.100", _dark: "gray.700" }
117
+ }
118
+ },
119
+ // Outline: white background with subtle hover/active states
120
+ outline: {
121
+ bg: { base: "white", _dark: "gray.800" },
122
+ _hover: {
123
+ bg: { base: "gray.50", _dark: "gray.700/40" }
124
+ },
125
+ _checked: {
126
+ bg: { base: "gray.100", _dark: "gray.700" }
127
+ },
128
+ _active: {
129
+ bg: { base: "gray.100", _dark: "gray.700" }
130
+ }
131
+ },
132
+ // Ghost: transparent hover that shifts to primary color, gray active
133
+ ghost: {
134
+ _hover: {
135
+ bg: "transparent",
136
+ color: "primary.500"
137
+ },
138
+ _active: {
139
+ bg: "gray.200"
140
+ }
141
+ },
142
+ // Link: no background, text color based on color palette.
143
+ link: {
144
+ color: { base: "colorPalette.600", _dark: "colorPalette.200" },
145
+ _hover: {
146
+ color: { base: "colorPalette.700", _dark: "colorPalette.300" },
147
+ textDecoration: "none"
148
+ },
149
+ _active: {
150
+ color: { base: "colorPalette.700", _dark: "colorPalette.300" }
151
+ }
152
+ },
153
+ // Link variant for gray colorScheme
154
+ "link-gray": {
155
+ color: "fg.muted",
156
+ _hover: {
157
+ textDecoration: "none",
158
+ color: "fg.default"
159
+ },
160
+ _active: {
161
+ color: "fg.default"
162
+ }
163
+ }
164
+ }
165
+ },
166
+ defaultVariants: {
167
+ size: "lg",
168
+ variant: "solid"
169
+ }
170
+ });
171
+ var cardSlotRecipe = defineSlotRecipe({
172
+ slots: ["root", "header", "body", "footer", "title", "description"],
173
+ base: {
174
+ root: {
175
+ bg: { base: "white", _dark: "gray.800" }
176
+ }
177
+ },
178
+ variants: {
179
+ variant: {
180
+ elevated: {
181
+ root: {
182
+ boxShadow: "md"
183
+ }
184
+ },
185
+ flat: {
186
+ root: {
187
+ shadow: "md"
188
+ }
189
+ }
190
+ }
191
+ },
192
+ defaultVariants: {
193
+ variant: "elevated"
194
+ }
195
+ });
196
+ var card_default = cardSlotRecipe;
197
+ var checkboxSlotRecipe = defineSlotRecipe({
198
+ slots: ["root", "label", "control", "indicator", "group"],
199
+ base: {
200
+ label: {
201
+ color: "muted",
202
+ fontWeight: "medium"
203
+ },
204
+ control: {
205
+ bg: { base: "white", _dark: "gray.800" },
206
+ borderRadius: "base"
207
+ }
208
+ },
209
+ variants: {
210
+ size: {
211
+ md: {
212
+ label: {
213
+ fontSize: "sm"
214
+ }
215
+ }
216
+ }
217
+ },
218
+ defaultVariants: {
219
+ size: "md",
220
+ colorPalette: "primary"
221
+ }
222
+ });
223
+ var checkbox_default = checkboxSlotRecipe;
224
+ var commentSlotRecipe = defineSlotRecipe({
225
+ slots: [
226
+ "container",
227
+ "avatar",
228
+ "contentContainer",
229
+ "children",
230
+ "field",
231
+ "deletedText"
232
+ ],
233
+ base: {
234
+ container: {
235
+ display: "grid",
236
+ position: "relative",
237
+ gap: 2,
238
+ gridTemplateAreas: `"avatar-area comment-area" ". nested-comments-area"`,
239
+ gridTemplateColumns: "auto 1fr",
240
+ fontSize: "sm"
241
+ },
242
+ avatar: {
243
+ gridArea: "avatar-area",
244
+ display: "block"
245
+ },
246
+ contentContainer: {
247
+ minW: 0,
248
+ pt: 1,
249
+ gridArea: "comment-area",
250
+ wordWrap: "break-word",
251
+ bg: { base: "gray.50", _dark: "gray.700" },
252
+ borderRadius: "md",
253
+ p: 4
254
+ },
255
+ children: {
256
+ gridArea: "nested-comments-area",
257
+ paddingTop: 8
258
+ },
259
+ field: {
260
+ fontWeight: "inherit",
261
+ "&:not(:hover):not(:active)": {
262
+ color: { base: "gray.500", _dark: "gray.400" }
263
+ }
264
+ },
265
+ deletedText: {
266
+ color: { base: "gray.500", _dark: "gray.400" },
267
+ fontStyle: "italic"
268
+ }
269
+ }
270
+ });
271
+ var comment_default = commentSlotRecipe;
272
+ var container_default = defineRecipe({
273
+ base: {
274
+ maxW: "9xl",
275
+ px: { base: "4", md: "8" }
276
+ }
277
+ });
278
+ var dialog = defineSlotRecipe({
279
+ slots: ["content"],
280
+ variants: {
281
+ size: {
282
+ "7xl": {
283
+ content: {
284
+ maxW: "95%",
285
+ minH: "95%",
286
+ maxH: "95%",
287
+ my: 0
288
+ }
289
+ }
290
+ }
291
+ }
292
+ });
293
+ var drawerTheme = defineSlotRecipe({
294
+ slots: ["content"],
295
+ variants: {
296
+ size: {
297
+ xl: {
298
+ content: { minW: "50vw", h: "100vh" }
299
+ },
300
+ xxl: {
301
+ content: { minW: "51vw", h: "100vh", maxW: "70vw" }
302
+ },
303
+ full: {
304
+ content: { maxW: "90vw", h: "100vh" }
305
+ }
306
+ }
307
+ }
308
+ });
309
+ var form_label_default = defineRecipe({
310
+ base: {
311
+ color: "emphasized",
312
+ mb: "1.5",
313
+ fontSize: "sm"
314
+ },
315
+ variants: {
316
+ size: {
317
+ sm: {
318
+ _peerPlaceholderShown: {
319
+ fontSize: "sm",
320
+ top: "1.5",
321
+ left: "4"
322
+ }
323
+ },
324
+ md: {
325
+ _peerPlaceholderShown: {
326
+ fontSize: "md",
327
+ top: "2",
328
+ left: "4"
329
+ }
330
+ },
331
+ lg: {
332
+ _peerPlaceholderShown: {
333
+ fontSize: "lg",
334
+ top: "2.5",
335
+ left: "4"
336
+ }
337
+ }
338
+ },
339
+ variant: {
340
+ inline: {
341
+ margin: 0,
342
+ minW: "2xs"
343
+ },
344
+ floating: {
345
+ position: "absolute",
346
+ transition: "all 0.12s ease-in",
347
+ pointerEvents: "none",
348
+ top: "-27px",
349
+ left: "0",
350
+ _peerPlaceholderShown: {
351
+ fontWeight: "normal",
352
+ color: "subtle"
353
+ },
354
+ _peerFocus: {
355
+ fontSize: "sm",
356
+ fontWeight: "medium",
357
+ top: "-27px",
358
+ left: "0",
359
+ color: "muted"
360
+ }
361
+ }
362
+ }
363
+ },
364
+ defaultVariants: {
365
+ size: "md"
366
+ }
367
+ });
368
+ var inputSlotRecipe = defineSlotRecipe({
369
+ slots: ["field", "addon"],
370
+ variants: {
371
+ variant: {
372
+ outline: {
373
+ field: {
374
+ borderRadius: "md",
375
+ bg: { base: "white", _dark: "gray.800" },
376
+ _hover: { borderColor: { base: "gray.300", _dark: "gray.600" } },
377
+ _focus: {
378
+ borderColor: { base: "primary.500", _dark: "primary.200" },
379
+ boxShadow: "0px 0px 0px 1px var(--chakra-colors-primary-500)"
380
+ }
381
+ },
382
+ addon: {
383
+ borderRadius: "md",
384
+ bg: { base: "gray.50", _dark: "gray.700" }
385
+ }
386
+ },
387
+ "outline-on-accent": {
388
+ field: {
389
+ bg: "white",
390
+ borderRadius: "md",
391
+ color: "gray.900",
392
+ borderWidth: "1px",
393
+ borderColor: "primary.50",
394
+ _placeholder: {
395
+ color: "gray.500"
396
+ },
397
+ _hover: {
398
+ borderColor: "primary.100"
399
+ },
400
+ _focus: {
401
+ borderColor: "primary.200",
402
+ boxShadow: "0px 0px 0px 1px var(--chakra-colors-primary-200)"
403
+ }
404
+ }
405
+ },
406
+ filled: {
407
+ field: {
408
+ bg: { base: "white", _dark: "gray.800" },
409
+ _hover: {
410
+ borderColor: { base: "gray.200", _dark: "gray.700" },
411
+ bg: { base: "white", _dark: "gray.700" }
412
+ },
413
+ _focus: {
414
+ borderColor: "accent",
415
+ bg: { base: "white", _dark: "gray.800" }
416
+ }
417
+ }
418
+ },
419
+ link: {
420
+ field: {
421
+ background: "transparent",
422
+ border: "none",
423
+ boxShadow: "none",
424
+ padding: 0,
425
+ minHeight: "auto",
426
+ color: "primary.500",
427
+ textDecoration: "underline",
428
+ cursor: "pointer",
429
+ _hover: {
430
+ color: "primary.600",
431
+ textDecoration: "underline"
432
+ },
433
+ _focus: {
434
+ boxShadow: "none",
435
+ color: "primary.600"
436
+ }
437
+ }
438
+ }
439
+ },
440
+ size: {
441
+ lg: {
442
+ field: {
443
+ fontSize: "md",
444
+ borderRadius: "md"
445
+ }
446
+ }
447
+ }
448
+ },
449
+ defaultVariants: {
450
+ variant: "outline",
451
+ colorPalette: "gray"
452
+ }
453
+ });
454
+ var input_default = inputSlotRecipe;
455
+ var $bg = "--menu-bg";
456
+ var $shadow = "--menu-shadow";
457
+ var menuTheme = defineSlotRecipe({
458
+ slots: ["content", "item", "itemGroupLabel", "itemCommand", "separator"],
459
+ base: {
460
+ content: {
461
+ [$bg]: "colors.white",
462
+ [$shadow]: "shadows.md",
463
+ _dark: {
464
+ [$bg]: "colors.gray.700",
465
+ [$shadow]: "shadows.lg"
466
+ },
467
+ color: "inherit",
468
+ minW: "3xs",
469
+ py: "2",
470
+ zIndex: 1,
471
+ borderRadius: "md",
472
+ borderWidth: "1px",
473
+ bg: `var(${$bg})`,
474
+ boxShadow: `var(${$shadow})`
475
+ },
476
+ item: {
477
+ py: "0.4rem",
478
+ px: "0.8rem",
479
+ fontSize: "sm",
480
+ fontWeight: "normal",
481
+ color: "black",
482
+ transitionProperty: "background",
483
+ transitionDuration: "ultra-fast",
484
+ transitionTimingFunction: "ease-in",
485
+ _focus: {
486
+ [$bg]: "colors.gray.100",
487
+ _dark: {
488
+ [$bg]: "colors.whiteAlpha.100"
489
+ }
490
+ },
491
+ _active: {
492
+ [$bg]: "colors.gray.200",
493
+ _dark: {
494
+ [$bg]: "colors.whiteAlpha.200"
495
+ }
496
+ },
497
+ _expanded: {
498
+ [$bg]: "colors.gray.100",
499
+ _dark: {
500
+ [$bg]: "colors.whiteAlpha.100"
501
+ }
502
+ },
503
+ _disabled: {
504
+ opacity: 0.4,
505
+ cursor: "not-allowed"
506
+ },
507
+ bg: `var(${$bg})`
508
+ },
509
+ itemGroupLabel: {
510
+ mx: 4,
511
+ my: 2,
512
+ fontWeight: "semibold",
513
+ fontSize: "sm"
514
+ },
515
+ itemCommand: {
516
+ opacity: 0.6
517
+ },
518
+ separator: {
519
+ border: 0,
520
+ borderBottom: "1px solid",
521
+ borderColor: "inherit",
522
+ my: "2",
523
+ opacity: 0.6
524
+ }
525
+ }
526
+ });
527
+ var modalSlotRecipe = defineSlotRecipe({
528
+ slots: ["header", "closeButton", "dialog"],
529
+ base: {
530
+ header: {
531
+ px: "6",
532
+ py: "4",
533
+ fontSize: "xl",
534
+ fontWeight: "semibold",
535
+ roundedTop: "md"
536
+ },
537
+ closeButton: {}
538
+ },
539
+ variants: {
540
+ size: {
541
+ "7xl": {
542
+ dialog: {
543
+ maxW: "95%",
544
+ minH: "95%",
545
+ maxH: "95%",
546
+ my: 0
547
+ }
548
+ }
549
+ }
550
+ }
551
+ });
552
+ var personaSlotRecipe = defineSlotRecipe({
553
+ slots: [
554
+ "container",
555
+ "details",
556
+ "avatar",
557
+ "label",
558
+ "secondaryLabel",
559
+ "tertiaryLabel"
560
+ ],
561
+ base: {
562
+ container: {},
563
+ avatar: {},
564
+ label: {},
565
+ secondaryLabel: {
566
+ color: { base: "gray.500", _dark: "whiteAlpha.600" },
567
+ overflow: "hidden",
568
+ whiteSpace: "nowrap",
569
+ textOverflow: "ellipsis"
570
+ },
571
+ tertiaryLabel: {
572
+ color: { base: "gray.500", _dark: "whiteAlpha.600" },
573
+ overflow: "hidden",
574
+ whiteSpace: "nowrap",
575
+ textOverflow: "ellipsis"
576
+ }
577
+ },
578
+ variants: {
579
+ size: {
580
+ "2xs": {
581
+ details: { ms: 2 },
582
+ label: { fontSize: "xs" },
583
+ secondaryLabel: { display: "none" },
584
+ tertiaryLabel: { display: "none" }
585
+ },
586
+ xs: {
587
+ details: { ms: 2 },
588
+ label: { fontSize: "md" },
589
+ secondaryLabel: { display: "none" },
590
+ tertiaryLabel: { display: "none" }
591
+ },
592
+ sm: {
593
+ details: { ms: 2 },
594
+ label: { fontSize: "md" },
595
+ secondaryLabel: { fontSize: "sm" },
596
+ tertiaryLabel: { display: "none" }
597
+ },
598
+ md: {
599
+ details: { ms: 2 },
600
+ label: { fontSize: "md" },
601
+ secondaryLabel: { fontSize: "sm" },
602
+ tertiaryLabel: { display: "none" }
603
+ },
604
+ lg: {
605
+ details: { ms: 3 },
606
+ label: { fontSize: "md" },
607
+ secondaryLabel: { fontSize: "sm" },
608
+ tertiaryLabel: { fontSize: "sm" }
609
+ },
610
+ xl: {
611
+ details: { ms: 3 },
612
+ label: { fontSize: "xl" },
613
+ secondaryLabel: { fontSize: "md" },
614
+ tertiaryLabel: { fontSize: "md" }
615
+ },
616
+ "2xl": {
617
+ details: { ms: 4 },
618
+ label: { fontSize: "2xl" },
619
+ secondaryLabel: { fontSize: "lg" },
620
+ tertiaryLabel: { fontSize: "lg" }
621
+ }
622
+ }
623
+ },
624
+ defaultVariants: {
625
+ size: "md"
626
+ }
627
+ });
628
+ var persona_default = personaSlotRecipe;
629
+ var popoverSlotRecipe = defineSlotRecipe({
630
+ slots: ["content"],
631
+ base: {
632
+ content: {
633
+ borderWidth: "1px",
634
+ boxShadow: "lg",
635
+ borderRadius: "md",
636
+ background: "bg-surface",
637
+ overflow: "hidden"
638
+ }
639
+ }
640
+ });
641
+ var popover_default = popoverSlotRecipe;
642
+ var propertyTheme = defineSlotRecipe({
643
+ slots: ["property", "label", "value"],
644
+ base: {
645
+ label: {
646
+ color: "muted"
647
+ }
648
+ }
649
+ });
650
+ var radioCardTheme = defineRecipe({
651
+ base: {
652
+ borderWidth: "1px",
653
+ borderRadius: "md",
654
+ p: "4",
655
+ bg: "bg-surface",
656
+ transitionProperty: "common",
657
+ transitionDuration: "normal",
658
+ _hover: {
659
+ borderColor: { base: "gray.300", _dark: "gray.600" }
660
+ },
661
+ _checked: {
662
+ borderColor: { base: "primary.500", _dark: "primary.200" },
663
+ boxShadow: {
664
+ base: "0px 0px 0px 1px var(--chakra-colors-primary-500)",
665
+ _dark: "0px 0px 0px 1px var(--chakra-colors-primary-200)"
666
+ }
667
+ }
668
+ }
669
+ });
670
+ var separator_default = defineRecipe({
671
+ base: {
672
+ opacity: 1
673
+ }
674
+ });
675
+ var stepperTheme = defineSlotRecipe({
676
+ slots: [
677
+ "container",
678
+ "steps",
679
+ "icon",
680
+ "content",
681
+ "title",
682
+ "separator",
683
+ "step"
684
+ ],
685
+ base: {
686
+ container: {
687
+ display: "flex",
688
+ flexDirection: "column",
689
+ py: 4
690
+ },
691
+ steps: {
692
+ display: "flex",
693
+ mb: 4
694
+ },
695
+ step: {
696
+ display: "flex",
697
+ alignItems: "center",
698
+ flexDirection: "row"
699
+ },
700
+ icon: {
701
+ display: "flex",
702
+ alignItems: "center",
703
+ justifyContent: "center",
704
+ borderRadius: "full",
705
+ fontSize: "1em",
706
+ bg: "whiteAlpha.400",
707
+ lineHeight: 1,
708
+ flexShrink: 0,
709
+ transitionProperty: "common",
710
+ transitionDuration: "normal"
711
+ },
712
+ separator: {
713
+ flex: 1,
714
+ transitionProperty: "common",
715
+ transitionDuration: "normal"
716
+ }
717
+ },
718
+ variants: {
719
+ variant: {
720
+ subtle: {
721
+ icon: {
722
+ bg: "blackAlpha.300",
723
+ color: "blackAlpha.600",
724
+ _dark: {
725
+ bg: "whiteAlpha.200",
726
+ color: "whiteAlpha.600"
727
+ }
728
+ },
729
+ step: {
730
+ "&[data-active] .stepper__icon, &[data-completed] .stepper__icon": {
731
+ bg: "colorPalette.muted",
732
+ color: "colorPalette.fg"
733
+ }
734
+ },
735
+ separator: {
736
+ "&[data-active]": {
737
+ bg: "colorPalette.emphasized"
738
+ }
739
+ }
740
+ },
741
+ solid: {
742
+ icon: {
743
+ bg: "gray.300",
744
+ color: "gray.600",
745
+ _dark: {
746
+ bg: "gray.600",
747
+ color: "gray.400"
748
+ }
749
+ },
750
+ step: {
751
+ "&[data-active] .stepper__icon": {
752
+ bg: "colorPalette.muted",
753
+ borderColor: "colorPalette.solid",
754
+ color: "colorPalette.fg"
755
+ },
756
+ "&[data-completed] .stepper__icon": {
757
+ bg: "colorPalette.solid",
758
+ color: "colorPalette.contrast"
759
+ }
760
+ },
761
+ separator: {
762
+ "&[data-active]": {
763
+ borderColor: "colorPalette.solid"
764
+ }
765
+ }
766
+ }
767
+ },
768
+ size: {
769
+ md: {
770
+ icon: {
771
+ boxSize: 6,
772
+ fontSize: "sm"
773
+ },
774
+ title: {
775
+ fontSize: "md"
776
+ }
777
+ },
778
+ lg: {
779
+ icon: {
780
+ boxSize: 8
781
+ },
782
+ title: {
783
+ fontSize: "lg"
784
+ }
785
+ }
786
+ },
787
+ orientation: {
788
+ vertical: {
789
+ steps: {
790
+ flexDirection: "column",
791
+ alignItems: "stretch"
792
+ },
793
+ icon: {
794
+ me: 2
795
+ },
796
+ separator: {
797
+ minHeight: 4,
798
+ borderLeftWidth: 1,
799
+ borderTopWidth: 0,
800
+ mx: 3
801
+ },
802
+ content: {
803
+ borderLeftWidth: 1,
804
+ ms: 3,
805
+ ps: 5
806
+ }
807
+ },
808
+ horizontal: {
809
+ steps: {
810
+ flexDirection: "row",
811
+ alignItems: { base: "flex-start", sm: "center" },
812
+ position: "relative"
813
+ },
814
+ icon: {
815
+ me: { base: 0, sm: 2 }
816
+ },
817
+ title: {
818
+ mt: { base: 2, sm: 0 },
819
+ textAlign: "center"
820
+ },
821
+ separator: {
822
+ borderTopWidth: 1,
823
+ mx: { base: 0, sm: 3 },
824
+ mt: { base: 5, sm: 0 },
825
+ alignSelf: { base: "flex-start", sm: "center" },
826
+ flex: { base: "inherit", sm: 1 }
827
+ }
828
+ }
829
+ }
830
+ },
831
+ defaultVariants: {
832
+ variant: "solid",
833
+ colorPalette: "primary",
834
+ size: "lg",
835
+ orientation: "horizontal"
836
+ }
837
+ });
838
+ var tableTheme = defineSlotRecipe({
839
+ slots: [
840
+ "root",
841
+ "header",
842
+ "body",
843
+ "footer",
844
+ "row",
845
+ "columnHeader",
846
+ "cell",
847
+ "caption"
848
+ ],
849
+ base: {
850
+ root: {
851
+ whiteSpace: "nowrap",
852
+ tableLayout: "fixed",
853
+ textIndent: 0
854
+ },
855
+ columnHeader: {
856
+ py: 3,
857
+ px: 3,
858
+ textAlign: "start",
859
+ fontSize: "xs",
860
+ fontWeight: "600",
861
+ textTransform: "uppercase",
862
+ letterSpacing: "wider",
863
+ color: "gray.500",
864
+ bg: "gray.50",
865
+ borderBottomWidth: "1px",
866
+ borderColor: "border"
867
+ },
868
+ cell: {
869
+ fontSize: "sm",
870
+ py: 3,
871
+ px: 3,
872
+ whiteSpace: "nowrap",
873
+ borderColor: "border"
874
+ },
875
+ row: {
876
+ bg: "bg-surface",
877
+ _hover: {
878
+ bg: "gray.50"
879
+ }
880
+ }
881
+ },
882
+ variants: {
883
+ variant: {
884
+ line: {
885
+ columnHeader: {
886
+ borderBottomWidth: "1px",
887
+ borderColor: "border"
888
+ },
889
+ cell: {
890
+ borderBottomWidth: "1px",
891
+ borderColor: "border"
892
+ },
893
+ row: {
894
+ bg: "bg"
895
+ }
896
+ },
897
+ striped: {
898
+ body: {
899
+ "& tr:nth-of-type(odd) td": {
900
+ bg: "gray.50"
901
+ }
902
+ }
903
+ },
904
+ hoverable: {
905
+ body: {
906
+ "& tr:hover": {
907
+ bg: "primary.50"
908
+ }
909
+ }
910
+ }
911
+ }
912
+ },
913
+ defaultVariants: {
914
+ variant: "line"
915
+ }
916
+ });
917
+ var tabTheme = defineSlotRecipe({
918
+ slots: ["root", "list", "trigger", "content", "contentGroup", "indicator"],
919
+ variants: {
920
+ variant: {
921
+ "with-line": {
922
+ list: {
923
+ borderBottom: "1px solid",
924
+ borderColor: "border"
925
+ },
926
+ trigger: {
927
+ color: "muted",
928
+ borderBottom: "2px solid transparent",
929
+ marginBottom: "-1px",
930
+ pt: "0",
931
+ pb: "4.5",
932
+ px: "1",
933
+ justifyContent: "start",
934
+ "&:not(:last-child)": {
935
+ me: "4"
936
+ },
937
+ _selected: {
938
+ color: "colorPalette.solid",
939
+ borderBottom: "2px solid",
940
+ borderBottomColor: "colorPalette.solid"
941
+ },
942
+ _active: {
943
+ bg: "transparent"
944
+ }
945
+ }
946
+ },
947
+ "with-line-vertical": {
948
+ list: {
949
+ borderStart: "1px solid",
950
+ borderColor: "border"
951
+ },
952
+ trigger: {
953
+ color: "muted",
954
+ borderStart: "2px solid transparent",
955
+ marginStart: "-1px",
956
+ justifyContent: "start",
957
+ px: "3",
958
+ "&:not(:last-child)": {
959
+ mb: "2"
960
+ },
961
+ _selected: {
962
+ color: "colorPalette.solid",
963
+ borderStartColor: "colorPalette.solid"
964
+ },
965
+ _active: {
966
+ bg: "transparent"
967
+ }
968
+ }
969
+ }
970
+ }
971
+ }
972
+ });
973
+ var tagTheme = defineRecipe({
974
+ base: {
975
+ lineHeight: "1.2",
976
+ borderRadius: "md",
977
+ fontWeight: "semibold",
978
+ transitionProperty: "common",
979
+ transitionDuration: "normal",
980
+ _focusVisible: {
981
+ boxShadow: "none",
982
+ outlineOffset: "2px",
983
+ outlineWidth: "2px",
984
+ outlineStyle: "solid",
985
+ outlineColor: "primary.600"
986
+ },
987
+ _disabled: {
988
+ opacity: 0.4,
989
+ cursor: "not-allowed",
990
+ boxShadow: "none"
991
+ },
992
+ _hover: {
993
+ _disabled: {
994
+ bg: "initial"
995
+ }
996
+ }
997
+ },
998
+ variants: {
999
+ variant: {
1000
+ solid: {
1001
+ '&[aria-current="page"]': {
1002
+ bg: { base: "colorPalette.300", _dark: "colorPalette.400" }
1003
+ }
1004
+ },
1005
+ primary: {
1006
+ bg: { base: "primary.300", _dark: "primary.400" }
1007
+ },
1008
+ secondary: {
1009
+ borderWidth: "1px",
1010
+ bg: { base: "white", _dark: "gray.800" },
1011
+ color: { base: "gray.800", _dark: "whiteAlpha.900" }
1012
+ },
1013
+ outline: {
1014
+ bg: { base: "white", _dark: "gray.800" },
1015
+ _hover: {
1016
+ bg: { base: "gray.50", _dark: "gray.700/40" }
1017
+ },
1018
+ _checked: {
1019
+ bg: { base: "gray.100", _dark: "gray.700" }
1020
+ },
1021
+ _active: {
1022
+ bg: { base: "gray.100", _dark: "gray.700" }
1023
+ }
1024
+ },
1025
+ ghost: {
1026
+ _hover: {
1027
+ bg: "transparent",
1028
+ color: "primary.500"
1029
+ },
1030
+ _active: {
1031
+ bg: "transparent"
1032
+ }
1033
+ },
1034
+ link: {
1035
+ color: { base: "colorPalette.600", _dark: "colorPalette.200" },
1036
+ _hover: {
1037
+ color: { base: "colorPalette.700", _dark: "colorPalette.300" },
1038
+ textDecoration: "none"
1039
+ },
1040
+ _active: {
1041
+ color: { base: "colorPalette.700", _dark: "colorPalette.300" }
1042
+ }
1043
+ }
1044
+ },
1045
+ size: {
1046
+ xl: {
1047
+ rounded: "md",
1048
+ px: 3.5,
1049
+ fontSize: "sm",
1050
+ lineHeight: 1.5,
1051
+ fontWeight: 600,
1052
+ h: "10",
1053
+ minW: "10"
1054
+ },
1055
+ lg: {
1056
+ rounded: "md",
1057
+ px: 3,
1058
+ fontSize: "sm",
1059
+ lineHeight: 1.5,
1060
+ fontWeight: 600,
1061
+ h: "9",
1062
+ minW: "9"
1063
+ },
1064
+ md: {
1065
+ rounded: "md",
1066
+ px: 2.5,
1067
+ fontSize: "sm",
1068
+ lineHeight: 1.5,
1069
+ fontWeight: 600,
1070
+ h: "8",
1071
+ minW: "8"
1072
+ },
1073
+ sm: {
1074
+ rounded: "base",
1075
+ px: 2,
1076
+ fontSize: "sm",
1077
+ lineHeight: 1.5,
1078
+ fontWeight: 600,
1079
+ h: "7",
1080
+ minW: "7"
1081
+ },
1082
+ xs: {
1083
+ h: "6",
1084
+ minW: "6",
1085
+ rounded: "base",
1086
+ px: 2,
1087
+ fontSize: "xs",
1088
+ lineHeight: "1rem",
1089
+ fontWeight: 600
1090
+ }
1091
+ }
1092
+ },
1093
+ defaultVariants: {
1094
+ size: "lg"
1095
+ }
1096
+ });
1097
+ var textarea_default = defineRecipe({
1098
+ variants: {
1099
+ variant: {
1100
+ outline: {
1101
+ borderRadius: "md",
1102
+ bg: { base: "white", _dark: "gray.800" },
1103
+ _hover: { borderColor: { base: "gray.300", _dark: "gray.600" } },
1104
+ _focus: {
1105
+ borderColor: { base: "primary.500", _dark: "primary.200" },
1106
+ boxShadow: {
1107
+ base: "0px 0px 0px 1px var(--chakra-colors-primary-500)",
1108
+ _dark: "0px 0px 0px 1px var(--chakra-colors-primary-200)"
1109
+ }
1110
+ }
1111
+ }
1112
+ }
1113
+ }
1114
+ });
1115
+ var tooltipTheme = defineRecipe({
1116
+ base: {
1117
+ px: "2",
1118
+ py: "1",
1119
+ bg: "gray.700",
1120
+ color: "whiteAlpha.900",
1121
+ _dark: {
1122
+ bg: "gray.300",
1123
+ color: "gray.900"
1124
+ },
1125
+ borderRadius: "md",
1126
+ fontWeight: "medium",
1127
+ fontSize: "sm",
1128
+ boxShadow: "md",
1129
+ maxW: "xs",
1130
+ zIndex: "tooltip"
1131
+ }
1132
+ });
1133
+ var tree_item_default = defineSlotRecipe({
1134
+ slots: [
1135
+ "treeItem",
1136
+ "treeItemElement",
1137
+ "treeItemToggle",
1138
+ "treeItemIcon",
1139
+ "treeItemContent",
1140
+ "treeItemLabel",
1141
+ "treeItemActions",
1142
+ "treeItemChildren"
1143
+ ],
1144
+ base: {
1145
+ treeItem: {},
1146
+ treeItemElement: {
1147
+ height: "42px",
1148
+ display: "grid",
1149
+ gridTemplateColumns: "30px 24px 20px auto 50px",
1150
+ gridGap: "2px",
1151
+ alignItems: "center",
1152
+ alignContent: "center",
1153
+ padding: 0,
1154
+ fontSize: "xs",
1155
+ color: { base: "gray.700", _dark: "gray.300" },
1156
+ borderRadius: "base",
1157
+ _hover: {
1158
+ bg: { base: "gray.100", _dark: "gray.700" }
1159
+ },
1160
+ ".is--no-checkbox &": {
1161
+ gridTemplateColumns: "30px 0 24px auto 50px"
1162
+ }
1163
+ },
1164
+ treeItemToggle: {
1165
+ width: "15px",
1166
+ height: "24px",
1167
+ lineHeight: "20px",
1168
+ textAlign: "center",
1169
+ position: "relative",
1170
+ cursor: "pointer",
1171
+ userSelect: "none",
1172
+ justifySelf: "center",
1173
+ _expanded: {
1174
+ color: "primary.400"
1175
+ }
1176
+ },
1177
+ treeItemIcon: {
1178
+ width: "45px",
1179
+ height: "22px",
1180
+ color: "primary.600",
1181
+ "&[aria-leaf=true],&[data-leaf]": {
1182
+ color: "gray.400"
1183
+ }
1184
+ },
1185
+ treeItemContent: {},
1186
+ treeItemLabel: {
1187
+ color: "gray.700"
1188
+ },
1189
+ treeItemActions: {
1190
+ textAlign: "right",
1191
+ marginLeft: "4px"
1192
+ },
1193
+ treeItemChildren: {
1194
+ position: "relative",
1195
+ paddingLeft: 12,
1196
+ _before: {
1197
+ content: '""',
1198
+ position: "absolute",
1199
+ left: "16px",
1200
+ height: "100%",
1201
+ width: "1px",
1202
+ bg: { base: "gray.200", _dark: "gray.600" }
1203
+ }
1204
+ }
1205
+ }
1206
+ });
1207
+
1208
+ // src/theme/tokens/animations.ts
1209
+ var durations = {
1210
+ fast: { value: "150ms" },
1211
+ normal: { value: "200ms" },
1212
+ slow: { value: "300ms" }
1213
+ };
1214
+ var easings = {
1215
+ "ease-in": { value: "cubic-bezier(0.4, 0, 1, 1)" },
1216
+ "ease-out": { value: "cubic-bezier(0, 0, 0.2, 1)" },
1217
+ "ease-in-out": { value: "cubic-bezier(0.4, 0, 0.2, 1)" }
1218
+ };
1219
+
1220
+ // src/theme/tokens/colors.ts
1221
+ var colors = {
1222
+ primary: {
1223
+ "50": { value: "#f1f7fe" },
1224
+ "100": { value: "#e2effc" },
1225
+ "200": { value: "#bfddf8" },
1226
+ "300": { value: "#87c1f2" },
1227
+ "400": { value: "#48a3e8" },
1228
+ "500": { value: "#2087d7" },
1229
+ "600": { value: "#126ab7" },
1230
+ "700": { value: "#105595" },
1231
+ "800": { value: "#11497b" },
1232
+ "900": { value: "#143e66" },
1233
+ "950": { value: "#0d2744" }
1234
+ },
1235
+ secondary: {
1236
+ "50": { value: "#FEF0E6" },
1237
+ "100": { value: "#FCD9BF" },
1238
+ "200": { value: "#F9B888" },
1239
+ "300": { value: "#F59651" },
1240
+ "400": { value: "#F27726" },
1241
+ "500": { value: "#e9580c" },
1242
+ "600": { value: "#C54A0A" },
1243
+ "700": { value: "#9A3A08" },
1244
+ "800": { value: "#6F2A06" },
1245
+ "900": { value: "#441A03" }
1246
+ },
1247
+ // Exact brand guideline colors for branding elements (headers, logos, about pages).
1248
+ // See: knk Brand Guidelines, October 2021
1249
+ brand: {
1250
+ blue: { value: "#004576" },
1251
+ navy: { value: "#0f395d" },
1252
+ "light-blue": { value: "#6fa7d1" },
1253
+ orange: { value: "#e9580c" },
1254
+ gold: { value: "#f4b235" },
1255
+ "light-gray": { value: "#f2f2f2" }
1256
+ },
1257
+ // Blue-tinted gray
1258
+ gray: {
1259
+ "50": { value: "#f8fafc" },
1260
+ "100": { value: "#f1f5f9" },
1261
+ "200": { value: "#e2e8f0" },
1262
+ "300": { value: "#cbd5e1" },
1263
+ "400": { value: "#94a3b8" },
1264
+ "500": { value: "#64748b" },
1265
+ "600": { value: "#475569" },
1266
+ "700": { value: "#334155" },
1267
+ "800": { value: "#1e293b" },
1268
+ "900": { value: "#0f172a" }
1269
+ }
1270
+ };
1271
+ var colors_default = colors;
1272
+
1273
+ // src/theme/tokens/radii.ts
1274
+ var radii = {
1275
+ sm: "0.375rem",
1276
+ md: "0.5rem",
1277
+ lg: "0.75rem",
1278
+ xl: "1rem",
1279
+ "2xl": "1.25rem"
1280
+ };
1281
+ var radii_default = radii;
1282
+
1283
+ // src/theme/tokens/semantic.ts
1284
+ var semanticTokens = {
1285
+ colors: {
1286
+ "bg-canvas": {
1287
+ value: { base: "gray.50", _dark: "gray.900" }
1288
+ },
1289
+ "bg-surface": {
1290
+ value: { base: "white", _dark: "gray.800" }
1291
+ },
1292
+ "bg-subtle": {
1293
+ value: { base: "gray.50", _dark: "gray.700" }
1294
+ },
1295
+ "bg-muted": {
1296
+ value: { base: "gray.100", _dark: "gray.600" }
1297
+ },
1298
+ default: {
1299
+ value: { base: "gray.900", _dark: "white" }
1300
+ },
1301
+ inverted: {
1302
+ value: { base: "white", _dark: "gray.900" }
1303
+ },
1304
+ emphasized: {
1305
+ value: { base: "gray.700", _dark: "gray.100" }
1306
+ },
1307
+ muted: {
1308
+ value: { base: "gray.600", _dark: "gray.300" }
1309
+ },
1310
+ subtle: {
1311
+ value: { base: "gray.500", _dark: "gray.400" }
1312
+ },
1313
+ border: {
1314
+ value: { base: "{colors.gray.200}", _dark: "{colors.gray.700}" }
1315
+ },
1316
+ accent: {
1317
+ value: { base: "primary.500", _dark: "primary.200" }
1318
+ },
1319
+ success: {
1320
+ value: { base: "green.600", _dark: "green.200" }
1321
+ },
1322
+ error: {
1323
+ value: { base: "red.600", _dark: "red.200" }
1324
+ },
1325
+ // Color palette tokens for colorPalette="primary" (required by Chakra v3
1326
+ // for solid/subtle/outline/ghost button variants and other components)
1327
+ primary: {
1328
+ contrast: { value: { base: "white", _dark: "white" } },
1329
+ fg: {
1330
+ value: {
1331
+ base: "{colors.primary.700}",
1332
+ _dark: "{colors.primary.300}"
1333
+ }
1334
+ },
1335
+ subtle: {
1336
+ value: {
1337
+ base: "{colors.primary.100}",
1338
+ _dark: "{colors.primary.900}"
1339
+ }
1340
+ },
1341
+ muted: {
1342
+ value: {
1343
+ base: "{colors.primary.200}",
1344
+ _dark: "{colors.primary.800}"
1345
+ }
1346
+ },
1347
+ emphasized: {
1348
+ value: {
1349
+ base: "{colors.primary.300}",
1350
+ _dark: "{colors.primary.700}"
1351
+ }
1352
+ },
1353
+ solid: {
1354
+ value: {
1355
+ base: "{colors.primary.500}",
1356
+ _dark: "{colors.primary.500}"
1357
+ }
1358
+ },
1359
+ focusRing: {
1360
+ value: {
1361
+ base: "{colors.primary.500}",
1362
+ _dark: "{colors.primary.500}"
1363
+ }
1364
+ },
1365
+ border: {
1366
+ value: {
1367
+ base: "{colors.primary.500}",
1368
+ _dark: "{colors.primary.400}"
1369
+ }
1370
+ }
1371
+ },
1372
+ // Static accent surface tokens
1373
+ "bg-accent": { value: "primary.600" },
1374
+ "bg-accent-subtle": { value: "primary.500" },
1375
+ "bg-accent-muted": { value: "primary.400" },
1376
+ "on-accent": { value: "white" },
1377
+ "on-accent-muted": { value: "primary.50" },
1378
+ "on-accent-subtle": { value: "primary.100" }
1379
+ },
1380
+ shadows: {
1381
+ xs: {
1382
+ value: {
1383
+ base: "0px 0px 1px rgba(45, 55, 72, 0.05), 0px 1px 2px rgba(45, 55, 72, 0.1)",
1384
+ _dark: "0px 0px 1px rgba(13, 14, 20, 1), 0px 1px 2px rgba(13, 14, 20, 0.9)"
1385
+ }
1386
+ },
1387
+ sm: {
1388
+ value: {
1389
+ base: "0px 0px 1px rgba(45, 55, 72, 0.05), 0px 2px 4px rgba(45, 55, 72, 0.1)",
1390
+ _dark: "0px 0px 1px rgba(13, 14, 20, 1), 0px 2px 4px rgba(13, 14, 20, 0.9)"
1391
+ }
1392
+ },
1393
+ md: {
1394
+ value: {
1395
+ base: "0px 0px 1px rgba(45, 55, 72, 0.05), 0px 4px 8px rgba(45, 55, 72, 0.1)",
1396
+ _dark: "0px 0px 1px rgba(13, 14, 20, 1), 0px 4px 8px rgba(13, 14, 20, 0.9)"
1397
+ }
1398
+ },
1399
+ lg: {
1400
+ value: {
1401
+ base: "0px 0px 1px rgba(45, 55, 72, 0.05), 0px 8px 16px rgba(45, 55, 72, 0.1)",
1402
+ _dark: "0px 0px 1px rgba(13, 14, 20, 1), 0px 8px 16px rgba(13, 14, 20, 0.9)"
1403
+ }
1404
+ },
1405
+ xl: {
1406
+ value: {
1407
+ base: "0px 0px 1px rgba(45, 55, 72, 0.05), 0px 16px 24px rgba(45, 55, 72, 0.1)",
1408
+ _dark: "0px 0px 1px rgba(13, 14, 20, 1), 0px 16px 24px rgba(13, 14, 20, 0.9)"
1409
+ }
1410
+ }
1411
+ },
1412
+ opacity: {
1413
+ disabled: { value: 0.4 },
1414
+ readOnly: { value: 0.8 }
1415
+ }
1416
+ };
1417
+ var semantic_default = semanticTokens;
1418
+
1419
+ // src/theme/tokens/spacing.ts
1420
+ var space = {
1421
+ "1.5": "0.375rem",
1422
+ "2.5": "0.625rem",
1423
+ "3.5": "0.875rem",
1424
+ "4.5": "1.125rem"
1425
+ };
1426
+ var spacing_default = space;
1427
+
1428
+ // src/theme/tokens/typography.ts
1429
+ var fonts = {
1430
+ heading: "InterVariable, -apple-system, system-ui, sans-serif",
1431
+ body: "InterVariable, -apple-system, system-ui, sans-serif"
1432
+ };
1433
+ var textStyles = {
1434
+ "7xl": {
1435
+ fontSize: "7xl",
1436
+ lineHeight: "5.75rem",
1437
+ // 92px
1438
+ letterSpacing: "-0.02em"
1439
+ },
1440
+ "6xl": {
1441
+ fontSize: "6xl",
1442
+ lineHeight: "4.5rem",
1443
+ // 72px
1444
+ letterSpacing: "-0.02em"
1445
+ },
1446
+ "5xl": {
1447
+ fontSize: "5xl",
1448
+ lineHeight: "3.75rem",
1449
+ // 60px
1450
+ letterSpacing: "-0.02em"
1451
+ },
1452
+ "4xl": {
1453
+ fontSize: "4xl",
1454
+ lineHeight: "2.75rem",
1455
+ // 44px
1456
+ letterSpacing: "-0.02em"
1457
+ },
1458
+ "3xl": {
1459
+ fontSize: "3xl",
1460
+ lineHeight: "2.375rem"
1461
+ // 38px
1462
+ },
1463
+ "2xl": {
1464
+ fontSize: "2xl",
1465
+ lineHeight: "2rem"
1466
+ // 32px
1467
+ },
1468
+ xl: {
1469
+ fontSize: "xl",
1470
+ lineHeight: "1.875rem"
1471
+ // 30px
1472
+ },
1473
+ lg: {
1474
+ fontSize: "lg",
1475
+ lineHeight: "1.75rem"
1476
+ // 28px
1477
+ },
1478
+ md: {
1479
+ fontSize: "md",
1480
+ lineHeight: "1.5rem"
1481
+ // 24px
1482
+ },
1483
+ sm: {
1484
+ fontSize: "sm",
1485
+ lineHeight: "1.25rem"
1486
+ // 20px
1487
+ },
1488
+ xs: {
1489
+ fontSize: "xs",
1490
+ lineHeight: "1.125rem"
1491
+ // 18px
1492
+ }
1493
+ };
1494
+
1495
+ // src/theme/tokens/z-index.ts
1496
+ var zIndex = {
1497
+ dropdown: { value: 1e3 },
1498
+ sticky: { value: 1100 },
1499
+ overlay: { value: 1300 },
1500
+ modal: { value: 1400 },
1501
+ popover: { value: 1500 },
1502
+ toast: { value: 1700 }
1503
+ };
1504
+ var z_index_default = zIndex;
1505
+ var getColor = (theme, color, fallback) => {
1506
+ const hex = get(theme, `colors.${color}`, color);
1507
+ try {
1508
+ toHex(hex);
1509
+ return hex;
1510
+ } catch {
1511
+ return fallback ?? "#000000";
1512
+ }
1513
+ };
1514
+ var transparentize = (color, opacity) => (theme) => {
1515
+ const raw = getColor(theme, color);
1516
+ return transparentize$1(raw, 1 - opacity);
1517
+ };
1518
+ function get(obj, path, fallback) {
1519
+ const keys = path.split(".");
1520
+ let current = obj;
1521
+ for (const key of keys) {
1522
+ if (current == null || typeof current !== "object") return String(fallback);
1523
+ current = current[key];
1524
+ }
1525
+ return current != null ? String(current) : String(fallback);
1526
+ }
1527
+
1528
+ // src/theme/index.ts
1529
+ var system = createSystem(defaultConfig, {
1530
+ globalCss: {
1531
+ body: {
1532
+ color: "default",
1533
+ bg: { base: "white", _dark: "#000" }
1534
+ },
1535
+ "*::placeholder": {
1536
+ opacity: 1,
1537
+ color: "muted"
1538
+ },
1539
+ "*, *::before, *::after": {
1540
+ borderColor: "border"
1541
+ },
1542
+ "table, td, th": {
1543
+ borderColor: "border"
1544
+ },
1545
+ "html, body": {
1546
+ height: "100%"
1547
+ },
1548
+ "#__next, #root, #app": {
1549
+ display: "flex",
1550
+ flexDirection: "column",
1551
+ minH: "100%"
1552
+ },
1553
+ "*": {
1554
+ _motionReduce: {
1555
+ animationDuration: "0.01ms !important",
1556
+ animationIterationCount: "1 !important",
1557
+ transitionDuration: "0.01ms !important",
1558
+ scrollBehavior: "auto !important"
1559
+ }
1560
+ }
1561
+ },
1562
+ theme: {
1563
+ tokens: {
1564
+ colors: colors_default,
1565
+ durations,
1566
+ easings,
1567
+ fonts: {
1568
+ heading: { value: fonts.heading },
1569
+ body: { value: fonts.body }
1570
+ },
1571
+ spacing: Object.fromEntries(
1572
+ Object.entries(spacing_default).map(([k, v]) => [k, { value: v }])
1573
+ ),
1574
+ radii: Object.fromEntries(
1575
+ Object.entries(radii_default).map(([k, v]) => [k, { value: v }])
1576
+ ),
1577
+ zIndex: z_index_default
1578
+ },
1579
+ textStyles,
1580
+ semanticTokens: semantic_default,
1581
+ recipes: {
1582
+ button: buttonTheme,
1583
+ container: container_default,
1584
+ separator: separator_default,
1585
+ formLabel: form_label_default,
1586
+ textarea: textarea_default,
1587
+ tooltip: tooltipTheme,
1588
+ tsRadioCard: radioCardTheme,
1589
+ tsProperty: propertyTheme,
1590
+ treeItem: tree_item_default,
1591
+ tag: tagTheme
1592
+ },
1593
+ slotRecipes: {
1594
+ card: card_default,
1595
+ checkbox: checkbox_default,
1596
+ comment: comment_default,
1597
+ dialog,
1598
+ drawer: drawerTheme,
1599
+ // Field.Root override: v3 defaults to alignItems: flex-start which
1600
+ // shrinks children. Restore v2 behavior where children stretch.
1601
+ field: defineSlotRecipe({
1602
+ slots: ["root"],
1603
+ variants: {
1604
+ orientation: {
1605
+ vertical: {
1606
+ root: {
1607
+ alignItems: "stretch"
1608
+ }
1609
+ }
1610
+ }
1611
+ }
1612
+ }),
1613
+ input: input_default,
1614
+ menu: menuTheme,
1615
+ modal: modalSlotRecipe,
1616
+ persona: persona_default,
1617
+ popover: popover_default,
1618
+ stepper: stepperTheme,
1619
+ table: tableTheme,
1620
+ tabs: tabTheme
1621
+ }
1622
+ }
1623
+ });
1624
+ var theme_default = system;
1625
+
1626
+ export { colors_default, durations, easings, fonts, getColor, radii_default, semantic_default, spacing_default, textStyles, theme_default, transparentize, z_index_default };
1627
+ //# sourceMappingURL=chunk-4D3EY2W2.js.map
1628
+ //# sourceMappingURL=chunk-4D3EY2W2.js.map