@typlog/ui 0.12.3 → 0.13.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.
@@ -1,200 +0,0 @@
1
-
2
- .ui-TabsList::-webkit-scrollbar {
3
- display: none;
4
- }
5
- .ui-TabsList:where(.r-size-1) {
6
- --tab-font-size: var(--font-size-1);
7
- --tab-line-height: var(--line-height-1);
8
- --tab-letter-spacing: var(--letter-spacing-1);
9
- --tab-height: var(--space-6);
10
- --tab-padding-x: var(--space-1);
11
- --tab-radius: max(var(--radius-2), var(--radius-full));
12
- --tab-item-radius: max(var(--radius-1), var(--radius-full));
13
- --tab-inner-padding-x: var(--space-1);
14
- --tab-inner-height: var(--space-5);
15
- }
16
- .ui-TabsList:where(.r-size-2) {
17
- --tab-font-size: var(--font-size-2);
18
- --tab-line-height: var(--line-height-2);
19
- --tab-letter-spacing: var(--letter-spacing-2);
20
- --tab-height: var(--space-7);
21
- --tab-padding-x: var(--space-2);
22
- --tab-radius: max(var(--radius-3), var(--radius-full));
23
- --tab-item-radius: max(var(--radius-2), var(--radius-full));
24
- --tab-inner-padding-x: var(--space-2);
25
- --tab-inner-height: calc(var(--space-6) - var(--space-1));
26
- }
27
- .ui-TabsList:where(.r-variant-surface.r-size-1),
28
- .ui-TabsList:where(.r-variant-soft.r-size-1) {
29
- --tab-inner-padding-x: calc(var(--space-2) / 4 * 3);
30
- }
31
- @layer components {
32
- .ui-TabsList {
33
- justify-content: flex-start;
34
- position: relative;
35
- overflow-x: auto;
36
- white-space: nowrap;
37
- font-style: normal;
38
- scrollbar-width: none;
39
- font-size: var(--tab-font-size);
40
- line-height: var(--tab-line-height);
41
- letter-spacing: var(--tab-letter-spacing);
42
- }
43
-
44
- /** classic & surface */
45
- .ui-TabsList:where(.r-variant-surface, .r-variant-classic) {
46
- position: relative;
47
- display: inline-flex;
48
- width: -moz-fit-content;
49
- width: fit-content;
50
- align-items: center;
51
- vertical-align: top;
52
- flex-shrink: 0;
53
- border-radius: var(--tab-radius);
54
- }
55
- .ui-TabsList:where(.r-variant-classic) {
56
- background-color: var(--accent-a3);
57
- padding-left: var(--tab-padding-x);
58
- padding-right: var(--tab-padding-x);
59
- }
60
- .ui-TabsList:where(.r-variant-surface) {
61
- --tab-item-radius: 0;
62
- --tab-inner-height: var(--tab-height);
63
- box-shadow: inset 0 0 0 1px var(--gray-a6);
64
- }
65
-
66
- /** soft & outline */
67
- .ui-TabsList:where(.r-variant-outline, .r-variant-soft) {
68
- display: flex;
69
- box-shadow: inset 0 -1px 0 0 var(--gray-a5);
70
- }
71
- .ui-TabsList:where(.r-variant-soft) {
72
- padding-left: var(--tab-padding-x);
73
- padding-right: var(--tab-padding-x);
74
- }
75
- }
76
- .ui-TabsIndicator {
77
- position: absolute;
78
- left: 0;
79
- transition-property: width, transform;
80
- transform: translateX(var(--reka-tabs-indicator-position));
81
- width: var(--reka-tabs-indicator-size);
82
- }
83
- .ui-TabsList:where(.r-variant-surface) :where(.ui-TabsIndicator) {
84
- top: 0;
85
- height: var(--tab-height);
86
- background-color: var(--accent-a3);
87
- transition-duration: 100ms;
88
- }
89
- .ui-TabsList:where(.r-variant-classic) :where(.ui-TabsIndicator) {
90
- top: calc((var(--tab-height) - var(--tab-inner-height)) / 2);
91
- height: var(--tab-inner-height);
92
- background-color: var(--color-panel-solid);
93
- box-shadow:
94
- 0 0 0 0.5px var(--black-a1),
95
- 0 1px 1px 0 var(--gray-a2),
96
- 0 2px 1px -1px var(--black-a1),
97
- 0 1px 3px 0 var(--black-a1);
98
- border-radius: var(--tab-item-radius);
99
- transition-duration: 100ms;
100
- }
101
- .ui-TabsList:where(.r-variant-soft) :where(.ui-TabsIndicator) {
102
- top: calc((var(--tab-height) - var(--tab-inner-height)) / 2);
103
- height: var(--tab-inner-height);
104
- background-color: var(--accent-a3);
105
- border-radius: var(--tab-item-radius);
106
- transition-duration: 100ms;
107
- }
108
- .ui-TabsList:where(.r-variant-outline) :where(.ui-TabsIndicator) {
109
- bottom: 0;
110
- height: 2px;
111
- background-color: var(--accent-indicator);
112
- transition-duration: 300ms;
113
- }
114
-
115
- /** high contrast */
116
- :where(.ui-TabsList.r-variant-outline.r-high-contrast) .ui-TabsIndicator {
117
- background-color: var(--accent-12);
118
- }
119
-
120
- .ui-TabTrigger {
121
- display: flex;
122
- align-items: center;
123
- justify-content: center;
124
- flex-shrink: 0;
125
- position: relative;
126
- -webkit-user-select: none;
127
- -moz-user-select: none;
128
- user-select: none;
129
- box-sizing: border-box;
130
- height: var(--tab-height);
131
- color: var(--gray-a11);
132
- outline: none;
133
- }
134
- .ui-TabTrigger:disabled {
135
- color: var(--gray-a8);
136
- border-color: currentColor;
137
- }
138
- .ui-TabTriggerInner,
139
- .ui-TabTriggerInnerHidden {
140
- display: flex;
141
- align-items: center;
142
- justify-content: center;
143
- box-sizing: border-box;
144
- height: var(--tab-inner-height);
145
- padding-left: var(--tab-inner-padding-x);
146
- padding-right: var(--tab-inner-padding-x);
147
- border-radius: var(--tab-item-radius);
148
- }
149
- .ui-TabTriggerInner {
150
- position: absolute;
151
- }
152
- :where(.ui-TabTrigger[data-state='inactive']) .ui-TabTriggerInner {
153
- letter-spacing: var(--tab-inactive-letter-spacing);
154
- word-spacing: var(--tab-inactive-word-spacing);
155
- }
156
- :where(.ui-TabTrigger[data-state='active']) .ui-TabTriggerInner {
157
- font-weight: var(--font-weight-medium);
158
- letter-spacing: var(--tab-active-letter-spacing);
159
- word-spacing: var(--tab-active-word-spacing);
160
- }
161
- .ui-TabTriggerInnerHidden {
162
- visibility: hidden;
163
- font-weight: var(--font-weight-medium);
164
- letter-spacing: var(--tab-active-letter-spacing);
165
- word-spacing: var(--tab-active-word-spacing);
166
- }
167
- @media (hover: hover) {
168
- .ui-TabsList:where(.r-variant-outline, .r-variant-classic) :where(.ui-TabTrigger:hover) {
169
- color: var(--gray-12);
170
- }
171
- .ui-TabsList:where(.r-variant-surface, .r-variant-soft) :where(.ui-TabTrigger:hover) {
172
- color: var(--accent-a11);
173
- }
174
- .ui-TabsList:where(.r-variant-outline) :where(.ui-TabTrigger:not(:disabled):hover) :where(.ui-TabTriggerInner) {
175
- background-color: var(--gray-a3);
176
- }
177
- .ui-TabTrigger:where(:focus-visible:hover) :where(.ui-TabTriggerInner) {
178
- background-color: var(--accent-a3);
179
- }
180
- }
181
- .ui-TabTrigger:where(:focus-visible) :where(.ui-TabTriggerInner) {
182
- outline: 2px solid var(--focus-8);
183
- outline-offset: -2px;
184
- }
185
- .ui-TabsList:where(.r-variant-outline) :where(.ui-TabTrigger) {
186
- padding-left: var(--tab-padding-x);
187
- padding-right: var(--tab-padding-x);
188
- }
189
- .ui-TabsList:where(.r-variant-classic, .r-variant-outline) :where(.ui-TabTrigger[data-state='active']) {
190
- color: var(--gray-12);
191
- }
192
- .ui-TabsList:where(.r-variant-soft) :where(.ui-TabTrigger + .ui-TabTrigger) {
193
- margin-left: calc(var(--tab-padding-x) / 2)
194
- }
195
- .ui-TabsList:where(.r-variant-surface) :where(.ui-TabTrigger + .ui-TabTrigger) {
196
- box-shadow: inset 1px 0 0 var(--gray-a4);
197
- }
198
- .ui-TabsList:where(.r-variant-surface, .r-variant-soft) :where(.ui-TabTrigger[data-state='active']) {
199
- color: var(--accent-a11);
200
- }
@@ -1,225 +0,0 @@
1
-
2
- @layer components {
3
- .ui-Toggle {
4
- position: relative;
5
- display: inline-flex;
6
- align-items: center;
7
- justify-content: center;
8
- vertical-align: top;
9
- flex-shrink: 0;
10
- border-radius: var(--toggle-border-radius);
11
- font-size: var(--toggle-font-size);
12
- width: var(--toggle-size);
13
- height: var(--toggle-size);
14
- }
15
- }
16
- .ui-Toggle:where(.r-size-1) {
17
- --toggle-border-radius: max(var(--radius-1), var(--radius-full));
18
- --toggle-font-size: var(--font-size-1);
19
- --toggle-size: var(--space-5);
20
- }
21
- .ui-Toggle:where(.r-size-2) {
22
- --toggle-border-radius: max(var(--radius-2), var(--radius-full));
23
- --toggle-font-size: var(--font-size-3);
24
- --toggle-size: var(--space-6);
25
- }
26
- .ui-Toggle:where(.r-size-3) {
27
- --toggle-border-radius: max(var(--radius-3), var(--radius-full));
28
- --toggle-font-size: var(--font-size-6);
29
- --toggle-size: var(--space-7);
30
- }
31
-
32
- /** soft */
33
- .ui-Toggle:where(.r-variant-soft) {
34
- background-color: var(--color-panel-translucent);
35
- box-shadow: var(--shadow-2);
36
- }
37
- @media (hover: hover) {
38
- .ui-Toggle:where(.r-variant-soft):where(:hover) {
39
- background-color: var(--accent-a2);
40
- }
41
- }
42
- .ui-Toggle:where(.r-variant-soft):where(:focus-visible) {
43
- outline: 2px solid var(--accent-8);
44
- outline-offset: -1px;
45
- }
46
- .ui-Toggle:where(.r-variant-soft):where([data-disabled]) {
47
- color: var(--gray-a8);
48
- background-color: var(--gray-a3);
49
- }
50
- .ui-Toggle:where(.r-variant-soft):where([data-state="on"]) {
51
- background-color: var(--accent-a3);
52
- box-shadow: var(--shadow-1);
53
- }
54
-
55
- /** solid & ghost*/
56
- .ui-Toggle:where(.r-variant-solid) {
57
- background-color: var(--color-panel-solid);
58
- box-shadow: var(--shadow-2);
59
- }
60
- @media (hover: hover) {
61
- .ui-Toggle:where(.r-variant-solid, .r-variant-ghost):where(:hover) {
62
- background-color: var(--accent-a3);
63
- }
64
- }
65
- .ui-Toggle:where(.r-variant-solid, .r-variant-ghost):where(:focus-visible) {
66
- outline: 2px solid var(--focus-8);
67
- outline-offset: 2px;
68
- }
69
- .ui-Toggle:where(.r-variant-solid):where([data-disabled]) {
70
- color: var(--gray-a8);
71
- background-color: var(--gray-a3);
72
- }
73
- .ui-Toggle:where(.r-variant-ghost):where([data-disabled]) {
74
- color: var(--gray-a8);
75
- background-color: transparent;
76
- }
77
- .ui-Toggle:where(.r-variant-solid):where([data-state="on"]) {
78
- background-color: var(--accent-9);
79
- color: var(--accent-contrast);
80
- box-shadow: var(--shadow-1);
81
- }
82
- .ui-Toggle:where(.r-variant-ghost):where([data-state="on"]) {
83
- background-color: var(--accent-a3);
84
- box-shadow: var(--shadow-1);
85
- }
86
- .ui-Toggle:where(.r-variant-solid, .r-variant-ghost):where(.r-high-contrast):where([data-state="on"]) {
87
- background-color: var(--accent-12);
88
- color: var(--gray-1);
89
- }
90
-
91
- @layer components {
92
- .ui-ToggleGroupRoot {
93
- position: relative;
94
- display: inline-flex;
95
- align-items: center;
96
- justify-content: center;
97
- vertical-align: top;
98
- flex-shrink: 0;
99
- height: var(--toggle-group-height);
100
- }
101
- }
102
- .ui-ToggleGroupRoot:where(.r-size-1) {
103
- font-size: var(--font-size-1);
104
- --toggle-radius: max(var(--radius-1), var(--radius-full));
105
- --toggle-group-height: var(--space-5);
106
- --toggle-group-soft-padding: 1px;
107
- }
108
- .ui-ToggleGroupRoot:where(.r-size-2) {
109
- font-size: var(--font-size-3);
110
- --toggle-radius: max(var(--radius-2), var(--radius-full));
111
- --toggle-group-height: var(--space-6);
112
- --toggle-group-soft-padding: 2px;
113
- }
114
- .ui-ToggleGroupRoot:where(.r-size-3) {
115
- font-size: var(--font-size-6);
116
- --toggle-radius: max(var(--radius-3), var(--radius-full));
117
- --toggle-group-height: var(--space-7);
118
- --toggle-group-soft-padding: 3px;
119
- }
120
- .ui-ToggleGroupRoot:where(.r-variant-solid),
121
- .ui-ToggleGroupRoot:where(.r-variant-outline),
122
- .ui-ToggleGroupRoot:where(.r-variant-surface) {
123
- border-radius: var(--toggle-radius);
124
- background-color: var(--color-panel-solid);
125
- box-shadow: var(--shadow-2);
126
- --toggle-item-size: var(--toggle-group-height);
127
- }
128
- .ui-ToggleGroupRoot:where(.r-variant-soft) {
129
- border-radius: var(--toggle-radius);
130
- background-color: var(--color-panel-translucent);
131
- box-shadow: var(--shadow-2);
132
- padding: var(--toggle-group-soft-padding);
133
- gap: var(--toggle-group-soft-padding);
134
- --toggle-item-size: calc(var(--toggle-group-height) - 2 * var(--toggle-group-soft-padding));
135
- }
136
- .ui-ToggleGroupRoot:where(.r-variant-ghost) {
137
- gap: calc(var(--space-1) / 2);
138
- --toggle-item-size: var(--toggle-group-height);
139
- }
140
-
141
- @layer components {
142
- .ui-ToggleGroupItem {
143
- position: relative;
144
- display: inline-flex;
145
- align-items: center;
146
- justify-content: center;
147
- vertical-align: top;
148
- flex-shrink: 0;
149
- width: var(--toggle-item-size);
150
- height: var(--toggle-item-size);
151
- }
152
- }
153
- .ui-ToggleGroupRoot:where(.r-variant-solid, .r-variant-surface, .r-variant-outline) :where(.ui-ToggleGroupItem:first-child) {
154
- border-top-left-radius: var(--toggle-radius);
155
- border-bottom-left-radius: var(--toggle-radius);
156
- }
157
- .ui-ToggleGroupRoot:where(.r-variant-solid, .r-variant-surface, .r-variant-outline) :where(.ui-ToggleGroupItem:last-child) {
158
- border-top-right-radius: var(--toggle-radius);
159
- border-bottom-right-radius: var(--toggle-radius);
160
- }
161
- .ui-ToggleGroupRoot:where(.r-variant-soft, .r-variant-ghost) :where(.ui-ToggleGroupItem) {
162
- border-radius: var(--toggle-radius);
163
- }
164
-
165
- /** soft */
166
- @media (hover: hover) {
167
- .ui-ToggleGroupRoot:where(.r-variant-soft) :where(.ui-ToggleGroupItem:hover) {
168
- background-color: var(--accent-a2);
169
- }
170
- }
171
- .ui-ToggleGroupRoot:where(.r-variant-soft) :where(.ui-ToggleGroupItem:focus-visible) {
172
- outline: 2px solid var(--accent-8);
173
- outline-offset: -1px;
174
- }
175
- .ui-ToggleGroupRoot:where(.r-variant-soft) :where(.ui-ToggleGroupItem[data-disabled]) {
176
- color: var(--gray-a8);
177
- background-color: var(--gray-a3);
178
- }
179
- .ui-ToggleGroupRoot:where(.r-variant-soft) :where(.ui-ToggleGroupItem[data-state="on"]) {
180
- background-color: var(--accent-a4);
181
- }
182
-
183
- /** solid, surface ghost */
184
- @media (hover: hover) {
185
- .ui-ToggleGroupRoot:where(.r-variant-solid, .r-variant-surface, .r-variant-outline, .r-variant-ghost) :where(.ui-ToggleGroupItem:hover) {
186
- background-color: var(--accent-a3);
187
- }
188
- }
189
- :where(.ui-ToggleGroupRoot.r-variant-surface, .r-variant-outline) .ui-ToggleGroupItem + .ui-ToggleGroupItem {
190
- box-shadow: inset 1px 0 0 0 var(--gray-a4);
191
- }
192
- .ui-ToggleGroupRoot:where(.r-variant-solid, .r-variant-surface, .r-variant-outoine, .r-variant-ghost) :where(.ui-ToggleGroupItem:focus-visible) {
193
- outline: 2px solid var(--focus-8);
194
- outline-offset: 2px;
195
- }
196
- .ui-ToggleGroupRoot:where(.r-variant-solid) :where(.ui-ToggleGroupItem[data-disabled]) {
197
- color: var(--gray-a8);
198
- background-color: var(--gray-a3);
199
- }
200
- .ui-ToggleGroupRoot:where(.r-variant-surface, .r-variant-outline) :where(.ui-ToggleGroupItem[data-disabled]) {
201
- color: var(--gray-a8);
202
- }
203
- .ui-ToggleGroupRoot:where(.r-variant-ghost) :where(.ui-ToggleGroupItem[data-disabled]) {
204
- color: var(--gray-a8);
205
- background-color: transparent;
206
- }
207
- .ui-ToggleGroupRoot:where(.r-variant-solid) :where(.ui-ToggleGroupItem[data-state="on"]) {
208
- background-color: var(--accent-9);
209
- color: var(--accent-contrast);
210
- box-shadow: var(--shadow-1);
211
- }
212
- .ui-ToggleGroupRoot:where(.r-variant-surface) :where(.ui-ToggleGroupItem[data-state="on"]) {
213
- background-color: var(--accent-a3);
214
- color: var(--accent-a11);
215
- }
216
- .ui-ToggleGroupRoot:where(.r-variant-outline) :where(.ui-ToggleGroupItem[data-state="on"]) {
217
- color: var(--accent-a11);
218
- }
219
- .ui-ToggleGroupRoot:where(.r-variant-ghost) :where(.ui-ToggleGroupItem[data-state="on"]) {
220
- background-color: var(--accent-a4);
221
- }
222
- .ui-ToggleGroupRoot:where(.r-variant-solid, .r-variant-ghost):where(.r-high-contrast) :where(.ui-ToggleGroupItem[data-state="on"]) {
223
- background-color: var(--accent-12);
224
- color: var(--gray-1);
225
- }
@@ -1,45 +0,0 @@
1
-
2
- .ui-Tooltip {
3
- box-sizing: border-box;
4
- padding: var(--space-1) var(--space-2);
5
- border-radius: var(--radius-2);
6
- transform-origin: var(--reka-tooltip-content-transform-origin);
7
- animation-duration: 140ms;
8
- animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
9
- background-color: var(--accent-11);
10
- }
11
- @media (prefers-reduced-motion: no-preference) {
12
- .ui-Tooltip:where([data-state='delayed-open']):where([data-side='top']) {
13
- animation-name: ui-slide-from-top, ui-fade-in;
14
- }
15
- .ui-Tooltip:where([data-state='delayed-open']):where([data-side='bottom']) {
16
- animation-name: ui-slide-from-bottom, ui-fade-in;
17
- }
18
- .ui-Tooltip:where([data-state='delayed-open']):where([data-side='left']) {
19
- animation-name: ui-slide-from-left, ui-fade-in;
20
- }
21
- .ui-Tooltip:where([data-state='delayed-open']):where([data-side='right']) {
22
- animation-name: ui-slide-from-right, ui-fade-in;
23
- }
24
- }
25
- .ui-TooltipText {
26
- color: var(--gray-1);
27
- -webkit-user-select: none;
28
- -moz-user-select: none;
29
- user-select: none;
30
- cursor: default;
31
- font-size: var(--font-size-1);
32
- line-height: var(--line-height-1);
33
- letter-spacing: var(--letter-spacing-1);
34
- }
35
- .ui-TooltipArrow {
36
- fill: var(--accent-11);
37
- }
38
-
39
- /* special handle for gray color */
40
- .ui-Tooltip:where([data-accent-color="gray"]) {
41
- background-color: var(--gray-12);
42
- }
43
- .ui-Tooltip:where([data-accent-color="gray"]) :where(.ui-TooltipArrow) {
44
- fill: var(--gray-12);
45
- }