@yuva-devlab/ui 1.4.4 → 2.0.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 (90) hide show
  1. package/README.md +117 -33
  2. package/dist/components/accordion/accordion.mdx +18 -0
  3. package/dist/components/alert/alert.css +2 -2
  4. package/dist/components/alert-dialog/alert-dialog.mdx +18 -0
  5. package/dist/components/aspect-ratio/aspect-ratio.mdx +22 -0
  6. package/dist/components/breadcrumb/breadcrumb.mdx +18 -0
  7. package/dist/components/calendar/calendar-nav.css +111 -0
  8. package/dist/components/calendar/calendar.css +27 -82
  9. package/dist/components/calendar/calendar.mdx +18 -0
  10. package/dist/components/card/card.css +4 -4
  11. package/dist/components/carousel/carousel.css +4 -4
  12. package/dist/components/carousel/carousel.mdx +18 -0
  13. package/dist/components/chart/chart.css +86 -0
  14. package/dist/components/chart/chart.mdx +18 -0
  15. package/dist/components/checkbox/checkbox.css +11 -0
  16. package/dist/components/collapsible/collapsible.mdx +18 -0
  17. package/dist/components/command/command.css +3 -3
  18. package/dist/components/command/command.mdx +18 -0
  19. package/dist/components/confirm-dialog/confirm-dialog.mdx +18 -0
  20. package/dist/components/context-menu/context-menu.mdx +18 -0
  21. package/dist/components/copy-button/copy-button.mdx +18 -0
  22. package/dist/components/date-picker/date-picker.css +2 -2
  23. package/dist/components/date-picker/date-picker.mdx +18 -0
  24. package/dist/components/dialog/dialog.css +6 -6
  25. package/dist/components/drawer/drawer.mdx +18 -0
  26. package/dist/components/dropdown-menu/dropdown-menu.css +18 -0
  27. package/dist/components/dropdown-menu/dropdown-menu.mdx +18 -0
  28. package/dist/components/empty-state/empty-state.css +67 -0
  29. package/dist/components/empty-state/empty-state.mdx +18 -0
  30. package/dist/components/form/form.mdx +18 -0
  31. package/dist/components/hover-card/hover-card.mdx +18 -0
  32. package/dist/components/input-otp/input-otp.mdx +18 -0
  33. package/dist/components/label/label.mdx +18 -0
  34. package/dist/components/layout/layout.css +158 -0
  35. package/dist/components/layout/layout.mdx +30 -0
  36. package/dist/components/loading-state/loading-state.css +11 -0
  37. package/dist/components/loading-state/loading-state.mdx +18 -0
  38. package/dist/components/menubar/menubar.css +4 -4
  39. package/dist/components/menubar/menubar.mdx +18 -0
  40. package/dist/components/metric-card/metric-card.mdx +18 -0
  41. package/dist/components/navigation-menu/navigation-menu.css +2 -2
  42. package/dist/components/navigation-menu/navigation-menu.mdx +18 -0
  43. package/dist/components/pagination/pagination.css +8 -2
  44. package/dist/components/pagination/pagination.mdx +18 -0
  45. package/dist/components/panel/panel.mdx +18 -0
  46. package/dist/components/popover/popover.css +2 -2
  47. package/dist/components/popover/popover.mdx +18 -0
  48. package/dist/components/radio-group/radio-group.mdx +18 -0
  49. package/dist/components/resizable/resizable.mdx +18 -0
  50. package/dist/components/scroll-area/scroll-area.mdx +18 -0
  51. package/dist/components/searchable-select/searchable-select.css +26 -3
  52. package/dist/components/searchable-select/searchable-select.mdx +18 -0
  53. package/dist/components/secret-reveal-card/secret-reveal-card.css +6 -0
  54. package/dist/components/secret-reveal-card/secret-reveal-card.mdx +18 -0
  55. package/dist/components/select/select.css +16 -1
  56. package/dist/components/separator/separator.mdx +18 -0
  57. package/dist/components/sheet/sheet.css +5 -1
  58. package/dist/components/sheet/sheet.mdx +18 -0
  59. package/dist/components/sidebar/sidebar-menu.css +183 -0
  60. package/dist/components/sidebar/sidebar-submenu.css +69 -0
  61. package/dist/components/sidebar/sidebar.css +171 -4
  62. package/dist/components/sidebar/sidebar.mdx +18 -0
  63. package/dist/components/slider/slider.mdx +18 -0
  64. package/dist/components/status-chip/status-chip.mdx +18 -0
  65. package/dist/components/table/table.css +5 -3
  66. package/dist/components/tabs/tabs.css +3 -3
  67. package/dist/components/textarea/textarea.css +3 -3
  68. package/dist/components/textarea/textarea.mdx +18 -0
  69. package/dist/components/toggle/toggle.css +9 -9
  70. package/dist/components/toggle/toggle.mdx +18 -0
  71. package/dist/components/toggle-group/toggle-group.mdx +18 -0
  72. package/dist/components/tooltip/tooltip.mdx +18 -0
  73. package/dist/components/typography/heading.mdx +36 -0
  74. package/dist/components/typography/text.mdx +34 -0
  75. package/dist/components/typography/typography.css +98 -0
  76. package/dist/components.css +1156 -164
  77. package/dist/index.cjs +1206 -958
  78. package/dist/index.cjs.map +1 -1
  79. package/dist/index.d.cts +657 -196
  80. package/dist/index.d.ts +657 -196
  81. package/dist/index.js +1174 -948
  82. package/dist/index.js.map +1 -1
  83. package/dist/preset.css +2 -4
  84. package/dist/styles/components.css +1156 -164
  85. package/dist/styles/preset.css +2 -4
  86. package/dist/styles/styles.css +7 -4
  87. package/dist/styles/utilities.css +137 -0
  88. package/dist/styles.css +7 -4
  89. package/dist/utilities.css +137 -0
  90. package/package.json +5 -6
@@ -1,8 +1,6 @@
1
1
  /**
2
2
  * @file src/styles/preset.css
3
- * @description Backward compatibility bridge for @yuva-devlab/ui.
4
- * Directs downstream Tailwind 4 consumers to @yuva-devlab/tokens/preset.css
5
- * and imports UI component styles.
3
+ * @description Composite preset importing tokens and UI component styles.
6
4
  */
7
- @import "@yuva-devlab/tokens/preset.css";
5
+ @import "@yuva-devlab/tokens/styles.css";
8
6
  @import "./styles.css";
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * @file src/styles/styles.css
3
3
  * @description Master stylesheet for @yuva-devlab/ui.
4
- * Architecture: Tokens (@yuva-devlab/tokens) -> Common Primitives -> Component Styles.
5
- * Zero Tailwind dependency. Pure CSS with scoped dl-* classes.
4
+ * Architecture: Reset -> Tokens -> Components -> Layout -> Utilities.
5
+ * Governed by W3C Cascade Layers.
6
6
  */
7
7
 
8
- /* ── 0. Establish Layer Precedence (utilities > dl-components > dl-base) ─── */
9
- @layer dl-base, dl-components, utilities;
8
+ /* ── 0. Establish Layer Precedence ───────────────────────────────────────── */
9
+ @layer dl-reset, dl-tokens, dl-components, dl-layout, dl-utilities;
10
10
 
11
11
  /* ── 1. Design Tokens & Theme Baseline ───────────────────────────────────── */
12
12
  @import "@yuva-devlab/tokens/styles.css";
@@ -16,3 +16,6 @@
16
16
 
17
17
  /* ── 3. Modular Scoped Component Styles ─────────────────────────────────── */
18
18
  @import "./components.css";
19
+
20
+ /* ── 4. Zero-Runtime Platform Utilities ─────────────────────────────────── */
21
+ @import "./utilities.css";
@@ -0,0 +1,137 @@
1
+ /**
2
+ * @file src/styles/utilities.css
3
+ * @description Platform Utility Layer (@layer dl-utilities).
4
+ * Provides semantic, accessibility, icon, and text utilities.
5
+ */
6
+
7
+ @layer dl-utilities {
8
+ /* ── Accessibility ─────────────────────────────────────────────────────── */
9
+ .dl-sr-only {
10
+ position: absolute;
11
+ width: 1px;
12
+ height: 1px;
13
+ padding: 0;
14
+ margin: -1px;
15
+ overflow: hidden;
16
+ clip: rect(0, 0, 0, 0);
17
+ white-space: nowrap;
18
+ border-width: 0;
19
+ }
20
+
21
+ .dl-not-sr-only {
22
+ position: static;
23
+ width: auto;
24
+ height: auto;
25
+ padding: 0;
26
+ margin: 0;
27
+ overflow: visible;
28
+ clip: auto;
29
+ white-space: normal;
30
+ }
31
+
32
+ /* ── Text Clamping & Truncation ────────────────────────────────────────── */
33
+ .dl-truncate {
34
+ overflow: hidden;
35
+ text-overflow: ellipsis;
36
+ white-space: nowrap;
37
+ }
38
+
39
+ .dl-line-clamp-1 {
40
+ display: -webkit-box;
41
+ -webkit-line-clamp: 1;
42
+ -webkit-box-orient: vertical;
43
+ overflow: hidden;
44
+ }
45
+
46
+ .dl-line-clamp-2 {
47
+ display: -webkit-box;
48
+ -webkit-line-clamp: 2;
49
+ -webkit-box-orient: vertical;
50
+ overflow: hidden;
51
+ }
52
+
53
+ .dl-line-clamp-3 {
54
+ display: -webkit-box;
55
+ -webkit-line-clamp: 3;
56
+ -webkit-box-orient: vertical;
57
+ overflow: hidden;
58
+ }
59
+
60
+ /* ── Typography & Alignment ────────────────────────────────────────────── */
61
+ .dl-text-left {
62
+ text-align: left;
63
+ }
64
+
65
+ .dl-text-center {
66
+ text-align: center;
67
+ }
68
+
69
+ .dl-text-right {
70
+ text-align: right;
71
+ }
72
+
73
+ .dl-whitespace-nowrap {
74
+ white-space: nowrap;
75
+ }
76
+
77
+ /* ── Standard Icon Dimensions ──────────────────────────────────────────── */
78
+ .dl-icon-xs {
79
+ width: var(--icon-xs, 0.875rem);
80
+ height: var(--icon-xs, 0.875rem);
81
+ flex-shrink: 0;
82
+ }
83
+
84
+ .dl-icon-sm {
85
+ width: var(--icon-sm, 1rem);
86
+ height: var(--icon-sm, 1rem);
87
+ flex-shrink: 0;
88
+ }
89
+
90
+ .dl-icon-md {
91
+ width: var(--icon-md, 1.25rem);
92
+ height: var(--icon-md, 1.25rem);
93
+ flex-shrink: 0;
94
+ }
95
+
96
+ .dl-icon-lg {
97
+ width: var(--icon-lg, 1.5rem);
98
+ height: var(--icon-lg, 1.5rem);
99
+ flex-shrink: 0;
100
+ }
101
+
102
+ .dl-icon-xl {
103
+ width: var(--icon-xl, 2rem);
104
+ height: var(--icon-xl, 2rem);
105
+ flex-shrink: 0;
106
+ }
107
+
108
+ /* ── Containment & Overflow ────────────────────────────────────────────── */
109
+ .dl-overflow-hidden {
110
+ overflow: hidden;
111
+ }
112
+
113
+ .dl-overflow-auto {
114
+ overflow: auto;
115
+ }
116
+
117
+ .dl-overflow-x-auto {
118
+ overflow-x: auto;
119
+ }
120
+
121
+ .dl-overflow-y-auto {
122
+ overflow-y: auto;
123
+ }
124
+
125
+ /* ── Interaction ───────────────────────────────────────────────────────── */
126
+ .dl-cursor-pointer {
127
+ cursor: pointer;
128
+ }
129
+
130
+ .dl-cursor-not-allowed {
131
+ cursor: not-allowed;
132
+ }
133
+
134
+ .dl-select-none {
135
+ user-select: none;
136
+ }
137
+ }
package/dist/styles.css CHANGED
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * @file src/styles/styles.css
3
3
  * @description Master stylesheet for @yuva-devlab/ui.
4
- * Architecture: Tokens (@yuva-devlab/tokens) -> Common Primitives -> Component Styles.
5
- * Zero Tailwind dependency. Pure CSS with scoped dl-* classes.
4
+ * Architecture: Reset -> Tokens -> Components -> Layout -> Utilities.
5
+ * Governed by W3C Cascade Layers.
6
6
  */
7
7
 
8
- /* ── 0. Establish Layer Precedence (utilities > dl-components > dl-base) ─── */
9
- @layer dl-base, dl-components, utilities;
8
+ /* ── 0. Establish Layer Precedence ───────────────────────────────────────── */
9
+ @layer dl-reset, dl-tokens, dl-components, dl-layout, dl-utilities;
10
10
 
11
11
  /* ── 1. Design Tokens & Theme Baseline ───────────────────────────────────── */
12
12
  @import "@yuva-devlab/tokens/styles.css";
@@ -16,3 +16,6 @@
16
16
 
17
17
  /* ── 3. Modular Scoped Component Styles ─────────────────────────────────── */
18
18
  @import "./components.css";
19
+
20
+ /* ── 4. Zero-Runtime Platform Utilities ─────────────────────────────────── */
21
+ @import "./utilities.css";
@@ -0,0 +1,137 @@
1
+ /**
2
+ * @file src/styles/utilities.css
3
+ * @description Platform Utility Layer (@layer dl-utilities).
4
+ * Provides semantic, accessibility, icon, and text utilities.
5
+ */
6
+
7
+ @layer dl-utilities {
8
+ /* ── Accessibility ─────────────────────────────────────────────────────── */
9
+ .dl-sr-only {
10
+ position: absolute;
11
+ width: 1px;
12
+ height: 1px;
13
+ padding: 0;
14
+ margin: -1px;
15
+ overflow: hidden;
16
+ clip: rect(0, 0, 0, 0);
17
+ white-space: nowrap;
18
+ border-width: 0;
19
+ }
20
+
21
+ .dl-not-sr-only {
22
+ position: static;
23
+ width: auto;
24
+ height: auto;
25
+ padding: 0;
26
+ margin: 0;
27
+ overflow: visible;
28
+ clip: auto;
29
+ white-space: normal;
30
+ }
31
+
32
+ /* ── Text Clamping & Truncation ────────────────────────────────────────── */
33
+ .dl-truncate {
34
+ overflow: hidden;
35
+ text-overflow: ellipsis;
36
+ white-space: nowrap;
37
+ }
38
+
39
+ .dl-line-clamp-1 {
40
+ display: -webkit-box;
41
+ -webkit-line-clamp: 1;
42
+ -webkit-box-orient: vertical;
43
+ overflow: hidden;
44
+ }
45
+
46
+ .dl-line-clamp-2 {
47
+ display: -webkit-box;
48
+ -webkit-line-clamp: 2;
49
+ -webkit-box-orient: vertical;
50
+ overflow: hidden;
51
+ }
52
+
53
+ .dl-line-clamp-3 {
54
+ display: -webkit-box;
55
+ -webkit-line-clamp: 3;
56
+ -webkit-box-orient: vertical;
57
+ overflow: hidden;
58
+ }
59
+
60
+ /* ── Typography & Alignment ────────────────────────────────────────────── */
61
+ .dl-text-left {
62
+ text-align: left;
63
+ }
64
+
65
+ .dl-text-center {
66
+ text-align: center;
67
+ }
68
+
69
+ .dl-text-right {
70
+ text-align: right;
71
+ }
72
+
73
+ .dl-whitespace-nowrap {
74
+ white-space: nowrap;
75
+ }
76
+
77
+ /* ── Standard Icon Dimensions ──────────────────────────────────────────── */
78
+ .dl-icon-xs {
79
+ width: var(--icon-xs, 0.875rem);
80
+ height: var(--icon-xs, 0.875rem);
81
+ flex-shrink: 0;
82
+ }
83
+
84
+ .dl-icon-sm {
85
+ width: var(--icon-sm, 1rem);
86
+ height: var(--icon-sm, 1rem);
87
+ flex-shrink: 0;
88
+ }
89
+
90
+ .dl-icon-md {
91
+ width: var(--icon-md, 1.25rem);
92
+ height: var(--icon-md, 1.25rem);
93
+ flex-shrink: 0;
94
+ }
95
+
96
+ .dl-icon-lg {
97
+ width: var(--icon-lg, 1.5rem);
98
+ height: var(--icon-lg, 1.5rem);
99
+ flex-shrink: 0;
100
+ }
101
+
102
+ .dl-icon-xl {
103
+ width: var(--icon-xl, 2rem);
104
+ height: var(--icon-xl, 2rem);
105
+ flex-shrink: 0;
106
+ }
107
+
108
+ /* ── Containment & Overflow ────────────────────────────────────────────── */
109
+ .dl-overflow-hidden {
110
+ overflow: hidden;
111
+ }
112
+
113
+ .dl-overflow-auto {
114
+ overflow: auto;
115
+ }
116
+
117
+ .dl-overflow-x-auto {
118
+ overflow-x: auto;
119
+ }
120
+
121
+ .dl-overflow-y-auto {
122
+ overflow-y: auto;
123
+ }
124
+
125
+ /* ── Interaction ───────────────────────────────────────────────────────── */
126
+ .dl-cursor-pointer {
127
+ cursor: pointer;
128
+ }
129
+
130
+ .dl-cursor-not-allowed {
131
+ cursor: not-allowed;
132
+ }
133
+
134
+ .dl-select-none {
135
+ user-select: none;
136
+ }
137
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@yuva-devlab/ui",
3
- "version": "1.4.4",
4
- "description": "Production-ready, accessible React 19 component library built on Radix UI and Tailwind CSS 4 design tokens for Yuva DevLab",
3
+ "version": "2.0.0",
4
+ "description": "Production-ready, accessible React 19 component library built on Radix UI and semantic design tokens for Yuva DevLab",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/yuvadevlab/devlab-shared.git",
@@ -16,7 +16,6 @@
16
16
  "ui",
17
17
  "components",
18
18
  "radix-ui",
19
- "tailwindcss",
20
19
  "design-system",
21
20
  "devlab"
22
21
  ],
@@ -45,7 +44,8 @@
45
44
  "./root.css": "./dist/root.css",
46
45
  "./common.css": "./dist/common.css",
47
46
  "./components/*": "./dist/components/*",
48
- "./components.css": "./dist/components.css"
47
+ "./components.css": "./dist/components.css",
48
+ "./utilities.css": "./dist/utilities.css"
49
49
  },
50
50
  "files": [
51
51
  "dist"
@@ -88,10 +88,9 @@
88
88
  "react-hook-form": "^7.71.2",
89
89
  "react-resizable-panels": "^4.6.5",
90
90
  "recharts": "^2.15.4",
91
- "tailwind-merge": "^3.5.0",
92
91
  "vaul": "^1.1.2",
93
92
  "zod": "^3.25.76",
94
- "@yuva-devlab/tokens": "1.3.1"
93
+ "@yuva-devlab/tokens": "2.0.0"
95
94
  },
96
95
  "devDependencies": {
97
96
  "@storybook/react": "^8.6.14",