@work-rjkashyap/unified-ui 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 (60) hide show
  1. package/CHANGELOG.md +152 -0
  2. package/README.md +365 -0
  3. package/dist/chunk-2JFREULQ.cjs +29 -0
  4. package/dist/chunk-2RGLRX6K.cjs +279 -0
  5. package/dist/chunk-3HHJAYQI.cjs +469 -0
  6. package/dist/chunk-5S5DMH5G.cjs +5983 -0
  7. package/dist/chunk-BIW2RPDU.cjs +73 -0
  8. package/dist/chunk-CWETOWRM.mjs +456 -0
  9. package/dist/chunk-ECIGDEAH.cjs +140 -0
  10. package/dist/chunk-EO4WROWH.mjs +432 -0
  11. package/dist/chunk-EZ2L3XPS.mjs +83 -0
  12. package/dist/chunk-I74E52C5.mjs +271 -0
  13. package/dist/chunk-ITBG42M5.mjs +133 -0
  14. package/dist/chunk-IWJ5VMZ7.mjs +323 -0
  15. package/dist/chunk-KHON2AEM.cjs +342 -0
  16. package/dist/chunk-LSNKPQP7.cjs +58 -0
  17. package/dist/chunk-M2LNQWOB.mjs +63 -0
  18. package/dist/chunk-NMPHV6ZD.mjs +27 -0
  19. package/dist/chunk-QXR4VY7Q.cjs +268 -0
  20. package/dist/chunk-SSGN5QDC.mjs +248 -0
  21. package/dist/chunk-X2WCY4VB.mjs +5836 -0
  22. package/dist/chunk-XCKK6P46.cjs +91 -0
  23. package/dist/chunk-ZBN26FLO.mjs +46 -0
  24. package/dist/chunk-ZPIPKY2J.cjs +478 -0
  25. package/dist/components.cjs +477 -0
  26. package/dist/components.d.cts +3077 -0
  27. package/dist/components.d.ts +3077 -0
  28. package/dist/components.mjs +4 -0
  29. package/dist/index.cjs +1027 -0
  30. package/dist/index.d.cts +30 -0
  31. package/dist/index.d.ts +30 -0
  32. package/dist/index.mjs +17 -0
  33. package/dist/motion-D9wQbcKL.d.cts +80 -0
  34. package/dist/motion-D9wQbcKL.d.ts +80 -0
  35. package/dist/motion.cjs +216 -0
  36. package/dist/motion.d.cts +104 -0
  37. package/dist/motion.d.ts +104 -0
  38. package/dist/motion.mjs +3 -0
  39. package/dist/primitives.cjs +57 -0
  40. package/dist/primitives.d.cts +390 -0
  41. package/dist/primitives.d.ts +390 -0
  42. package/dist/primitives.mjs +4 -0
  43. package/dist/theme.cjs +38 -0
  44. package/dist/theme.d.cts +117 -0
  45. package/dist/theme.d.ts +117 -0
  46. package/dist/theme.mjs +5 -0
  47. package/dist/tokens.cjs +137 -0
  48. package/dist/tokens.d.cts +30 -0
  49. package/dist/tokens.d.ts +30 -0
  50. package/dist/tokens.mjs +4 -0
  51. package/dist/typography-DlvVjEdE.d.cts +146 -0
  52. package/dist/typography-DlvVjEdE.d.ts +146 -0
  53. package/dist/utils.cjs +164 -0
  54. package/dist/utils.d.cts +521 -0
  55. package/dist/utils.d.ts +521 -0
  56. package/dist/utils.mjs +3 -0
  57. package/dist/z-index-B_nTQ3qo.d.cts +422 -0
  58. package/dist/z-index-B_nTQ3qo.d.ts +422 -0
  59. package/package.json +183 -0
  60. package/styles.css +500 -0
@@ -0,0 +1,469 @@
1
+ 'use strict';
2
+
3
+ var chunkECIGDEAH_cjs = require('./chunk-ECIGDEAH.cjs');
4
+ var chunkBIW2RPDU_cjs = require('./chunk-BIW2RPDU.cjs');
5
+ var react = require('react');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ var sizeClassMap = {
9
+ /** 640px — narrow forms, single-column content */
10
+ xs: "max-w-screen-sm",
11
+ /** 768px — articles, focused reading content */
12
+ sm: "max-w-screen-md",
13
+ /** 1024px — dashboards, multi-column layouts */
14
+ md: "max-w-screen-lg",
15
+ /** 1280px — default, full-width page content */
16
+ lg: "max-w-7xl",
17
+ /** No max-width constraint — full bleed */
18
+ full: "max-w-full"
19
+ };
20
+ var paddingClassMap = {
21
+ /** No horizontal padding */
22
+ none: "",
23
+ /** Tighter padding: px-3 → px-4 → px-6 */
24
+ tight: "px-3 sm:px-4 lg:px-6",
25
+ /** Standard padding: px-4 → px-6 → px-8 (project default) */
26
+ default: "px-4 sm:px-6 lg:px-8",
27
+ /** Wider padding: px-6 → px-8 → px-10 */
28
+ wide: "px-6 sm:px-8 lg:px-10"
29
+ };
30
+ var Container = react.forwardRef(
31
+ function Container2({
32
+ size = "lg",
33
+ padding = "default",
34
+ centered = true,
35
+ as: Component = "div",
36
+ className,
37
+ children,
38
+ ...rest
39
+ }, ref) {
40
+ return /* @__PURE__ */ jsxRuntime.jsx(
41
+ Component,
42
+ {
43
+ ref,
44
+ className: chunkBIW2RPDU_cjs.cn(
45
+ // Max-width constraint
46
+ sizeClassMap[size],
47
+ // Responsive horizontal padding
48
+ paddingClassMap[padding],
49
+ // Centering
50
+ centered && "mx-auto",
51
+ // Width fills available space up to max-width
52
+ "w-full",
53
+ // Consumer overrides
54
+ className
55
+ ),
56
+ "data-ds": "",
57
+ "data-ds-component": "container",
58
+ ...rest,
59
+ children
60
+ }
61
+ );
62
+ }
63
+ );
64
+ Container.displayName = "Container";
65
+ var spacingYMap = {
66
+ 0: "my-0",
67
+ 1: "my-1",
68
+ 2: "my-2",
69
+ 3: "my-3",
70
+ 4: "my-4",
71
+ 5: "my-5",
72
+ 6: "my-6",
73
+ 8: "my-8",
74
+ 10: "my-10",
75
+ 12: "my-12"
76
+ };
77
+ var spacingXMap = {
78
+ 0: "mx-0",
79
+ 1: "mx-1",
80
+ 2: "mx-2",
81
+ 3: "mx-3",
82
+ 4: "mx-4",
83
+ 5: "mx-5",
84
+ 6: "mx-6",
85
+ 8: "mx-8",
86
+ 10: "mx-10",
87
+ 12: "mx-12"
88
+ };
89
+ var Divider = react.forwardRef(function Divider2({ spacing = 4, orientation = "horizontal", className, ...rest }, ref) {
90
+ const isVertical = orientation === "vertical";
91
+ return /* @__PURE__ */ jsxRuntime.jsx(
92
+ "hr",
93
+ {
94
+ ref,
95
+ role: "separator",
96
+ "aria-orientation": orientation,
97
+ className: chunkBIW2RPDU_cjs.cn(
98
+ "border-none shrink-0",
99
+ isVertical ? chunkBIW2RPDU_cjs.cn("w-px self-stretch bg-ds-border", spacingXMap[spacing] ?? "mx-4") : chunkBIW2RPDU_cjs.cn("h-px w-full bg-ds-border", spacingYMap[spacing] ?? "my-4"),
100
+ className
101
+ ),
102
+ "data-ds": "",
103
+ "data-ds-component": "divider",
104
+ ...rest
105
+ }
106
+ );
107
+ });
108
+ Divider.displayName = "Divider";
109
+ var gapClassMap = {
110
+ 0: "gap-0",
111
+ 0.5: "gap-0.5",
112
+ 1: "gap-1",
113
+ 1.5: "gap-1.5",
114
+ 2: "gap-2",
115
+ 2.5: "gap-2.5",
116
+ 3: "gap-3",
117
+ 3.5: "gap-3.5",
118
+ 4: "gap-4",
119
+ 5: "gap-5",
120
+ 6: "gap-6",
121
+ 7: "gap-7",
122
+ 8: "gap-8",
123
+ 9: "gap-9",
124
+ 10: "gap-10",
125
+ 11: "gap-11",
126
+ 12: "gap-12",
127
+ 14: "gap-14",
128
+ 16: "gap-16",
129
+ 20: "gap-20",
130
+ 24: "gap-24"
131
+ };
132
+ var directionClassMap = {
133
+ vertical: "flex-col",
134
+ horizontal: "flex-row"
135
+ };
136
+ var alignClassMap = {
137
+ start: "items-start",
138
+ center: "items-center",
139
+ end: "items-end",
140
+ stretch: "items-stretch",
141
+ baseline: "items-baseline"
142
+ };
143
+ var justifyClassMap = {
144
+ start: "justify-start",
145
+ center: "justify-center",
146
+ end: "justify-end",
147
+ between: "justify-between",
148
+ around: "justify-around",
149
+ evenly: "justify-evenly"
150
+ };
151
+ var Stack = react.forwardRef(function Stack2({
152
+ gap = 4,
153
+ direction = "vertical",
154
+ align,
155
+ justify,
156
+ wrap = false,
157
+ as: Component = "div",
158
+ className,
159
+ children,
160
+ ...rest
161
+ }, ref) {
162
+ return /* @__PURE__ */ jsxRuntime.jsx(
163
+ Component,
164
+ {
165
+ ref,
166
+ className: chunkBIW2RPDU_cjs.cn(
167
+ "flex",
168
+ directionClassMap[direction],
169
+ gapClassMap[gap],
170
+ align && alignClassMap[align],
171
+ justify && justifyClassMap[justify],
172
+ wrap && "flex-wrap",
173
+ className
174
+ ),
175
+ "data-ds": "",
176
+ "data-ds-component": "stack",
177
+ ...rest,
178
+ children
179
+ }
180
+ );
181
+ });
182
+ Stack.displayName = "Stack";
183
+ var colsClassMap = {
184
+ 1: "grid-cols-1",
185
+ 2: "grid-cols-2",
186
+ 3: "grid-cols-3",
187
+ 4: "grid-cols-4",
188
+ 5: "grid-cols-5",
189
+ 6: "grid-cols-6"
190
+ };
191
+ var colsSmClassMap = {
192
+ 1: "sm:grid-cols-1",
193
+ 2: "sm:grid-cols-2",
194
+ 3: "sm:grid-cols-3",
195
+ 4: "sm:grid-cols-4"
196
+ };
197
+ var colsMdClassMap = {
198
+ 1: "md:grid-cols-1",
199
+ 2: "md:grid-cols-2",
200
+ 3: "md:grid-cols-3",
201
+ 4: "md:grid-cols-4"
202
+ };
203
+ var colsLgClassMap = {
204
+ 1: "lg:grid-cols-1",
205
+ 2: "lg:grid-cols-2",
206
+ 3: "lg:grid-cols-3",
207
+ 4: "lg:grid-cols-4",
208
+ 5: "lg:grid-cols-5",
209
+ 6: "lg:grid-cols-6"
210
+ };
211
+ var Grid = react.forwardRef(function Grid2({
212
+ cols = 1,
213
+ colsSm,
214
+ colsMd,
215
+ colsLg,
216
+ gap = 4,
217
+ as: Component = "div",
218
+ className,
219
+ children,
220
+ ...rest
221
+ }, ref) {
222
+ return /* @__PURE__ */ jsxRuntime.jsx(
223
+ Component,
224
+ {
225
+ ref,
226
+ className: chunkBIW2RPDU_cjs.cn(
227
+ "grid",
228
+ colsClassMap[cols],
229
+ colsSm && colsSmClassMap[colsSm],
230
+ colsMd && colsMdClassMap[colsMd],
231
+ colsLg && colsLgClassMap[colsLg],
232
+ gapClassMap[gap],
233
+ className
234
+ ),
235
+ "data-ds": "",
236
+ "data-ds-component": "grid",
237
+ ...rest,
238
+ children
239
+ }
240
+ );
241
+ });
242
+ Grid.displayName = "Grid";
243
+ var fontClassMap = {
244
+ display: "font-ds-display",
245
+ sans: "font-ds-sans",
246
+ serif: "font-ds-serif",
247
+ mono: "font-ds-mono",
248
+ inherit: "font-[inherit]"
249
+ };
250
+ var variantDefaultFont = {
251
+ heading1: chunkECIGDEAH_cjs.typographyVariants.heading1.fontFamily,
252
+ heading2: chunkECIGDEAH_cjs.typographyVariants.heading2.fontFamily,
253
+ heading3: chunkECIGDEAH_cjs.typographyVariants.heading3.fontFamily,
254
+ subheading: chunkECIGDEAH_cjs.typographyVariants.subheading.fontFamily,
255
+ body: chunkECIGDEAH_cjs.typographyVariants.body.fontFamily,
256
+ bodySm: chunkECIGDEAH_cjs.typographyVariants.bodySm.fontFamily,
257
+ caption: chunkECIGDEAH_cjs.typographyVariants.caption.fontFamily,
258
+ label: chunkECIGDEAH_cjs.typographyVariants.label.fontFamily,
259
+ overline: chunkECIGDEAH_cjs.typographyVariants.overline.fontFamily,
260
+ code: chunkECIGDEAH_cjs.typographyVariants.code.fontFamily
261
+ };
262
+ var defaultElementMap = {
263
+ heading1: "h1",
264
+ heading2: "h2",
265
+ heading3: "h3",
266
+ subheading: "h4",
267
+ body: "p",
268
+ bodySm: "p",
269
+ caption: "span",
270
+ label: "label",
271
+ overline: "span",
272
+ code: "code"
273
+ };
274
+ var variantClassMap = {
275
+ heading1: "text-[30px] leading-[36px] font-bold tracking-tight text-ds-foreground",
276
+ heading2: "text-[24px] leading-[32px] font-semibold tracking-tight text-ds-foreground",
277
+ heading3: "text-[20px] leading-[28px] font-semibold tracking-normal text-ds-foreground",
278
+ subheading: "text-[18px] leading-[28px] font-medium tracking-normal text-ds-foreground",
279
+ body: "text-[16px] leading-[24px] font-normal tracking-normal text-ds-foreground",
280
+ bodySm: "text-[14px] leading-[20px] font-normal tracking-normal text-ds-foreground",
281
+ caption: "text-[12px] leading-[16px] font-normal tracking-wide text-ds-muted-foreground",
282
+ label: "text-[14px] leading-[20px] font-medium tracking-normal text-ds-foreground",
283
+ overline: "text-[12px] leading-[16px] font-semibold tracking-wider uppercase text-ds-muted-foreground",
284
+ code: "text-[14px] leading-[20px] font-normal tracking-normal text-ds-foreground"
285
+ };
286
+ var colorClassMap = {
287
+ default: "",
288
+ foreground: "text-ds-foreground",
289
+ muted: "text-ds-muted-foreground",
290
+ primary: "text-ds-primary",
291
+ success: "text-ds-success",
292
+ warning: "text-ds-warning",
293
+ danger: "text-ds-danger",
294
+ info: "text-ds-info",
295
+ inherit: "text-inherit"
296
+ };
297
+ var alignClassMap2 = {
298
+ left: "text-left",
299
+ center: "text-center",
300
+ right: "text-right"
301
+ };
302
+ var lineClampClassMap = {
303
+ 1: "line-clamp-1",
304
+ 2: "line-clamp-2",
305
+ 3: "line-clamp-3",
306
+ 4: "line-clamp-4",
307
+ 5: "line-clamp-5",
308
+ 6: "line-clamp-6"
309
+ };
310
+ var Typography = react.forwardRef(
311
+ function Typography2({
312
+ variant = "body",
313
+ font,
314
+ color = "default",
315
+ align,
316
+ as,
317
+ truncate = false,
318
+ lineClamp,
319
+ noMargin = true,
320
+ className,
321
+ children,
322
+ ...rest
323
+ }, ref) {
324
+ const Component = as ?? defaultElementMap[variant];
325
+ const resolvedFont = font ?? variantDefaultFont[variant];
326
+ const classes = chunkBIW2RPDU_cjs.cn(
327
+ // Base variant styles (size, weight, line-height, tracking, default color)
328
+ variantClassMap[variant],
329
+ // Font family (resolved from prop or variant default)
330
+ fontClassMap[resolvedFont],
331
+ // Color override (only applied if not "default" — default keeps variant's color)
332
+ color !== "default" && colorClassMap[color],
333
+ // Alignment
334
+ align && alignClassMap2[align],
335
+ // Truncation
336
+ truncate && "truncate",
337
+ // Line clamping
338
+ lineClamp && lineClampClassMap[lineClamp],
339
+ // Margin reset
340
+ noMargin && "m-0",
341
+ // Consumer overrides
342
+ className
343
+ );
344
+ return /* @__PURE__ */ jsxRuntime.jsx(
345
+ Component,
346
+ {
347
+ ref,
348
+ className: classes,
349
+ "data-ds": "",
350
+ "data-ds-component": "typography",
351
+ "data-ds-variant": variant,
352
+ ...rest,
353
+ children
354
+ }
355
+ );
356
+ }
357
+ );
358
+ Typography.displayName = "Typography";
359
+ var headingVariantMap = {
360
+ 1: "heading1",
361
+ 2: "heading2",
362
+ 3: "heading3"
363
+ };
364
+ var Heading = react.forwardRef(
365
+ function Heading2({ level = 1, ...rest }, ref) {
366
+ return /* @__PURE__ */ jsxRuntime.jsx(
367
+ Typography,
368
+ {
369
+ ref,
370
+ variant: headingVariantMap[level],
371
+ ...rest
372
+ }
373
+ );
374
+ }
375
+ );
376
+ Heading.displayName = "Heading";
377
+ var Subheading = react.forwardRef(
378
+ function Subheading2(props, ref) {
379
+ return /* @__PURE__ */ jsxRuntime.jsx(Typography, { ref, variant: "subheading", ...props });
380
+ }
381
+ );
382
+ Subheading.displayName = "Subheading";
383
+ var Body = react.forwardRef(function Body2({ small = false, ...rest }, ref) {
384
+ return /* @__PURE__ */ jsxRuntime.jsx(
385
+ Typography,
386
+ {
387
+ ref,
388
+ variant: small ? "bodySm" : "body",
389
+ ...rest
390
+ }
391
+ );
392
+ });
393
+ Body.displayName = "Body";
394
+ var Caption = react.forwardRef(function Caption2({ color = "muted", ...rest }, ref) {
395
+ return /* @__PURE__ */ jsxRuntime.jsx(Typography, { ref, variant: "caption", color, ...rest });
396
+ });
397
+ Caption.displayName = "Caption";
398
+ var Label = react.forwardRef(function Label2({
399
+ htmlFor,
400
+ font,
401
+ color,
402
+ align,
403
+ as,
404
+ truncate,
405
+ lineClamp,
406
+ noMargin = true,
407
+ className,
408
+ children,
409
+ ...rest
410
+ }, ref) {
411
+ const resolvedFont = font ?? variantDefaultFont.label;
412
+ const classes = chunkBIW2RPDU_cjs.cn(
413
+ variantClassMap.label,
414
+ fontClassMap[resolvedFont],
415
+ color && color !== "default" && colorClassMap[color],
416
+ align && alignClassMap2[align],
417
+ truncate && "truncate",
418
+ lineClamp && lineClampClassMap[lineClamp],
419
+ noMargin && "m-0",
420
+ className
421
+ );
422
+ return /* @__PURE__ */ jsxRuntime.jsx(
423
+ "label",
424
+ {
425
+ ref,
426
+ htmlFor,
427
+ className: classes,
428
+ "data-ds": "",
429
+ "data-ds-component": "typography",
430
+ "data-ds-variant": "label",
431
+ ...rest,
432
+ children
433
+ }
434
+ );
435
+ });
436
+ Label.displayName = "Label";
437
+ var Overline = react.forwardRef(
438
+ function Overline2({ color = "muted", ...rest }, ref) {
439
+ return /* @__PURE__ */ jsxRuntime.jsx(Typography, { ref, variant: "overline", color, ...rest });
440
+ }
441
+ );
442
+ Overline.displayName = "Overline";
443
+ var InlineCode = react.forwardRef(
444
+ function InlineCode2({ className, ...rest }, ref) {
445
+ return /* @__PURE__ */ jsxRuntime.jsx(
446
+ Typography,
447
+ {
448
+ ref,
449
+ variant: "code",
450
+ className: chunkBIW2RPDU_cjs.cn("rounded-ds-sm bg-ds-muted px-1.5 py-0.5", className),
451
+ ...rest
452
+ }
453
+ );
454
+ }
455
+ );
456
+ InlineCode.displayName = "InlineCode";
457
+
458
+ exports.Body = Body;
459
+ exports.Caption = Caption;
460
+ exports.Container = Container;
461
+ exports.Divider = Divider;
462
+ exports.Grid = Grid;
463
+ exports.Heading = Heading;
464
+ exports.InlineCode = InlineCode;
465
+ exports.Label = Label;
466
+ exports.Overline = Overline;
467
+ exports.Stack = Stack;
468
+ exports.Subheading = Subheading;
469
+ exports.Typography = Typography;