@melodicdev/components 1.4.0 → 1.5.1

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 (121) hide show
  1. package/assets/melodic-components.js +3582 -1654
  2. package/assets/melodic-components.js.map +1 -1
  3. package/assets/melodic-components.min.js +5406 -3478
  4. package/lib/components/data-display/activity-feed/activity-feed-item.styles.d.ts.map +1 -1
  5. package/lib/components/data-display/activity-feed/activity-feed-item.styles.js +79 -31
  6. package/lib/components/data-display/activity-feed/activity-feed.styles.d.ts.map +1 -1
  7. package/lib/components/data-display/activity-feed/activity-feed.styles.js +5 -1
  8. package/lib/components/data-display/avatar/avatar.styles.d.ts.map +1 -1
  9. package/lib/components/data-display/avatar/avatar.styles.js +18 -7
  10. package/lib/components/data-display/badge/badge.styles.d.ts.map +1 -1
  11. package/lib/components/data-display/badge/badge.styles.js +30 -11
  12. package/lib/components/data-display/badge-group/badge-group.styles.d.ts.map +1 -1
  13. package/lib/components/data-display/badge-group/badge-group.styles.js +29 -14
  14. package/lib/components/data-display/calendar-view/calendar-view.styles.d.ts.map +1 -1
  15. package/lib/components/data-display/calendar-view/calendar-view.styles.js +155 -89
  16. package/lib/components/data-display/data-grid/data-grid.styles.d.ts.map +1 -1
  17. package/lib/components/data-display/data-grid/data-grid.styles.js +117 -61
  18. package/lib/components/data-display/list/list-item.styles.d.ts.map +1 -1
  19. package/lib/components/data-display/list/list-item.styles.js +35 -13
  20. package/lib/components/data-display/list/list.styles.d.ts.map +1 -1
  21. package/lib/components/data-display/list/list.styles.js +5 -1
  22. package/lib/components/data-display/profile-card/profile-card.styles.d.ts.map +1 -1
  23. package/lib/components/data-display/profile-card/profile-card.styles.js +66 -28
  24. package/lib/components/data-display/stat-card/stat-card.styles.d.ts.map +1 -1
  25. package/lib/components/data-display/stat-card/stat-card.styles.js +64 -26
  26. package/lib/components/data-display/table/table.styles.d.ts.map +1 -1
  27. package/lib/components/data-display/table/table.styles.js +64 -25
  28. package/lib/components/data-display/tag/tag.styles.d.ts.map +1 -1
  29. package/lib/components/data-display/tag/tag.styles.js +62 -25
  30. package/lib/components/feedback/alert/alert.styles.d.ts.map +1 -1
  31. package/lib/components/feedback/alert/alert.styles.js +41 -17
  32. package/lib/components/feedback/progress/progress.styles.d.ts.map +1 -1
  33. package/lib/components/feedback/progress/progress.styles.js +112 -56
  34. package/lib/components/feedback/spinner/spinner.styles.d.ts.map +1 -1
  35. package/lib/components/feedback/spinner/spinner.styles.js +32 -16
  36. package/lib/components/feedback/toast/toast.styles.d.ts.map +1 -1
  37. package/lib/components/feedback/toast/toast.styles.js +69 -26
  38. package/lib/components/forms/autocomplete/autocomplete.styles.d.ts.map +1 -1
  39. package/lib/components/forms/autocomplete/autocomplete.styles.js +164 -76
  40. package/lib/components/forms/button/button.styles.d.ts.map +1 -1
  41. package/lib/components/forms/button/button.styles.js +141 -116
  42. package/lib/components/forms/button-group/button-group.styles.d.ts.map +1 -1
  43. package/lib/components/forms/button-group/button-group.styles.js +8 -2
  44. package/lib/components/forms/checkbox/checkbox.styles.d.ts.map +1 -1
  45. package/lib/components/forms/checkbox/checkbox.styles.js +75 -41
  46. package/lib/components/forms/date-picker/calendar.styles.d.ts.map +1 -1
  47. package/lib/components/forms/date-picker/calendar.styles.js +108 -47
  48. package/lib/components/forms/date-picker/date-picker.styles.d.ts.map +1 -1
  49. package/lib/components/forms/date-picker/date-picker.styles.js +96 -38
  50. package/lib/components/forms/date-time-picker/date-time-picker.styles.d.ts.map +1 -1
  51. package/lib/components/forms/date-time-picker/date-time-picker.styles.js +65 -25
  52. package/lib/components/forms/file-upload/file-upload.styles.d.ts.map +1 -1
  53. package/lib/components/forms/file-upload/file-upload.styles.js +92 -39
  54. package/lib/components/forms/form-field/form-field.styles.d.ts.map +1 -1
  55. package/lib/components/forms/form-field/form-field.styles.js +72 -29
  56. package/lib/components/forms/input/input.styles.d.ts.map +1 -1
  57. package/lib/components/forms/input/input.styles.js +82 -29
  58. package/lib/components/forms/radio/radio.styles.d.ts.map +1 -1
  59. package/lib/components/forms/radio/radio.styles.js +85 -54
  60. package/lib/components/forms/radio-card-group/radio-card-group.styles.d.ts.map +1 -1
  61. package/lib/components/forms/radio-card-group/radio-card-group.styles.js +34 -12
  62. package/lib/components/forms/radio-card-group/radio-card.styles.d.ts.map +1 -1
  63. package/lib/components/forms/radio-card-group/radio-card.styles.js +108 -47
  64. package/lib/components/forms/select/select.styles.d.ts.map +1 -1
  65. package/lib/components/forms/select/select.styles.js +153 -71
  66. package/lib/components/forms/slider/slider.styles.d.ts.map +1 -1
  67. package/lib/components/forms/slider/slider.styles.js +77 -36
  68. package/lib/components/forms/textarea/textarea.styles.d.ts.map +1 -1
  69. package/lib/components/forms/textarea/textarea.styles.js +80 -31
  70. package/lib/components/forms/time-picker/time-picker.styles.d.ts.map +1 -1
  71. package/lib/components/forms/time-picker/time-picker.styles.js +196 -91
  72. package/lib/components/forms/toggle/toggle.styles.d.ts.map +1 -1
  73. package/lib/components/forms/toggle/toggle.styles.js +84 -54
  74. package/lib/components/foundation/card/card.styles.d.ts.map +1 -1
  75. package/lib/components/foundation/card/card.styles.js +48 -17
  76. package/lib/components/foundation/divider/divider.styles.d.ts.map +1 -1
  77. package/lib/components/foundation/divider/divider.styles.js +24 -12
  78. package/lib/components/general/icon/icon.styles.d.ts.map +1 -1
  79. package/lib/components/general/icon/icon.styles.js +9 -2
  80. package/lib/components/navigation/breadcrumb/breadcrumb.styles.d.ts.map +1 -1
  81. package/lib/components/navigation/breadcrumb/breadcrumb.styles.js +4 -1
  82. package/lib/components/navigation/pagination/pagination.styles.d.ts.map +1 -1
  83. package/lib/components/navigation/pagination/pagination.styles.js +59 -23
  84. package/lib/components/navigation/sidebar/sidebar-item.styles.d.ts.map +1 -1
  85. package/lib/components/navigation/sidebar/sidebar-item.styles.js +108 -34
  86. package/lib/components/navigation/sidebar/sidebar.styles.d.ts.map +1 -1
  87. package/lib/components/navigation/sidebar/sidebar.styles.js +183 -62
  88. package/lib/components/navigation/steps/step.styles.d.ts.map +1 -1
  89. package/lib/components/navigation/steps/step.styles.js +149 -83
  90. package/lib/components/navigation/steps/steps.styles.d.ts.map +1 -1
  91. package/lib/components/navigation/steps/steps.styles.js +169 -91
  92. package/lib/components/navigation/tabs/tab.styles.d.ts.map +1 -1
  93. package/lib/components/navigation/tabs/tab.styles.js +36 -12
  94. package/lib/components/navigation/tabs/tabs.styles.d.ts.map +1 -1
  95. package/lib/components/navigation/tabs/tabs.styles.js +126 -57
  96. package/lib/components/overlays/dialog/dialog.styles.d.ts.map +1 -1
  97. package/lib/components/overlays/dialog/dialog.styles.js +73 -33
  98. package/lib/components/overlays/drawer/drawer.styles.d.ts.map +1 -1
  99. package/lib/components/overlays/drawer/drawer.styles.js +77 -33
  100. package/lib/components/overlays/dropdown/dropdown-item.styles.d.ts.map +1 -1
  101. package/lib/components/overlays/dropdown/dropdown-item.styles.js +43 -17
  102. package/lib/components/overlays/dropdown/dropdown.styles.d.ts.map +1 -1
  103. package/lib/components/overlays/dropdown/dropdown.styles.js +30 -15
  104. package/lib/components/overlays/popover/popover.styles.d.ts.map +1 -1
  105. package/lib/components/overlays/popover/popover.styles.js +31 -15
  106. package/lib/components/overlays/tooltip/tooltip.styles.d.ts.map +1 -1
  107. package/lib/components/overlays/tooltip/tooltip.styles.js +28 -12
  108. package/lib/components/pages/auth/auth-layout.styles.d.ts +1 -1
  109. package/lib/components/pages/auth/auth-layout.styles.d.ts.map +1 -1
  110. package/lib/components/pages/auth/auth-layout.styles.js +79 -31
  111. package/lib/components/pages/dashboard/dashboard-page.styles.d.ts.map +1 -1
  112. package/lib/components/pages/dashboard/dashboard-page.styles.js +34 -12
  113. package/lib/components/sections/app-shell/app-shell.styles.d.ts.map +1 -1
  114. package/lib/components/sections/app-shell/app-shell.styles.js +54 -23
  115. package/lib/components/sections/hero/hero-section.styles.d.ts.map +1 -1
  116. package/lib/components/sections/hero/hero-section.styles.js +97 -40
  117. package/lib/components/sections/page-header/page-header.styles.d.ts.map +1 -1
  118. package/lib/components/sections/page-header/page-header.styles.js +64 -28
  119. package/lib/components/sections/page-section/page-section.styles.d.ts.map +1 -1
  120. package/lib/components/sections/page-section/page-section.styles.js +51 -21
  121. package/package.json +1 -1
@@ -6,6 +6,64 @@ export const dataGridStyles = () => css `
6
6
  height: 100%;
7
7
  min-width: 0;
8
8
  font-family: var(--ml-font-sans);
9
+
10
+ /* ── Data Grid: surface ── */
11
+ --ml-data-grid-bg: var(--ml-color-surface);
12
+ --ml-data-grid-border-width: var(--ml-border);
13
+ --ml-data-grid-border-color: var(--ml-color-border);
14
+ --ml-data-grid-radius: var(--ml-radius-lg);
15
+
16
+ /* ── Data Grid: header ── */
17
+ --ml-data-grid-header-bg: var(--ml-color-surface-sunken);
18
+ --ml-data-grid-header-color: var(--ml-color-text-muted);
19
+ --ml-data-grid-header-sorted-color: var(--ml-color-text);
20
+
21
+ /* ── Data Grid: title ── */
22
+ --ml-data-grid-title-color: var(--ml-color-text);
23
+ --ml-data-grid-description-color: var(--ml-color-text-muted);
24
+
25
+ /* ── Data Grid: rows ── */
26
+ --ml-data-grid-row-hover-bg: var(--ml-color-surface-sunken);
27
+ --ml-data-grid-row-selected-bg: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.04));
28
+ --ml-data-grid-row-selected-hover-bg: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.07));
29
+ --ml-data-grid-row-striped-bg: var(--ml-color-surface-sunken);
30
+ --ml-data-grid-row-striped-hover-bg: var(--ml-color-surface-raised);
31
+
32
+ /* ── Data Grid: cells ── */
33
+ --ml-data-grid-cell-color: var(--ml-color-text);
34
+
35
+ /* ── Data Grid: drag-over ── */
36
+ --ml-data-grid-drag-over-bg: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.08));
37
+ --ml-data-grid-drag-over-color: var(--ml-color-primary);
38
+
39
+ /* ── Data Grid: sort icon ── */
40
+ --ml-data-grid-sort-color: var(--ml-color-text-muted);
41
+ --ml-data-grid-sort-active-color: var(--ml-color-primary);
42
+
43
+ /* ── Data Grid: resize handle ── */
44
+ --ml-data-grid-resize-active-color: var(--ml-color-primary);
45
+
46
+ /* ── Data Grid: checkbox ── */
47
+ --ml-data-grid-checkbox-accent: var(--ml-color-primary);
48
+
49
+ /* ── Data Grid: filter input ── */
50
+ --ml-data-grid-filter-bg: var(--ml-color-surface-sunken);
51
+ --ml-data-grid-filter-border-color: var(--ml-color-border);
52
+ --ml-data-grid-filter-focus-color: var(--ml-color-primary);
53
+ --ml-data-grid-filter-focus-ring: 0 0 0 2px var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.12));
54
+
55
+ /* ── Data Grid: scrollbar ── */
56
+ --ml-data-grid-scrollbar-thumb: var(--ml-color-border);
57
+ --ml-data-grid-scrollbar-thumb-hover: var(--ml-color-text-muted);
58
+
59
+ /* ── Data Grid: footer ── */
60
+ --ml-data-grid-footer-bg: var(--ml-color-surface);
61
+ --ml-data-grid-footer-color: var(--ml-color-text-muted);
62
+ --ml-data-grid-page-btn-border: var(--ml-color-border);
63
+ --ml-data-grid-page-btn-color: var(--ml-color-text-muted);
64
+ --ml-data-grid-page-btn-hover-bg: var(--ml-color-surface-sunken);
65
+ --ml-data-grid-page-btn-hover-color: var(--ml-color-text);
66
+ --ml-data-grid-page-btn-hover-border: var(--ml-color-border-strong);
9
67
  }
10
68
 
11
69
  /* ── Root container ── */
@@ -13,9 +71,9 @@ export const dataGridStyles = () => css `
13
71
  display: flex;
14
72
  flex-direction: column;
15
73
  height: 100%;
16
- border: var(--ml-border) solid var(--ml-color-border);
17
- border-radius: var(--ml-radius-lg);
18
- background-color: var(--ml-color-surface);
74
+ border: var(--ml-data-grid-border-width) solid var(--ml-data-grid-border-color);
75
+ border-radius: var(--ml-data-grid-radius);
76
+ background-color: var(--ml-data-grid-bg);
19
77
  overflow: hidden;
20
78
  }
21
79
 
@@ -26,7 +84,7 @@ export const dataGridStyles = () => css `
26
84
  justify-content: space-between;
27
85
  gap: var(--ml-space-4);
28
86
  padding: var(--ml-space-5) var(--ml-space-6);
29
- border-bottom: var(--ml-border) solid var(--ml-color-border);
87
+ border-bottom: var(--ml-data-grid-border-width) solid var(--ml-data-grid-border-color);
30
88
  flex-shrink: 0;
31
89
  }
32
90
 
@@ -40,14 +98,14 @@ export const dataGridStyles = () => css `
40
98
  margin: 0;
41
99
  font-size: var(--ml-text-lg);
42
100
  font-weight: var(--ml-font-semibold);
43
- color: var(--ml-color-text);
101
+ color: var(--ml-data-grid-title-color);
44
102
  line-height: var(--ml-leading-tight);
45
103
  }
46
104
 
47
105
  .ml-data-grid__description {
48
106
  margin: 0;
49
107
  font-size: var(--ml-text-sm);
50
- color: var(--ml-color-text-muted);
108
+ color: var(--ml-data-grid-description-color);
51
109
  line-height: var(--ml-leading-normal);
52
110
  }
53
111
 
@@ -70,12 +128,12 @@ export const dataGridStyles = () => css `
70
128
  }
71
129
 
72
130
  .ml-data-grid__viewport::-webkit-scrollbar-thumb {
73
- background: var(--ml-color-border);
131
+ background: var(--ml-data-grid-scrollbar-thumb);
74
132
  border-radius: 3px;
75
133
  }
76
134
 
77
135
  .ml-data-grid__viewport::-webkit-scrollbar-thumb:hover {
78
- background: var(--ml-color-text-muted);
136
+ background: var(--ml-data-grid-scrollbar-thumb-hover);
79
137
  }
80
138
 
81
139
  .ml-data-grid__viewport::-webkit-scrollbar-corner {
@@ -93,8 +151,8 @@ export const dataGridStyles = () => css `
93
151
  position: sticky;
94
152
  top: 0;
95
153
  z-index: 2;
96
- background: var(--ml-color-surface-sunken);
97
- border-bottom: var(--ml-border) solid var(--ml-color-border);
154
+ background: var(--ml-data-grid-header-bg);
155
+ border-bottom: var(--ml-data-grid-border-width) solid var(--ml-data-grid-border-color);
98
156
  }
99
157
 
100
158
  /* ── Filter row — sticky below header ── */
@@ -103,8 +161,8 @@ export const dataGridStyles = () => css `
103
161
  position: sticky;
104
162
  top: var(--ml-grid-header-h, 40px);
105
163
  z-index: 2;
106
- background: var(--ml-color-surface);
107
- border-bottom: var(--ml-border) solid var(--ml-color-border);
164
+ background: var(--ml-data-grid-bg);
165
+ border-bottom: var(--ml-data-grid-border-width) solid var(--ml-data-grid-border-color);
108
166
  padding: var(--ml-space-2) 0;
109
167
  }
110
168
 
@@ -114,14 +172,14 @@ export const dataGridStyles = () => css `
114
172
  padding: var(--ml-space-3) var(--ml-space-4);
115
173
  font-size: var(--ml-text-xs);
116
174
  font-weight: var(--ml-font-medium);
117
- color: var(--ml-color-text-muted);
175
+ color: var(--ml-data-grid-header-color);
118
176
  text-transform: uppercase;
119
177
  letter-spacing: 0.05em;
120
178
  white-space: nowrap;
121
179
  overflow: hidden;
122
180
  text-overflow: ellipsis;
123
181
  user-select: none;
124
- background: var(--ml-color-surface-sunken);
182
+ background: var(--ml-data-grid-header-bg);
125
183
  }
126
184
 
127
185
  .ml-data-grid--sm .ml-data-grid__th {
@@ -139,16 +197,16 @@ export const dataGridStyles = () => css `
139
197
  }
140
198
 
141
199
  .ml-data-grid__th--sortable:hover {
142
- color: var(--ml-color-text);
200
+ color: var(--ml-data-grid-header-sorted-color);
143
201
  }
144
202
 
145
203
  .ml-data-grid__th--sorted {
146
- color: var(--ml-color-text);
204
+ color: var(--ml-data-grid-header-sorted-color);
147
205
  }
148
206
 
149
207
  .ml-data-grid__th--drag-over {
150
- background: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.08));
151
- color: var(--ml-color-primary);
208
+ background: var(--ml-data-grid-drag-over-bg);
209
+ color: var(--ml-data-grid-drag-over-color);
152
210
  }
153
211
 
154
212
  .ml-data-grid__th--dragging {
@@ -167,11 +225,11 @@ export const dataGridStyles = () => css `
167
225
  display: inline-flex;
168
226
  align-items: center;
169
227
  flex-shrink: 0;
170
- color: var(--ml-color-text-muted);
228
+ color: var(--ml-data-grid-sort-color);
171
229
  }
172
230
 
173
231
  .ml-data-grid__th--sorted .ml-data-grid__sort-icon {
174
- color: var(--ml-color-primary);
232
+ color: var(--ml-data-grid-sort-active-color);
175
233
  }
176
234
 
177
235
  /* ── Resize handle ── */
@@ -189,24 +247,22 @@ export const dataGridStyles = () => css `
189
247
 
190
248
  .ml-data-grid__resize-handle:hover,
191
249
  .ml-data-grid__th--resizing .ml-data-grid__resize-handle {
192
- background: var(--ml-color-primary);
250
+ background: var(--ml-data-grid-resize-active-color);
193
251
  }
194
252
 
195
253
  /* ── Filter cells ── */
196
- /* All cells are position: relative so they're "positioned" within the */
197
- /* filter row's stacking context — mirrors .ml-data-grid__th behaviour. */
198
254
  .ml-data-grid__filter-cell {
199
255
  display: flex;
200
256
  align-items: center;
201
257
  padding: 0 var(--ml-space-2);
202
- background: var(--ml-color-surface);
258
+ background: var(--ml-data-grid-bg);
203
259
  position: relative;
204
260
  }
205
261
 
206
262
  .ml-data-grid__filter-cell--pinned-left {
207
263
  position: sticky;
208
264
  z-index: 3;
209
- background: var(--ml-color-surface);
265
+ background: var(--ml-data-grid-bg);
210
266
  }
211
267
 
212
268
  .ml-data-grid__filter-input {
@@ -214,21 +270,21 @@ export const dataGridStyles = () => css `
214
270
  padding: var(--ml-space-1-5) var(--ml-space-2);
215
271
  font-size: var(--ml-text-xs);
216
272
  font-family: var(--ml-font-sans);
217
- color: var(--ml-color-text);
218
- background: var(--ml-color-surface-sunken);
219
- border: var(--ml-border) solid var(--ml-color-border);
273
+ color: var(--ml-data-grid-cell-color);
274
+ background: var(--ml-data-grid-filter-bg);
275
+ border: var(--ml-data-grid-border-width) solid var(--ml-data-grid-filter-border-color);
220
276
  border-radius: var(--ml-radius-sm);
221
277
  outline: none;
222
278
  transition: border-color var(--ml-duration-150);
223
279
  }
224
280
 
225
281
  .ml-data-grid__filter-input::placeholder {
226
- color: var(--ml-color-text-muted);
282
+ color: var(--ml-data-grid-header-color);
227
283
  }
228
284
 
229
285
  .ml-data-grid__filter-input:focus {
230
- border-color: var(--ml-color-primary);
231
- box-shadow: 0 0 0 2px var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.12));
286
+ border-color: var(--ml-data-grid-filter-focus-color);
287
+ box-shadow: var(--ml-data-grid-filter-focus-ring);
232
288
  }
233
289
 
234
290
  /* ── Virtual scroll spacers ── */
@@ -240,7 +296,7 @@ export const dataGridStyles = () => css `
240
296
  /* ── Data rows ── */
241
297
  .ml-data-grid__row {
242
298
  display: grid;
243
- border-bottom: var(--ml-border) solid var(--ml-color-border);
299
+ border-bottom: var(--ml-data-grid-border-width) solid var(--ml-data-grid-border-color);
244
300
  transition: background-color var(--ml-duration-150) var(--ml-ease-in-out);
245
301
  cursor: default;
246
302
  }
@@ -250,30 +306,30 @@ export const dataGridStyles = () => css `
250
306
  }
251
307
 
252
308
  .ml-data-grid--hoverable .ml-data-grid__row:hover {
253
- background-color: var(--ml-color-surface-sunken);
309
+ background-color: var(--ml-data-grid-row-hover-bg);
254
310
  }
255
311
 
256
312
  .ml-data-grid__row--selected {
257
- background-color: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.04));
313
+ background-color: var(--ml-data-grid-row-selected-bg);
258
314
  }
259
315
 
260
316
  .ml-data-grid--hoverable .ml-data-grid__row--selected:hover {
261
- background-color: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.07));
317
+ background-color: var(--ml-data-grid-row-selected-hover-bg);
262
318
  }
263
319
 
264
320
  .ml-data-grid--striped .ml-data-grid__row--even {
265
- background-color: var(--ml-color-surface-sunken);
321
+ background-color: var(--ml-data-grid-row-striped-bg);
266
322
  }
267
323
 
268
324
  .ml-data-grid--striped.ml-data-grid--hoverable .ml-data-grid__row--even:hover {
269
- background-color: var(--ml-color-surface-raised);
325
+ background-color: var(--ml-data-grid-row-striped-hover-bg);
270
326
  }
271
327
 
272
328
  /* ── Data cells ── */
273
329
  .ml-data-grid__td {
274
330
  padding: var(--ml-space-3) var(--ml-space-4);
275
331
  font-size: var(--ml-text-sm);
276
- color: var(--ml-color-text);
332
+ color: var(--ml-data-grid-cell-color);
277
333
  vertical-align: middle;
278
334
  overflow: hidden;
279
335
  text-overflow: ellipsis;
@@ -299,17 +355,17 @@ export const dataGridStyles = () => css `
299
355
  position: sticky;
300
356
  left: 0;
301
357
  z-index: 1;
302
- background: var(--ml-color-surface);
358
+ background: var(--ml-data-grid-bg);
303
359
  }
304
360
 
305
361
  .ml-data-grid__header-row .ml-data-grid__check-cell {
306
362
  z-index: 3;
307
- background: var(--ml-color-surface-sunken);
363
+ background: var(--ml-data-grid-header-bg);
308
364
  }
309
365
 
310
366
  .ml-data-grid__filter-row .ml-data-grid__check-cell {
311
367
  z-index: 3;
312
- background: var(--ml-color-surface);
368
+ background: var(--ml-data-grid-bg);
313
369
  }
314
370
 
315
371
  .ml-data-grid--sm .ml-data-grid__check-cell {
@@ -319,7 +375,7 @@ export const dataGridStyles = () => css `
319
375
  .ml-data-grid__checkbox {
320
376
  width: 1rem;
321
377
  height: 1rem;
322
- accent-color: var(--ml-color-primary);
378
+ accent-color: var(--ml-data-grid-checkbox-accent);
323
379
  cursor: pointer;
324
380
  margin: 0;
325
381
  flex-shrink: 0;
@@ -330,12 +386,12 @@ export const dataGridStyles = () => css `
330
386
  .ml-data-grid__td--pinned-left {
331
387
  position: sticky;
332
388
  z-index: 1;
333
- background: var(--ml-color-surface);
389
+ background: var(--ml-data-grid-bg);
334
390
  }
335
391
 
336
392
  .ml-data-grid__header-row .ml-data-grid__th--pinned-left {
337
393
  z-index: 3;
338
- background: var(--ml-color-surface-sunken);
394
+ background: var(--ml-data-grid-header-bg);
339
395
  }
340
396
 
341
397
  /* Pinned left shadow */
@@ -356,12 +412,12 @@ export const dataGridStyles = () => css `
356
412
  position: sticky;
357
413
  right: 0;
358
414
  z-index: 1;
359
- background: var(--ml-color-surface);
415
+ background: var(--ml-data-grid-bg);
360
416
  }
361
417
 
362
418
  .ml-data-grid__header-row .ml-data-grid__th--pinned-right {
363
419
  z-index: 3;
364
- background: var(--ml-color-surface-sunken);
420
+ background: var(--ml-data-grid-header-bg);
365
421
  }
366
422
 
367
423
  /* Pinned right shadow */
@@ -381,31 +437,31 @@ export const dataGridStyles = () => css `
381
437
  .ml-data-grid--striped .ml-data-grid__row--even .ml-data-grid__td--pinned-left,
382
438
  .ml-data-grid--striped .ml-data-grid__row--even .ml-data-grid__td--pinned-right,
383
439
  .ml-data-grid--striped .ml-data-grid__row--even .ml-data-grid__check-cell {
384
- background: var(--ml-color-surface-sunken);
440
+ background: var(--ml-data-grid-row-striped-bg);
385
441
  }
386
442
 
387
443
  .ml-data-grid--hoverable .ml-data-grid__row:hover .ml-data-grid__td--pinned-left,
388
444
  .ml-data-grid--hoverable .ml-data-grid__row:hover .ml-data-grid__td--pinned-right,
389
445
  .ml-data-grid--hoverable .ml-data-grid__row:hover .ml-data-grid__check-cell {
390
- background: var(--ml-color-surface-sunken);
446
+ background: var(--ml-data-grid-row-hover-bg);
391
447
  }
392
448
 
393
449
  .ml-data-grid__row--selected .ml-data-grid__td--pinned-left,
394
450
  .ml-data-grid__row--selected .ml-data-grid__td--pinned-right,
395
451
  .ml-data-grid__row--selected .ml-data-grid__check-cell {
396
- background: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.04));
452
+ background: var(--ml-data-grid-row-selected-bg);
397
453
  }
398
454
 
399
455
  .ml-data-grid--hoverable .ml-data-grid__row--selected:hover .ml-data-grid__td--pinned-left,
400
456
  .ml-data-grid--hoverable .ml-data-grid__row--selected:hover .ml-data-grid__td--pinned-right,
401
457
  .ml-data-grid--hoverable .ml-data-grid__row--selected:hover .ml-data-grid__check-cell {
402
- background: var(--ml-color-primary-subtle, rgba(99, 102, 241, 0.07));
458
+ background: var(--ml-data-grid-row-selected-hover-bg);
403
459
  }
404
460
 
405
461
  .ml-data-grid--striped.ml-data-grid--hoverable .ml-data-grid__row--even:hover .ml-data-grid__td--pinned-left,
406
462
  .ml-data-grid--striped.ml-data-grid--hoverable .ml-data-grid__row--even:hover .ml-data-grid__td--pinned-right,
407
463
  .ml-data-grid--striped.ml-data-grid--hoverable .ml-data-grid__row--even:hover .ml-data-grid__check-cell {
408
- background: var(--ml-color-surface-raised);
464
+ background: var(--ml-data-grid-row-striped-hover-bg);
409
465
  }
410
466
 
411
467
  /* ── Footer / Pagination ── */
@@ -415,8 +471,8 @@ export const dataGridStyles = () => css `
415
471
  justify-content: space-between;
416
472
  gap: var(--ml-space-4);
417
473
  padding: var(--ml-space-3) var(--ml-space-6);
418
- border-top: var(--ml-border) solid var(--ml-color-border);
419
- background: var(--ml-color-surface);
474
+ border-top: var(--ml-data-grid-border-width) solid var(--ml-data-grid-border-color);
475
+ background: var(--ml-data-grid-footer-bg);
420
476
  flex-shrink: 0;
421
477
  }
422
478
 
@@ -426,7 +482,7 @@ export const dataGridStyles = () => css `
426
482
 
427
483
  .ml-data-grid__footer-count {
428
484
  font-size: var(--ml-text-sm);
429
- color: var(--ml-color-text-muted);
485
+ color: var(--ml-data-grid-footer-color);
430
486
  }
431
487
 
432
488
  .ml-data-grid--sm .ml-data-grid__footer-count {
@@ -441,7 +497,7 @@ export const dataGridStyles = () => css `
441
497
 
442
498
  .ml-data-grid__page-info {
443
499
  font-size: var(--ml-text-sm);
444
- color: var(--ml-color-text-muted);
500
+ color: var(--ml-data-grid-footer-color);
445
501
  white-space: nowrap;
446
502
  }
447
503
 
@@ -462,10 +518,10 @@ export const dataGridStyles = () => css `
462
518
  width: 2rem;
463
519
  height: 2rem;
464
520
  padding: 0;
465
- border: var(--ml-border) solid var(--ml-color-border);
521
+ border: var(--ml-data-grid-border-width) solid var(--ml-data-grid-page-btn-border);
466
522
  border-radius: var(--ml-radius-md);
467
- background: var(--ml-color-surface);
468
- color: var(--ml-color-text-muted);
523
+ background: var(--ml-data-grid-bg);
524
+ color: var(--ml-data-grid-page-btn-color);
469
525
  cursor: pointer;
470
526
  transition:
471
527
  background-color var(--ml-duration-150),
@@ -480,9 +536,9 @@ export const dataGridStyles = () => css `
480
536
  }
481
537
 
482
538
  .ml-data-grid__page-btn:hover:not(:disabled) {
483
- background: var(--ml-color-surface-sunken);
484
- color: var(--ml-color-text);
485
- border-color: var(--ml-color-border-strong);
539
+ background: var(--ml-data-grid-page-btn-hover-bg);
540
+ color: var(--ml-data-grid-page-btn-hover-color);
541
+ border-color: var(--ml-data-grid-page-btn-hover-border);
486
542
  }
487
543
 
488
544
  .ml-data-grid__page-btn:disabled {
@@ -1 +1 @@
1
- {"version":3,"file":"list-item.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/list/list-item.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,iDAsE1B,CAAC"}
1
+ {"version":3,"file":"list-item.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/list/list-item.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,iDA4F1B,CAAC"}
@@ -2,11 +2,33 @@ import { css } from '@melodicdev/core';
2
2
  export const listItemStyles = () => css `
3
3
  :host {
4
4
  display: block;
5
- padding: var(--_ml-list-padding, var(--ml-space-3) 0);
5
+
6
+ /* ── List Item: spacing ── */
7
+ --ml-list-item-padding: var(--_ml-list-padding, var(--ml-space-3) 0);
8
+ --ml-list-item-gap: var(--ml-space-3);
9
+
10
+ /* ── List Item: primary text ── */
11
+ --ml-list-item-primary-font: var(--ml-font-sans);
12
+ --ml-list-item-primary-size: var(--ml-text-sm);
13
+ --ml-list-item-primary-weight: var(--ml-font-semibold);
14
+ --ml-list-item-primary-color: var(--ml-color-text);
15
+
16
+ /* ── List Item: secondary text ── */
17
+ --ml-list-item-secondary-font: var(--ml-font-sans);
18
+ --ml-list-item-secondary-size: var(--ml-text-xs);
19
+ --ml-list-item-secondary-color: var(--ml-color-text-secondary);
20
+
21
+ /* ── List Item: interactive states ── */
22
+ --ml-list-item-hover-bg: var(--ml-color-bg-secondary);
23
+ --ml-list-item-focus-color: var(--ml-color-primary);
24
+ --ml-list-item-focus-radius: var(--ml-radius-md);
25
+ --ml-list-item-disabled-opacity: 0.5;
26
+
27
+ padding: var(--ml-list-item-padding);
6
28
  }
7
29
 
8
30
  :host([disabled]) {
9
- opacity: 0.5;
31
+ opacity: var(--ml-list-item-disabled-opacity);
10
32
  pointer-events: none;
11
33
  }
12
34
 
@@ -15,13 +37,13 @@ export const listItemStyles = () => css `
15
37
  }
16
38
 
17
39
  :host([interactive]:hover) {
18
- background-color: var(--ml-color-bg-secondary);
40
+ background-color: var(--ml-list-item-hover-bg);
19
41
  }
20
42
 
21
43
  :host([interactive]:focus-visible) {
22
- outline: 2px solid var(--ml-color-primary);
44
+ outline: 2px solid var(--ml-list-item-focus-color);
23
45
  outline-offset: -2px;
24
- border-radius: var(--ml-radius-md);
46
+ border-radius: var(--ml-list-item-focus-radius);
25
47
  }
26
48
 
27
49
  :host([interactive]) .ml-li {
@@ -31,7 +53,7 @@ export const listItemStyles = () => css `
31
53
  .ml-li {
32
54
  display: flex;
33
55
  align-items: center;
34
- gap: var(--ml-space-3);
56
+ gap: var(--ml-list-item-gap);
35
57
  }
36
58
 
37
59
  .ml-li__leading {
@@ -49,17 +71,17 @@ export const listItemStyles = () => css `
49
71
  }
50
72
 
51
73
  .ml-li__primary {
52
- font-family: var(--ml-font-sans);
53
- font-size: var(--ml-text-sm);
54
- font-weight: var(--ml-font-semibold);
55
- color: var(--ml-color-text);
74
+ font-family: var(--ml-list-item-primary-font);
75
+ font-size: var(--ml-list-item-primary-size);
76
+ font-weight: var(--ml-list-item-primary-weight);
77
+ color: var(--ml-list-item-primary-color);
56
78
  line-height: var(--ml-leading-normal);
57
79
  }
58
80
 
59
81
  .ml-li__secondary {
60
- font-family: var(--ml-font-sans);
61
- font-size: var(--ml-text-xs);
62
- color: var(--ml-color-text-secondary);
82
+ font-family: var(--ml-list-item-secondary-font);
83
+ font-size: var(--ml-list-item-secondary-size);
84
+ color: var(--ml-list-item-secondary-color);
63
85
  line-height: var(--ml-leading-normal);
64
86
  }
65
87
 
@@ -1 +1 @@
1
- {"version":3,"file":"list.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/list/list.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU,iDA2BtB,CAAC"}
1
+ {"version":3,"file":"list.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/list/list.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU,iDA+BtB,CAAC"}
@@ -2,6 +2,10 @@ import { css } from '@melodicdev/core';
2
2
  export const listStyles = () => css `
3
3
  :host {
4
4
  display: block;
5
+
6
+ /* ── List: divider ── */
7
+ --ml-list-divider-width: var(--ml-border);
8
+ --ml-list-divider-color: var(--ml-color-border);
5
9
  }
6
10
 
7
11
  .ml-list {
@@ -24,6 +28,6 @@ export const listStyles = () => css `
24
28
 
25
29
  /* Default variant: dividers between items */
26
30
  .ml-list--default ::slotted(ml-list-item:not(:last-of-type)) {
27
- border-bottom: var(--ml-border) solid var(--ml-color-border);
31
+ border-bottom: var(--ml-list-divider-width) solid var(--ml-list-divider-color);
28
32
  }
29
33
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"profile-card.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/profile-card/profile-card.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,iDA8I7B,CAAC"}
1
+ {"version":3,"file":"profile-card.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/data-display/profile-card/profile-card.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,iDAoL7B,CAAC"}