@frame-ui-ng/components 0.4.2-beta.0 → 0.5.0-beta.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 (88) hide show
  1. package/accordion/src/styles/_vars.css +9 -8
  2. package/accordion/src/styles/accordion.css +3 -2
  3. package/alert/src/styles/_vars.css +10 -10
  4. package/alert/src/styles/alert.css +77 -77
  5. package/avatar/src/styles/_vars.css +34 -34
  6. package/avatar/src/styles/avatar.css +209 -209
  7. package/badge/src/styles/_vars.css +9 -9
  8. package/breadcrumb/src/styles/_vars.css +2 -2
  9. package/button/src/styles/_vars.css +5 -5
  10. package/button/src/styles/button.css +26 -51
  11. package/button-group/src/styles/button-group.css +11 -4
  12. package/calendar/src/styles/_vars.css +6 -6
  13. package/card/src/styles/_vars.css +10 -2
  14. package/card/src/styles/card.css +132 -142
  15. package/carousel/src/styles/_vars.css +7 -7
  16. package/checkbox/src/styles/_vars.css +3 -3
  17. package/checkbox/src/styles/checkbox.css +95 -95
  18. package/collapsible/src/styles/_vars.css +13 -13
  19. package/combobox/src/styles/_vars.css +20 -20
  20. package/command/src/styles/_vars.css +18 -17
  21. package/command/src/styles/command.css +1 -0
  22. package/date-picker/src/styles/_vars.css +6 -6
  23. package/drag-drop/src/styles/_vars.css +8 -8
  24. package/dropdown-menu/src/styles/_vars.css +8 -8
  25. package/empty/src/styles/_vars.css +23 -23
  26. package/fesm2022/frame-ui-ng-components-button.mjs +5 -8
  27. package/fesm2022/frame-ui-ng-components-button.mjs.map +1 -1
  28. package/fesm2022/frame-ui-ng-components-carousel.mjs +4 -4
  29. package/fesm2022/frame-ui-ng-components-carousel.mjs.map +1 -1
  30. package/fesm2022/frame-ui-ng-components-confirm-modal.mjs +1 -1
  31. package/fesm2022/frame-ui-ng-components-confirm-modal.mjs.map +1 -1
  32. package/fesm2022/frame-ui-ng-components-confirm-popover.mjs +1 -1
  33. package/fesm2022/frame-ui-ng-components-confirm-popover.mjs.map +1 -1
  34. package/fesm2022/frame-ui-ng-components-modal.mjs +1 -1
  35. package/fesm2022/frame-ui-ng-components-modal.mjs.map +1 -1
  36. package/fesm2022/frame-ui-ng-components-sheet.mjs +1 -1
  37. package/fesm2022/frame-ui-ng-components-sheet.mjs.map +1 -1
  38. package/fesm2022/frame-ui-ng-components.mjs +12 -15
  39. package/fesm2022/frame-ui-ng-components.mjs.map +1 -1
  40. package/field/src/styles/_vars.css +20 -20
  41. package/hover-card/src/styles/_vars.css +21 -21
  42. package/input/src/styles/_vars.css +15 -15
  43. package/input/src/styles/input.css +0 -5
  44. package/input-otp/src/styles/_vars.css +3 -3
  45. package/input-otp/src/styles/input-otp.css +116 -116
  46. package/item/src/styles/_vars.css +9 -9
  47. package/menubar/src/styles/_vars.css +7 -7
  48. package/modal/src/styles/_vars.css +12 -12
  49. package/modal/src/styles/modal.css +1 -1
  50. package/navigation-menu/src/styles/_vars.css +9 -9
  51. package/package.json +2 -2
  52. package/pagination/src/styles/_vars.css +6 -6
  53. package/pagination/src/styles/pagination.css +14 -4
  54. package/popover/src/styles/_vars.css +24 -24
  55. package/progress/src/styles/_vars.css +2 -2
  56. package/progress/src/styles/progress.css +64 -64
  57. package/radio-group/src/styles/_vars.css +5 -5
  58. package/radio-group/src/styles/radio-group.css +2 -2
  59. package/resizable/src/styles/_vars.css +2 -2
  60. package/resizable/src/styles/resizable.css +130 -130
  61. package/select/src/styles/_vars.css +8 -8
  62. package/separator/src/styles/_vars.css +2 -2
  63. package/separator/src/styles/separator.css +25 -25
  64. package/sheet/src/styles/_vars.css +12 -12
  65. package/sheet/src/styles/sheet.css +1 -1
  66. package/sidebar/src/styles/_vars.css +24 -24
  67. package/sidebar/src/styles/sidebar.css +5 -5
  68. package/skeleton/src/styles/_vars.css +8 -8
  69. package/slider/src/styles/_vars.css +6 -6
  70. package/slider/src/styles/slider.css +147 -147
  71. package/spinner/src/styles/_vars.css +8 -9
  72. package/src/styles/blueprint.css +15 -65
  73. package/styles/blueprint.css +15 -65
  74. package/switch/src/styles/_vars.css +4 -4
  75. package/table/src/styles/_vars.css +26 -25
  76. package/table/src/styles/table.css +245 -245
  77. package/tabs/src/styles/_vars.css +19 -17
  78. package/tabs/src/styles/tabs.css +166 -164
  79. package/textarea/src/styles/_vars.css +4 -4
  80. package/toast/src/styles/_vars.css +20 -20
  81. package/toast/src/styles/toast.css +2 -2
  82. package/toggle/src/styles/_vars.css +14 -14
  83. package/toggle/src/styles/toggle.css +110 -110
  84. package/tooltip/src/styles/_vars.css +9 -9
  85. package/tooltip/src/styles/tooltip.css +18 -9
  86. package/types/frame-ui-ng-components-button.d.ts +5 -8
  87. package/types/frame-ui-ng-components-carousel.d.ts +2 -2
  88. package/types/frame-ui-ng-components.d.ts +15 -18
@@ -1,209 +1,209 @@
1
- @import './_vars.css';
2
-
3
- [frAvatar] {
4
- --frame-avatar-badge-size-current: var(
5
- --frame-avatar-badge-size,
6
- calc(var(--frame-avatar-size-current, var(--frame-avatar-root-size, 2.5rem)) * 0.35)
7
- );
8
- --frame-avatar-badge-font-size-current: var(
9
- --frame-avatar-badge-font-size,
10
- calc(var(--frame-avatar-font-size-current, var(--frame-avatar-root-font-size, 0.875rem)) * 0.72)
11
- );
12
- position: relative;
13
- inline-size: var(--frame-avatar-size-current, var(--frame-avatar-root-size, 2.5rem));
14
- block-size: var(--frame-avatar-size-current, var(--frame-avatar-root-size, 2.5rem));
15
- display: inline-flex;
16
- align-items: center;
17
- justify-content: center;
18
- overflow: visible;
19
- flex: 0 0 auto;
20
- border: 1px solid var(--frame-avatar-root-border, transparent);
21
- border-radius: var(--frame-avatar-root-radius, 999px);
22
- background: var(--frame-avatar-root-bg, var(--frame-muted));
23
- box-shadow: var(--frame-avatar-root-shadow, none);
24
- color: var(--frame-avatar-root-color, var(--frame-muted-foreground));
25
- font-size: var(--frame-avatar-font-size-current, var(--frame-avatar-root-font-size, 0.875rem));
26
- font-weight: var(--frame-avatar-root-font-weight, 600);
27
- line-height: 1;
28
- text-transform: uppercase;
29
- user-select: none;
30
- vertical-align: middle;
31
- }
32
-
33
- [frAvatar][data-size='xs'] {
34
- --frame-avatar-size-current: var(--frame-avatar-size-xs, 1rem);
35
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-xs, 0.5rem);
36
- }
37
-
38
- [frAvatar][data-size='sm'] {
39
- --frame-avatar-size-current: var(--frame-avatar-size-sm, 2rem);
40
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-sm, 0.75rem);
41
- }
42
-
43
- [frAvatar][data-size='md'] {
44
- --frame-avatar-size-current: var(--frame-avatar-size-md, 2.5rem);
45
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-md, 0.875rem);
46
- }
47
-
48
- [frAvatar][data-size='lg'] {
49
- --frame-avatar-size-current: var(--frame-avatar-size-lg, 3.5rem);
50
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-lg, 1rem);
51
- }
52
-
53
- [frAvatarImage],
54
- [frAvatarFallback],
55
- [frAvatarIcon] {
56
- position: absolute;
57
- inset: 0;
58
- box-sizing: border-box;
59
- border-radius: inherit;
60
- }
61
-
62
- [frAvatarImage] {
63
- inline-size: 100%;
64
- block-size: 100%;
65
- object-fit: var(--frame-avatar-image-fit, cover);
66
- opacity: 0;
67
- transition: opacity 160ms ease;
68
- }
69
-
70
- [frAvatar][data-status='loaded'] [frAvatarImage] {
71
- opacity: 1;
72
- }
73
-
74
- [frAvatarFallback] {
75
- display: inline-flex;
76
- align-items: center;
77
- justify-content: center;
78
- inline-size: 100%;
79
- block-size: 100%;
80
- padding: var(--frame-avatar-fallback-padding, 0.25rem);
81
- line-height: inherit;
82
- text-align: center;
83
- transition: opacity 160ms ease;
84
- }
85
-
86
- [frAvatarIcon] {
87
- display: inline-flex;
88
- align-items: center;
89
- justify-content: center;
90
- inline-size: 100%;
91
- block-size: 100%;
92
- font-size: var(--frame-avatar-icon-size, 1rem);
93
- line-height: inherit;
94
- transition: opacity 160ms ease;
95
- }
96
-
97
- [frAvatarIcon] > * {
98
- inline-size: 1em;
99
- block-size: 1em;
100
- }
101
-
102
- [frAvatarFallback][data-visible='false'] {
103
- opacity: 0;
104
- pointer-events: none;
105
- }
106
-
107
- [frAvatarIcon][data-visible='false'] {
108
- opacity: 0;
109
- pointer-events: none;
110
- }
111
-
112
- [frAvatarBadge] {
113
- position: absolute;
114
- inset-inline-end: 0;
115
- inset-block-end: 0;
116
- z-index: 2;
117
- min-inline-size: var(--frame-avatar-badge-size-current);
118
- block-size: var(--frame-avatar-badge-size-current);
119
- display: inline-flex;
120
- align-items: center;
121
- justify-content: center;
122
- padding-inline: 0.25rem;
123
- border: 2px solid var(--frame-avatar-badge-border, var(--frame-surface));
124
- border-radius: var(--frame-avatar-badge-radius, 999px);
125
- background: var(--frame-avatar-badge-bg, var(--frame-primary));
126
- color: var(--frame-avatar-badge-color, var(--frame-primary-foreground));
127
- font-size: var(--frame-avatar-badge-font-size-current);
128
- font-weight: var(--frame-avatar-badge-font-weight, 700);
129
- line-height: 1;
130
- transform: translate(18%, 18%);
131
- }
132
-
133
- [frAvatarGroup] {
134
- display: inline-flex;
135
- align-items: center;
136
- }
137
-
138
- [frAvatarGroup] > [frAvatar],
139
- [frAvatarGroup] > [frAvatarGroupCount] {
140
- margin-inline-start: calc(var(--frame-avatar-group-overlap) * -1);
141
- box-shadow: var(--frame-shadow-sm);
142
- transition:
143
- margin-inline-start var(--frame-avatar-group-transition-duration, 180ms)
144
- var(--frame-avatar-group-transition-timing, ease),
145
- transform var(--frame-avatar-group-transition-duration, 180ms)
146
- var(--frame-avatar-group-transition-timing, ease);
147
- }
148
-
149
- [frAvatarGroup] > :first-child {
150
- margin-inline-start: 0;
151
- }
152
-
153
- [frAvatarGroup] > [frAvatar],
154
- [frAvatarGroup] > [frAvatarGroupCount] {
155
- position: relative;
156
- }
157
-
158
- [frAvatarGroup][data-expand-on-hover='true']:where(:hover, :focus-within)
159
- > [frAvatar]:not(:first-child),
160
- [frAvatarGroup][data-expand-on-hover='true']:where(:hover, :focus-within)
161
- > [frAvatarGroupCount]:not(:first-child) {
162
- margin-inline-start: 0;
163
- }
164
-
165
- [frAvatarGroup][data-size='sm'] > [frAvatarGroupCount] {
166
- inline-size: var(--frame-avatar-size-sm, 2rem);
167
- block-size: var(--frame-avatar-size-sm, 2rem);
168
- font-size: var(--frame-avatar-font-size-sm, 0.75rem);
169
- }
170
-
171
- [frAvatarGroup][data-size='md'] > [frAvatarGroupCount] {
172
- inline-size: var(--frame-avatar-size-md, 2.5rem);
173
- block-size: var(--frame-avatar-size-md, 2.5rem);
174
- font-size: var(--frame-avatar-font-size-md, 0.875rem);
175
- }
176
-
177
- [frAvatarGroup][data-size='lg'] > [frAvatarGroupCount] {
178
- inline-size: var(--frame-avatar-size-lg, 3.5rem);
179
- block-size: var(--frame-avatar-size-lg, 3.5rem);
180
- font-size: var(--frame-avatar-font-size-lg, 1rem);
181
- }
182
-
183
- [frAvatarGroup][data-size='sm'] > [frAvatar] {
184
- --frame-avatar-size-current: var(--frame-avatar-size-sm, 2rem);
185
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-sm, 0.75rem);
186
- }
187
-
188
- [frAvatarGroup][data-size='md'] > [frAvatar] {
189
- --frame-avatar-size-current: var(--frame-avatar-size-md, 2.5rem);
190
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-md, 0.875rem);
191
- }
192
-
193
- [frAvatarGroup][data-size='lg'] > [frAvatar] {
194
- --frame-avatar-size-current: var(--frame-avatar-size-lg, 3.5rem);
195
- --frame-avatar-font-size-current: var(--frame-avatar-font-size-lg, 1rem);
196
- }
197
-
198
- [frAvatarGroupCount] {
199
- flex: 0 0 auto;
200
- display: inline-flex;
201
- align-items: center;
202
- justify-content: center;
203
- border: 1px solid var(--frame-avatar-group-count-border, var(--frame-border));
204
- border-radius: var(--frame-avatar-root-radius, 999px);
205
- background: var(--frame-avatar-group-count-bg, var(--frame-surface));
206
- color: var(--frame-avatar-group-count-color, var(--frame-muted-foreground));
207
- font-weight: var(--frame-avatar-root-font-weight, 600);
208
- box-shadow: var(--frame-avatar-root-shadow, none);
209
- }
1
+ @import './_vars.css';
2
+
3
+ [frAvatar] {
4
+ --frame-avatar-badge-size-current: var(
5
+ --frame-avatar-badge-size,
6
+ calc(var(--frame-avatar-size-current, var(--frame-avatar-root-size, 2.5rem)) * 0.35)
7
+ );
8
+ --frame-avatar-badge-font-size-current: var(
9
+ --frame-avatar-badge-font-size,
10
+ calc(var(--frame-avatar-font-size-current, var(--frame-avatar-root-font-size, 0.875rem)) * 0.72)
11
+ );
12
+ position: relative;
13
+ inline-size: var(--frame-avatar-size-current, var(--frame-avatar-root-size, 2.5rem));
14
+ block-size: var(--frame-avatar-size-current, var(--frame-avatar-root-size, 2.5rem));
15
+ display: inline-flex;
16
+ align-items: center;
17
+ justify-content: center;
18
+ overflow: visible;
19
+ flex: 0 0 auto;
20
+ border: 1px solid var(--frame-avatar-root-border, transparent);
21
+ border-radius: var(--frame-avatar-root-radius, var(--frame-radius-full));
22
+ background: var(--frame-avatar-root-bg, var(--frame-muted));
23
+ box-shadow: var(--frame-avatar-root-shadow, none);
24
+ color: var(--frame-avatar-root-color, var(--frame-muted-foreground));
25
+ font-size: var(--frame-avatar-font-size-current, var(--frame-avatar-root-font-size, 0.875rem));
26
+ font-weight: var(--frame-avatar-root-font-weight, 600);
27
+ line-height: 1;
28
+ text-transform: uppercase;
29
+ user-select: none;
30
+ vertical-align: middle;
31
+ }
32
+
33
+ [frAvatar][data-size='xs'] {
34
+ --frame-avatar-size-current: var(--frame-avatar-size-xs, 1rem);
35
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-xs, 0.5rem);
36
+ }
37
+
38
+ [frAvatar][data-size='sm'] {
39
+ --frame-avatar-size-current: var(--frame-avatar-size-sm, 2rem);
40
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-sm, 0.75rem);
41
+ }
42
+
43
+ [frAvatar][data-size='md'] {
44
+ --frame-avatar-size-current: var(--frame-avatar-size-md, 2.5rem);
45
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-md, 0.875rem);
46
+ }
47
+
48
+ [frAvatar][data-size='lg'] {
49
+ --frame-avatar-size-current: var(--frame-avatar-size-lg, 3.5rem);
50
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-lg, 1rem);
51
+ }
52
+
53
+ [frAvatarImage],
54
+ [frAvatarFallback],
55
+ [frAvatarIcon] {
56
+ position: absolute;
57
+ inset: 0;
58
+ box-sizing: border-box;
59
+ border-radius: inherit;
60
+ }
61
+
62
+ [frAvatarImage] {
63
+ inline-size: 100%;
64
+ block-size: 100%;
65
+ object-fit: var(--frame-avatar-image-fit, cover);
66
+ opacity: 0;
67
+ transition: opacity 160ms ease;
68
+ }
69
+
70
+ [frAvatar][data-status='loaded'] [frAvatarImage] {
71
+ opacity: 1;
72
+ }
73
+
74
+ [frAvatarFallback] {
75
+ display: inline-flex;
76
+ align-items: center;
77
+ justify-content: center;
78
+ inline-size: 100%;
79
+ block-size: 100%;
80
+ padding: var(--frame-avatar-fallback-padding, 0.25rem);
81
+ line-height: inherit;
82
+ text-align: center;
83
+ transition: opacity 160ms ease;
84
+ }
85
+
86
+ [frAvatarIcon] {
87
+ display: inline-flex;
88
+ align-items: center;
89
+ justify-content: center;
90
+ inline-size: 100%;
91
+ block-size: 100%;
92
+ font-size: var(--frame-avatar-icon-size, 1rem);
93
+ line-height: inherit;
94
+ transition: opacity 160ms ease;
95
+ }
96
+
97
+ [frAvatarIcon] > * {
98
+ inline-size: 1em;
99
+ block-size: 1em;
100
+ }
101
+
102
+ [frAvatarFallback][data-visible='false'] {
103
+ opacity: 0;
104
+ pointer-events: none;
105
+ }
106
+
107
+ [frAvatarIcon][data-visible='false'] {
108
+ opacity: 0;
109
+ pointer-events: none;
110
+ }
111
+
112
+ [frAvatarBadge] {
113
+ position: absolute;
114
+ inset-inline-end: 0;
115
+ inset-block-end: 0;
116
+ z-index: 2;
117
+ min-inline-size: var(--frame-avatar-badge-size-current);
118
+ block-size: var(--frame-avatar-badge-size-current);
119
+ display: inline-flex;
120
+ align-items: center;
121
+ justify-content: center;
122
+ padding-inline: 0.25rem;
123
+ border: 2px solid var(--frame-avatar-badge-border, var(--frame-surface));
124
+ border-radius: var(--frame-avatar-badge-radius, var(--frame-radius-full));
125
+ background: var(--frame-avatar-badge-bg, var(--frame-primary));
126
+ color: var(--frame-avatar-badge-color, var(--frame-primary-foreground));
127
+ font-size: var(--frame-avatar-badge-font-size-current);
128
+ font-weight: var(--frame-avatar-badge-font-weight, 700);
129
+ line-height: 1;
130
+ transform: translate(18%, 18%);
131
+ }
132
+
133
+ [frAvatarGroup] {
134
+ display: inline-flex;
135
+ align-items: center;
136
+ }
137
+
138
+ [frAvatarGroup] > [frAvatar],
139
+ [frAvatarGroup] > [frAvatarGroupCount] {
140
+ margin-inline-start: calc(var(--frame-avatar-group-overlap) * -1);
141
+ box-shadow: var(--frame-shadow-sm);
142
+ transition:
143
+ margin-inline-start var(--frame-avatar-group-transition-duration, 180ms)
144
+ var(--frame-avatar-group-transition-timing, ease),
145
+ transform var(--frame-avatar-group-transition-duration, 180ms)
146
+ var(--frame-avatar-group-transition-timing, ease);
147
+ }
148
+
149
+ [frAvatarGroup] > :first-child {
150
+ margin-inline-start: 0;
151
+ }
152
+
153
+ [frAvatarGroup] > [frAvatar],
154
+ [frAvatarGroup] > [frAvatarGroupCount] {
155
+ position: relative;
156
+ }
157
+
158
+ [frAvatarGroup][data-expand-on-hover='true']:where(:hover, :focus-within)
159
+ > [frAvatar]:not(:first-child),
160
+ [frAvatarGroup][data-expand-on-hover='true']:where(:hover, :focus-within)
161
+ > [frAvatarGroupCount]:not(:first-child) {
162
+ margin-inline-start: 0;
163
+ }
164
+
165
+ [frAvatarGroup][data-size='sm'] > [frAvatarGroupCount] {
166
+ inline-size: var(--frame-avatar-size-sm, 2rem);
167
+ block-size: var(--frame-avatar-size-sm, 2rem);
168
+ font-size: var(--frame-avatar-font-size-sm, 0.75rem);
169
+ }
170
+
171
+ [frAvatarGroup][data-size='md'] > [frAvatarGroupCount] {
172
+ inline-size: var(--frame-avatar-size-md, 2.5rem);
173
+ block-size: var(--frame-avatar-size-md, 2.5rem);
174
+ font-size: var(--frame-avatar-font-size-md, 0.875rem);
175
+ }
176
+
177
+ [frAvatarGroup][data-size='lg'] > [frAvatarGroupCount] {
178
+ inline-size: var(--frame-avatar-size-lg, 3.5rem);
179
+ block-size: var(--frame-avatar-size-lg, 3.5rem);
180
+ font-size: var(--frame-avatar-font-size-lg, 1rem);
181
+ }
182
+
183
+ [frAvatarGroup][data-size='sm'] > [frAvatar] {
184
+ --frame-avatar-size-current: var(--frame-avatar-size-sm, 2rem);
185
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-sm, 0.75rem);
186
+ }
187
+
188
+ [frAvatarGroup][data-size='md'] > [frAvatar] {
189
+ --frame-avatar-size-current: var(--frame-avatar-size-md, 2.5rem);
190
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-md, 0.875rem);
191
+ }
192
+
193
+ [frAvatarGroup][data-size='lg'] > [frAvatar] {
194
+ --frame-avatar-size-current: var(--frame-avatar-size-lg, 3.5rem);
195
+ --frame-avatar-font-size-current: var(--frame-avatar-font-size-lg, 1rem);
196
+ }
197
+
198
+ [frAvatarGroupCount] {
199
+ flex: 0 0 auto;
200
+ display: inline-flex;
201
+ align-items: center;
202
+ justify-content: center;
203
+ border: 1px solid var(--frame-avatar-group-count-border, var(--frame-border));
204
+ border-radius: var(--frame-avatar-root-radius, var(--frame-radius-full));
205
+ background: var(--frame-avatar-group-count-bg, var(--frame-surface));
206
+ color: var(--frame-avatar-group-count-color, var(--frame-muted-foreground));
207
+ font-weight: var(--frame-avatar-root-font-weight, 600);
208
+ box-shadow: var(--frame-avatar-root-shadow, none);
209
+ }
@@ -1,16 +1,16 @@
1
- :root {
2
- --frame-badge-root-gap: 0.25rem;
3
- --frame-badge-root-min-height: 1.375rem;
4
- --frame-badge-root-radius: 0;
1
+ :where(:root) {
2
+ --frame-badge-root-gap: var(--frame-density-gap-sm);
3
+ --frame-badge-root-min-height: var(--frame-density-inline-height);
4
+ --frame-badge-root-radius: var(--frame-radius-sm);
5
5
  --frame-badge-root-font-size: 0.75rem;
6
6
  --frame-badge-root-font-weight: 600;
7
7
  --frame-badge-root-bg: var(--frame-primary);
8
8
  --frame-badge-root-color: var(--frame-primary-foreground);
9
- --frame-badge-success-bg: color-mix(in srgb, #16a34a 16%, var(--frame-surface));
10
- --frame-badge-success-border: color-mix(in srgb, #16a34a 32%, transparent);
11
- --frame-badge-success-color: color-mix(in srgb, #16a34a 78%, var(--frame-foreground));
12
- --frame-badge-root-padding-block: 0.1875rem;
13
- --frame-badge-root-padding-inline: 0.625rem;
9
+ --frame-badge-success-bg: color-mix(in srgb, var(--frame-success) 16%, var(--frame-surface));
10
+ --frame-badge-success-border: color-mix(in srgb, var(--frame-success) 32%, transparent);
11
+ --frame-badge-success-color: color-mix(in srgb, var(--frame-success) 78%, var(--frame-foreground));
12
+ --frame-badge-root-padding-block: var(--frame-density-inline-padding-block);
13
+ --frame-badge-root-padding-inline: var(--frame-density-inline-padding-inline);
14
14
  --frame-badge-root-focus-shadow: none;
15
15
  --frame-badge-root-transition-duration: 150ms;
16
16
  --frame-badge-link-underline-offset: 0.1875rem;
@@ -1,8 +1,8 @@
1
- :root {
1
+ :where(:root) {
2
2
  --frame-breadcrumb-root-color: var(--frame-muted-foreground);
3
3
  --frame-breadcrumb-root-font-size: 0.875rem;
4
4
  --frame-breadcrumb-root-line-height: 1.25rem;
5
- --frame-breadcrumb-list-gap: 0.375rem;
5
+ --frame-breadcrumb-list-gap: var(--frame-density-gap-md);
6
6
  --frame-breadcrumb-link-radius: var(--frame-radius-sm);
7
7
  --frame-breadcrumb-link-color: var(--frame-muted-foreground);
8
8
  --frame-breadcrumb-link-hover-color: var(--frame-foreground);
@@ -1,7 +1,7 @@
1
- :root {
2
- --frame-button-root-gap: 0.5rem;
3
- --frame-button-root-height: 2.25rem;
4
- --frame-button-root-padding-x: 1rem;
1
+ :where(:root) {
2
+ --frame-button-root-gap: var(--frame-density-gap-md);
3
+ --frame-button-root-height: var(--frame-density-control-height-md);
4
+ --frame-button-root-padding-x: var(--frame-density-control-padding-x-lg);
5
5
  --frame-button-root-radius: var(--frame-radius-md);
6
6
  --frame-button-root-shadow: var(--frame-shadow-sm);
7
7
  --frame-button-root-font-size: 0.875rem;
@@ -14,7 +14,7 @@
14
14
  --frame-button-root-disabled-shadow: none;
15
15
  --frame-button-loading-size: 1rem;
16
16
  --frame-button-loading-stroke: 2px;
17
- --frame-button-loading-track: color-mix(in srgb, white 24%, transparent);
17
+ --frame-button-loading-track: color-mix(in srgb, currentColor 24%, transparent);
18
18
  --frame-button-icon-size: 1rem;
19
19
  --frame-button-label-weight: inherit;
20
20
  }
@@ -5,12 +5,12 @@
5
5
 
6
6
  .frame-button {
7
7
  --frame-button-root-bg: var(--frame-primary);
8
- --frame-button-root-border: color-mix(in srgb, var(--frame-primary) 84%, white);
8
+ --frame-button-root-border: color-mix(in srgb, var(--frame-primary) 84%, var(--frame-primary-foreground));
9
9
  --frame-button-root-color: var(--frame-primary-foreground);
10
- --frame-button-root-hover-bg: color-mix(in srgb, var(--frame-primary) 88%, black);
10
+ --frame-button-root-hover-bg: color-mix(in srgb, var(--frame-primary) 88%, var(--frame-foreground));
11
11
  --frame-button-root-hover-border: var(--frame-button-root-border);
12
12
  --frame-button-root-hover-color: var(--frame-button-root-color);
13
- --frame-button-root-active-bg: color-mix(in srgb, var(--frame-primary) 84%, black);
13
+ --frame-button-root-active-bg: color-mix(in srgb, var(--frame-primary) 84%, var(--frame-foreground));
14
14
  --frame-button-root-active-border: var(--frame-button-root-hover-border);
15
15
  --frame-button-root-active-color: var(--frame-button-root-hover-color);
16
16
  --frame-button-root-corner-color: color-mix(in srgb, var(--frame-primary-foreground) 88%, transparent);
@@ -34,10 +34,10 @@
34
34
  align-items: center;
35
35
  justify-content: center;
36
36
  gap: var(--frame-button-root-gap, 0.5rem);
37
- border: 1px solid var(--frame-button-root-border);
38
- border-radius: var(--frame-button-root-radius, var(--frame-radius-md));
39
- background: var(--frame-button-root-bg);
40
- /* box-shadow: var(--frame-button-root-shadow, var(--frame-shadow-sm)); */
37
+ border: 1px solid var(--frame-button-root-border);
38
+ border-radius: var(--frame-button-root-radius, var(--frame-radius-md));
39
+ background: var(--frame-button-root-bg);
40
+ box-shadow: var(--frame-button-root-shadow, var(--frame-shadow-sm));
41
41
  color: var(--frame-button-root-color);
42
42
  cursor: pointer;
43
43
  font: inherit;
@@ -102,7 +102,7 @@
102
102
  inline-size: var(--frame-spinner-size);
103
103
  block-size: var(--frame-spinner-size);
104
104
  border: var(--frame-spinner-stroke) solid var(--frame-spinner-track-color);
105
- border-radius: 999px;
105
+ border-radius: var(--frame-radius-full);
106
106
  border-top-color: var(--frame-spinner-indicator-color);
107
107
  opacity: 0;
108
108
  pointer-events: none;
@@ -129,11 +129,11 @@
129
129
  transform: translateY(1px);
130
130
  }
131
131
 
132
- .frame-button:focus-visible {
133
- outline: 1px solid var(--frame-button-root-ring-color, var(--frame-ring));
134
- outline-offset: 2px;
135
- box-shadow: none;
136
- }
132
+ .frame-button:focus-visible {
133
+ outline: 1px solid var(--frame-button-root-ring-color, var(--frame-ring));
134
+ outline-offset: 2px;
135
+ box-shadow: var(--frame-button-root-focus-shadow, none);
136
+ }
137
137
 
138
138
  .frame-button[data-loading]::after {
139
139
  animation: frame-button-spin 0.7s linear infinite;
@@ -163,12 +163,12 @@
163
163
 
164
164
  .frame-button:where(:disabled, [data-disabled]) {
165
165
  cursor: not-allowed;
166
- opacity: var(--frame-button-root-disabled-opacity, 0.55);
167
- filter: none;
168
- transform: none;
169
- transition: none;
170
- /* box-shadow: var(--frame-button-root-disabled-shadow, none); */
171
- }
166
+ opacity: var(--frame-button-root-disabled-opacity, 0.55);
167
+ filter: none;
168
+ transform: none;
169
+ transition: none;
170
+ box-shadow: var(--frame-button-root-disabled-shadow, none);
171
+ }
172
172
 
173
173
  .frame-button:where(:disabled, [data-disabled])::before {
174
174
  transition: none;
@@ -195,11 +195,11 @@
195
195
  --frame-button-root-hover-border: var(--frame-button-root-border);
196
196
  --frame-button-root-hover-color: var(--frame-button-root-color);
197
197
  --frame-button-root-active-bg: color-mix(in srgb, var(--frame-muted) 80%, transparent);
198
- --frame-button-root-active-border: var(--frame-button-root-hover-border);
199
- --frame-button-root-active-color: var(--frame-button-root-hover-color);
200
- --frame-button-root-corner-color: var(--frame-frame-accent);
201
- /* box-shadow: var(--frame-button-root-shadow, none); */
202
- }
198
+ --frame-button-root-active-border: var(--frame-button-root-hover-border);
199
+ --frame-button-root-active-color: var(--frame-button-root-hover-color);
200
+ --frame-button-root-corner-color: var(--frame-frame-accent);
201
+ --frame-button-root-shadow: none;
202
+ }
203
203
 
204
204
  .frame-button[data-appearance='ghost']::before {
205
205
  opacity: 0;
@@ -211,44 +211,19 @@
211
211
  }
212
212
 
213
213
  .frame-button[data-size='sm'] {
214
- --frame-button-root-height: 2rem;
214
+ --frame-button-root-height: var(--frame-density-control-height-sm);
215
215
  min-height: var(--frame-button-root-height);
216
216
  padding-inline: 0.75rem;
217
217
  font-size: 0.8125rem;
218
218
  }
219
219
 
220
220
  .frame-button[data-size='lg'] {
221
- --frame-button-root-height: 2.75rem;
221
+ --frame-button-root-height: var(--frame-density-control-height-xl);
222
222
  min-height: var(--frame-button-root-height);
223
223
  padding-inline: 1.25rem;
224
224
  font-size: 0.9375rem;
225
225
  }
226
226
 
227
- .frame-button[data-radius='none'] {
228
- --frame-button-root-radius: 0px;
229
- border-radius: 0;
230
- }
231
-
232
- .frame-button[data-radius='sm'] {
233
- --frame-button-root-radius: var(--frame-radius-sm);
234
- border-radius: var(--frame-radius-sm);
235
- }
236
-
237
- .frame-button[data-radius='md'] {
238
- --frame-button-root-radius: var(--frame-radius-md);
239
- border-radius: var(--frame-radius-md);
240
- }
241
-
242
- .frame-button[data-radius='lg'] {
243
- --frame-button-root-radius: var(--frame-radius-lg);
244
- border-radius: var(--frame-radius-lg);
245
- }
246
-
247
- .frame-button[data-radius='full'] {
248
- --frame-button-root-radius: var(--frame-radius-full);
249
- border-radius: var(--frame-radius-full);
250
- }
251
-
252
227
  [frButtonLoading] {
253
228
  position: absolute;
254
229
  inset-block-start: 50%;
@@ -1,11 +1,13 @@
1
1
  .frame-button-group,
2
2
  [frButtonGroup],
3
3
  frame-button-group {
4
+ --frame-button-group-radius: var(--frame-button-root-radius, var(--frame-radius-md));
4
5
  position: relative;
5
6
  display: inline-flex;
6
7
  align-items: stretch;
7
8
  width: 100%;
8
9
  border: 1px solid var(--frame-frame-line-muted, var(--frame-border));
10
+ border-radius: var(--frame-button-group-radius);
9
11
  background: var(--frame-surface);
10
12
  }
11
13
 
@@ -74,18 +76,23 @@ frame-button-group[data-orientation='vertical'] > :not(:first-child):not(:last-c
74
76
  .frame-button-group::before,
75
77
  [frButtonGroup]::before,
76
78
  frame-button-group::before {
79
+ --frame-button-group-corner-size: clamp(
80
+ 0px,
81
+ calc((1px - var(--frame-button-group-radius, 0px)) * 9999),
82
+ var(--frame-frame-tick-size, 0.375rem)
83
+ );
77
84
  position: absolute;
78
85
  inset: 0;
79
86
  z-index: 2;
80
87
  background:
81
88
  linear-gradient(var(--frame-blueprint-corner-color, var(--frame-frame-accent)), var(--frame-blueprint-corner-color, var(--frame-frame-accent)))
82
- left top / var(--frame-frame-tick-size, 0.375rem) 1px no-repeat,
89
+ left top / var(--frame-button-group-corner-size) 1px no-repeat,
83
90
  linear-gradient(var(--frame-blueprint-corner-color, var(--frame-frame-accent)), var(--frame-blueprint-corner-color, var(--frame-frame-accent)))
84
- left top / 1px var(--frame-frame-tick-size, 0.375rem) no-repeat,
91
+ left top / 1px var(--frame-button-group-corner-size) no-repeat,
85
92
  linear-gradient(var(--frame-blueprint-corner-color, var(--frame-frame-accent)), var(--frame-blueprint-corner-color, var(--frame-frame-accent)))
86
- right bottom / var(--frame-frame-tick-size, 0.375rem) 1px no-repeat,
93
+ right bottom / var(--frame-button-group-corner-size) 1px no-repeat,
87
94
  linear-gradient(var(--frame-blueprint-corner-color, var(--frame-frame-accent)), var(--frame-blueprint-corner-color, var(--frame-frame-accent)))
88
- right bottom / 1px var(--frame-frame-tick-size, 0.375rem) no-repeat;
95
+ right bottom / 1px var(--frame-button-group-corner-size) no-repeat;
89
96
  content: "";
90
97
  pointer-events: none;
91
98
  }