@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,394 @@
1
+ /**
2
+ * Raya Design System - Typography Tokens
3
+ * Font Family: Rubik
4
+ * Based on the official Raya typography system palette from Figma
5
+ */
6
+ declare const typography: {
7
+ fontFamily: {
8
+ primary: string[];
9
+ };
10
+ fontWeight: {
11
+ light: number;
12
+ regular: number;
13
+ medium: number;
14
+ semibold: number;
15
+ bold: number;
16
+ };
17
+ fontSize: {
18
+ display: {
19
+ l: string;
20
+ };
21
+ heading: {
22
+ xl: string;
23
+ lg: string;
24
+ md: string;
25
+ sm: string;
26
+ };
27
+ subheading: {
28
+ lg: string;
29
+ md: string;
30
+ sm: string;
31
+ };
32
+ body: {
33
+ 'bold-lg': string;
34
+ 'bold-md': string;
35
+ 'bold-sm': string;
36
+ 'bold-xs': string;
37
+ lg: string;
38
+ md: string;
39
+ sm: string;
40
+ xs: string;
41
+ };
42
+ caption: {
43
+ c1: string;
44
+ };
45
+ };
46
+ lineHeight: {
47
+ display: {
48
+ l: string;
49
+ };
50
+ heading: {
51
+ xl: string;
52
+ lg: string;
53
+ md: string;
54
+ sm: string;
55
+ };
56
+ subheading: {
57
+ lg: string;
58
+ md: string;
59
+ sm: string;
60
+ };
61
+ body: {
62
+ lg: string;
63
+ md: string;
64
+ sm: string;
65
+ xs: string;
66
+ };
67
+ caption: {
68
+ c1: string;
69
+ };
70
+ };
71
+ letterSpacing: {
72
+ normal: string;
73
+ caption: string;
74
+ };
75
+ presets: {
76
+ 'display-l': {
77
+ fontSize: string;
78
+ lineHeight: string;
79
+ fontWeight: number;
80
+ letterSpacing: string;
81
+ };
82
+ 'heading-xl': {
83
+ fontSize: string;
84
+ lineHeight: string;
85
+ fontWeight: number;
86
+ letterSpacing: string;
87
+ };
88
+ 'heading-lg': {
89
+ fontSize: string;
90
+ lineHeight: string;
91
+ fontWeight: number;
92
+ letterSpacing: string;
93
+ };
94
+ 'heading-md': {
95
+ fontSize: string;
96
+ lineHeight: string;
97
+ fontWeight: number;
98
+ letterSpacing: string;
99
+ };
100
+ 'heading-sm': {
101
+ fontSize: string;
102
+ lineHeight: string;
103
+ fontWeight: number;
104
+ letterSpacing: string;
105
+ };
106
+ 'subheading-lg': {
107
+ fontSize: string;
108
+ lineHeight: string;
109
+ fontWeight: number;
110
+ letterSpacing: string;
111
+ };
112
+ 'subheading-md': {
113
+ fontSize: string;
114
+ lineHeight: string;
115
+ fontWeight: number;
116
+ letterSpacing: string;
117
+ };
118
+ 'subheading-sm': {
119
+ fontSize: string;
120
+ lineHeight: string;
121
+ fontWeight: number;
122
+ letterSpacing: string;
123
+ };
124
+ 'body-bold-lg': {
125
+ fontSize: string;
126
+ lineHeight: string;
127
+ fontWeight: number;
128
+ letterSpacing: string;
129
+ };
130
+ 'body-bold-md': {
131
+ fontSize: string;
132
+ lineHeight: string;
133
+ fontWeight: number;
134
+ letterSpacing: string;
135
+ };
136
+ 'body-bold-sm': {
137
+ fontSize: string;
138
+ lineHeight: string;
139
+ fontWeight: number;
140
+ letterSpacing: string;
141
+ };
142
+ 'body-bold-xs': {
143
+ fontSize: string;
144
+ lineHeight: string;
145
+ fontWeight: number;
146
+ letterSpacing: string;
147
+ };
148
+ 'body-lg': {
149
+ fontSize: string;
150
+ lineHeight: string;
151
+ fontWeight: number;
152
+ letterSpacing: string;
153
+ };
154
+ 'body-md': {
155
+ fontSize: string;
156
+ lineHeight: string;
157
+ fontWeight: number;
158
+ letterSpacing: string;
159
+ };
160
+ 'body-sm': {
161
+ fontSize: string;
162
+ lineHeight: string;
163
+ fontWeight: number;
164
+ letterSpacing: string;
165
+ };
166
+ 'body-xs': {
167
+ fontSize: string;
168
+ lineHeight: string;
169
+ fontWeight: number;
170
+ letterSpacing: string;
171
+ };
172
+ 'caption-c1': {
173
+ fontSize: string;
174
+ lineHeight: string;
175
+ fontWeight: number;
176
+ letterSpacing: string;
177
+ };
178
+ };
179
+ };
180
+ declare const typographyVars: {
181
+ '--font-primary': string;
182
+ '--font-weight-light': number;
183
+ '--font-weight-regular': number;
184
+ '--font-weight-medium': number;
185
+ '--font-weight-semibold': number;
186
+ '--font-weight-bold': number;
187
+ '--text-display-l': string;
188
+ '--text-heading-xl': string;
189
+ '--text-heading-lg': string;
190
+ '--text-heading-md': string;
191
+ '--text-heading-sm': string;
192
+ '--text-subheading-lg': string;
193
+ '--text-subheading-md': string;
194
+ '--text-subheading-sm': string;
195
+ '--text-body-bold-lg': string;
196
+ '--text-body-bold-md': string;
197
+ '--text-body-bold-sm': string;
198
+ '--text-body-bold-xs': string;
199
+ '--text-body-lg': string;
200
+ '--text-body-md': string;
201
+ '--text-body-sm': string;
202
+ '--text-body-xs': string;
203
+ '--text-caption-c1': string;
204
+ '--leading-display-l': string;
205
+ '--leading-heading-xl': string;
206
+ '--leading-heading-lg': string;
207
+ '--leading-heading-md': string;
208
+ '--leading-heading-sm': string;
209
+ '--leading-subheading-lg': string;
210
+ '--leading-subheading-md': string;
211
+ '--leading-subheading-sm': string;
212
+ '--leading-body-lg': string;
213
+ '--leading-body-md': string;
214
+ '--leading-body-sm': string;
215
+ '--leading-body-xs': string;
216
+ '--leading-caption-c1': string;
217
+ '--tracking-normal': string;
218
+ '--tracking-caption': string;
219
+ };
220
+ declare const generateTypographyCSS: () => string;
221
+ declare const fontFamily: {
222
+ primary: string[];
223
+ };
224
+ declare const fontWeight: {
225
+ light: number;
226
+ regular: number;
227
+ medium: number;
228
+ semibold: number;
229
+ bold: number;
230
+ };
231
+ declare const fontSize: {
232
+ display: {
233
+ l: string;
234
+ };
235
+ heading: {
236
+ xl: string;
237
+ lg: string;
238
+ md: string;
239
+ sm: string;
240
+ };
241
+ subheading: {
242
+ lg: string;
243
+ md: string;
244
+ sm: string;
245
+ };
246
+ body: {
247
+ 'bold-lg': string;
248
+ 'bold-md': string;
249
+ 'bold-sm': string;
250
+ 'bold-xs': string;
251
+ lg: string;
252
+ md: string;
253
+ sm: string;
254
+ xs: string;
255
+ };
256
+ caption: {
257
+ c1: string;
258
+ };
259
+ };
260
+ declare const lineHeight: {
261
+ display: {
262
+ l: string;
263
+ };
264
+ heading: {
265
+ xl: string;
266
+ lg: string;
267
+ md: string;
268
+ sm: string;
269
+ };
270
+ subheading: {
271
+ lg: string;
272
+ md: string;
273
+ sm: string;
274
+ };
275
+ body: {
276
+ lg: string;
277
+ md: string;
278
+ sm: string;
279
+ xs: string;
280
+ };
281
+ caption: {
282
+ c1: string;
283
+ };
284
+ };
285
+ declare const letterSpacing: {
286
+ normal: string;
287
+ caption: string;
288
+ };
289
+ declare const presets: {
290
+ 'display-l': {
291
+ fontSize: string;
292
+ lineHeight: string;
293
+ fontWeight: number;
294
+ letterSpacing: string;
295
+ };
296
+ 'heading-xl': {
297
+ fontSize: string;
298
+ lineHeight: string;
299
+ fontWeight: number;
300
+ letterSpacing: string;
301
+ };
302
+ 'heading-lg': {
303
+ fontSize: string;
304
+ lineHeight: string;
305
+ fontWeight: number;
306
+ letterSpacing: string;
307
+ };
308
+ 'heading-md': {
309
+ fontSize: string;
310
+ lineHeight: string;
311
+ fontWeight: number;
312
+ letterSpacing: string;
313
+ };
314
+ 'heading-sm': {
315
+ fontSize: string;
316
+ lineHeight: string;
317
+ fontWeight: number;
318
+ letterSpacing: string;
319
+ };
320
+ 'subheading-lg': {
321
+ fontSize: string;
322
+ lineHeight: string;
323
+ fontWeight: number;
324
+ letterSpacing: string;
325
+ };
326
+ 'subheading-md': {
327
+ fontSize: string;
328
+ lineHeight: string;
329
+ fontWeight: number;
330
+ letterSpacing: string;
331
+ };
332
+ 'subheading-sm': {
333
+ fontSize: string;
334
+ lineHeight: string;
335
+ fontWeight: number;
336
+ letterSpacing: string;
337
+ };
338
+ 'body-bold-lg': {
339
+ fontSize: string;
340
+ lineHeight: string;
341
+ fontWeight: number;
342
+ letterSpacing: string;
343
+ };
344
+ 'body-bold-md': {
345
+ fontSize: string;
346
+ lineHeight: string;
347
+ fontWeight: number;
348
+ letterSpacing: string;
349
+ };
350
+ 'body-bold-sm': {
351
+ fontSize: string;
352
+ lineHeight: string;
353
+ fontWeight: number;
354
+ letterSpacing: string;
355
+ };
356
+ 'body-bold-xs': {
357
+ fontSize: string;
358
+ lineHeight: string;
359
+ fontWeight: number;
360
+ letterSpacing: string;
361
+ };
362
+ 'body-lg': {
363
+ fontSize: string;
364
+ lineHeight: string;
365
+ fontWeight: number;
366
+ letterSpacing: string;
367
+ };
368
+ 'body-md': {
369
+ fontSize: string;
370
+ lineHeight: string;
371
+ fontWeight: number;
372
+ letterSpacing: string;
373
+ };
374
+ 'body-sm': {
375
+ fontSize: string;
376
+ lineHeight: string;
377
+ fontWeight: number;
378
+ letterSpacing: string;
379
+ };
380
+ 'body-xs': {
381
+ fontSize: string;
382
+ lineHeight: string;
383
+ fontWeight: number;
384
+ letterSpacing: string;
385
+ };
386
+ 'caption-c1': {
387
+ fontSize: string;
388
+ lineHeight: string;
389
+ fontWeight: number;
390
+ letterSpacing: string;
391
+ };
392
+ };
393
+
394
+ export { fontFamily, fontSize, fontWeight, generateTypographyCSS, letterSpacing, lineHeight, presets, typography, typographyVars };
@@ -0,0 +1,302 @@
1
+ 'use strict';
2
+
3
+ // src/tokens/typography.ts
4
+ var typography = {
5
+ fontFamily: {
6
+ primary: [
7
+ "Rubik",
8
+ "-apple-system",
9
+ "BlinkMacSystemFont",
10
+ "Segoe UI",
11
+ "Roboto",
12
+ "Oxygen",
13
+ "Ubuntu",
14
+ "Cantarell",
15
+ "sans-serif"
16
+ ]
17
+ },
18
+ fontWeight: {
19
+ light: 300,
20
+ regular: 400,
21
+ medium: 500,
22
+ semibold: 600,
23
+ bold: 700
24
+ },
25
+ fontSize: {
26
+ // Display Scale - Large typography for hero sections and prominent headers
27
+ display: {
28
+ l: "2.5rem"
29
+ // 40px - Display/L
30
+ },
31
+ // Heading Scale - Semantic headings with Bold weight
32
+ heading: {
33
+ xl: "2.25rem",
34
+ // 36px - Heading/XL
35
+ lg: "2rem",
36
+ // 32px - Heading/L
37
+ md: "1.75rem",
38
+ // 28px - Heading/M
39
+ sm: "1.5rem"
40
+ // 24px - Heading/S
41
+ },
42
+ // Subheading Scale - Secondary headings with Bold weight
43
+ subheading: {
44
+ lg: "1.25rem",
45
+ // 20px - Subheading/L
46
+ md: "1.125rem",
47
+ // 18px - Subheading/M
48
+ sm: "1rem"
49
+ // 16px - Subheading/S
50
+ },
51
+ // Body Scale - Text content with Regular and Semi-bold variants
52
+ body: {
53
+ // Body Bold variants (Semi-bold weight)
54
+ "bold-lg": "1.125rem",
55
+ // 18px - Body/Bold/L
56
+ "bold-md": "1rem",
57
+ // 16px - Body/Bold/M
58
+ "bold-sm": "0.875rem",
59
+ // 14px - Body/Bold/S
60
+ "bold-xs": "0.75rem",
61
+ // 12px - Body/Bold/XS
62
+ // Body Regular variants
63
+ lg: "1.125rem",
64
+ // 18px - Body/L
65
+ md: "1rem",
66
+ // 16px - Body/M
67
+ sm: "0.875rem",
68
+ // 14px - Body/S
69
+ xs: "0.75rem"
70
+ // 12px - Body/XS
71
+ },
72
+ // Caption Scale - Small text for labels and metadata
73
+ caption: {
74
+ "c1": "0.75rem"
75
+ // 12px - Caption/C-1
76
+ }
77
+ },
78
+ lineHeight: {
79
+ // Display line heights
80
+ display: {
81
+ l: "3.25rem"
82
+ // 52px - Display/L
83
+ },
84
+ // Heading line heights
85
+ heading: {
86
+ xl: "2.75rem",
87
+ // 44px - Heading/XL
88
+ lg: "2.5rem",
89
+ // 40px - Heading/L
90
+ md: "2.25rem",
91
+ // 36px - Heading/M
92
+ sm: "2rem"
93
+ // 32px - Heading/S
94
+ },
95
+ // Subheading line heights
96
+ subheading: {
97
+ lg: "1.75rem",
98
+ // 28px - Subheading/L
99
+ md: "1.5rem",
100
+ // 24px - Subheading/M
101
+ sm: "1.25rem"
102
+ // 20px - Subheading/S
103
+ },
104
+ // Body line heights (same for both bold and regular)
105
+ body: {
106
+ lg: "1.75rem",
107
+ // 28px - Body/L & Body/Bold/L
108
+ md: "1.5rem",
109
+ // 24px - Body/M & Body/Bold/M
110
+ sm: "1.25rem",
111
+ // 20px - Body/S & Body/Bold/S
112
+ xs: "1.25rem"
113
+ // 20px - Body/XS & Body/Bold/XS
114
+ },
115
+ // Caption line heights
116
+ caption: {
117
+ c1: "1.125rem"
118
+ // 18px - Caption/C-1
119
+ }
120
+ },
121
+ // Letter spacing values
122
+ letterSpacing: {
123
+ normal: "0px",
124
+ // 0px - Default for most text
125
+ caption: "4px"
126
+ // 4px - Caption/C-1 specific
127
+ },
128
+ // Pre-composed typography styles for common use cases
129
+ presets: {
130
+ // Display presets
131
+ "display-l": {
132
+ fontSize: "2.5rem",
133
+ lineHeight: "3.25rem",
134
+ fontWeight: 700,
135
+ letterSpacing: "0px"
136
+ },
137
+ // Heading presets (all use Bold weight)
138
+ "heading-xl": {
139
+ fontSize: "2.25rem",
140
+ lineHeight: "2.75rem",
141
+ fontWeight: 700,
142
+ letterSpacing: "0px"
143
+ },
144
+ "heading-lg": {
145
+ fontSize: "2rem",
146
+ lineHeight: "2.5rem",
147
+ fontWeight: 700,
148
+ letterSpacing: "0px"
149
+ },
150
+ "heading-md": {
151
+ fontSize: "1.75rem",
152
+ lineHeight: "2.25rem",
153
+ fontWeight: 700,
154
+ letterSpacing: "0px"
155
+ },
156
+ "heading-sm": {
157
+ fontSize: "1.5rem",
158
+ lineHeight: "2rem",
159
+ fontWeight: 700,
160
+ letterSpacing: "0px"
161
+ },
162
+ // Subheading presets (all use Bold weight)
163
+ "subheading-lg": {
164
+ fontSize: "1.25rem",
165
+ lineHeight: "1.75rem",
166
+ fontWeight: 700,
167
+ letterSpacing: "0px"
168
+ },
169
+ "subheading-md": {
170
+ fontSize: "1.125rem",
171
+ lineHeight: "1.5rem",
172
+ fontWeight: 700,
173
+ letterSpacing: "0px"
174
+ },
175
+ "subheading-sm": {
176
+ fontSize: "1rem",
177
+ lineHeight: "1.25rem",
178
+ fontWeight: 700,
179
+ letterSpacing: "0px"
180
+ },
181
+ // Body Bold presets (Semi-bold weight)
182
+ "body-bold-lg": {
183
+ fontSize: "1.125rem",
184
+ lineHeight: "1.75rem",
185
+ fontWeight: 600,
186
+ letterSpacing: "0px"
187
+ },
188
+ "body-bold-md": {
189
+ fontSize: "1rem",
190
+ lineHeight: "1.5rem",
191
+ fontWeight: 600,
192
+ letterSpacing: "0px"
193
+ },
194
+ "body-bold-sm": {
195
+ fontSize: "0.875rem",
196
+ lineHeight: "1.25rem",
197
+ fontWeight: 600,
198
+ letterSpacing: "0px"
199
+ },
200
+ "body-bold-xs": {
201
+ fontSize: "0.75rem",
202
+ lineHeight: "1.25rem",
203
+ fontWeight: 600,
204
+ letterSpacing: "0px"
205
+ },
206
+ // Body Regular presets
207
+ "body-lg": {
208
+ fontSize: "1.125rem",
209
+ lineHeight: "1.75rem",
210
+ fontWeight: 400,
211
+ letterSpacing: "0px"
212
+ },
213
+ "body-md": {
214
+ fontSize: "1rem",
215
+ lineHeight: "1.5rem",
216
+ fontWeight: 400,
217
+ letterSpacing: "0px"
218
+ },
219
+ "body-sm": {
220
+ fontSize: "0.875rem",
221
+ lineHeight: "1.25rem",
222
+ fontWeight: 400,
223
+ letterSpacing: "0px"
224
+ },
225
+ "body-xs": {
226
+ fontSize: "0.75rem",
227
+ lineHeight: "1.25rem",
228
+ fontWeight: 400,
229
+ letterSpacing: "0px"
230
+ },
231
+ // Caption presets
232
+ "caption-c1": {
233
+ fontSize: "0.75rem",
234
+ lineHeight: "1.125rem",
235
+ fontWeight: 400,
236
+ letterSpacing: "4px"
237
+ }
238
+ }
239
+ };
240
+ var typographyVars = {
241
+ // Font family
242
+ "--font-primary": typography.fontFamily.primary.join(", "),
243
+ // Font weights
244
+ "--font-weight-light": typography.fontWeight.light,
245
+ "--font-weight-regular": typography.fontWeight.regular,
246
+ "--font-weight-medium": typography.fontWeight.medium,
247
+ "--font-weight-semibold": typography.fontWeight.semibold,
248
+ "--font-weight-bold": typography.fontWeight.bold,
249
+ // Display scale
250
+ "--text-display-l": typography.fontSize.display.l,
251
+ // Heading scale
252
+ "--text-heading-xl": typography.fontSize.heading.xl,
253
+ "--text-heading-lg": typography.fontSize.heading.lg,
254
+ "--text-heading-md": typography.fontSize.heading.md,
255
+ "--text-heading-sm": typography.fontSize.heading.sm,
256
+ // Subheading scale
257
+ "--text-subheading-lg": typography.fontSize.subheading.lg,
258
+ "--text-subheading-md": typography.fontSize.subheading.md,
259
+ "--text-subheading-sm": typography.fontSize.subheading.sm,
260
+ // Body scale
261
+ "--text-body-bold-lg": typography.fontSize.body["bold-lg"],
262
+ "--text-body-bold-md": typography.fontSize.body["bold-md"],
263
+ "--text-body-bold-sm": typography.fontSize.body["bold-sm"],
264
+ "--text-body-bold-xs": typography.fontSize.body["bold-xs"],
265
+ "--text-body-lg": typography.fontSize.body.lg,
266
+ "--text-body-md": typography.fontSize.body.md,
267
+ "--text-body-sm": typography.fontSize.body.sm,
268
+ "--text-body-xs": typography.fontSize.body.xs,
269
+ // Caption scale
270
+ "--text-caption-c1": typography.fontSize.caption.c1,
271
+ // Line heights
272
+ "--leading-display-l": typography.lineHeight.display.l,
273
+ "--leading-heading-xl": typography.lineHeight.heading.xl,
274
+ "--leading-heading-lg": typography.lineHeight.heading.lg,
275
+ "--leading-heading-md": typography.lineHeight.heading.md,
276
+ "--leading-heading-sm": typography.lineHeight.heading.sm,
277
+ "--leading-subheading-lg": typography.lineHeight.subheading.lg,
278
+ "--leading-subheading-md": typography.lineHeight.subheading.md,
279
+ "--leading-subheading-sm": typography.lineHeight.subheading.sm,
280
+ "--leading-body-lg": typography.lineHeight.body.lg,
281
+ "--leading-body-md": typography.lineHeight.body.md,
282
+ "--leading-body-sm": typography.lineHeight.body.sm,
283
+ "--leading-body-xs": typography.lineHeight.body.xs,
284
+ "--leading-caption-c1": typography.lineHeight.caption.c1,
285
+ // Letter spacing
286
+ "--tracking-normal": typography.letterSpacing.normal,
287
+ "--tracking-caption": typography.letterSpacing.caption
288
+ };
289
+ var generateTypographyCSS = () => {
290
+ return Object.entries(typographyVars).map(([property, value]) => ` ${property}: ${value};`).join("\n");
291
+ };
292
+ var { fontFamily, fontWeight, fontSize, lineHeight, letterSpacing, presets } = typography;
293
+
294
+ exports.fontFamily = fontFamily;
295
+ exports.fontSize = fontSize;
296
+ exports.fontWeight = fontWeight;
297
+ exports.generateTypographyCSS = generateTypographyCSS;
298
+ exports.letterSpacing = letterSpacing;
299
+ exports.lineHeight = lineHeight;
300
+ exports.presets = presets;
301
+ exports.typography = typography;
302
+ exports.typographyVars = typographyVars;