@grupor5/raya 0.2.1 → 0.2.2

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 (180) hide show
  1. package/README.md +47 -4
  2. package/dist/atoms/avatar/index.d.mts +12 -0
  3. package/dist/atoms/avatar/index.d.ts +12 -0
  4. package/dist/atoms/avatar/index.js +99 -0
  5. package/dist/atoms/avatar/index.mjs +76 -0
  6. package/dist/atoms/badge/index.d.mts +16 -0
  7. package/dist/atoms/badge/index.d.ts +16 -0
  8. package/dist/atoms/badge/index.js +149 -0
  9. package/dist/atoms/badge/index.mjs +146 -0
  10. package/dist/atoms/button/index.d.mts +11 -0
  11. package/dist/atoms/button/index.d.ts +11 -0
  12. package/dist/atoms/button/index.js +307 -0
  13. package/dist/atoms/button/index.mjs +301 -0
  14. package/dist/atoms/checkbox/index.d.mts +6 -0
  15. package/dist/atoms/checkbox/index.d.ts +6 -0
  16. package/dist/atoms/checkbox/index.js +98 -0
  17. package/dist/atoms/checkbox/index.mjs +75 -0
  18. package/dist/atoms/input/index.d.mts +12 -0
  19. package/dist/atoms/input/index.d.ts +12 -0
  20. package/dist/atoms/input/index.js +104 -0
  21. package/dist/atoms/input/index.mjs +82 -0
  22. package/dist/atoms/label/index.d.mts +8 -0
  23. package/dist/atoms/label/index.d.ts +8 -0
  24. package/dist/atoms/label/index.js +77 -0
  25. package/dist/atoms/label/index.mjs +54 -0
  26. package/dist/atoms/radio/index.d.mts +7 -0
  27. package/dist/atoms/radio/index.d.ts +7 -0
  28. package/dist/atoms/radio/index.js +97 -0
  29. package/dist/atoms/radio/index.mjs +73 -0
  30. package/dist/atoms/switch/index.d.mts +6 -0
  31. package/dist/atoms/switch/index.d.ts +6 -0
  32. package/dist/atoms/switch/index.js +97 -0
  33. package/dist/atoms/switch/index.mjs +74 -0
  34. package/dist/atoms/tag/index.d.mts +14 -0
  35. package/dist/atoms/tag/index.d.ts +14 -0
  36. package/dist/atoms/tag/index.js +128 -0
  37. package/dist/atoms/tag/index.mjs +122 -0
  38. package/dist/atoms/textarea/index.d.mts +11 -0
  39. package/dist/atoms/textarea/index.d.ts +11 -0
  40. package/dist/atoms/textarea/index.js +125 -0
  41. package/dist/atoms/textarea/index.mjs +103 -0
  42. package/dist/atoms/typography/index.d.mts +20 -0
  43. package/dist/atoms/typography/index.d.ts +20 -0
  44. package/dist/atoms/typography/index.js +140 -0
  45. package/dist/atoms/typography/index.mjs +115 -0
  46. package/dist/hooks/index.d.mts +1 -0
  47. package/dist/hooks/index.d.ts +1 -0
  48. package/dist/hooks/index.js +17 -0
  49. package/dist/hooks/index.mjs +15 -0
  50. package/dist/hooks/use-pagination.d.mts +10 -0
  51. package/dist/hooks/use-pagination.d.ts +10 -0
  52. package/dist/hooks/use-pagination.js +54 -0
  53. package/dist/hooks/use-pagination.mjs +51 -0
  54. package/dist/hooks/use-toast.d.mts +2 -0
  55. package/dist/hooks/use-toast.d.ts +2 -0
  56. package/dist/hooks/use-toast.js +2 -0
  57. package/dist/hooks/use-toast.mjs +1 -0
  58. package/dist/hooks/useModal.d.mts +7 -0
  59. package/dist/hooks/useModal.d.ts +7 -0
  60. package/dist/hooks/useModal.js +17 -0
  61. package/dist/hooks/useModal.mjs +15 -0
  62. package/dist/index.d.mts +50 -1298
  63. package/dist/index.d.ts +50 -1298
  64. package/dist/molecules/accordion/index.d.mts +17 -0
  65. package/dist/molecules/accordion/index.d.ts +17 -0
  66. package/dist/molecules/accordion/index.js +154 -0
  67. package/dist/molecules/accordion/index.mjs +128 -0
  68. package/dist/molecules/alert/index.d.mts +14 -0
  69. package/dist/molecules/alert/index.d.ts +14 -0
  70. package/dist/molecules/alert/index.js +425 -0
  71. package/dist/molecules/alert/index.mjs +402 -0
  72. package/dist/molecules/card/index.d.mts +10 -0
  73. package/dist/molecules/card/index.d.ts +10 -0
  74. package/dist/molecules/card/index.js +128 -0
  75. package/dist/molecules/card/index.mjs +101 -0
  76. package/dist/molecules/chart/index.d.mts +80 -0
  77. package/dist/molecules/chart/index.d.ts +80 -0
  78. package/dist/molecules/chart/index.js +300 -0
  79. package/dist/molecules/chart/index.mjs +272 -0
  80. package/dist/molecules/data-table/index.d.mts +57 -0
  81. package/dist/molecules/data-table/index.d.ts +57 -0
  82. package/dist/molecules/data-table/index.js +1456 -0
  83. package/dist/molecules/data-table/index.mjs +1430 -0
  84. package/dist/molecules/date-picker/index.d.mts +12 -0
  85. package/dist/molecules/date-picker/index.d.ts +12 -0
  86. package/dist/molecules/date-picker/index.js +756 -0
  87. package/dist/molecules/date-picker/index.mjs +734 -0
  88. package/dist/molecules/dropdown/index.d.mts +21 -0
  89. package/dist/molecules/dropdown/index.d.ts +21 -0
  90. package/dist/molecules/dropdown/index.js +221 -0
  91. package/dist/molecules/dropdown/index.mjs +198 -0
  92. package/dist/molecules/form/index.d.mts +19 -0
  93. package/dist/molecules/form/index.d.ts +19 -0
  94. package/dist/molecules/form/index.js +139 -0
  95. package/dist/molecules/form/index.mjs +114 -0
  96. package/dist/molecules/pagination/index.d.mts +15 -0
  97. package/dist/molecules/pagination/index.d.ts +15 -0
  98. package/dist/molecules/pagination/index.js +605 -0
  99. package/dist/molecules/pagination/index.mjs +583 -0
  100. package/dist/molecules/progress-bar/index.d.mts +15 -0
  101. package/dist/molecules/progress-bar/index.d.ts +15 -0
  102. package/dist/molecules/progress-bar/index.js +166 -0
  103. package/dist/molecules/progress-bar/index.mjs +144 -0
  104. package/dist/molecules/select/index.d.mts +15 -0
  105. package/dist/molecules/select/index.d.ts +15 -0
  106. package/dist/molecules/select/index.js +201 -0
  107. package/dist/molecules/select/index.mjs +169 -0
  108. package/dist/molecules/stepper/index.d.mts +67 -0
  109. package/dist/molecules/stepper/index.d.ts +67 -0
  110. package/dist/molecules/stepper/index.js +287 -0
  111. package/dist/molecules/stepper/index.mjs +260 -0
  112. package/dist/molecules/tabs/index.d.mts +9 -0
  113. package/dist/molecules/tabs/index.d.ts +9 -0
  114. package/dist/molecules/tabs/index.js +112 -0
  115. package/dist/molecules/tabs/index.mjs +86 -0
  116. package/dist/tokens/badge.d.mts +39 -0
  117. package/dist/tokens/badge.d.ts +39 -0
  118. package/dist/tokens/badge.js +61 -0
  119. package/dist/tokens/badge.mjs +59 -0
  120. package/dist/tokens/buttons.d.mts +277 -0
  121. package/dist/tokens/buttons.d.ts +277 -0
  122. package/dist/tokens/buttons.js +191 -0
  123. package/dist/tokens/buttons.mjs +173 -0
  124. package/dist/tokens/colors.d.mts +65 -0
  125. package/dist/tokens/colors.d.ts +65 -0
  126. package/dist/tokens/colors.js +68 -0
  127. package/dist/tokens/colors.mjs +66 -0
  128. package/dist/tokens/effects.d.mts +124 -0
  129. package/dist/tokens/effects.d.ts +124 -0
  130. package/dist/tokens/effects.js +130 -0
  131. package/dist/tokens/effects.mjs +115 -0
  132. package/dist/tokens/grids.d.mts +331 -0
  133. package/dist/tokens/grids.d.ts +331 -0
  134. package/dist/tokens/grids.js +305 -0
  135. package/dist/tokens/grids.mjs +292 -0
  136. package/dist/tokens/icons.d.mts +134 -0
  137. package/dist/tokens/icons.d.ts +134 -0
  138. package/dist/tokens/icons.js +108 -0
  139. package/dist/tokens/icons.mjs +97 -0
  140. package/dist/tokens/index.d.mts +6 -0
  141. package/dist/tokens/index.d.ts +6 -0
  142. package/dist/tokens/index.js +775 -0
  143. package/dist/tokens/index.mjs +743 -0
  144. package/dist/tokens/progress-bar.d.mts +31 -0
  145. package/dist/tokens/progress-bar.d.ts +31 -0
  146. package/dist/tokens/progress-bar.js +70 -0
  147. package/dist/tokens/progress-bar.mjs +68 -0
  148. package/dist/tokens/spacing.d.mts +90 -0
  149. package/dist/tokens/spacing.d.ts +90 -0
  150. package/dist/tokens/spacing.js +120 -0
  151. package/dist/tokens/spacing.mjs +109 -0
  152. package/dist/tokens/stroke.d.mts +292 -0
  153. package/dist/tokens/stroke.d.ts +292 -0
  154. package/dist/tokens/stroke.js +202 -0
  155. package/dist/tokens/stroke.mjs +186 -0
  156. package/dist/tokens/tab.d.mts +31 -0
  157. package/dist/tokens/tab.d.ts +31 -0
  158. package/dist/tokens/tab.js +48 -0
  159. package/dist/tokens/tab.mjs +46 -0
  160. package/dist/tokens/tag.d.mts +53 -0
  161. package/dist/tokens/tag.d.ts +53 -0
  162. package/dist/tokens/tag.js +80 -0
  163. package/dist/tokens/tag.mjs +78 -0
  164. package/dist/tokens/typography.d.mts +394 -0
  165. package/dist/tokens/typography.d.ts +394 -0
  166. package/dist/tokens/typography.js +302 -0
  167. package/dist/tokens/typography.mjs +292 -0
  168. package/dist/utils/classNames.d.mts +3 -0
  169. package/dist/utils/classNames.d.ts +3 -0
  170. package/dist/utils/classNames.js +8 -0
  171. package/dist/utils/classNames.mjs +6 -0
  172. package/dist/utils/cn.d.mts +5 -0
  173. package/dist/utils/cn.d.ts +5 -0
  174. package/dist/utils/cn.js +11 -0
  175. package/dist/utils/cn.mjs +9 -0
  176. package/dist/utils/index.d.mts +3 -0
  177. package/dist/utils/index.d.ts +3 -0
  178. package/dist/utils/index.js +15 -0
  179. package/dist/utils/index.mjs +12 -0
  180. package/package.json +34 -1
@@ -0,0 +1,743 @@
1
+ // src/tokens/colors.ts
2
+ var colors = {
3
+ primary: {
4
+ 100: "#faf9fb",
5
+ 200: "#eeedf1",
6
+ 300: "#dbd9e1",
7
+ 400: "#c3c0cd",
8
+ 500: "#a8a3b6",
9
+ 600: "#8b859e",
10
+ 700: "#706984",
11
+ 800: "#585267",
12
+ 900: "#423e4e",
13
+ 1e3: "#312e3a",
14
+ 1100: "#26242d",
15
+ 1200: "#222028"
16
+ },
17
+ secondary: {
18
+ 100: "#fbf7fc",
19
+ 200: "#f2e4f6",
20
+ 300: "#e4c7ed",
21
+ 400: "#d3a2e1",
22
+ 500: "#c07ad4",
23
+ 600: "#ac50c7",
24
+ 700: "#9037ab",
25
+ 800: "#722b86",
26
+ 900: "#592269",
27
+ 1e3: "#481b55",
28
+ 1100: "#42194e",
29
+ 1200: "#1d0b23"
30
+ },
31
+ neutral: {
32
+ 500: "#bdb3b3",
33
+ 400: "#bdb3b3",
34
+ 300: "#d2caca",
35
+ 200: "#e7e2e2",
36
+ 100: "#fbfafa",
37
+ 10: "#ffffff",
38
+ 20: "#f9f9f9",
39
+ 30: "#f2f2f2"
40
+ },
41
+ red: {
42
+ 600: "#dc2626",
43
+ 500: "#ee4444",
44
+ 400: "#e86e6e",
45
+ 300: "#fca5a5",
46
+ 200: "#e86e6e",
47
+ 100: "#f3b7b7"
48
+ },
49
+ yellow: {
50
+ 300: "#f59e0b",
51
+ 200: "#f8be5c",
52
+ 100: "#fcdfae",
53
+ 10: "#fcdfaeB3"
54
+ },
55
+ green: {
56
+ 600: "#096849",
57
+ 500: "#10b981",
58
+ 400: "#10b981",
59
+ 300: "#10b981",
60
+ 200: "#10b981",
61
+ 100: "#D0FAE5",
62
+ 10: "#beba6bB3"
63
+ }
64
+ };
65
+
66
+ // src/tokens/typography.ts
67
+ var typography = {
68
+ fontFamily: {
69
+ primary: [
70
+ "Rubik",
71
+ "-apple-system",
72
+ "BlinkMacSystemFont",
73
+ "Segoe UI",
74
+ "Roboto",
75
+ "Oxygen",
76
+ "Ubuntu",
77
+ "Cantarell",
78
+ "sans-serif"
79
+ ]
80
+ },
81
+ fontWeight: {
82
+ light: 300,
83
+ regular: 400,
84
+ medium: 500,
85
+ semibold: 600,
86
+ bold: 700
87
+ },
88
+ fontSize: {
89
+ // Display Scale - Large typography for hero sections and prominent headers
90
+ display: {
91
+ l: "2.5rem"
92
+ // 40px - Display/L
93
+ },
94
+ // Heading Scale - Semantic headings with Bold weight
95
+ heading: {
96
+ xl: "2.25rem",
97
+ // 36px - Heading/XL
98
+ lg: "2rem",
99
+ // 32px - Heading/L
100
+ md: "1.75rem",
101
+ // 28px - Heading/M
102
+ sm: "1.5rem"
103
+ // 24px - Heading/S
104
+ },
105
+ // Subheading Scale - Secondary headings with Bold weight
106
+ subheading: {
107
+ lg: "1.25rem",
108
+ // 20px - Subheading/L
109
+ md: "1.125rem",
110
+ // 18px - Subheading/M
111
+ sm: "1rem"
112
+ // 16px - Subheading/S
113
+ },
114
+ // Body Scale - Text content with Regular and Semi-bold variants
115
+ body: {
116
+ // Body Bold variants (Semi-bold weight)
117
+ "bold-lg": "1.125rem",
118
+ // 18px - Body/Bold/L
119
+ "bold-md": "1rem",
120
+ // 16px - Body/Bold/M
121
+ "bold-sm": "0.875rem",
122
+ // 14px - Body/Bold/S
123
+ "bold-xs": "0.75rem",
124
+ // 12px - Body/Bold/XS
125
+ // Body Regular variants
126
+ lg: "1.125rem",
127
+ // 18px - Body/L
128
+ md: "1rem",
129
+ // 16px - Body/M
130
+ sm: "0.875rem",
131
+ // 14px - Body/S
132
+ xs: "0.75rem"
133
+ // 12px - Body/XS
134
+ },
135
+ // Caption Scale - Small text for labels and metadata
136
+ caption: {
137
+ "c1": "0.75rem"
138
+ // 12px - Caption/C-1
139
+ }
140
+ },
141
+ lineHeight: {
142
+ // Display line heights
143
+ display: {
144
+ l: "3.25rem"
145
+ // 52px - Display/L
146
+ },
147
+ // Heading line heights
148
+ heading: {
149
+ xl: "2.75rem",
150
+ // 44px - Heading/XL
151
+ lg: "2.5rem",
152
+ // 40px - Heading/L
153
+ md: "2.25rem",
154
+ // 36px - Heading/M
155
+ sm: "2rem"
156
+ // 32px - Heading/S
157
+ },
158
+ // Subheading line heights
159
+ subheading: {
160
+ lg: "1.75rem",
161
+ // 28px - Subheading/L
162
+ md: "1.5rem",
163
+ // 24px - Subheading/M
164
+ sm: "1.25rem"
165
+ // 20px - Subheading/S
166
+ },
167
+ // Body line heights (same for both bold and regular)
168
+ body: {
169
+ lg: "1.75rem",
170
+ // 28px - Body/L & Body/Bold/L
171
+ md: "1.5rem",
172
+ // 24px - Body/M & Body/Bold/M
173
+ sm: "1.25rem",
174
+ // 20px - Body/S & Body/Bold/S
175
+ xs: "1.25rem"
176
+ // 20px - Body/XS & Body/Bold/XS
177
+ },
178
+ // Caption line heights
179
+ caption: {
180
+ c1: "1.125rem"
181
+ // 18px - Caption/C-1
182
+ }
183
+ },
184
+ // Letter spacing values
185
+ letterSpacing: {
186
+ normal: "0px",
187
+ // 0px - Default for most text
188
+ caption: "4px"
189
+ // 4px - Caption/C-1 specific
190
+ },
191
+ // Pre-composed typography styles for common use cases
192
+ presets: {
193
+ // Display presets
194
+ "display-l": {
195
+ fontSize: "2.5rem",
196
+ lineHeight: "3.25rem",
197
+ fontWeight: 700,
198
+ letterSpacing: "0px"
199
+ },
200
+ // Heading presets (all use Bold weight)
201
+ "heading-xl": {
202
+ fontSize: "2.25rem",
203
+ lineHeight: "2.75rem",
204
+ fontWeight: 700,
205
+ letterSpacing: "0px"
206
+ },
207
+ "heading-lg": {
208
+ fontSize: "2rem",
209
+ lineHeight: "2.5rem",
210
+ fontWeight: 700,
211
+ letterSpacing: "0px"
212
+ },
213
+ "heading-md": {
214
+ fontSize: "1.75rem",
215
+ lineHeight: "2.25rem",
216
+ fontWeight: 700,
217
+ letterSpacing: "0px"
218
+ },
219
+ "heading-sm": {
220
+ fontSize: "1.5rem",
221
+ lineHeight: "2rem",
222
+ fontWeight: 700,
223
+ letterSpacing: "0px"
224
+ },
225
+ // Subheading presets (all use Bold weight)
226
+ "subheading-lg": {
227
+ fontSize: "1.25rem",
228
+ lineHeight: "1.75rem",
229
+ fontWeight: 700,
230
+ letterSpacing: "0px"
231
+ },
232
+ "subheading-md": {
233
+ fontSize: "1.125rem",
234
+ lineHeight: "1.5rem",
235
+ fontWeight: 700,
236
+ letterSpacing: "0px"
237
+ },
238
+ "subheading-sm": {
239
+ fontSize: "1rem",
240
+ lineHeight: "1.25rem",
241
+ fontWeight: 700,
242
+ letterSpacing: "0px"
243
+ },
244
+ // Body Bold presets (Semi-bold weight)
245
+ "body-bold-lg": {
246
+ fontSize: "1.125rem",
247
+ lineHeight: "1.75rem",
248
+ fontWeight: 600,
249
+ letterSpacing: "0px"
250
+ },
251
+ "body-bold-md": {
252
+ fontSize: "1rem",
253
+ lineHeight: "1.5rem",
254
+ fontWeight: 600,
255
+ letterSpacing: "0px"
256
+ },
257
+ "body-bold-sm": {
258
+ fontSize: "0.875rem",
259
+ lineHeight: "1.25rem",
260
+ fontWeight: 600,
261
+ letterSpacing: "0px"
262
+ },
263
+ "body-bold-xs": {
264
+ fontSize: "0.75rem",
265
+ lineHeight: "1.25rem",
266
+ fontWeight: 600,
267
+ letterSpacing: "0px"
268
+ },
269
+ // Body Regular presets
270
+ "body-lg": {
271
+ fontSize: "1.125rem",
272
+ lineHeight: "1.75rem",
273
+ fontWeight: 400,
274
+ letterSpacing: "0px"
275
+ },
276
+ "body-md": {
277
+ fontSize: "1rem",
278
+ lineHeight: "1.5rem",
279
+ fontWeight: 400,
280
+ letterSpacing: "0px"
281
+ },
282
+ "body-sm": {
283
+ fontSize: "0.875rem",
284
+ lineHeight: "1.25rem",
285
+ fontWeight: 400,
286
+ letterSpacing: "0px"
287
+ },
288
+ "body-xs": {
289
+ fontSize: "0.75rem",
290
+ lineHeight: "1.25rem",
291
+ fontWeight: 400,
292
+ letterSpacing: "0px"
293
+ },
294
+ // Caption presets
295
+ "caption-c1": {
296
+ fontSize: "0.75rem",
297
+ lineHeight: "1.125rem",
298
+ fontWeight: 400,
299
+ letterSpacing: "4px"
300
+ }
301
+ }
302
+ };
303
+ var typographyVars = {
304
+ // Font family
305
+ "--font-primary": typography.fontFamily.primary.join(", "),
306
+ // Font weights
307
+ "--font-weight-light": typography.fontWeight.light,
308
+ "--font-weight-regular": typography.fontWeight.regular,
309
+ "--font-weight-medium": typography.fontWeight.medium,
310
+ "--font-weight-semibold": typography.fontWeight.semibold,
311
+ "--font-weight-bold": typography.fontWeight.bold,
312
+ // Display scale
313
+ "--text-display-l": typography.fontSize.display.l,
314
+ // Heading scale
315
+ "--text-heading-xl": typography.fontSize.heading.xl,
316
+ "--text-heading-lg": typography.fontSize.heading.lg,
317
+ "--text-heading-md": typography.fontSize.heading.md,
318
+ "--text-heading-sm": typography.fontSize.heading.sm,
319
+ // Subheading scale
320
+ "--text-subheading-lg": typography.fontSize.subheading.lg,
321
+ "--text-subheading-md": typography.fontSize.subheading.md,
322
+ "--text-subheading-sm": typography.fontSize.subheading.sm,
323
+ // Body scale
324
+ "--text-body-bold-lg": typography.fontSize.body["bold-lg"],
325
+ "--text-body-bold-md": typography.fontSize.body["bold-md"],
326
+ "--text-body-bold-sm": typography.fontSize.body["bold-sm"],
327
+ "--text-body-bold-xs": typography.fontSize.body["bold-xs"],
328
+ "--text-body-lg": typography.fontSize.body.lg,
329
+ "--text-body-md": typography.fontSize.body.md,
330
+ "--text-body-sm": typography.fontSize.body.sm,
331
+ "--text-body-xs": typography.fontSize.body.xs,
332
+ // Caption scale
333
+ "--text-caption-c1": typography.fontSize.caption.c1,
334
+ // Line heights
335
+ "--leading-display-l": typography.lineHeight.display.l,
336
+ "--leading-heading-xl": typography.lineHeight.heading.xl,
337
+ "--leading-heading-lg": typography.lineHeight.heading.lg,
338
+ "--leading-heading-md": typography.lineHeight.heading.md,
339
+ "--leading-heading-sm": typography.lineHeight.heading.sm,
340
+ "--leading-subheading-lg": typography.lineHeight.subheading.lg,
341
+ "--leading-subheading-md": typography.lineHeight.subheading.md,
342
+ "--leading-subheading-sm": typography.lineHeight.subheading.sm,
343
+ "--leading-body-lg": typography.lineHeight.body.lg,
344
+ "--leading-body-md": typography.lineHeight.body.md,
345
+ "--leading-body-sm": typography.lineHeight.body.sm,
346
+ "--leading-body-xs": typography.lineHeight.body.xs,
347
+ "--leading-caption-c1": typography.lineHeight.caption.c1,
348
+ // Letter spacing
349
+ "--tracking-normal": typography.letterSpacing.normal,
350
+ "--tracking-caption": typography.letterSpacing.caption
351
+ };
352
+ var generateTypographyCSS = () => {
353
+ return Object.entries(typographyVars).map(([property, value]) => ` ${property}: ${value};`).join("\n");
354
+ };
355
+ var { fontFamily, fontWeight, fontSize, lineHeight, letterSpacing, presets } = typography;
356
+
357
+ // src/tokens/spacing.ts
358
+ var spacing = {
359
+ // Base unit
360
+ base: "0.25rem",
361
+ // 4px
362
+ // Spacing scale
363
+ xs: "0.25rem",
364
+ // 4px - Minimal spacing, tight layouts
365
+ s: "0.5rem",
366
+ // 8px - Small gaps, compact components
367
+ m: "1rem",
368
+ // 16px - Default spacing, standard gaps
369
+ l: "1.5rem",
370
+ // 24px - Comfortable spacing, section gaps
371
+ xl: "2rem",
372
+ // 32px - Large spacing, major sections
373
+ "2xl": "2.5rem",
374
+ // 40px - Extra large spacing, page sections
375
+ "3xl": "3rem",
376
+ // 48px - Generous spacing, hero sections
377
+ "4xl": "3.5rem"
378
+ // 56px - Maximum spacing, major layouts
379
+ };
380
+ var spacingPx = {
381
+ base: 4,
382
+ xs: 4,
383
+ s: 8,
384
+ m: 16,
385
+ l: 24,
386
+ xl: 32,
387
+ "2xl": 40,
388
+ "3xl": 48,
389
+ "4xl": 56
390
+ };
391
+ var spacingStyles = {
392
+ // Component padding
393
+ buttonPadding: {
394
+ small: `${spacing.xs} ${spacing.s}`,
395
+ // 4px 8px
396
+ medium: `${spacing.s} ${spacing.m}`,
397
+ // 8px 16px
398
+ large: `${spacing.m} ${spacing.l}`
399
+ // 16px 24px
400
+ },
401
+ // Card spacing
402
+ cardPadding: {
403
+ compact: spacing.m,
404
+ // 16px
405
+ comfortable: spacing.l,
406
+ // 24px
407
+ spacious: spacing.xl
408
+ // 32px
409
+ },
410
+ // Form spacing
411
+ formSpacing: {
412
+ fieldGap: spacing.m,
413
+ // 16px between form fields
414
+ labelGap: spacing.xs,
415
+ // 4px between label and input
416
+ helpGap: spacing.xs
417
+ // 4px between input and help text
418
+ },
419
+ // Layout spacing
420
+ layoutSpacing: {
421
+ sectionGap: spacing["2xl"],
422
+ // 40px between major sections
423
+ componentGap: spacing.xl,
424
+ // 32px between components
425
+ elementGap: spacing.m
426
+ // 16px between elements
427
+ },
428
+ // Grid spacing
429
+ gridGap: {
430
+ tight: spacing.s,
431
+ // 8px
432
+ normal: spacing.m,
433
+ // 16px
434
+ comfortable: spacing.l,
435
+ // 24px
436
+ loose: spacing.xl
437
+ // 32px
438
+ }
439
+ };
440
+ var getSpacing = (token) => {
441
+ return spacing[token];
442
+ };
443
+ var getSpacingPx = (token) => {
444
+ return spacingPx[token];
445
+ };
446
+ var generateSpacingCSS = () => {
447
+ const cssVars = Object.entries(spacing).map(([key, value]) => ` --spacing-${key}: ${value};`).join("\n");
448
+ return `:root {
449
+ /* Spacing tokens */
450
+ ${cssVars}
451
+ }`;
452
+ };
453
+ var tailwindSpacing = {
454
+ "xs": "var(--spacing-xs)",
455
+ "s": "var(--spacing-s)",
456
+ "m": "var(--spacing-m)",
457
+ "l": "var(--spacing-l)",
458
+ "xl": "var(--spacing-xl)",
459
+ "2xl": "var(--spacing-2xl)",
460
+ "3xl": "var(--spacing-3xl)",
461
+ "4xl": "var(--spacing-4xl)"
462
+ };
463
+
464
+ // src/tokens/stroke.ts
465
+ var stroke = {
466
+ // Stroke widths
467
+ 1: "1px",
468
+ 2: "2px"
469
+ };
470
+ var strokeColors = {
471
+ default: "hsl(var(--border))",
472
+ muted: "hsl(var(--muted))",
473
+ primary: "hsl(var(--primary))",
474
+ secondary: "hsl(var(--secondary))",
475
+ destructive: "hsl(var(--destructive))",
476
+ focus: "hsl(var(--ring))",
477
+ transparent: "transparent"
478
+ };
479
+ var strokeStyles = {
480
+ // Default stroke styles
481
+ default: {
482
+ width: stroke[1],
483
+ color: strokeColors.default,
484
+ style: "solid"
485
+ },
486
+ emphasized: {
487
+ width: stroke[2],
488
+ color: strokeColors.default,
489
+ style: "solid"
490
+ },
491
+ // Interactive stroke styles
492
+ focus: {
493
+ width: stroke[2],
494
+ color: strokeColors.focus,
495
+ style: "solid"
496
+ },
497
+ hover: {
498
+ width: stroke[2],
499
+ color: strokeColors.primary,
500
+ style: "solid"
501
+ },
502
+ // Semantic stroke styles
503
+ primary: {
504
+ width: stroke[1],
505
+ color: strokeColors.primary,
506
+ style: "solid"
507
+ },
508
+ primaryEmphasized: {
509
+ width: stroke[2],
510
+ color: strokeColors.primary,
511
+ style: "solid"
512
+ },
513
+ destructive: {
514
+ width: stroke[1],
515
+ color: strokeColors.destructive,
516
+ style: "solid"
517
+ },
518
+ destructiveEmphasized: {
519
+ width: stroke[2],
520
+ color: strokeColors.destructive,
521
+ style: "solid"
522
+ },
523
+ // Utility stroke styles
524
+ muted: {
525
+ width: stroke[1],
526
+ color: strokeColors.muted,
527
+ style: "solid"
528
+ },
529
+ transparent: {
530
+ width: stroke[1],
531
+ color: strokeColors.transparent,
532
+ style: "solid"
533
+ }
534
+ };
535
+ var componentStrokes = {
536
+ // Button component strokes
537
+ button: {
538
+ outline: strokeStyles.primary,
539
+ outlineHover: strokeStyles.primaryEmphasized,
540
+ outlineFocus: strokeStyles.focus,
541
+ destructiveOutline: strokeStyles.destructive,
542
+ destructiveOutlineHover: strokeStyles.destructiveEmphasized
543
+ },
544
+ // Card component strokes
545
+ card: {
546
+ default: strokeStyles.default,
547
+ emphasized: strokeStyles.emphasized,
548
+ interactive: strokeStyles.default,
549
+ interactiveHover: strokeStyles.hover,
550
+ selected: strokeStyles.primaryEmphasized
551
+ },
552
+ // Form component strokes
553
+ form: {
554
+ input: strokeStyles.default,
555
+ inputFocus: strokeStyles.focus,
556
+ inputError: strokeStyles.destructive,
557
+ inputDisabled: strokeStyles.muted,
558
+ select: strokeStyles.default,
559
+ checkbox: strokeStyles.default,
560
+ checkboxChecked: strokeStyles.primary
561
+ },
562
+ // Navigation component strokes
563
+ navigation: {
564
+ divider: strokeStyles.default,
565
+ tabActive: strokeStyles.primaryEmphasized,
566
+ tabInactive: strokeStyles.transparent,
567
+ tabHover: strokeStyles.default
568
+ },
569
+ // Layout component strokes
570
+ layout: {
571
+ divider: strokeStyles.default,
572
+ section: strokeStyles.muted,
573
+ container: strokeStyles.default
574
+ }
575
+ };
576
+ var strokeDirections = {
577
+ all: "border",
578
+ top: "border-top",
579
+ right: "border-right",
580
+ bottom: "border-bottom",
581
+ left: "border-left",
582
+ horizontal: ["border-left", "border-right"],
583
+ vertical: ["border-top", "border-bottom"]
584
+ };
585
+ var getStroke = (token) => {
586
+ return stroke[token];
587
+ };
588
+ var getStrokeColor = (token) => {
589
+ return strokeColors[token];
590
+ };
591
+ var createStroke = (width, color = "default", style = "solid") => {
592
+ return `${stroke[width]} ${style} ${strokeColors[color]}`;
593
+ };
594
+ var generateStrokesCSS = () => {
595
+ const widthVars = Object.entries(stroke).map(([key, value]) => ` --stroke-${key}: ${value};`).join("\n");
596
+ const colorVars = Object.entries(strokeColors).map(([key, value]) => ` --stroke-color-${key}: ${value};`).join("\n");
597
+ return `:root {
598
+ /* Stroke width tokens */
599
+ ${widthVars}
600
+
601
+ /* Stroke color tokens */
602
+ ${colorVars}
603
+ }`;
604
+ };
605
+ var tailwindStrokes = {
606
+ // Border widths
607
+ borderWidth: {
608
+ "stroke-1": "var(--stroke-1)",
609
+ "stroke-2": "var(--stroke-2)"
610
+ },
611
+ // Outline widths
612
+ outlineWidth: {
613
+ "stroke-1": "var(--stroke-1)",
614
+ "stroke-2": "var(--stroke-2)"
615
+ },
616
+ // Border colors (using existing design system colors)
617
+ borderColor: {
618
+ "stroke-default": "var(--stroke-color-default)",
619
+ "stroke-muted": "var(--stroke-color-muted)",
620
+ "stroke-primary": "var(--stroke-color-primary)",
621
+ "stroke-destructive": "var(--stroke-color-destructive)",
622
+ "stroke-focus": "var(--stroke-color-focus)"
623
+ }
624
+ };
625
+ var strokeTransitions = {
626
+ fast: "border-width 0.15s ease-in-out, border-color 0.15s ease-in-out",
627
+ medium: "border-width 0.2s ease-in-out, border-color 0.2s ease-in-out",
628
+ slow: "border-width 0.3s ease-in-out, border-color 0.3s ease-in-out",
629
+ colorOnly: "border-color 0.2s ease-in-out",
630
+ widthOnly: "border-width 0.2s ease-in-out"
631
+ };
632
+ var responsiveStrokes = {
633
+ mobile: {
634
+ default: stroke[1],
635
+ emphasized: stroke[1]
636
+ // Reduce emphasis on mobile
637
+ },
638
+ tablet: {
639
+ default: stroke[1],
640
+ emphasized: stroke[2]
641
+ },
642
+ desktop: {
643
+ default: stroke[1],
644
+ emphasized: stroke[2]
645
+ }
646
+ };
647
+
648
+ // src/tokens/badge.ts
649
+ var badgeTokens = {
650
+ colors: {
651
+ inProgress: {
652
+ text: colors.secondary[600],
653
+ background: colors.secondary[200]
654
+ },
655
+ success: {
656
+ text: colors.green[600],
657
+ background: colors.green[100]
658
+ },
659
+ pending: {
660
+ text: colors.primary[700],
661
+ background: colors.primary[200]
662
+ },
663
+ danger: {
664
+ text: colors.neutral[10],
665
+ background: colors.red[400]
666
+ },
667
+ default: {
668
+ text: colors.secondary[1e3],
669
+ background: colors.secondary[1100],
670
+ textOnSolid: colors.secondary[200]
671
+ }
672
+ },
673
+ sizes: {
674
+ sm: "12px",
675
+ md: "14px",
676
+ lg: "16px"
677
+ },
678
+ padding: {
679
+ vertical: "4px",
680
+ horizontal: "12px"
681
+ },
682
+ icon: {
683
+ size: "16px"
684
+ }
685
+ };
686
+
687
+ // src/tokens/tag.ts
688
+ var tagTokens = {
689
+ colors: {
690
+ default: {
691
+ background: colors.primary[200],
692
+ text: colors.primary[900],
693
+ bullet: colors.primary[1200],
694
+ closeIconBorder: colors.primary[300],
695
+ hover: {
696
+ background: colors.primary[300],
697
+ closeIconBorder: colors.primary[700]
698
+ }
699
+ },
700
+ success: {
701
+ background: colors.green[100],
702
+ text: colors.green[600],
703
+ bullet: colors.green[600],
704
+ closeIconBorder: colors.green[600],
705
+ hover: {
706
+ background: "#a7f3d0",
707
+ // Valor cercano a un "green-200"
708
+ closeIconBorder: colors.green[600]
709
+ }
710
+ },
711
+ warning: {
712
+ background: colors.yellow[100],
713
+ text: colors.yellow[300],
714
+ bullet: colors.yellow[300],
715
+ closeIconBorder: colors.yellow[300],
716
+ hover: {
717
+ background: "#fde68a",
718
+ // Valor cercano a un "yellow-200"
719
+ closeIconBorder: colors.yellow[300]
720
+ }
721
+ },
722
+ danger: {
723
+ background: colors.red[100],
724
+ text: colors.red[600],
725
+ bullet: colors.red[600],
726
+ closeIconBorder: colors.red[600],
727
+ hover: {
728
+ background: "#fecaca",
729
+ // Valor cercano a un "red-200"
730
+ closeIconBorder: colors.red[600]
731
+ }
732
+ }
733
+ },
734
+ fontSize: "12px",
735
+ padding: {
736
+ x: "8px",
737
+ y: "0px"
738
+ },
739
+ borderRadius: "6px",
740
+ iconSize: "12px"
741
+ };
742
+
743
+ export { badgeTokens, colors, componentStrokes, createStroke, fontFamily, fontSize, fontWeight, generateSpacingCSS, generateStrokesCSS, generateTypographyCSS, getSpacing, getSpacingPx, getStroke, getStrokeColor, letterSpacing, lineHeight, presets, responsiveStrokes, spacing, spacingPx, spacingStyles, stroke, strokeColors, strokeDirections, strokeStyles, strokeTransitions, tagTokens, tailwindSpacing, tailwindStrokes, typography, typographyVars };