@discourser/design-system 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +213 -0
  3. package/dist/index.cjs +1250 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +456 -0
  6. package/dist/index.d.ts +456 -0
  7. package/dist/index.js +1234 -0
  8. package/dist/index.js.map +1 -0
  9. package/package.json +123 -0
  10. package/styled-system/css/conditions.mjs +36 -0
  11. package/styled-system/css/css.d.ts +22 -0
  12. package/styled-system/css/css.mjs +45 -0
  13. package/styled-system/css/cva.d.ts +6 -0
  14. package/styled-system/css/cva.mjs +87 -0
  15. package/styled-system/css/cx.d.ts +5 -0
  16. package/styled-system/css/cx.mjs +15 -0
  17. package/styled-system/css/index.d.ts +5 -0
  18. package/styled-system/css/index.mjs +4 -0
  19. package/styled-system/css/sva.d.ts +4 -0
  20. package/styled-system/css/sva.mjs +41 -0
  21. package/styled-system/helpers.mjs +336 -0
  22. package/styled-system/jsx/aspect-ratio.d.ts +10 -0
  23. package/styled-system/jsx/aspect-ratio.mjs +14 -0
  24. package/styled-system/jsx/bleed.d.ts +10 -0
  25. package/styled-system/jsx/bleed.mjs +14 -0
  26. package/styled-system/jsx/box.d.ts +10 -0
  27. package/styled-system/jsx/box.mjs +14 -0
  28. package/styled-system/jsx/center.d.ts +10 -0
  29. package/styled-system/jsx/center.mjs +14 -0
  30. package/styled-system/jsx/circle.d.ts +10 -0
  31. package/styled-system/jsx/circle.mjs +14 -0
  32. package/styled-system/jsx/container.d.ts +10 -0
  33. package/styled-system/jsx/container.mjs +14 -0
  34. package/styled-system/jsx/cq.d.ts +10 -0
  35. package/styled-system/jsx/cq.mjs +14 -0
  36. package/styled-system/jsx/divider.d.ts +10 -0
  37. package/styled-system/jsx/divider.mjs +14 -0
  38. package/styled-system/jsx/factory-helper.mjs +22 -0
  39. package/styled-system/jsx/factory.d.ts +3 -0
  40. package/styled-system/jsx/factory.mjs +80 -0
  41. package/styled-system/jsx/flex.d.ts +10 -0
  42. package/styled-system/jsx/flex.mjs +14 -0
  43. package/styled-system/jsx/float.d.ts +10 -0
  44. package/styled-system/jsx/float.mjs +14 -0
  45. package/styled-system/jsx/grid-item.d.ts +10 -0
  46. package/styled-system/jsx/grid-item.mjs +14 -0
  47. package/styled-system/jsx/grid.d.ts +10 -0
  48. package/styled-system/jsx/grid.mjs +14 -0
  49. package/styled-system/jsx/hstack.d.ts +10 -0
  50. package/styled-system/jsx/hstack.mjs +14 -0
  51. package/styled-system/jsx/index.d.ts +24 -0
  52. package/styled-system/jsx/index.mjs +22 -0
  53. package/styled-system/jsx/is-valid-prop.d.ts +11 -0
  54. package/styled-system/jsx/is-valid-prop.mjs +17 -0
  55. package/styled-system/jsx/link-overlay.d.ts +10 -0
  56. package/styled-system/jsx/link-overlay.mjs +14 -0
  57. package/styled-system/jsx/spacer.d.ts +10 -0
  58. package/styled-system/jsx/spacer.mjs +14 -0
  59. package/styled-system/jsx/square.d.ts +10 -0
  60. package/styled-system/jsx/square.mjs +14 -0
  61. package/styled-system/jsx/stack.d.ts +10 -0
  62. package/styled-system/jsx/stack.mjs +14 -0
  63. package/styled-system/jsx/visually-hidden.d.ts +10 -0
  64. package/styled-system/jsx/visually-hidden.mjs +14 -0
  65. package/styled-system/jsx/vstack.d.ts +10 -0
  66. package/styled-system/jsx/vstack.mjs +14 -0
  67. package/styled-system/jsx/wrap.d.ts +10 -0
  68. package/styled-system/jsx/wrap.mjs +14 -0
  69. package/styled-system/patterns/aspect-ratio.d.ts +21 -0
  70. package/styled-system/patterns/aspect-ratio.mjs +38 -0
  71. package/styled-system/patterns/bleed.d.ts +22 -0
  72. package/styled-system/patterns/bleed.mjs +24 -0
  73. package/styled-system/patterns/box.d.ts +21 -0
  74. package/styled-system/patterns/box.mjs +15 -0
  75. package/styled-system/patterns/center.d.ts +21 -0
  76. package/styled-system/patterns/center.mjs +21 -0
  77. package/styled-system/patterns/circle.d.ts +21 -0
  78. package/styled-system/patterns/circle.mjs +25 -0
  79. package/styled-system/patterns/container.d.ts +21 -0
  80. package/styled-system/patterns/container.mjs +21 -0
  81. package/styled-system/patterns/cq.d.ts +22 -0
  82. package/styled-system/patterns/cq.mjs +21 -0
  83. package/styled-system/patterns/divider.d.ts +23 -0
  84. package/styled-system/patterns/divider.mjs +25 -0
  85. package/styled-system/patterns/flex.d.ts +27 -0
  86. package/styled-system/patterns/flex.mjs +26 -0
  87. package/styled-system/patterns/float.d.ts +24 -0
  88. package/styled-system/patterns/float.mjs +52 -0
  89. package/styled-system/patterns/grid-item.d.ts +26 -0
  90. package/styled-system/patterns/grid-item.mjs +25 -0
  91. package/styled-system/patterns/grid.d.ts +25 -0
  92. package/styled-system/patterns/grid.mjs +27 -0
  93. package/styled-system/patterns/hstack.d.ts +22 -0
  94. package/styled-system/patterns/hstack.mjs +24 -0
  95. package/styled-system/patterns/index.d.ts +21 -0
  96. package/styled-system/patterns/index.mjs +20 -0
  97. package/styled-system/patterns/link-overlay.d.ts +21 -0
  98. package/styled-system/patterns/link-overlay.mjs +24 -0
  99. package/styled-system/patterns/spacer.d.ts +21 -0
  100. package/styled-system/patterns/spacer.mjs +21 -0
  101. package/styled-system/patterns/square.d.ts +21 -0
  102. package/styled-system/patterns/square.mjs +24 -0
  103. package/styled-system/patterns/stack.d.ts +24 -0
  104. package/styled-system/patterns/stack.mjs +24 -0
  105. package/styled-system/patterns/visually-hidden.d.ts +21 -0
  106. package/styled-system/patterns/visually-hidden.mjs +18 -0
  107. package/styled-system/patterns/vstack.d.ts +22 -0
  108. package/styled-system/patterns/vstack.mjs +24 -0
  109. package/styled-system/patterns/wrap.d.ts +25 -0
  110. package/styled-system/patterns/wrap.mjs +25 -0
  111. package/styled-system/recipes/button.d.ts +39 -0
  112. package/styled-system/recipes/button.mjs +40 -0
  113. package/styled-system/recipes/card.d.ts +39 -0
  114. package/styled-system/recipes/card.mjs +36 -0
  115. package/styled-system/recipes/create-recipe.mjs +82 -0
  116. package/styled-system/recipes/dialog.d.ts +35 -0
  117. package/styled-system/recipes/dialog.mjs +63 -0
  118. package/styled-system/recipes/icon-button.d.ts +39 -0
  119. package/styled-system/recipes/icon-button.mjs +39 -0
  120. package/styled-system/recipes/index.d.ts +7 -0
  121. package/styled-system/recipes/index.mjs +6 -0
  122. package/styled-system/recipes/input.d.ts +40 -0
  123. package/styled-system/recipes/input.mjs +40 -0
  124. package/styled-system/recipes/switch-control.d.ts +35 -0
  125. package/styled-system/recipes/switch-control.mjs +53 -0
  126. package/styled-system/recipes/switch.d.ts +35 -0
  127. package/styled-system/recipes/switch.mjs +53 -0
  128. package/styled-system/tokens/index.d.ts +9 -0
  129. package/styled-system/tokens/index.mjs +924 -0
  130. package/styled-system/tokens/tokens.d.ts +48 -0
  131. package/styled-system/types/composition.d.ts +164 -0
  132. package/styled-system/types/conditions.d.ts +306 -0
  133. package/styled-system/types/csstype.d.ts +21298 -0
  134. package/styled-system/types/global.d.ts +20 -0
  135. package/styled-system/types/index.d.ts +8 -0
  136. package/styled-system/types/jsx.d.ts +52 -0
  137. package/styled-system/types/parts.d.ts +8 -0
  138. package/styled-system/types/pattern.d.ts +78 -0
  139. package/styled-system/types/prop-type.d.ts +224 -0
  140. package/styled-system/types/recipe.d.ts +181 -0
  141. package/styled-system/types/selectors.d.ts +59 -0
  142. package/styled-system/types/static-css.d.ts +56 -0
  143. package/styled-system/types/style-props.d.ts +7468 -0
  144. package/styled-system/types/system-types.d.ts +109 -0
package/dist/index.js ADDED
@@ -0,0 +1,1234 @@
1
+ import { forwardRef } from 'react';
2
+ import { button, card, iconButton, input, dialog, switchControl } from 'styled-system/recipes';
3
+ import { clsx } from 'clsx';
4
+ import { jsxs, jsx } from 'react/jsx-runtime';
5
+ import { Field } from '@ark-ui/react/field';
6
+ import { Dialog as Dialog$1 } from '@ark-ui/react/dialog';
7
+ import { Portal } from '@ark-ui/react/portal';
8
+ import { Switch as Switch$1 } from '@ark-ui/react/switch';
9
+
10
+ function cn(...inputs) {
11
+ return clsx(inputs);
12
+ }
13
+ var Button = forwardRef(
14
+ ({ children, variant, size, leftIcon, rightIcon, className, ...props }, ref) => {
15
+ return /* @__PURE__ */ jsxs(
16
+ "button",
17
+ {
18
+ ref,
19
+ className: cn(button({ variant, size }), className),
20
+ ...props,
21
+ children: [
22
+ leftIcon,
23
+ children,
24
+ rightIcon
25
+ ]
26
+ }
27
+ );
28
+ }
29
+ );
30
+ Button.displayName = "Button";
31
+ var Card = forwardRef(
32
+ ({ children, variant, interactive, className, ...props }, ref) => {
33
+ return /* @__PURE__ */ jsx(
34
+ "div",
35
+ {
36
+ ref,
37
+ className: cn(card({ variant, interactive }), className),
38
+ ...props,
39
+ children
40
+ }
41
+ );
42
+ }
43
+ );
44
+ Card.displayName = "Card";
45
+ var IconButton = forwardRef(
46
+ ({ children, variant, size, className, ...props }, ref) => {
47
+ return /* @__PURE__ */ jsx(
48
+ "button",
49
+ {
50
+ ref,
51
+ className: cn(iconButton({ variant, size }), className),
52
+ ...props,
53
+ children
54
+ }
55
+ );
56
+ }
57
+ );
58
+ IconButton.displayName = "IconButton";
59
+ var Input = forwardRef(
60
+ ({ label, helperText, errorText, variant, size, state, className, ...props }, ref) => {
61
+ const hasError = !!errorText || state === "error";
62
+ return /* @__PURE__ */ jsxs(Field.Root, { invalid: hasError, children: [
63
+ label && /* @__PURE__ */ jsx(Field.Label, { children: label }),
64
+ /* @__PURE__ */ jsx(
65
+ Field.Input,
66
+ {
67
+ ref,
68
+ className: cn(
69
+ input({ variant, size, state: hasError ? "error" : state }),
70
+ className
71
+ ),
72
+ ...props
73
+ }
74
+ ),
75
+ helperText && !hasError && /* @__PURE__ */ jsx(Field.HelperText, { children: helperText }),
76
+ errorText && /* @__PURE__ */ jsx(Field.ErrorText, { children: errorText })
77
+ ] });
78
+ }
79
+ );
80
+ Input.displayName = "Input";
81
+ var Dialog = forwardRef(
82
+ ({
83
+ open,
84
+ onOpenChange,
85
+ title,
86
+ description,
87
+ children,
88
+ size,
89
+ showCloseButton = true,
90
+ closeLabel = "Close"
91
+ }, ref) => {
92
+ const classes = dialog({ size });
93
+ return /* @__PURE__ */ jsx(Dialog$1.Root, { open, onOpenChange, children: /* @__PURE__ */ jsxs(Portal, { children: [
94
+ /* @__PURE__ */ jsx(Dialog$1.Backdrop, { className: classes.backdrop }),
95
+ /* @__PURE__ */ jsx(Dialog$1.Positioner, { className: classes.positioner, children: /* @__PURE__ */ jsxs(Dialog$1.Content, { ref, className: classes.content, children: [
96
+ title && /* @__PURE__ */ jsx(Dialog$1.Title, { className: classes.title, children: title }),
97
+ description && /* @__PURE__ */ jsx(Dialog$1.Description, { className: classes.description, children: description }),
98
+ children && /* @__PURE__ */ jsx("div", { className: classes.description, children }),
99
+ showCloseButton && /* @__PURE__ */ jsx(
100
+ Dialog$1.CloseTrigger,
101
+ {
102
+ className: classes.closeTrigger,
103
+ "aria-label": closeLabel,
104
+ children: /* @__PURE__ */ jsxs(
105
+ "svg",
106
+ {
107
+ width: "24",
108
+ height: "24",
109
+ viewBox: "0 0 24 24",
110
+ fill: "none",
111
+ stroke: "currentColor",
112
+ strokeWidth: "2",
113
+ strokeLinecap: "round",
114
+ strokeLinejoin: "round",
115
+ children: [
116
+ /* @__PURE__ */ jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
117
+ /* @__PURE__ */ jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
118
+ ]
119
+ }
120
+ )
121
+ }
122
+ )
123
+ ] }) })
124
+ ] }) });
125
+ }
126
+ );
127
+ Dialog.displayName = "Dialog";
128
+ var Switch = forwardRef(
129
+ ({
130
+ label,
131
+ checked,
132
+ defaultChecked,
133
+ onCheckedChange,
134
+ disabled,
135
+ name,
136
+ value,
137
+ required,
138
+ size
139
+ }, ref) => {
140
+ const classes = switchControl({ size });
141
+ return /* @__PURE__ */ jsxs(
142
+ Switch$1.Root,
143
+ {
144
+ checked,
145
+ defaultChecked,
146
+ onCheckedChange,
147
+ disabled,
148
+ name,
149
+ value,
150
+ required,
151
+ className: classes.root,
152
+ children: [
153
+ /* @__PURE__ */ jsx(Switch$1.Control, { className: classes.control, children: /* @__PURE__ */ jsx(Switch$1.Thumb, { className: classes.thumb }) }),
154
+ /* @__PURE__ */ jsx(Switch$1.HiddenInput, { ref }),
155
+ label && /* @__PURE__ */ jsx(Switch$1.Label, { className: classes.label, children: label })
156
+ ]
157
+ }
158
+ );
159
+ }
160
+ );
161
+ Switch.displayName = "Switch";
162
+
163
+ // node_modules/.pnpm/@pandacss+dev@0.52.0_jsdom@27.4.0_typescript@5.9.3/node_modules/@pandacss/dev/dist/index.mjs
164
+ function defineRecipe(config) {
165
+ return config;
166
+ }
167
+ function defineSlotRecipe(config) {
168
+ return config;
169
+ }
170
+
171
+ // src/recipes/button.recipe.ts
172
+ var buttonRecipe = defineRecipe({
173
+ className: "button",
174
+ description: "Material Design 3 button component",
175
+ base: {
176
+ display: "inline-flex",
177
+ alignItems: "center",
178
+ justifyContent: "center",
179
+ gap: "sm",
180
+ fontFamily: "body",
181
+ fontWeight: "500",
182
+ borderRadius: "full",
183
+ cursor: "pointer",
184
+ transition: "all",
185
+ transitionDuration: "fast",
186
+ transitionTimingFunction: "standard",
187
+ outline: "none",
188
+ border: "none",
189
+ textDecoration: "none",
190
+ _disabled: {
191
+ opacity: 0.38,
192
+ cursor: "not-allowed",
193
+ pointerEvents: "none"
194
+ },
195
+ _focusVisible: {
196
+ outline: "2px solid",
197
+ outlineColor: "primary",
198
+ outlineOffset: "2px"
199
+ }
200
+ },
201
+ variants: {
202
+ variant: {
203
+ filled: {
204
+ bg: "primary",
205
+ color: "onPrimary",
206
+ _hover: {
207
+ opacity: 0.92,
208
+ shadow: "level1"
209
+ },
210
+ _active: {
211
+ opacity: 0.88
212
+ }
213
+ },
214
+ outlined: {
215
+ bg: "transparent",
216
+ color: "primary",
217
+ borderWidth: "1px",
218
+ borderStyle: "solid",
219
+ borderColor: "outline",
220
+ _hover: {
221
+ bg: "primary",
222
+ bgOpacity: 0.08
223
+ },
224
+ _active: {
225
+ bg: "primary",
226
+ bgOpacity: 0.12
227
+ }
228
+ },
229
+ text: {
230
+ bg: "transparent",
231
+ color: "primary",
232
+ _hover: {
233
+ bg: "primary",
234
+ bgOpacity: 0.08
235
+ },
236
+ _active: {
237
+ bg: "primary",
238
+ bgOpacity: 0.12
239
+ }
240
+ },
241
+ elevated: {
242
+ bg: "surfaceContainerLow",
243
+ color: "primary",
244
+ shadow: "level1",
245
+ _hover: {
246
+ shadow: "level2",
247
+ bg: "surfaceContainerLow"
248
+ },
249
+ _active: {
250
+ shadow: "level1"
251
+ }
252
+ },
253
+ tonal: {
254
+ bg: "secondaryContainer",
255
+ color: "onSecondaryContainer",
256
+ _hover: {
257
+ shadow: "level1"
258
+ },
259
+ _active: {
260
+ shadow: "none"
261
+ }
262
+ }
263
+ },
264
+ size: {
265
+ sm: {
266
+ height: "32px",
267
+ px: "md",
268
+ fontSize: "labelMedium",
269
+ lineHeight: "labelMedium"
270
+ },
271
+ md: {
272
+ height: "40px",
273
+ px: "lg",
274
+ fontSize: "labelLarge",
275
+ lineHeight: "labelLarge"
276
+ },
277
+ lg: {
278
+ height: "48px",
279
+ px: "xl",
280
+ fontSize: "labelLarge",
281
+ lineHeight: "labelLarge"
282
+ }
283
+ }
284
+ },
285
+ defaultVariants: {
286
+ variant: "filled",
287
+ size: "md"
288
+ }
289
+ });
290
+
291
+ // src/recipes/card.recipe.ts
292
+ var cardRecipe = defineRecipe({
293
+ className: "card",
294
+ description: "Material Design 3 card component",
295
+ base: {
296
+ display: "flex",
297
+ flexDirection: "column",
298
+ borderRadius: "medium",
299
+ overflow: "hidden",
300
+ transition: "all",
301
+ transitionDuration: "fast",
302
+ transitionTimingFunction: "standard"
303
+ },
304
+ variants: {
305
+ variant: {
306
+ elevated: {
307
+ bg: "surfaceContainerLow",
308
+ shadow: "level1",
309
+ _hover: {
310
+ shadow: "level2"
311
+ }
312
+ },
313
+ filled: {
314
+ bg: "surfaceContainerHighest"
315
+ },
316
+ outlined: {
317
+ bg: "surface",
318
+ borderWidth: "1px",
319
+ borderStyle: "solid",
320
+ borderColor: "outlineVariant"
321
+ }
322
+ },
323
+ interactive: {
324
+ true: {
325
+ cursor: "pointer",
326
+ _hover: {
327
+ opacity: 0.96
328
+ },
329
+ _active: {
330
+ opacity: 0.92
331
+ }
332
+ }
333
+ }
334
+ },
335
+ defaultVariants: {
336
+ variant: "elevated",
337
+ interactive: false
338
+ }
339
+ });
340
+
341
+ // src/recipes/icon-button.recipe.ts
342
+ var iconButtonRecipe = defineRecipe({
343
+ className: "icon-button",
344
+ description: "Material Design 3 icon button component",
345
+ base: {
346
+ display: "inline-flex",
347
+ alignItems: "center",
348
+ justifyContent: "center",
349
+ borderRadius: "full",
350
+ cursor: "pointer",
351
+ transition: "all",
352
+ transitionDuration: "fast",
353
+ transitionTimingFunction: "standard",
354
+ outline: "none",
355
+ border: "none",
356
+ p: "0",
357
+ _disabled: {
358
+ opacity: 0.38,
359
+ cursor: "not-allowed",
360
+ pointerEvents: "none"
361
+ },
362
+ _focusVisible: {
363
+ outline: "2px solid",
364
+ outlineColor: "primary",
365
+ outlineOffset: "2px"
366
+ }
367
+ },
368
+ variants: {
369
+ variant: {
370
+ standard: {
371
+ bg: "transparent",
372
+ color: "onSurfaceVariant",
373
+ _hover: {
374
+ bg: "onSurfaceVariant",
375
+ bgOpacity: 0.08
376
+ }
377
+ },
378
+ filled: {
379
+ bg: "primary",
380
+ color: "onPrimary",
381
+ _hover: {
382
+ opacity: 0.92
383
+ }
384
+ },
385
+ tonal: {
386
+ bg: "secondaryContainer",
387
+ color: "onSecondaryContainer",
388
+ _hover: {
389
+ opacity: 0.92
390
+ }
391
+ },
392
+ outlined: {
393
+ bg: "transparent",
394
+ color: "onSurfaceVariant",
395
+ borderWidth: "1px",
396
+ borderStyle: "solid",
397
+ borderColor: "outline",
398
+ _hover: {
399
+ bg: "onSurfaceVariant",
400
+ bgOpacity: 0.08
401
+ }
402
+ }
403
+ },
404
+ size: {
405
+ sm: {
406
+ width: "32px",
407
+ height: "32px",
408
+ "& svg": {
409
+ width: "18px",
410
+ height: "18px"
411
+ }
412
+ },
413
+ md: {
414
+ width: "40px",
415
+ height: "40px",
416
+ "& svg": {
417
+ width: "24px",
418
+ height: "24px"
419
+ }
420
+ },
421
+ lg: {
422
+ width: "48px",
423
+ height: "48px",
424
+ "& svg": {
425
+ width: "24px",
426
+ height: "24px"
427
+ }
428
+ }
429
+ }
430
+ },
431
+ defaultVariants: {
432
+ variant: "standard",
433
+ size: "md"
434
+ }
435
+ });
436
+
437
+ // src/recipes/input.recipe.ts
438
+ var inputRecipe = defineRecipe({
439
+ className: "input",
440
+ description: "Material Design 3 text field component",
441
+ base: {
442
+ width: "100%",
443
+ fontFamily: "body",
444
+ fontSize: "bodyLarge",
445
+ lineHeight: "bodyLarge",
446
+ color: "onSurface",
447
+ bg: "transparent",
448
+ borderRadius: "extraSmall",
449
+ px: "md",
450
+ transition: "all",
451
+ transitionDuration: "fast",
452
+ outline: "none",
453
+ _placeholder: {
454
+ color: "onSurfaceVariant",
455
+ opacity: 0.6
456
+ },
457
+ _focus: {
458
+ outline: "none"
459
+ },
460
+ _disabled: {
461
+ opacity: 0.38,
462
+ cursor: "not-allowed"
463
+ }
464
+ },
465
+ variants: {
466
+ variant: {
467
+ filled: {
468
+ bg: "surfaceContainerHighest",
469
+ borderBottomWidth: "1px",
470
+ borderBottomStyle: "solid",
471
+ borderBottomColor: "onSurfaceVariant",
472
+ borderTopLeftRadius: "extraSmall",
473
+ borderTopRightRadius: "extraSmall",
474
+ borderBottomLeftRadius: "0",
475
+ borderBottomRightRadius: "0",
476
+ _hover: {
477
+ bg: "surfaceContainerHigh"
478
+ },
479
+ _focus: {
480
+ borderBottomWidth: "2px",
481
+ borderBottomColor: "primary"
482
+ }
483
+ },
484
+ outlined: {
485
+ bg: "transparent",
486
+ borderWidth: "1px",
487
+ borderStyle: "solid",
488
+ borderColor: "outline",
489
+ _hover: {
490
+ borderColor: "onSurface"
491
+ },
492
+ _focus: {
493
+ borderWidth: "2px",
494
+ borderColor: "primary"
495
+ }
496
+ }
497
+ },
498
+ size: {
499
+ sm: {
500
+ height: "40px",
501
+ fontSize: "bodySmall",
502
+ lineHeight: "bodySmall"
503
+ },
504
+ md: {
505
+ height: "56px",
506
+ fontSize: "bodyLarge",
507
+ lineHeight: "bodyLarge"
508
+ }
509
+ },
510
+ state: {
511
+ error: {
512
+ borderColor: "error",
513
+ _focus: {
514
+ borderColor: "error"
515
+ }
516
+ },
517
+ disabled: {
518
+ opacity: 0.38,
519
+ cursor: "not-allowed",
520
+ pointerEvents: "none"
521
+ }
522
+ }
523
+ },
524
+ defaultVariants: {
525
+ variant: "outlined",
526
+ size: "md"
527
+ }
528
+ });
529
+
530
+ // src/recipes/dialog.recipe.ts
531
+ var dialogRecipe = defineSlotRecipe({
532
+ className: "dialog",
533
+ description: "Material Design 3 dialog component",
534
+ slots: ["backdrop", "positioner", "content", "title", "description", "closeTrigger"],
535
+ base: {
536
+ backdrop: {
537
+ position: "fixed",
538
+ inset: "0",
539
+ bg: "scrim",
540
+ opacity: 0.4,
541
+ zIndex: "modal",
542
+ animation: "fadeIn",
543
+ _open: {
544
+ animation: "fadeIn"
545
+ },
546
+ _closed: {
547
+ animation: "fadeOut"
548
+ }
549
+ },
550
+ positioner: {
551
+ position: "fixed",
552
+ inset: "0",
553
+ display: "flex",
554
+ alignItems: "center",
555
+ justifyContent: "center",
556
+ zIndex: "modal",
557
+ p: "lg"
558
+ },
559
+ content: {
560
+ position: "relative",
561
+ bg: "surfaceContainerHigh",
562
+ color: "onSurface",
563
+ borderRadius: "extraLarge",
564
+ boxShadow: "level3",
565
+ display: "flex",
566
+ flexDirection: "column",
567
+ maxWidth: "90vw",
568
+ maxHeight: "90vh",
569
+ overflow: "hidden",
570
+ animation: "scaleIn",
571
+ _open: {
572
+ animation: "scaleIn"
573
+ },
574
+ _closed: {
575
+ animation: "scaleOut"
576
+ }
577
+ },
578
+ title: {
579
+ fontFamily: "headline",
580
+ fontSize: "headlineSmall",
581
+ fontWeight: "regular",
582
+ color: "onSurface",
583
+ px: "xl",
584
+ pt: "xl",
585
+ pb: "md"
586
+ },
587
+ description: {
588
+ fontFamily: "body",
589
+ fontSize: "bodyMedium",
590
+ color: "onSurfaceVariant",
591
+ px: "xl",
592
+ pb: "xl",
593
+ flex: "1",
594
+ overflow: "auto"
595
+ },
596
+ closeTrigger: {
597
+ position: "absolute",
598
+ top: "md",
599
+ right: "md",
600
+ display: "flex",
601
+ alignItems: "center",
602
+ justifyContent: "center",
603
+ width: "40px",
604
+ height: "40px",
605
+ borderRadius: "full",
606
+ cursor: "pointer",
607
+ color: "onSurfaceVariant",
608
+ bg: "transparent",
609
+ border: "none",
610
+ transition: "all",
611
+ transitionDuration: "fast",
612
+ _hover: {
613
+ bg: "surfaceContainerHighest"
614
+ },
615
+ _focus: {
616
+ outline: "none",
617
+ bg: "surfaceContainerHighest"
618
+ }
619
+ }
620
+ },
621
+ variants: {
622
+ size: {
623
+ sm: {
624
+ content: {
625
+ width: "280px",
626
+ minHeight: "140px"
627
+ }
628
+ },
629
+ md: {
630
+ content: {
631
+ width: "560px",
632
+ minHeight: "200px"
633
+ }
634
+ },
635
+ lg: {
636
+ content: {
637
+ width: "800px",
638
+ minHeight: "300px"
639
+ }
640
+ },
641
+ fullscreen: {
642
+ content: {
643
+ width: "100vw",
644
+ height: "100vh",
645
+ maxWidth: "100vw",
646
+ maxHeight: "100vh",
647
+ borderRadius: "none"
648
+ },
649
+ positioner: {
650
+ p: "0"
651
+ }
652
+ }
653
+ }
654
+ },
655
+ defaultVariants: {
656
+ size: "md"
657
+ }
658
+ });
659
+
660
+ // src/recipes/switch.recipe.ts
661
+ var switchRecipe = defineSlotRecipe({
662
+ className: "switchControl",
663
+ description: "Material Design 3 switch component",
664
+ slots: ["root", "control", "thumb", "label"],
665
+ base: {
666
+ root: {
667
+ display: "inline-flex",
668
+ alignItems: "center",
669
+ gap: "sm",
670
+ cursor: "pointer",
671
+ userSelect: "none",
672
+ _disabled: {
673
+ cursor: "not-allowed",
674
+ opacity: 0.38
675
+ }
676
+ },
677
+ control: {
678
+ position: "relative",
679
+ display: "inline-flex",
680
+ alignItems: "center",
681
+ width: "52px",
682
+ height: "32px",
683
+ borderRadius: "full",
684
+ bg: "surfaceContainerHighest",
685
+ border: "2px solid",
686
+ borderColor: "outline",
687
+ transition: "all",
688
+ transitionDuration: "fast",
689
+ flexShrink: 0,
690
+ _checked: {
691
+ bg: "primary",
692
+ borderColor: "primary"
693
+ },
694
+ _disabled: {
695
+ bg: "surfaceVariant",
696
+ borderColor: "onSurface",
697
+ opacity: 0.12
698
+ }
699
+ },
700
+ thumb: {
701
+ position: "absolute",
702
+ left: "4px",
703
+ width: "16px",
704
+ height: "16px",
705
+ borderRadius: "full",
706
+ bg: "outline",
707
+ transition: "all",
708
+ transitionDuration: "fast",
709
+ _checked: {
710
+ left: "28px",
711
+ width: "24px",
712
+ height: "24px",
713
+ bg: "onPrimary"
714
+ },
715
+ _disabled: {
716
+ bg: "onSurface",
717
+ opacity: 0.38
718
+ }
719
+ },
720
+ label: {
721
+ fontFamily: "body",
722
+ fontSize: "bodyMedium",
723
+ color: "onSurface",
724
+ userSelect: "none",
725
+ _disabled: {
726
+ opacity: 0.38
727
+ }
728
+ }
729
+ },
730
+ variants: {
731
+ size: {
732
+ sm: {
733
+ control: {
734
+ width: "44px",
735
+ height: "24px"
736
+ },
737
+ thumb: {
738
+ width: "12px",
739
+ height: "12px",
740
+ left: "4px",
741
+ _checked: {
742
+ left: "24px",
743
+ width: "16px",
744
+ height: "16px"
745
+ }
746
+ },
747
+ label: {
748
+ fontSize: "bodySmall"
749
+ }
750
+ },
751
+ md: {
752
+ control: {
753
+ width: "52px",
754
+ height: "32px"
755
+ },
756
+ thumb: {
757
+ width: "16px",
758
+ height: "16px",
759
+ left: "4px",
760
+ _checked: {
761
+ left: "28px",
762
+ width: "24px",
763
+ height: "24px"
764
+ }
765
+ },
766
+ label: {
767
+ fontSize: "bodyMedium"
768
+ }
769
+ }
770
+ }
771
+ },
772
+ defaultVariants: {
773
+ size: "md"
774
+ }
775
+ });
776
+
777
+ // src/languages/material3.language.ts
778
+ var material3Language = {
779
+ name: "material3",
780
+ version: "1.0.0",
781
+ colors: {
782
+ // From Material Theme Builder export
783
+ primary: {
784
+ 0: "#000000",
785
+ 10: "#102000",
786
+ 20: "#1F3700",
787
+ 30: "#2F4F00",
788
+ 40: "#3F6900",
789
+ 50: "#518500",
790
+ 60: "#64A104",
791
+ 70: "#7DBD2A",
792
+ 80: "#97D945",
793
+ 90: "#B2F65F",
794
+ 95: "#D2FF9B",
795
+ 99: "#F9FFE9",
796
+ 100: "#FFFFFF"
797
+ },
798
+ secondary: {
799
+ 0: "#000000",
800
+ 10: "#121F04",
801
+ 20: "#263515",
802
+ 30: "#3C4C2A",
803
+ 40: "#54643F",
804
+ 50: "#6C7D56",
805
+ 60: "#85976E",
806
+ 70: "#A0B187",
807
+ 80: "#BBCDA1",
808
+ 90: "#D7E9BB",
809
+ 95: "#E5F7C9",
810
+ 99: "#F9FFE9",
811
+ 100: "#FFFFFF"
812
+ },
813
+ tertiary: {
814
+ 0: "#000000",
815
+ 10: "#00201E",
816
+ 20: "#003735",
817
+ 30: "#00504C",
818
+ 40: "#046A66",
819
+ 50: "#30837F",
820
+ 60: "#4D9D98",
821
+ 70: "#69B8B3",
822
+ 80: "#85D4CF",
823
+ 90: "#A1F1EB",
824
+ 95: "#B0FFF9",
825
+ 99: "#F2FFFD",
826
+ 100: "#FFFFFF"
827
+ },
828
+ neutral: {
829
+ 0: "#000000",
830
+ 10: "#1B1C18",
831
+ 20: "#30312C",
832
+ 30: "#464742",
833
+ 40: "#5E5F59",
834
+ 50: "#777771",
835
+ 60: "#91918B",
836
+ 70: "#ABACA5",
837
+ 80: "#C7C7C0",
838
+ 90: "#E3E3DB",
839
+ 95: "#F2F1E9",
840
+ 99: "#FDFCF5",
841
+ 100: "#FFFFFF"
842
+ },
843
+ neutralVariant: {
844
+ 0: "#000000",
845
+ 10: "#191D14",
846
+ 20: "#2E3228",
847
+ 30: "#44483D",
848
+ 40: "#5C6054",
849
+ 50: "#75796C",
850
+ 60: "#8F9285",
851
+ 70: "#A9AD9F",
852
+ 80: "#C5C8BA",
853
+ 90: "#E1E4D5",
854
+ 95: "#EFF2E3",
855
+ 99: "#FBFEEE",
856
+ 100: "#FFFFFF"
857
+ },
858
+ error: {
859
+ 0: "#000000",
860
+ 10: "#410E0B",
861
+ 20: "#601410",
862
+ 30: "#8C1D18",
863
+ 40: "#B3261E",
864
+ 50: "#DC362E",
865
+ 60: "#E46962",
866
+ 70: "#EC928E",
867
+ 80: "#F2B8B5",
868
+ 90: "#F9DEDC",
869
+ 95: "#FCEEEE",
870
+ 99: "#FFFBF9",
871
+ 100: "#FFFFFF"
872
+ }
873
+ },
874
+ semantic: {
875
+ // Light theme from Material Theme Builder
876
+ primary: "#4C662B",
877
+ onPrimary: "#FFFFFF",
878
+ primaryContainer: "#CDEDA3",
879
+ onPrimaryContainer: "#354E16",
880
+ secondary: "#586249",
881
+ onSecondary: "#FFFFFF",
882
+ secondaryContainer: "#DCE7C8",
883
+ onSecondaryContainer: "#404A33",
884
+ tertiary: "#386663",
885
+ onTertiary: "#FFFFFF",
886
+ tertiaryContainer: "#BCECE7",
887
+ onTertiaryContainer: "#1F4E4B",
888
+ error: "#BA1A1A",
889
+ onError: "#FFFFFF",
890
+ errorContainer: "#FFDAD6",
891
+ onErrorContainer: "#93000A",
892
+ surface: "#F9FAEF",
893
+ onSurface: "#1A1C16",
894
+ surfaceVariant: "#E1E4D5",
895
+ onSurfaceVariant: "#44483D",
896
+ surfaceContainerLowest: "#FFFFFF",
897
+ surfaceContainerLow: "#F3F4E9",
898
+ surfaceContainer: "#EEEFE3",
899
+ surfaceContainerHigh: "#E8E9DE",
900
+ surfaceContainerHighest: "#E2E3D8",
901
+ outline: "#75796C",
902
+ outlineVariant: "#C5C8BA",
903
+ inverseSurface: "#2F312A",
904
+ inverseOnSurface: "#F1F2E6",
905
+ inversePrimary: "#B1D18A",
906
+ background: "#F9FAEF",
907
+ onBackground: "#1A1C16",
908
+ scrim: "#000000",
909
+ shadow: "#000000"
910
+ },
911
+ // Dark theme semantic colors (for reference/dark mode implementation)
912
+ semanticDark: {
913
+ primary: "#B1D18A",
914
+ onPrimary: "#1F3701",
915
+ primaryContainer: "#354E16",
916
+ onPrimaryContainer: "#CDEDA3",
917
+ secondary: "#BFCBAD",
918
+ onSecondary: "#2A331E",
919
+ secondaryContainer: "#404A33",
920
+ onSecondaryContainer: "#DCE7C8",
921
+ tertiary: "#A0D0CB",
922
+ onTertiary: "#003735",
923
+ tertiaryContainer: "#1F4E4B",
924
+ onTertiaryContainer: "#BCECE7",
925
+ error: "#FFB4AB",
926
+ onError: "#690005",
927
+ errorContainer: "#93000A",
928
+ onErrorContainer: "#FFDAD6",
929
+ surface: "#12140E",
930
+ onSurface: "#E2E3D8",
931
+ surfaceVariant: "#44483D",
932
+ onSurfaceVariant: "#C5C8BA",
933
+ surfaceContainerLowest: "#0C0F09",
934
+ surfaceContainerLow: "#1A1C16",
935
+ surfaceContainer: "#1E201A",
936
+ surfaceContainerHigh: "#282B24",
937
+ surfaceContainerHighest: "#33362E",
938
+ outline: "#8F9285",
939
+ outlineVariant: "#44483D",
940
+ inverseSurface: "#E2E3D8",
941
+ inverseOnSurface: "#2F312A",
942
+ inversePrimary: "#4C662B",
943
+ background: "#12140E",
944
+ onBackground: "#E2E3D8",
945
+ scrim: "#000000",
946
+ shadow: "#000000"
947
+ },
948
+ typography: {
949
+ fonts: {
950
+ display: 'Georgia, "Times New Roman", serif',
951
+ body: 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
952
+ mono: '"JetBrains Mono", "Fira Code", Consolas, monospace'
953
+ },
954
+ scale: {
955
+ displayLarge: {
956
+ fontSize: "57px",
957
+ lineHeight: "64px",
958
+ fontWeight: "400",
959
+ letterSpacing: "-0.25px",
960
+ fontFamily: "display"
961
+ },
962
+ displayMedium: {
963
+ fontSize: "45px",
964
+ lineHeight: "52px",
965
+ fontWeight: "400",
966
+ letterSpacing: "0px",
967
+ fontFamily: "display"
968
+ },
969
+ displaySmall: {
970
+ fontSize: "36px",
971
+ lineHeight: "44px",
972
+ fontWeight: "400",
973
+ letterSpacing: "0px",
974
+ fontFamily: "display"
975
+ },
976
+ headlineLarge: {
977
+ fontSize: "32px",
978
+ lineHeight: "40px",
979
+ fontWeight: "400",
980
+ letterSpacing: "0px",
981
+ fontFamily: "display"
982
+ },
983
+ headlineMedium: {
984
+ fontSize: "28px",
985
+ lineHeight: "36px",
986
+ fontWeight: "400",
987
+ letterSpacing: "0px",
988
+ fontFamily: "display"
989
+ },
990
+ headlineSmall: {
991
+ fontSize: "24px",
992
+ lineHeight: "32px",
993
+ fontWeight: "400",
994
+ letterSpacing: "0px",
995
+ fontFamily: "display"
996
+ },
997
+ titleLarge: {
998
+ fontSize: "22px",
999
+ lineHeight: "28px",
1000
+ fontWeight: "500",
1001
+ letterSpacing: "0px",
1002
+ fontFamily: "body"
1003
+ },
1004
+ titleMedium: {
1005
+ fontSize: "16px",
1006
+ lineHeight: "24px",
1007
+ fontWeight: "500",
1008
+ letterSpacing: "0.15px",
1009
+ fontFamily: "body"
1010
+ },
1011
+ titleSmall: {
1012
+ fontSize: "14px",
1013
+ lineHeight: "20px",
1014
+ fontWeight: "500",
1015
+ letterSpacing: "0.1px",
1016
+ fontFamily: "body"
1017
+ },
1018
+ bodyLarge: {
1019
+ fontSize: "16px",
1020
+ lineHeight: "24px",
1021
+ fontWeight: "400",
1022
+ letterSpacing: "0.5px",
1023
+ fontFamily: "body"
1024
+ },
1025
+ bodyMedium: {
1026
+ fontSize: "14px",
1027
+ lineHeight: "20px",
1028
+ fontWeight: "400",
1029
+ letterSpacing: "0.25px",
1030
+ fontFamily: "body"
1031
+ },
1032
+ bodySmall: {
1033
+ fontSize: "12px",
1034
+ lineHeight: "16px",
1035
+ fontWeight: "400",
1036
+ letterSpacing: "0.4px",
1037
+ fontFamily: "body"
1038
+ },
1039
+ labelLarge: {
1040
+ fontSize: "14px",
1041
+ lineHeight: "20px",
1042
+ fontWeight: "500",
1043
+ letterSpacing: "0.1px",
1044
+ fontFamily: "body"
1045
+ },
1046
+ labelMedium: {
1047
+ fontSize: "12px",
1048
+ lineHeight: "16px",
1049
+ fontWeight: "500",
1050
+ letterSpacing: "0.5px",
1051
+ fontFamily: "body"
1052
+ },
1053
+ labelSmall: {
1054
+ fontSize: "11px",
1055
+ lineHeight: "16px",
1056
+ fontWeight: "500",
1057
+ letterSpacing: "0.5px",
1058
+ fontFamily: "body"
1059
+ }
1060
+ }
1061
+ },
1062
+ spacing: {
1063
+ none: "0px",
1064
+ xxs: "2px",
1065
+ xs: "4px",
1066
+ sm: "8px",
1067
+ md: "16px",
1068
+ lg: "24px",
1069
+ xl: "32px",
1070
+ xxl: "48px",
1071
+ xxxl: "64px"
1072
+ },
1073
+ shape: {
1074
+ radii: {
1075
+ none: "0px",
1076
+ extraSmall: "4px",
1077
+ small: "8px",
1078
+ medium: "12px",
1079
+ large: "16px",
1080
+ extraLarge: "28px",
1081
+ full: "9999px"
1082
+ },
1083
+ style: "rounded"
1084
+ },
1085
+ elevation: {
1086
+ levels: {
1087
+ level0: "none",
1088
+ level1: "0px 1px 2px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15)",
1089
+ level2: "0px 1px 2px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15)",
1090
+ level3: "0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px rgba(0, 0, 0, 0.3)",
1091
+ level4: "0px 6px 10px 4px rgba(0, 0, 0, 0.15), 0px 2px 3px rgba(0, 0, 0, 0.3)",
1092
+ level5: "0px 8px 12px 6px rgba(0, 0, 0, 0.15), 0px 4px 4px rgba(0, 0, 0, 0.3)"
1093
+ },
1094
+ style: "shadow"
1095
+ },
1096
+ motion: {
1097
+ durations: {
1098
+ instant: "0ms",
1099
+ fast: "100ms",
1100
+ normal: "200ms",
1101
+ slow: "300ms",
1102
+ slower: "500ms"
1103
+ },
1104
+ easings: {
1105
+ standard: "cubic-bezier(0.2, 0, 0, 1)",
1106
+ standardDecelerate: "cubic-bezier(0, 0, 0, 1)",
1107
+ standardAccelerate: "cubic-bezier(0.3, 0, 1, 1)",
1108
+ emphasized: "cubic-bezier(0.2, 0, 0, 1)",
1109
+ emphasizedDecelerate: "cubic-bezier(0.05, 0.7, 0.1, 1)",
1110
+ emphasizedAccelerate: "cubic-bezier(0.3, 0, 0.8, 0.15)"
1111
+ },
1112
+ style: "expressive"
1113
+ }
1114
+ };
1115
+
1116
+ // src/languages/transform.ts
1117
+ function transformToPandaTheme(language) {
1118
+ return {
1119
+ tokens: transformTokens(language),
1120
+ semanticTokens: transformSemanticTokens(language),
1121
+ textStyles: transformTextStyles(language)
1122
+ };
1123
+ }
1124
+ function transformTokens(language) {
1125
+ return {
1126
+ colors: transformColorPalettes(language.colors),
1127
+ fonts: {
1128
+ display: { value: language.typography.fonts.display },
1129
+ body: { value: language.typography.fonts.body },
1130
+ mono: { value: language.typography.fonts.mono }
1131
+ },
1132
+ fontSizes: extractFontSizes(language.typography.scale),
1133
+ lineHeights: extractLineHeights(language.typography.scale),
1134
+ fontWeights: extractFontWeights(language.typography.scale),
1135
+ letterSpacings: extractLetterSpacings(language.typography.scale),
1136
+ spacing: objectToTokens(language.spacing),
1137
+ radii: objectToTokens(language.shape.radii),
1138
+ shadows: objectToTokens(language.elevation.levels),
1139
+ durations: objectToTokens(language.motion.durations),
1140
+ easings: objectToTokens(language.motion.easings)
1141
+ };
1142
+ }
1143
+ function transformSemanticTokens(language) {
1144
+ const light = language.semantic;
1145
+ const dark = language.semanticDark || light;
1146
+ return {
1147
+ colors: Object.fromEntries(
1148
+ Object.entries(light).map(([key, lightValue]) => [
1149
+ key,
1150
+ {
1151
+ value: {
1152
+ base: lightValue,
1153
+ _dark: dark[key] || lightValue
1154
+ }
1155
+ }
1156
+ ])
1157
+ )
1158
+ };
1159
+ }
1160
+ function transformTextStyles(language) {
1161
+ const scale = language.typography.scale;
1162
+ return Object.fromEntries(
1163
+ Object.entries(scale).map(([name, style]) => [
1164
+ name,
1165
+ {
1166
+ value: {
1167
+ fontFamily: style.fontFamily || "body",
1168
+ fontSize: style.fontSize,
1169
+ lineHeight: style.lineHeight,
1170
+ fontWeight: style.fontWeight,
1171
+ letterSpacing: style.letterSpacing
1172
+ }
1173
+ }
1174
+ ])
1175
+ );
1176
+ }
1177
+ function transformColorPalettes(palettes) {
1178
+ return Object.fromEntries(
1179
+ Object.entries(palettes).map(([name, palette]) => [
1180
+ name,
1181
+ Object.fromEntries(
1182
+ Object.entries(palette).map(([tone, value]) => [
1183
+ tone,
1184
+ { value }
1185
+ ])
1186
+ )
1187
+ ])
1188
+ );
1189
+ }
1190
+ function objectToTokens(obj) {
1191
+ return Object.fromEntries(
1192
+ Object.entries(obj).map(([key, value]) => [key, { value }])
1193
+ );
1194
+ }
1195
+ function extractFontSizes(scale) {
1196
+ return Object.fromEntries(
1197
+ Object.entries(scale).map(([name, style]) => [
1198
+ name,
1199
+ { value: style.fontSize }
1200
+ ])
1201
+ );
1202
+ }
1203
+ function extractLineHeights(scale) {
1204
+ return Object.fromEntries(
1205
+ Object.entries(scale).map(([name, style]) => [
1206
+ name,
1207
+ { value: style.lineHeight }
1208
+ ])
1209
+ );
1210
+ }
1211
+ function extractFontWeights(scale) {
1212
+ const weights = /* @__PURE__ */ new Map();
1213
+ Object.values(scale).forEach((style) => {
1214
+ weights.set(style.fontWeight, style.fontWeight);
1215
+ });
1216
+ return Object.fromEntries(
1217
+ Array.from(weights.entries()).map(([key, value]) => [
1218
+ key,
1219
+ { value }
1220
+ ])
1221
+ );
1222
+ }
1223
+ function extractLetterSpacings(scale) {
1224
+ return Object.fromEntries(
1225
+ Object.entries(scale).map(([name, style]) => [
1226
+ name,
1227
+ { value: style.letterSpacing }
1228
+ ])
1229
+ );
1230
+ }
1231
+
1232
+ export { Button, Card, Dialog, IconButton, Input, Switch, material3Language as activeLanguage, buttonRecipe, cardRecipe, cn, dialogRecipe, iconButtonRecipe, inputRecipe, switchRecipe, transformToPandaTheme };
1233
+ //# sourceMappingURL=index.js.map
1234
+ //# sourceMappingURL=index.js.map