@melodicdev/components 1.4.0 → 1.5.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 (121) hide show
  1. package/assets/melodic-components.js +3514 -1652
  2. package/assets/melodic-components.js.map +1 -1
  3. package/assets/melodic-components.min.js +5338 -3476
  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 +60 -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 +81 -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 +152 -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 +79 -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 +79 -33
  86. package/lib/components/navigation/sidebar/sidebar.styles.d.ts.map +1 -1
  87. package/lib/components/navigation/sidebar/sidebar.styles.js +154 -61
  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 +29 -14
  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 +62 -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
@@ -1,6 +1,75 @@
1
1
  import { css } from '@melodicdev/core';
2
2
  export const tabsStyles = () => css `
3
3
  :host {
4
+ /* Tab list */
5
+ --ml-tabs-list-gap: var(--ml-space-1);
6
+ --ml-tabs-list-border-width: var(--ml-border);
7
+ --ml-tabs-list-border-color: var(--ml-color-border);
8
+
9
+ /* Tab button base */
10
+ --ml-tabs-tab-gap: var(--ml-space-2);
11
+ --ml-tabs-tab-padding-y: var(--ml-space-2);
12
+ --ml-tabs-tab-padding-x: var(--ml-space-4);
13
+ --ml-tabs-tab-font-family: var(--ml-font-sans);
14
+ --ml-tabs-tab-font-weight: var(--ml-font-medium);
15
+ --ml-tabs-tab-color: var(--ml-color-text-secondary);
16
+ --ml-tabs-tab-transition: var(--ml-duration-150) var(--ml-ease-in-out);
17
+
18
+ /* Tab hover */
19
+ --ml-tabs-tab-hover-color: var(--ml-color-text);
20
+
21
+ /* Tab focus */
22
+ --ml-tabs-tab-focus-color: var(--ml-color-primary);
23
+
24
+ /* Tab active */
25
+ --ml-tabs-tab-active-color: var(--ml-color-primary);
26
+
27
+ /* Tab disabled */
28
+ --ml-tabs-tab-disabled-color: var(--ml-color-text-muted);
29
+ --ml-tabs-tab-disabled-opacity: 0.6;
30
+
31
+ /* Label */
32
+ --ml-tabs-tab-label-line-height: var(--ml-leading-tight);
33
+
34
+ /* Panels */
35
+ --ml-tabs-panels-padding-top: var(--ml-space-4);
36
+
37
+ /* Vertical border */
38
+ --ml-tabs-vertical-border-padding: var(--ml-space-2);
39
+ --ml-tabs-vertical-border-margin: var(--ml-space-4);
40
+
41
+ /* Line variant - indicator */
42
+ --ml-tabs-line-indicator-height: 2px;
43
+ --ml-tabs-line-indicator-color: var(--ml-color-primary);
44
+
45
+ /* Enclosed variant */
46
+ --ml-tabs-enclosed-tab-radius: var(--ml-radius);
47
+ --ml-tabs-enclosed-active-bg: var(--ml-color-surface);
48
+ --ml-tabs-enclosed-active-border-color: var(--ml-color-border);
49
+ --ml-tabs-enclosed-active-color: var(--ml-color-text);
50
+ --ml-tabs-enclosed-hover-bg: var(--ml-color-surface-secondary);
51
+
52
+ /* Pills variant */
53
+ --ml-tabs-pills-tab-radius: var(--ml-radius);
54
+ --ml-tabs-pills-active-bg: var(--ml-color-primary-subtle);
55
+ --ml-tabs-pills-active-color: var(--ml-color-primary);
56
+ --ml-tabs-pills-hover-bg: var(--ml-color-surface-secondary);
57
+
58
+ /* Size: sm */
59
+ --ml-tabs-sm-padding-y: var(--ml-space-1-5);
60
+ --ml-tabs-sm-padding-x: var(--ml-space-3);
61
+ --ml-tabs-sm-font-size: var(--ml-text-sm);
62
+
63
+ /* Size: md */
64
+ --ml-tabs-md-padding-y: var(--ml-space-2);
65
+ --ml-tabs-md-padding-x: var(--ml-space-4);
66
+ --ml-tabs-md-font-size: var(--ml-text-sm);
67
+
68
+ /* Size: lg */
69
+ --ml-tabs-lg-padding-y: var(--ml-space-2-5);
70
+ --ml-tabs-lg-padding-x: var(--ml-space-5);
71
+ --ml-tabs-lg-font-size: var(--ml-text-base);
72
+
4
73
  display: block;
5
74
  width: 100%;
6
75
  }
@@ -18,9 +87,9 @@ export const tabsStyles = () => css `
18
87
  .ml-tabs--vertical .ml-tabs__list {
19
88
  flex-direction: column;
20
89
  border-bottom: none;
21
- border-right: var(--ml-border) solid var(--ml-color-border);
22
- padding-right: var(--ml-space-2);
23
- margin-right: var(--ml-space-4);
90
+ border-right: var(--ml-tabs-list-border-width) solid var(--ml-tabs-list-border-color);
91
+ padding-right: var(--ml-tabs-vertical-border-padding);
92
+ margin-right: var(--ml-tabs-vertical-border-margin);
24
93
  }
25
94
 
26
95
  .ml-tabs--vertical .ml-tabs__panels {
@@ -31,7 +100,7 @@ export const tabsStyles = () => css `
31
100
  /* Tab list */
32
101
  .ml-tabs__list {
33
102
  display: flex;
34
- gap: var(--ml-space-1);
103
+ gap: var(--ml-tabs-list-gap);
35
104
  position: relative;
36
105
  }
37
106
 
@@ -39,47 +108,47 @@ export const tabsStyles = () => css `
39
108
  .ml-tabs__tab {
40
109
  display: inline-flex;
41
110
  align-items: center;
42
- gap: var(--ml-space-2);
43
- padding: var(--ml-space-2) var(--ml-space-4);
44
- font-family: var(--ml-font-sans);
45
- font-weight: var(--ml-font-medium);
46
- color: var(--ml-color-text-secondary);
111
+ gap: var(--ml-tabs-tab-gap);
112
+ padding: var(--ml-tabs-tab-padding-y) var(--ml-tabs-tab-padding-x);
113
+ font-family: var(--ml-tabs-tab-font-family);
114
+ font-weight: var(--ml-tabs-tab-font-weight);
115
+ color: var(--ml-tabs-tab-color);
47
116
  background: transparent;
48
117
  border: none;
49
118
  cursor: pointer;
50
119
  white-space: nowrap;
51
120
  transition:
52
- color var(--ml-duration-150) var(--ml-ease-in-out),
53
- background-color var(--ml-duration-150) var(--ml-ease-in-out),
54
- border-color var(--ml-duration-150) var(--ml-ease-in-out);
121
+ color var(--ml-tabs-tab-transition),
122
+ background-color var(--ml-tabs-tab-transition),
123
+ border-color var(--ml-tabs-tab-transition);
55
124
  }
56
125
 
57
126
  .ml-tabs__tab:hover:not(:disabled) {
58
- color: var(--ml-color-text);
127
+ color: var(--ml-tabs-tab-hover-color);
59
128
  }
60
129
 
61
130
  .ml-tabs__tab:focus-visible {
62
- outline: 2px solid var(--ml-color-primary);
131
+ outline: 2px solid var(--ml-tabs-tab-focus-color);
63
132
  outline-offset: 2px;
64
133
  }
65
134
 
66
135
  .ml-tabs__tab--active {
67
- color: var(--ml-color-primary);
136
+ color: var(--ml-tabs-tab-active-color);
68
137
  }
69
138
 
70
139
  .ml-tabs__tab--disabled {
71
- color: var(--ml-color-text-muted);
140
+ color: var(--ml-tabs-tab-disabled-color);
72
141
  cursor: not-allowed;
73
- opacity: 0.6;
142
+ opacity: var(--ml-tabs-tab-disabled-opacity);
74
143
  }
75
144
 
76
145
  .ml-tabs__tab-label {
77
- line-height: var(--ml-leading-tight);
146
+ line-height: var(--ml-tabs-tab-label-line-height);
78
147
  }
79
148
 
80
149
  /* Panels */
81
150
  .ml-tabs__panels {
82
- padding-top: var(--ml-space-4);
151
+ padding-top: var(--ml-tabs-panels-padding-top);
83
152
  }
84
153
 
85
154
  .ml-tabs--vertical .ml-tabs__panels {
@@ -90,13 +159,13 @@ export const tabsStyles = () => css `
90
159
  VARIANT: Line (underline style)
91
160
  ============================================ */
92
161
  .ml-tabs--line .ml-tabs__list {
93
- border-bottom: var(--ml-border) solid var(--ml-color-border);
162
+ border-bottom: var(--ml-tabs-list-border-width) solid var(--ml-tabs-list-border-color);
94
163
  gap: 0;
95
164
  }
96
165
 
97
166
  .ml-tabs--line .ml-tabs__tab {
98
167
  position: relative;
99
- padding-bottom: calc(var(--ml-space-2) + 2px);
168
+ padding-bottom: calc(var(--ml-tabs-tab-padding-y) + var(--ml-tabs-line-indicator-height));
100
169
  margin-bottom: -1px;
101
170
  }
102
171
 
@@ -106,23 +175,23 @@ export const tabsStyles = () => css `
106
175
  bottom: 0;
107
176
  left: 0;
108
177
  right: 0;
109
- height: 2px;
178
+ height: var(--ml-tabs-line-indicator-height);
110
179
  background-color: transparent;
111
- transition: background-color var(--ml-duration-150) var(--ml-ease-in-out);
180
+ transition: background-color var(--ml-tabs-tab-transition);
112
181
  }
113
182
 
114
183
  .ml-tabs--line .ml-tabs__tab--active::after {
115
- background-color: var(--ml-color-primary);
184
+ background-color: var(--ml-tabs-line-indicator-color);
116
185
  }
117
186
 
118
187
  .ml-tabs--line.ml-tabs--vertical .ml-tabs__list {
119
188
  border-bottom: none;
120
- border-right: var(--ml-border) solid var(--ml-color-border);
189
+ border-right: var(--ml-tabs-list-border-width) solid var(--ml-tabs-list-border-color);
121
190
  }
122
191
 
123
192
  .ml-tabs--line.ml-tabs--vertical .ml-tabs__tab {
124
- padding-bottom: var(--ml-space-2);
125
- padding-right: calc(var(--ml-space-4) + 2px);
193
+ padding-bottom: var(--ml-tabs-tab-padding-y);
194
+ padding-right: calc(var(--ml-tabs-tab-padding-x) + var(--ml-tabs-line-indicator-height));
126
195
  margin-bottom: 0;
127
196
  margin-right: -1px;
128
197
  }
@@ -132,7 +201,7 @@ export const tabsStyles = () => css `
132
201
  left: auto;
133
202
  top: 0;
134
203
  right: 0;
135
- width: 2px;
204
+ width: var(--ml-tabs-line-indicator-height);
136
205
  height: 100%;
137
206
  }
138
207
 
@@ -140,27 +209,27 @@ export const tabsStyles = () => css `
140
209
  VARIANT: Enclosed (bordered tab style)
141
210
  ============================================ */
142
211
  .ml-tabs--enclosed .ml-tabs__list {
143
- border-bottom: var(--ml-border) solid var(--ml-color-border);
212
+ border-bottom: var(--ml-tabs-list-border-width) solid var(--ml-tabs-list-border-color);
144
213
  gap: 0;
145
214
  }
146
215
 
147
216
  .ml-tabs--enclosed .ml-tabs__tab {
148
217
  position: relative;
149
- border: var(--ml-border) solid transparent;
218
+ border: var(--ml-tabs-list-border-width) solid transparent;
150
219
  border-bottom: none;
151
- border-radius: var(--ml-radius) var(--ml-radius) 0 0;
220
+ border-radius: var(--ml-tabs-enclosed-tab-radius) var(--ml-tabs-enclosed-tab-radius) 0 0;
152
221
  margin-bottom: -1px;
153
222
  background-color: transparent;
154
223
  }
155
224
 
156
225
  .ml-tabs--enclosed .ml-tabs__tab:hover:not(:disabled):not(.ml-tabs__tab--active) {
157
- background-color: var(--ml-color-surface-secondary);
226
+ background-color: var(--ml-tabs-enclosed-hover-bg);
158
227
  }
159
228
 
160
229
  .ml-tabs--enclosed .ml-tabs__tab--active {
161
- background-color: var(--ml-color-surface);
162
- border-color: var(--ml-color-border);
163
- color: var(--ml-color-text);
230
+ background-color: var(--ml-tabs-enclosed-active-bg);
231
+ border-color: var(--ml-tabs-enclosed-active-border-color);
232
+ color: var(--ml-tabs-enclosed-active-color);
164
233
  }
165
234
 
166
235
  .ml-tabs--enclosed .ml-tabs__tab--active::after {
@@ -170,45 +239,45 @@ export const tabsStyles = () => css `
170
239
  left: 0;
171
240
  right: 0;
172
241
  height: 1px;
173
- background-color: var(--ml-color-surface);
242
+ background-color: var(--ml-tabs-enclosed-active-bg);
174
243
  }
175
244
 
176
245
  /* ============================================
177
246
  VARIANT: Pills (soft rounded style)
178
247
  ============================================ */
179
248
  .ml-tabs--pills .ml-tabs__list {
180
- gap: var(--ml-space-1);
249
+ gap: var(--ml-tabs-list-gap);
181
250
  }
182
251
 
183
252
  .ml-tabs--pills .ml-tabs__tab {
184
- border-radius: var(--ml-radius);
253
+ border-radius: var(--ml-tabs-pills-tab-radius);
185
254
  }
186
255
 
187
256
  .ml-tabs--pills .ml-tabs__tab:hover:not(:disabled):not(.ml-tabs__tab--active) {
188
- background-color: var(--ml-color-surface-secondary);
257
+ background-color: var(--ml-tabs-pills-hover-bg);
189
258
  }
190
259
 
191
260
  .ml-tabs--pills .ml-tabs__tab--active {
192
- background-color: var(--ml-color-primary-subtle);
193
- color: var(--ml-color-primary);
261
+ background-color: var(--ml-tabs-pills-active-bg);
262
+ color: var(--ml-tabs-pills-active-color);
194
263
  }
195
264
 
196
265
  /* ============================================
197
266
  SIZE VARIANTS
198
267
  ============================================ */
199
268
  .ml-tabs--sm .ml-tabs__tab {
200
- padding: var(--ml-space-1-5) var(--ml-space-3);
201
- font-size: var(--ml-text-sm);
269
+ padding: var(--ml-tabs-sm-padding-y) var(--ml-tabs-sm-padding-x);
270
+ font-size: var(--ml-tabs-sm-font-size);
202
271
  }
203
272
 
204
273
  .ml-tabs--md .ml-tabs__tab {
205
- padding: var(--ml-space-2) var(--ml-space-4);
206
- font-size: var(--ml-text-sm);
274
+ padding: var(--ml-tabs-md-padding-y) var(--ml-tabs-md-padding-x);
275
+ font-size: var(--ml-tabs-md-font-size);
207
276
  }
208
277
 
209
278
  .ml-tabs--lg .ml-tabs__tab {
210
- padding: var(--ml-space-2-5) var(--ml-space-5);
211
- font-size: var(--ml-text-base);
279
+ padding: var(--ml-tabs-lg-padding-y) var(--ml-tabs-lg-padding-x);
280
+ font-size: var(--ml-tabs-lg-font-size);
212
281
  }
213
282
 
214
283
  /* ============================================
@@ -217,30 +286,30 @@ export const tabsStyles = () => css `
217
286
  ::slotted(ml-tab) {
218
287
  display: inline-flex;
219
288
  align-items: center;
220
- gap: var(--ml-space-2);
221
- padding: var(--ml-space-2) var(--ml-space-4);
222
- font-family: var(--ml-font-sans);
223
- font-weight: var(--ml-font-medium);
224
- color: var(--ml-color-text-secondary);
289
+ gap: var(--ml-tabs-tab-gap);
290
+ padding: var(--ml-tabs-tab-padding-y) var(--ml-tabs-tab-padding-x);
291
+ font-family: var(--ml-tabs-tab-font-family);
292
+ font-weight: var(--ml-tabs-tab-font-weight);
293
+ color: var(--ml-tabs-tab-color);
225
294
  background: transparent;
226
295
  border: none;
227
296
  cursor: pointer;
228
297
  white-space: nowrap;
229
298
  transition:
230
- color var(--ml-duration-150) var(--ml-ease-in-out),
231
- background-color var(--ml-duration-150) var(--ml-ease-in-out);
299
+ color var(--ml-tabs-tab-transition),
300
+ background-color var(--ml-tabs-tab-transition);
232
301
  }
233
302
 
234
303
  ::slotted(ml-tab:hover) {
235
- color: var(--ml-color-text);
304
+ color: var(--ml-tabs-tab-hover-color);
236
305
  }
237
306
 
238
307
  ::slotted(ml-tab[active]) {
239
- color: var(--ml-color-primary);
308
+ color: var(--ml-tabs-tab-active-color);
240
309
  }
241
310
 
242
311
  ::slotted(ml-tab[disabled]) {
243
- color: var(--ml-color-text-muted);
312
+ color: var(--ml-tabs-tab-disabled-color);
244
313
  cursor: not-allowed;
245
314
  }
246
315
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/overlays/dialog/dialog.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iDAkLxB,CAAC"}
1
+ {"version":3,"file":"dialog.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/overlays/dialog/dialog.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iDA0NxB,CAAC"}
@@ -1,6 +1,46 @@
1
1
  import { css } from '@melodicdev/core';
2
2
  export const dialogStyles = () => css `
3
3
  :host {
4
+ /* Dialog panel */
5
+ --ml-dialog-max-width: 500px;
6
+ --ml-dialog-bg: var(--ml-color-surface);
7
+ --ml-dialog-radius: var(--ml-radius-xl);
8
+ --ml-dialog-shadow: var(--ml-shadow-xl);
9
+ --ml-dialog-transition: var(--ml-transition-normal);
10
+
11
+ /* Backdrop */
12
+ --ml-dialog-backdrop-color: rgba(0, 0, 0, 0.5);
13
+
14
+ /* Size variants */
15
+ --ml-dialog-sm-max-width: 400px;
16
+ --ml-dialog-md-max-width: 500px;
17
+ --ml-dialog-lg-max-width: 640px;
18
+ --ml-dialog-xl-max-width: 800px;
19
+
20
+ /* Header */
21
+ --ml-dialog-header-padding: var(--ml-space-6);
22
+ --ml-dialog-header-gap: var(--ml-space-4);
23
+ --ml-dialog-header-title-font-size: var(--ml-text-lg);
24
+ --ml-dialog-header-title-font-weight: var(--ml-font-semibold);
25
+ --ml-dialog-header-title-color: var(--ml-color-text);
26
+ --ml-dialog-header-title-line-height: var(--ml-leading-tight);
27
+ --ml-dialog-header-desc-font-size: var(--ml-text-sm);
28
+ --ml-dialog-header-desc-color: var(--ml-color-text-secondary);
29
+ --ml-dialog-header-desc-line-height: var(--ml-leading-relaxed);
30
+
31
+ /* Body */
32
+ --ml-dialog-body-padding: var(--ml-space-6);
33
+ --ml-dialog-body-font-size: var(--ml-text-sm);
34
+ --ml-dialog-body-color: var(--ml-color-text-secondary);
35
+ --ml-dialog-body-line-height: var(--ml-leading-relaxed);
36
+
37
+ /* Footer */
38
+ --ml-dialog-footer-padding-y: var(--ml-space-4);
39
+ --ml-dialog-footer-padding-x: var(--ml-space-6);
40
+ --ml-dialog-footer-gap: var(--ml-space-3);
41
+ --ml-dialog-footer-border-color: var(--ml-color-border);
42
+ --ml-dialog-footer-bg: var(--ml-color-surface);
43
+
4
44
  display: contents;
5
45
  }
6
46
 
@@ -10,23 +50,23 @@ export const dialogStyles = () => css `
10
50
  display: flex;
11
51
  flex-direction: column;
12
52
  width: 100%;
13
- max-width: 500px;
53
+ max-width: var(--ml-dialog-max-width);
14
54
  max-height: calc(100vh - var(--ml-space-8));
15
55
  margin: auto;
16
56
  padding: 0;
17
- background-color: var(--ml-color-surface);
57
+ background-color: var(--ml-dialog-bg);
18
58
  border: none;
19
- border-radius: var(--ml-radius-xl);
20
- box-shadow: var(--ml-shadow-xl);
59
+ border-radius: var(--ml-dialog-radius);
60
+ box-shadow: var(--ml-dialog-shadow);
21
61
  outline: none;
22
62
  overflow: hidden;
23
63
  transform: scale(0.95) translateY(10px);
24
64
  opacity: 0;
25
65
  transition:
26
- transform var(--ml-transition-normal),
27
- opacity var(--ml-transition-normal),
28
- overlay var(--ml-transition-normal) allow-discrete,
29
- display var(--ml-transition-normal) allow-discrete;
66
+ transform var(--ml-dialog-transition),
67
+ opacity var(--ml-dialog-transition),
68
+ overlay var(--ml-dialog-transition) allow-discrete,
69
+ display var(--ml-dialog-transition) allow-discrete;
30
70
  }
31
71
 
32
72
  dialog.ml-dialog[open] {
@@ -45,13 +85,13 @@ export const dialogStyles = () => css `
45
85
  dialog.ml-dialog::backdrop {
46
86
  background-color: rgba(0, 0, 0, 0);
47
87
  transition:
48
- background-color var(--ml-transition-normal),
49
- overlay var(--ml-transition-normal) allow-discrete,
50
- display var(--ml-transition-normal) allow-discrete;
88
+ background-color var(--ml-dialog-transition),
89
+ overlay var(--ml-dialog-transition) allow-discrete,
90
+ display var(--ml-dialog-transition) allow-discrete;
51
91
  }
52
92
 
53
93
  dialog.ml-dialog[open]::backdrop {
54
- background-color: rgba(0, 0, 0, 0.5);
94
+ background-color: var(--ml-dialog-backdrop-color);
55
95
  }
56
96
 
57
97
  @starting-style {
@@ -62,19 +102,19 @@ export const dialogStyles = () => css `
62
102
 
63
103
  /* Size variants */
64
104
  dialog.ml-dialog--sm {
65
- max-width: 400px;
105
+ max-width: var(--ml-dialog-sm-max-width);
66
106
  }
67
107
 
68
108
  dialog.ml-dialog--md {
69
- max-width: 500px;
109
+ max-width: var(--ml-dialog-md-max-width);
70
110
  }
71
111
 
72
112
  dialog.ml-dialog--lg {
73
- max-width: 640px;
113
+ max-width: var(--ml-dialog-lg-max-width);
74
114
  }
75
115
 
76
116
  dialog.ml-dialog--xl {
77
- max-width: 800px;
117
+ max-width: var(--ml-dialog-xl-max-width);
78
118
  }
79
119
 
80
120
  dialog.ml-dialog--full {
@@ -86,8 +126,8 @@ export const dialogStyles = () => css `
86
126
  .ml-dialog-header {
87
127
  display: flex;
88
128
  align-items: flex-start;
89
- gap: var(--ml-space-4);
90
- padding: var(--ml-space-6);
129
+ gap: var(--ml-dialog-header-gap);
130
+ padding: var(--ml-dialog-header-padding);
91
131
  padding-bottom: 0;
92
132
  }
93
133
 
@@ -105,27 +145,27 @@ export const dialogStyles = () => css `
105
145
  .ml-dialog-header ::slotted(h3),
106
146
  .ml-dialog-header ::slotted(h4) {
107
147
  margin: 0;
108
- font-size: var(--ml-text-lg);
109
- font-weight: var(--ml-font-semibold);
110
- color: var(--ml-color-text);
111
- line-height: var(--ml-leading-tight);
148
+ font-size: var(--ml-dialog-header-title-font-size);
149
+ font-weight: var(--ml-dialog-header-title-font-weight);
150
+ color: var(--ml-dialog-header-title-color);
151
+ line-height: var(--ml-dialog-header-title-line-height);
112
152
  }
113
153
 
114
154
  .ml-dialog-header ::slotted(p) {
115
155
  margin: var(--ml-space-1) 0 0;
116
- font-size: var(--ml-text-sm);
117
- color: var(--ml-color-text-secondary);
118
- line-height: var(--ml-leading-relaxed);
156
+ font-size: var(--ml-dialog-header-desc-font-size);
157
+ color: var(--ml-dialog-header-desc-color);
158
+ line-height: var(--ml-dialog-header-desc-line-height);
119
159
  }
120
160
 
121
161
  /* Body */
122
162
  .ml-dialog-body {
123
163
  flex: 1;
124
- padding: var(--ml-space-6);
164
+ padding: var(--ml-dialog-body-padding);
125
165
  overflow-y: auto;
126
- font-size: var(--ml-text-sm);
127
- color: var(--ml-color-text-secondary);
128
- line-height: var(--ml-leading-relaxed);
166
+ font-size: var(--ml-dialog-body-font-size);
167
+ color: var(--ml-dialog-body-color);
168
+ line-height: var(--ml-dialog-body-line-height);
129
169
  }
130
170
 
131
171
  .ml-dialog-body ::slotted(p) {
@@ -141,10 +181,10 @@ export const dialogStyles = () => css `
141
181
  display: flex;
142
182
  align-items: center;
143
183
  justify-content: flex-end;
144
- gap: var(--ml-space-3);
145
- padding: var(--ml-space-4) var(--ml-space-6);
146
- border-top: 1px solid var(--ml-color-border);
147
- background-color: var(--ml-color-surface);
184
+ gap: var(--ml-dialog-footer-gap);
185
+ padding: var(--ml-dialog-footer-padding-y) var(--ml-dialog-footer-padding-x);
186
+ border-top: 1px solid var(--ml-dialog-footer-border-color);
187
+ background-color: var(--ml-dialog-footer-bg);
148
188
  }
149
189
 
150
190
  .ml-dialog-footer:not(:has(*)) {
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/overlays/drawer/drawer.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iDAwKxB,CAAC"}
1
+ {"version":3,"file":"drawer.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/overlays/drawer/drawer.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iDAoNxB,CAAC"}