@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
@@ -2,12 +2,56 @@ import { css } from '@melodicdev/core';
2
2
  export const radioStyles = () => css `
3
3
  :host {
4
4
  display: block;
5
+
6
+ /* --- Circle --- */
7
+ --ml-radio-circle-size: 1.25rem;
8
+ --ml-radio-circle-bg: var(--ml-color-input-bg);
9
+ --ml-radio-circle-border-width: var(--ml-border);
10
+ --ml-radio-circle-border-color: var(--ml-color-border-strong);
11
+ --ml-radio-circle-border-radius: var(--ml-radius-full);
12
+
13
+ /* --- Dot --- */
14
+ --ml-radio-dot-size: 0.5rem;
15
+ --ml-radio-dot-color: var(--ml-color-primary);
16
+
17
+ /* --- Checked --- */
18
+ --ml-radio-checked-border-color: var(--ml-color-primary);
19
+ --ml-radio-checked-bg: var(--ml-color-primary-subtle);
20
+ --ml-radio-checked-hover-border-color: var(--ml-color-primary-hover);
21
+ --ml-radio-checked-hover-dot-color: var(--ml-color-primary-hover);
22
+
23
+ /* --- Hover --- */
24
+ --ml-radio-hover-border-color: var(--ml-color-primary);
25
+
26
+ /* --- Focus --- */
27
+ --ml-radio-focus-border-color: var(--ml-color-primary);
28
+ --ml-radio-focus-shadow: var(--ml-shadow-focus-ring);
29
+
30
+ /* --- Label --- */
31
+ --ml-radio-label-font-size: var(--ml-text-sm);
32
+ --ml-radio-label-font-weight: var(--ml-font-medium);
33
+ --ml-radio-label-color: var(--ml-color-text-secondary);
34
+ --ml-radio-label-line-height: 1.25rem;
35
+
36
+ /* --- Hint --- */
37
+ --ml-radio-hint-font-size: var(--ml-text-sm);
38
+ --ml-radio-hint-color: var(--ml-color-text-muted);
39
+
40
+ /* --- Gap --- */
41
+ --ml-radio-gap: var(--ml-space-3);
42
+
43
+ /* --- Disabled --- */
44
+ --ml-radio-disabled-opacity: 0.5;
45
+
46
+ /* --- Transition --- */
47
+ --ml-radio-transition-duration: var(--ml-duration-150);
48
+ --ml-radio-transition-easing: var(--ml-ease-in-out);
5
49
  }
6
50
 
7
51
  .ml-radio {
8
52
  display: inline-flex;
9
53
  align-items: flex-start;
10
- gap: var(--ml-space-3);
54
+ gap: var(--ml-radio-gap);
11
55
  cursor: pointer;
12
56
  user-select: none;
13
57
  }
@@ -18,7 +62,7 @@ export const radioStyles = () => css `
18
62
 
19
63
  .ml-radio--disabled .ml-radio__circle,
20
64
  .ml-radio--disabled .ml-radio__label {
21
- opacity: 0.5;
65
+ opacity: var(--ml-radio-disabled-opacity);
22
66
  }
23
67
 
24
68
  .ml-radio__input {
@@ -33,38 +77,42 @@ export const radioStyles = () => css `
33
77
  display: flex;
34
78
  align-items: center;
35
79
  justify-content: center;
36
- background-color: var(--ml-color-input-bg);
37
- border: var(--ml-border) solid var(--ml-color-border-strong);
38
- border-radius: var(--ml-radius-full);
80
+ width: var(--ml-radio-circle-size);
81
+ height: var(--ml-radio-circle-size);
82
+ background-color: var(--ml-radio-circle-bg);
83
+ border: var(--ml-radio-circle-border-width) solid var(--ml-radio-circle-border-color);
84
+ border-radius: var(--ml-radio-circle-border-radius);
39
85
  transition:
40
- background-color var(--ml-duration-150) var(--ml-ease-in-out),
41
- border-color var(--ml-duration-150) var(--ml-ease-in-out),
42
- box-shadow var(--ml-duration-150) var(--ml-ease-in-out);
86
+ background-color var(--ml-radio-transition-duration) var(--ml-radio-transition-easing),
87
+ border-color var(--ml-radio-transition-duration) var(--ml-radio-transition-easing),
88
+ box-shadow var(--ml-radio-transition-duration) var(--ml-radio-transition-easing);
43
89
  }
44
90
 
45
91
  .ml-radio__input:focus-visible + .ml-radio__circle {
46
- border-color: var(--ml-color-primary);
47
- box-shadow: var(--ml-shadow-focus-ring);
92
+ border-color: var(--ml-radio-focus-border-color);
93
+ box-shadow: var(--ml-radio-focus-shadow);
48
94
  }
49
95
 
50
96
  .ml-radio--checked .ml-radio__circle {
51
- border-color: var(--ml-color-primary);
52
- background-color: var(--ml-color-primary-subtle);
97
+ border-color: var(--ml-radio-checked-border-color);
98
+ background-color: var(--ml-radio-checked-bg);
53
99
  }
54
100
 
55
101
  .ml-radio:hover:not(.ml-radio--disabled) .ml-radio__circle {
56
- border-color: var(--ml-color-primary);
102
+ border-color: var(--ml-radio-hover-border-color);
57
103
  }
58
104
 
59
105
  .ml-radio--checked:hover:not(.ml-radio--disabled) .ml-radio__circle {
60
- border-color: var(--ml-color-primary-hover);
106
+ border-color: var(--ml-radio-checked-hover-border-color);
61
107
  }
62
108
 
63
109
  .ml-radio__dot {
64
- border-radius: var(--ml-radius-full);
65
- background-color: var(--ml-color-primary);
110
+ width: var(--ml-radio-dot-size);
111
+ height: var(--ml-radio-dot-size);
112
+ border-radius: var(--ml-radio-circle-border-radius);
113
+ background-color: var(--ml-radio-dot-color);
66
114
  transform: scale(0);
67
- transition: transform var(--ml-duration-150) var(--ml-ease-in-out);
115
+ transition: transform var(--ml-radio-transition-duration) var(--ml-radio-transition-easing);
68
116
  }
69
117
 
70
118
  .ml-radio--checked .ml-radio__dot {
@@ -72,57 +120,40 @@ export const radioStyles = () => css `
72
120
  }
73
121
 
74
122
  .ml-radio--checked:hover:not(.ml-radio--disabled) .ml-radio__dot {
75
- background-color: var(--ml-color-primary-hover);
76
- }
77
-
78
- .ml-radio--sm .ml-radio__circle {
79
- width: 1rem;
80
- height: 1rem;
81
- }
82
-
83
- .ml-radio--sm .ml-radio__dot {
84
- width: 0.375rem;
85
- height: 0.375rem;
123
+ background-color: var(--ml-radio-checked-hover-dot-color);
86
124
  }
87
125
 
88
- .ml-radio--md .ml-radio__circle {
89
- width: 1.25rem;
90
- height: 1.25rem;
126
+ /* --- Size variants --- */
127
+ .ml-radio--sm {
128
+ --ml-radio-circle-size: 1rem;
129
+ --ml-radio-dot-size: 0.375rem;
91
130
  }
92
131
 
93
- .ml-radio--md .ml-radio__dot {
94
- width: 0.5rem;
95
- height: 0.5rem;
132
+ .ml-radio--md {
133
+ --ml-radio-circle-size: 1.25rem;
134
+ --ml-radio-dot-size: 0.5rem;
96
135
  }
97
136
 
98
- .ml-radio--lg .ml-radio__circle {
99
- width: 1.5rem;
100
- height: 1.5rem;
101
- }
102
-
103
- .ml-radio--lg .ml-radio__dot {
104
- width: 0.625rem;
105
- height: 0.625rem;
137
+ .ml-radio--lg {
138
+ --ml-radio-circle-size: 1.5rem;
139
+ --ml-radio-dot-size: 0.625rem;
140
+ --ml-radio-label-font-size: var(--ml-text-base);
141
+ --ml-radio-label-line-height: 1.5rem;
106
142
  }
107
143
 
108
144
  .ml-radio__label {
109
- font-size: var(--ml-text-sm);
110
- font-weight: var(--ml-font-medium);
111
- color: var(--ml-color-text-secondary);
112
- line-height: 1.25rem;
113
- }
114
-
115
- .ml-radio--lg .ml-radio__label {
116
- font-size: var(--ml-text-base);
117
- line-height: 1.5rem;
145
+ font-size: var(--ml-radio-label-font-size);
146
+ font-weight: var(--ml-radio-label-font-weight);
147
+ color: var(--ml-radio-label-color);
148
+ line-height: var(--ml-radio-label-line-height);
118
149
  }
119
150
 
120
151
  .ml-radio__hint {
121
152
  display: block;
122
153
  margin-top: var(--ml-space-0-5);
123
- margin-left: calc(1.25rem + var(--ml-space-3));
124
- font-size: var(--ml-text-sm);
125
- color: var(--ml-color-text-muted);
154
+ margin-left: calc(var(--ml-radio-circle-size) + var(--ml-radio-gap));
155
+ font-size: var(--ml-radio-hint-font-size);
156
+ color: var(--ml-radio-hint-color);
126
157
  line-height: var(--ml-leading-tight);
127
158
  }
128
159
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"radio-card-group.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-card-group/radio-card-group.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,iDAkEhC,CAAC"}
1
+ {"version":3,"file":"radio-card-group.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-card-group/radio-card-group.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,iDAwFhC,CAAC"}
@@ -2,6 +2,28 @@ import { css } from '@melodicdev/core';
2
2
  export const radioCardGroupStyles = () => css `
3
3
  :host {
4
4
  display: block;
5
+
6
+ /* --- Legend --- */
7
+ --ml-radio-card-group-legend-font-size: var(--ml-text-sm);
8
+ --ml-radio-card-group-legend-font-weight: var(--ml-font-medium);
9
+ --ml-radio-card-group-legend-color: var(--ml-color-text-secondary);
10
+ --ml-radio-card-group-legend-line-height: var(--ml-leading-tight);
11
+ --ml-radio-card-group-legend-margin-bottom: var(--ml-space-3);
12
+
13
+ /* --- Required indicator --- */
14
+ --ml-radio-card-group-required-color: var(--ml-color-danger);
15
+
16
+ /* --- Options gap --- */
17
+ --ml-radio-card-group-gap: var(--ml-space-3);
18
+
19
+ /* --- Disabled --- */
20
+ --ml-radio-card-group-disabled-opacity: 0.5;
21
+
22
+ /* --- Hint / Error --- */
23
+ --ml-radio-card-group-hint-color: var(--ml-color-text-muted);
24
+ --ml-radio-card-group-error-color: var(--ml-color-danger);
25
+ --ml-radio-card-group-message-font-size: var(--ml-text-sm);
26
+ --ml-radio-card-group-message-line-height: var(--ml-leading-tight);
5
27
  }
6
28
 
7
29
  .ml-radio-card-group {
@@ -11,21 +33,21 @@ export const radioCardGroupStyles = () => css `
11
33
  }
12
34
 
13
35
  .ml-radio-card-group__legend {
14
- font-size: var(--ml-text-sm);
15
- font-weight: var(--ml-font-medium);
16
- color: var(--ml-color-text-secondary);
17
- margin-bottom: var(--ml-space-3);
18
- line-height: var(--ml-leading-tight);
36
+ font-size: var(--ml-radio-card-group-legend-font-size);
37
+ font-weight: var(--ml-radio-card-group-legend-font-weight);
38
+ color: var(--ml-radio-card-group-legend-color);
39
+ margin-bottom: var(--ml-radio-card-group-legend-margin-bottom);
40
+ line-height: var(--ml-radio-card-group-legend-line-height);
19
41
  }
20
42
 
21
43
  .ml-radio-card-group__required {
22
- color: var(--ml-color-danger);
44
+ color: var(--ml-radio-card-group-required-color);
23
45
  margin-left: var(--ml-space-0-5);
24
46
  }
25
47
 
26
48
  .ml-radio-card-group__options {
27
49
  display: flex;
28
- gap: var(--ml-space-3);
50
+ gap: var(--ml-radio-card-group-gap);
29
51
  }
30
52
 
31
53
  .ml-radio-card-group__options--vertical {
@@ -47,22 +69,22 @@ export const radioCardGroupStyles = () => css `
47
69
  }
48
70
 
49
71
  .ml-radio-card-group--disabled .ml-radio-card-group__legend {
50
- opacity: 0.5;
72
+ opacity: var(--ml-radio-card-group-disabled-opacity);
51
73
  }
52
74
 
53
75
  .ml-radio-card-group__hint,
54
76
  .ml-radio-card-group__error {
55
77
  display: block;
56
78
  margin-top: var(--ml-space-2);
57
- font-size: var(--ml-text-sm);
58
- line-height: var(--ml-leading-tight);
79
+ font-size: var(--ml-radio-card-group-message-font-size);
80
+ line-height: var(--ml-radio-card-group-message-line-height);
59
81
  }
60
82
 
61
83
  .ml-radio-card-group__hint {
62
- color: var(--ml-color-text-muted);
84
+ color: var(--ml-radio-card-group-hint-color);
63
85
  }
64
86
 
65
87
  .ml-radio-card-group__error {
66
- color: var(--ml-color-danger);
88
+ color: var(--ml-radio-card-group-error-color);
67
89
  }
68
90
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"radio-card.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-card-group/radio-card.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,iDAwI3B,CAAC"}
1
+ {"version":3,"file":"radio-card.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-card-group/radio-card.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,iDAqM3B,CAAC"}
@@ -2,51 +2,112 @@ import { css } from '@melodicdev/core';
2
2
  export const radioCardStyles = () => css `
3
3
  :host {
4
4
  display: block;
5
+
6
+ /* --- Card --- */
7
+ --ml-radio-card-padding: var(--ml-space-4);
8
+ --ml-radio-card-border-width: var(--ml-border);
9
+ --ml-radio-card-border-color: var(--ml-color-border);
10
+ --ml-radio-card-border-radius: var(--ml-radius-lg);
11
+ --ml-radio-card-bg: var(--ml-color-surface);
12
+ --ml-radio-card-gap: var(--ml-space-3);
13
+
14
+ /* --- Hover --- */
15
+ --ml-radio-card-hover-border-color: var(--ml-color-border-strong);
16
+ --ml-radio-card-hover-bg: var(--ml-color-surface-raised);
17
+
18
+ /* --- Selected --- */
19
+ --ml-radio-card-selected-border-color: var(--ml-color-primary);
20
+ --ml-radio-card-selected-bg: var(--ml-color-primary-subtle);
21
+ --ml-radio-card-selected-ring: 0 0 0 1px var(--ml-color-primary);
22
+ --ml-radio-card-selected-hover-border-color: var(--ml-color-primary-hover);
23
+ --ml-radio-card-selected-hover-ring: 0 0 0 1px var(--ml-color-primary-hover);
24
+
25
+ /* --- Focus --- */
26
+ --ml-radio-card-focus-shadow: var(--ml-shadow-focus-ring);
27
+
28
+ /* --- Circle --- */
29
+ --ml-radio-card-circle-size: 1.25rem;
30
+ --ml-radio-card-circle-border-width: var(--ml-border);
31
+ --ml-radio-card-circle-border-color: var(--ml-color-border-strong);
32
+ --ml-radio-card-circle-bg: var(--ml-color-input-bg);
33
+ --ml-radio-card-circle-border-radius: var(--ml-radius-full);
34
+
35
+ /* --- Dot --- */
36
+ --ml-radio-card-dot-size: 0.5rem;
37
+ --ml-radio-card-dot-color: var(--ml-color-primary);
38
+
39
+ /* --- Icon --- */
40
+ --ml-radio-card-icon-color: var(--ml-color-text-muted);
41
+ --ml-radio-card-icon-selected-color: var(--ml-color-primary);
42
+
43
+ /* --- Label --- */
44
+ --ml-radio-card-label-font-size: var(--ml-text-sm);
45
+ --ml-radio-card-label-font-weight: var(--ml-font-medium);
46
+ --ml-radio-card-label-color: var(--ml-color-text);
47
+ --ml-radio-card-label-line-height: var(--ml-leading-tight);
48
+
49
+ /* --- Description --- */
50
+ --ml-radio-card-description-font-size: var(--ml-text-sm);
51
+ --ml-radio-card-description-color: var(--ml-color-text-muted);
52
+ --ml-radio-card-description-line-height: var(--ml-leading-normal);
53
+
54
+ /* --- Detail --- */
55
+ --ml-radio-card-detail-font-size: var(--ml-text-sm);
56
+ --ml-radio-card-detail-font-weight: var(--ml-font-medium);
57
+ --ml-radio-card-detail-color: var(--ml-color-text);
58
+ --ml-radio-card-detail-line-height: var(--ml-leading-tight);
59
+
60
+ /* --- Disabled --- */
61
+ --ml-radio-card-disabled-opacity: 0.5;
62
+
63
+ /* --- Transition --- */
64
+ --ml-radio-card-transition-duration: var(--ml-duration-150);
65
+ --ml-radio-card-transition-easing: var(--ml-ease-in-out);
5
66
  }
6
67
 
7
68
  .ml-radio-card {
8
69
  display: flex;
9
70
  align-items: flex-start;
10
- gap: var(--ml-space-3);
11
- padding: var(--ml-space-4);
12
- border: var(--ml-border) solid var(--ml-color-border);
13
- border-radius: var(--ml-radius-lg);
14
- background-color: var(--ml-color-surface);
71
+ gap: var(--ml-radio-card-gap);
72
+ padding: var(--ml-radio-card-padding);
73
+ border: var(--ml-radio-card-border-width) solid var(--ml-radio-card-border-color);
74
+ border-radius: var(--ml-radio-card-border-radius);
75
+ background-color: var(--ml-radio-card-bg);
15
76
  cursor: pointer;
16
77
  transition:
17
- border-color var(--ml-duration-150) var(--ml-ease-in-out),
18
- background-color var(--ml-duration-150) var(--ml-ease-in-out),
19
- box-shadow var(--ml-duration-150) var(--ml-ease-in-out);
78
+ border-color var(--ml-radio-card-transition-duration) var(--ml-radio-card-transition-easing),
79
+ background-color var(--ml-radio-card-transition-duration) var(--ml-radio-card-transition-easing),
80
+ box-shadow var(--ml-radio-card-transition-duration) var(--ml-radio-card-transition-easing);
20
81
  }
21
82
 
22
83
  .ml-radio-card:hover:not(.ml-radio-card--disabled) {
23
- border-color: var(--ml-color-border-strong);
24
- background-color: var(--ml-color-surface-raised);
84
+ border-color: var(--ml-radio-card-hover-border-color);
85
+ background-color: var(--ml-radio-card-hover-bg);
25
86
  }
26
87
 
27
88
  .ml-radio-card--selected {
28
- border-color: var(--ml-color-primary);
29
- background-color: var(--ml-color-primary-subtle);
30
- box-shadow: 0 0 0 1px var(--ml-color-primary);
89
+ border-color: var(--ml-radio-card-selected-border-color);
90
+ background-color: var(--ml-radio-card-selected-bg);
91
+ box-shadow: var(--ml-radio-card-selected-ring);
31
92
  }
32
93
 
33
94
  .ml-radio-card--selected:hover:not(.ml-radio-card--disabled) {
34
- border-color: var(--ml-color-primary-hover);
35
- background-color: var(--ml-color-primary-subtle);
36
- box-shadow: 0 0 0 1px var(--ml-color-primary-hover);
95
+ border-color: var(--ml-radio-card-selected-hover-border-color);
96
+ background-color: var(--ml-radio-card-selected-bg);
97
+ box-shadow: var(--ml-radio-card-selected-hover-ring);
37
98
  }
38
99
 
39
100
  .ml-radio-card:focus-visible {
40
101
  outline: none;
41
- box-shadow: var(--ml-shadow-focus-ring);
102
+ box-shadow: var(--ml-radio-card-focus-shadow);
42
103
  }
43
104
 
44
105
  .ml-radio-card--selected:focus-visible {
45
- box-shadow: 0 0 0 1px var(--ml-color-primary), var(--ml-shadow-focus-ring);
106
+ box-shadow: var(--ml-radio-card-selected-ring), var(--ml-radio-card-focus-shadow);
46
107
  }
47
108
 
48
109
  .ml-radio-card--disabled {
49
- opacity: 0.5;
110
+ opacity: var(--ml-radio-card-disabled-opacity);
50
111
  cursor: not-allowed;
51
112
  }
52
113
 
@@ -60,28 +121,28 @@ export const radioCardStyles = () => css `
60
121
  display: flex;
61
122
  align-items: center;
62
123
  justify-content: center;
63
- width: 1.25rem;
64
- height: 1.25rem;
65
- border: var(--ml-border) solid var(--ml-color-border-strong);
66
- border-radius: var(--ml-radius-full);
67
- background-color: var(--ml-color-input-bg);
124
+ width: var(--ml-radio-card-circle-size);
125
+ height: var(--ml-radio-card-circle-size);
126
+ border: var(--ml-radio-card-circle-border-width) solid var(--ml-radio-card-circle-border-color);
127
+ border-radius: var(--ml-radio-card-circle-border-radius);
128
+ background-color: var(--ml-radio-card-circle-bg);
68
129
  transition:
69
- border-color var(--ml-duration-150) var(--ml-ease-in-out),
70
- background-color var(--ml-duration-150) var(--ml-ease-in-out);
130
+ border-color var(--ml-radio-card-transition-duration) var(--ml-radio-card-transition-easing),
131
+ background-color var(--ml-radio-card-transition-duration) var(--ml-radio-card-transition-easing);
71
132
  }
72
133
 
73
134
  .ml-radio-card--selected .ml-radio-card__circle {
74
- border-color: var(--ml-color-primary);
75
- background-color: var(--ml-color-primary-subtle);
135
+ border-color: var(--ml-radio-card-selected-border-color);
136
+ background-color: var(--ml-radio-card-selected-bg);
76
137
  }
77
138
 
78
139
  .ml-radio-card__dot {
79
- width: 0.5rem;
80
- height: 0.5rem;
81
- border-radius: var(--ml-radius-full);
82
- background-color: var(--ml-color-primary);
140
+ width: var(--ml-radio-card-dot-size);
141
+ height: var(--ml-radio-card-dot-size);
142
+ border-radius: var(--ml-radio-card-circle-border-radius);
143
+ background-color: var(--ml-radio-card-dot-color);
83
144
  transform: scale(0);
84
- transition: transform var(--ml-duration-150) var(--ml-ease-in-out);
145
+ transition: transform var(--ml-radio-card-transition-duration) var(--ml-radio-card-transition-easing);
85
146
  }
86
147
 
87
148
  .ml-radio-card--selected .ml-radio-card__dot {
@@ -92,18 +153,18 @@ export const radioCardStyles = () => css `
92
153
  .ml-radio-card__content {
93
154
  display: flex;
94
155
  align-items: flex-start;
95
- gap: var(--ml-space-3);
156
+ gap: var(--ml-radio-card-gap);
96
157
  flex: 1;
97
158
  min-width: 0;
98
159
  }
99
160
 
100
161
  .ml-radio-card__icon {
101
162
  flex-shrink: 0;
102
- color: var(--ml-color-text-muted);
163
+ color: var(--ml-radio-card-icon-color);
103
164
  }
104
165
 
105
166
  .ml-radio-card--selected .ml-radio-card__icon {
106
- color: var(--ml-color-primary);
167
+ color: var(--ml-radio-card-icon-selected-color);
107
168
  }
108
169
 
109
170
  .ml-radio-card__text {
@@ -114,25 +175,25 @@ export const radioCardStyles = () => css `
114
175
  }
115
176
 
116
177
  .ml-radio-card__label {
117
- font-size: var(--ml-text-sm);
118
- font-weight: var(--ml-font-medium);
119
- color: var(--ml-color-text);
120
- line-height: var(--ml-leading-tight);
178
+ font-size: var(--ml-radio-card-label-font-size);
179
+ font-weight: var(--ml-radio-card-label-font-weight);
180
+ color: var(--ml-radio-card-label-color);
181
+ line-height: var(--ml-radio-card-label-line-height);
121
182
  }
122
183
 
123
184
  .ml-radio-card__description {
124
- font-size: var(--ml-text-sm);
125
- color: var(--ml-color-text-muted);
126
- line-height: var(--ml-leading-normal);
185
+ font-size: var(--ml-radio-card-description-font-size);
186
+ color: var(--ml-radio-card-description-color);
187
+ line-height: var(--ml-radio-card-description-line-height);
127
188
  }
128
189
 
129
190
  /* Detail (e.g. price) */
130
191
  .ml-radio-card__detail {
131
192
  flex-shrink: 0;
132
- font-size: var(--ml-text-sm);
133
- font-weight: var(--ml-font-medium);
134
- color: var(--ml-color-text);
135
- line-height: var(--ml-leading-tight);
193
+ font-size: var(--ml-radio-card-detail-font-size);
194
+ font-weight: var(--ml-radio-card-detail-font-weight);
195
+ color: var(--ml-radio-card-detail-color);
196
+ line-height: var(--ml-radio-card-detail-line-height);
136
197
  padding-top: var(--ml-space-0-5);
137
198
  }
138
199
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"select.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/select/select.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iDA0VxB,CAAC"}
1
+ {"version":3,"file":"select.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/select/select.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,iDA2axB,CAAC"}