@tangible/ui 0.0.3 → 0.0.5
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.
- package/README.md +21 -13
- package/components/Accordion/Accordion.d.ts +2 -2
- package/components/Accordion/Accordion.js +94 -23
- package/components/Accordion/index.d.ts +1 -1
- package/components/Accordion/types.d.ts +28 -4
- package/components/Avatar/Avatar.js +16 -7
- package/components/Avatar/AvatarGroup.js +7 -5
- package/components/Avatar/types.d.ts +11 -0
- package/components/Button/Button.js +10 -3
- package/components/Button/types.d.ts +9 -1
- package/components/Card/Card.js +26 -13
- package/components/Checkbox/Checkbox.d.ts +1 -1
- package/components/Chip/Chip.d.ts +37 -1
- package/components/Chip/Chip.js +10 -8
- package/components/ChipGroup/ChipGroup.js +5 -4
- package/components/ChipGroup/types.d.ts +3 -0
- package/components/Dropdown/Dropdown.d.ts +19 -1
- package/components/Dropdown/Dropdown.js +84 -28
- package/components/Dropdown/index.d.ts +2 -2
- package/components/Dropdown/index.js +1 -1
- package/components/Dropdown/types.d.ts +15 -0
- package/components/IconButton/IconButton.js +5 -4
- package/components/IconButton/index.d.ts +1 -1
- package/components/IconButton/types.d.ts +24 -4
- package/components/Modal/Modal.d.ts +16 -2
- package/components/Modal/Modal.js +45 -20
- package/components/MoveHandle/MoveHandle.js +3 -3
- package/components/MoveHandle/types.d.ts +12 -2
- package/components/Notice/Notice.js +32 -19
- package/components/Select/Select.js +6 -2
- package/components/Sidebar/Sidebar.d.ts +6 -1
- package/components/Sidebar/Sidebar.js +65 -11
- package/components/Sidebar/index.d.ts +1 -1
- package/components/Sidebar/types.d.ts +39 -14
- package/components/Tabs/Tabs.d.ts +1 -1
- package/components/Tabs/Tabs.js +12 -3
- package/components/Tabs/types.d.ts +20 -5
- package/components/TextInput/TextInput.js +10 -2
- package/components/Tooltip/Tooltip.d.ts +2 -2
- package/components/Tooltip/Tooltip.js +61 -40
- package/components/Tooltip/index.d.ts +1 -1
- package/components/Tooltip/types.d.ts +28 -1
- package/components/index.d.ts +2 -2
- package/components/index.js +1 -1
- package/package.json +1 -1
- package/styles/all.css +1 -1
- package/styles/all.expanded.css +354 -64
- package/styles/all.expanded.unlayered.css +354 -64
- package/styles/all.unlayered.css +1 -1
- package/styles/system/_tokens.scss +3 -0
- package/tui-manifest.json +291 -66
- package/utils/focus-trap.js +8 -1
package/styles/all.expanded.css
CHANGED
|
@@ -23,11 +23,17 @@
|
|
|
23
23
|
--tui-accordion-bg
|
|
24
24
|
--tui-accordion-bg-open
|
|
25
25
|
--tui-accordion-border
|
|
26
|
+
--tui-accordion-divider
|
|
26
27
|
--tui-accordion-radius
|
|
27
28
|
--tui-accordion-padding
|
|
29
|
+
--tui-accordion-trigger-padding
|
|
30
|
+
--tui-accordion-trigger-bg
|
|
31
|
+
--tui-accordion-trigger-hover
|
|
32
|
+
--tui-accordion-panel-padding
|
|
33
|
+
--tui-accordion-panel-bg
|
|
34
|
+
--tui-accordion-panel-spacing
|
|
28
35
|
--tui-accordion-gap
|
|
29
36
|
--tui-accordion-indicator
|
|
30
|
-
--tui-accordion-trigger-hover
|
|
31
37
|
*/
|
|
32
38
|
/* @tui-tokens
|
|
33
39
|
--tui-avatar-size
|
|
@@ -52,6 +58,7 @@
|
|
|
52
58
|
--tui-button-bg-interact
|
|
53
59
|
--tui-button-fg-interact
|
|
54
60
|
--tui-button-border-interact
|
|
61
|
+
--tui-button-fg-active
|
|
55
62
|
--tui-control-height-sm
|
|
56
63
|
--tui-control-height-md
|
|
57
64
|
--tui-control-height-lg
|
|
@@ -75,6 +82,7 @@
|
|
|
75
82
|
--tui-chip-border
|
|
76
83
|
--tui-chip-icon
|
|
77
84
|
--tui-chip-radius
|
|
85
|
+
--tui-chip-selected-ring
|
|
78
86
|
*/
|
|
79
87
|
/* @tui-tokens
|
|
80
88
|
--tui-chip-group-gap
|
|
@@ -176,6 +184,7 @@
|
|
|
176
184
|
--tui-notice-bg
|
|
177
185
|
--tui-notice-border
|
|
178
186
|
--tui-notice-stripe
|
|
187
|
+
--tui-notice-stripe-width
|
|
179
188
|
--tui-notice-fg
|
|
180
189
|
--tui-notice-radius
|
|
181
190
|
--tui-notice-padding
|
|
@@ -297,6 +306,8 @@
|
|
|
297
306
|
--tui-focus-ring-width: 2px;
|
|
298
307
|
--tui-focus-ring-offset: 2px;
|
|
299
308
|
--tui-focus-ring-color: #2563eb;
|
|
309
|
+
/* Font Weight */
|
|
310
|
+
--tui-font-weight-medium: 500;
|
|
300
311
|
/* Border */
|
|
301
312
|
--tui-border-width: 1px;
|
|
302
313
|
/* Z-Index Layers */
|
|
@@ -671,10 +682,15 @@
|
|
|
671
682
|
--_bg: var(--tui-accordion-bg, var(--tui-color-bg-surface));
|
|
672
683
|
--_bg-open: var(--tui-accordion-bg-open, var(--_bg));
|
|
673
684
|
--_border: var(--tui-accordion-border, var(--tui-color-border));
|
|
685
|
+
--_divider: var(--tui-accordion-divider, var(--_border));
|
|
674
686
|
--_radius: var(--tui-accordion-radius, var(--tui-radius-md));
|
|
675
687
|
--_padding: var(--tui-accordion-padding, var(--tui-spacing-md));
|
|
676
|
-
--
|
|
688
|
+
--_trigger-padding: var(--tui-accordion-trigger-padding, var(--_padding));
|
|
689
|
+
--_trigger-bg: var(--tui-accordion-trigger-bg, transparent);
|
|
677
690
|
--_trigger-hover: var(--tui-accordion-trigger-hover, var(--tui-color-bg-muted));
|
|
691
|
+
--_panel-padding: var(--tui-accordion-panel-padding, var(--_padding));
|
|
692
|
+
--_panel-bg: var(--tui-accordion-panel-bg, transparent);
|
|
693
|
+
--_indicator: var(--tui-accordion-indicator, currentColor);
|
|
678
694
|
background-color: var(--_bg);
|
|
679
695
|
border: var(--tui-border-width) solid var(--_border);
|
|
680
696
|
border-radius: var(--_radius);
|
|
@@ -683,10 +699,10 @@
|
|
|
683
699
|
:where(.tui-interface) .tui-accordion__item[data-state=open] {
|
|
684
700
|
--_bg: var(--_bg-open);
|
|
685
701
|
}
|
|
686
|
-
:where(.tui-interface) .tui-accordion__item[data-disabled
|
|
702
|
+
:where(.tui-interface) .tui-accordion__item[data-disabled] {
|
|
687
703
|
opacity: var(--tui-opacity-disabled);
|
|
688
704
|
}
|
|
689
|
-
|
|
705
|
+
.tui-interface .tui-accordion__heading {
|
|
690
706
|
margin: 0;
|
|
691
707
|
font: inherit;
|
|
692
708
|
}
|
|
@@ -696,10 +712,10 @@
|
|
|
696
712
|
justify-content: space-between;
|
|
697
713
|
gap: var(--tui-spacing-sm);
|
|
698
714
|
width: 100%;
|
|
699
|
-
padding: var(--
|
|
715
|
+
padding: var(--_trigger-padding);
|
|
700
716
|
border: none;
|
|
701
717
|
border-radius: var(--_radius);
|
|
702
|
-
background:
|
|
718
|
+
background: var(--_trigger-bg);
|
|
703
719
|
color: inherit;
|
|
704
720
|
font: inherit;
|
|
705
721
|
font-weight: var(--tui-font-weight-medium, 500);
|
|
@@ -734,7 +750,7 @@
|
|
|
734
750
|
transition-duration: var(--tui-motion-duration);
|
|
735
751
|
transition-timing-function: var(--tui-motion-timing);
|
|
736
752
|
}
|
|
737
|
-
[data-state=open] >
|
|
753
|
+
:where(.tui-interface) .tui-accordion__trigger[data-state=open] > .tui-accordion__indicator {
|
|
738
754
|
transform: rotate(180deg);
|
|
739
755
|
}
|
|
740
756
|
:where(.tui-interface) .tui-accordion__panel {
|
|
@@ -748,9 +764,11 @@
|
|
|
748
764
|
grid-template-rows: 1fr;
|
|
749
765
|
}
|
|
750
766
|
:where(.tui-interface) .tui-accordion__panel-content {
|
|
767
|
+
--_panel-spacing: var(--tui-accordion-panel-spacing, var(--_panel-padding));
|
|
751
768
|
min-height: 0;
|
|
752
769
|
overflow: hidden;
|
|
753
|
-
padding-inline: var(--
|
|
770
|
+
padding-inline: var(--_panel-padding);
|
|
771
|
+
background: var(--_panel-bg);
|
|
754
772
|
}
|
|
755
773
|
:where(.tui-interface) .tui-accordion__panel-content > *:first-child {
|
|
756
774
|
margin-block-start: 0;
|
|
@@ -758,10 +776,15 @@
|
|
|
758
776
|
:where(.tui-interface) .tui-accordion__panel-content > *:last-child {
|
|
759
777
|
margin-block-end: 0;
|
|
760
778
|
}
|
|
779
|
+
:where(.tui-interface) .tui-accordion__panel-content::before {
|
|
780
|
+
content: "";
|
|
781
|
+
display: block;
|
|
782
|
+
height: var(--_panel-spacing);
|
|
783
|
+
}
|
|
761
784
|
:where(.tui-interface) .tui-accordion__panel-content::after {
|
|
762
785
|
content: "";
|
|
763
786
|
display: block;
|
|
764
|
-
height: var(--
|
|
787
|
+
height: var(--_panel-spacing);
|
|
765
788
|
}
|
|
766
789
|
:where(.tui-interface) .tui-accordion__panel[data-state=closed] > .tui-accordion__panel-content {
|
|
767
790
|
animation: tui-fadeToTransparent var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
@@ -769,6 +792,25 @@
|
|
|
769
792
|
:where(.tui-interface) .tui-accordion__panel[data-state=open] > .tui-accordion__panel-content {
|
|
770
793
|
animation: tui-fadeFromTransparent var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
771
794
|
}
|
|
795
|
+
:where(.tui-interface) .tui-accordion__item[data-state=open] > .tui-accordion__panel {
|
|
796
|
+
border-block-start: var(--tui-border-width) solid var(--_divider);
|
|
797
|
+
}
|
|
798
|
+
:where(.tui-interface) .tui-accordion.is-variant-flush {
|
|
799
|
+
gap: 0;
|
|
800
|
+
border: var(--tui-border-width) solid var(--tui-accordion-border, var(--tui-color-border));
|
|
801
|
+
border-radius: var(--tui-accordion-radius, var(--tui-radius-md));
|
|
802
|
+
overflow: hidden;
|
|
803
|
+
}
|
|
804
|
+
:where(.tui-interface) .tui-accordion.is-variant-flush .tui-accordion__item {
|
|
805
|
+
border: none;
|
|
806
|
+
border-radius: 0;
|
|
807
|
+
}
|
|
808
|
+
:where(.tui-interface) .tui-accordion.is-variant-flush .tui-accordion__item + .tui-accordion__item {
|
|
809
|
+
border-block-start: var(--tui-border-width) solid var(--_border);
|
|
810
|
+
}
|
|
811
|
+
:where(.tui-interface) .tui-accordion.is-variant-flush .tui-accordion__trigger {
|
|
812
|
+
border-radius: 0;
|
|
813
|
+
}
|
|
772
814
|
@media (forced-colors: active) {
|
|
773
815
|
:where(.tui-interface) .tui-accordion__item {
|
|
774
816
|
border-color: CanvasText;
|
|
@@ -799,7 +841,7 @@
|
|
|
799
841
|
--_radius: var(--tui-avatar-radius, 50%);
|
|
800
842
|
--_bg: var(--tui-avatar-bg, var(--tui-color-bg-muted));
|
|
801
843
|
--_fg: var(--tui-avatar-fg, var(--tui-color-fg-inverted));
|
|
802
|
-
--_border: var(--tui-avatar-border,
|
|
844
|
+
--_border: var(--tui-avatar-border, none);
|
|
803
845
|
position: relative;
|
|
804
846
|
display: inline-flex;
|
|
805
847
|
align-items: center;
|
|
@@ -807,9 +849,10 @@
|
|
|
807
849
|
width: var(--_size);
|
|
808
850
|
height: var(--_size);
|
|
809
851
|
border-radius: var(--_radius);
|
|
852
|
+
border: var(--_border);
|
|
810
853
|
background-color: var(--_bg);
|
|
811
854
|
color: var(--_fg);
|
|
812
|
-
font-weight: 500;
|
|
855
|
+
font-weight: var(--tui-font-weight-medium, 500);
|
|
813
856
|
font-size: calc(var(--_size) * 0.4);
|
|
814
857
|
line-height: 1;
|
|
815
858
|
flex-shrink: 0;
|
|
@@ -952,6 +995,20 @@
|
|
|
952
995
|
:where(.tui-interface) .tui-avatar-group.is-overlap .tui-avatar {
|
|
953
996
|
box-shadow: 0 0 0 var(--tui-avatar-group-border-width, 2px) var(--tui-avatar-group-border-color, var(--tui-color-bg-surface));
|
|
954
997
|
}
|
|
998
|
+
.tui-interface[data-theme=dark] .tui-avatar.is-color-amber, .tui-interface[data-theme=dark] .tui-avatar.is-color-lime, .tui-interface[data-theme=dark] .tui-avatar.is-color-cyan,
|
|
999
|
+
.tui-interface[data-theme=dark] :where(.tui-interface) .tui-avatar.is-color-amber,
|
|
1000
|
+
.tui-interface[data-theme=dark] :where(.tui-interface) .tui-avatar.is-color-lime,
|
|
1001
|
+
.tui-interface[data-theme=dark] :where(.tui-interface) .tui-avatar.is-color-cyan {
|
|
1002
|
+
--_fg: var(--tui-avatar-fg, var(--tui-color-fg-inverted));
|
|
1003
|
+
}
|
|
1004
|
+
@media (prefers-color-scheme: dark) {
|
|
1005
|
+
.tui-interface[data-theme=auto] .tui-avatar.is-color-amber, .tui-interface[data-theme=auto] .tui-avatar.is-color-lime, .tui-interface[data-theme=auto] .tui-avatar.is-color-cyan,
|
|
1006
|
+
.tui-interface[data-theme=auto] :where(.tui-interface) .tui-avatar.is-color-amber,
|
|
1007
|
+
.tui-interface[data-theme=auto] :where(.tui-interface) .tui-avatar.is-color-lime,
|
|
1008
|
+
.tui-interface[data-theme=auto] :where(.tui-interface) .tui-avatar.is-color-cyan {
|
|
1009
|
+
--_fg: var(--tui-avatar-fg, var(--tui-color-fg-inverted));
|
|
1010
|
+
}
|
|
1011
|
+
}
|
|
955
1012
|
@media (forced-colors: active) {
|
|
956
1013
|
:where(.tui-interface) .tui-avatar {
|
|
957
1014
|
background-color: Canvas;
|
|
@@ -997,15 +1054,15 @@
|
|
|
997
1054
|
padding-block: 0.575em;
|
|
998
1055
|
min-height: var(--tui-control-height-md);
|
|
999
1056
|
gap: 0.5em;
|
|
1057
|
+
border-radius: var(--_radius);
|
|
1058
|
+
transition-duration: var(--tui-motion-duration);
|
|
1059
|
+
transition-timing-function: var(--tui-motion-timing);
|
|
1060
|
+
transition-property: border-color, color, background-color;
|
|
1000
1061
|
background-color: var(--_bg) !important;
|
|
1001
1062
|
color: var(--_fg) !important;
|
|
1002
1063
|
border-color: var(--_border) !important;
|
|
1003
1064
|
border-style: solid;
|
|
1004
1065
|
border-width: var(--tui-border-width);
|
|
1005
|
-
border-radius: var(--_radius);
|
|
1006
|
-
transition-duration: var(--tui-motion-duration);
|
|
1007
|
-
transition-timing-function: var(--tui-motion-timing);
|
|
1008
|
-
transition-property: border-color, color, background-color;
|
|
1009
1066
|
}
|
|
1010
1067
|
.tui-interface .tui-button .tui-icon {
|
|
1011
1068
|
font-size: inherit;
|
|
@@ -1048,6 +1105,12 @@
|
|
|
1048
1105
|
display: inline-block;
|
|
1049
1106
|
animation: tui-spin 0.85s linear infinite;
|
|
1050
1107
|
}
|
|
1108
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1109
|
+
.tui-interface .tui-button[data-loading=true]::before {
|
|
1110
|
+
animation: none;
|
|
1111
|
+
border-style: dashed;
|
|
1112
|
+
}
|
|
1113
|
+
}
|
|
1051
1114
|
.tui-interface .tui-button.is-width-full {
|
|
1052
1115
|
width: 100%;
|
|
1053
1116
|
}
|
|
@@ -1143,6 +1206,7 @@
|
|
|
1143
1206
|
--_bg: var(--tui-button-bg, transparent);
|
|
1144
1207
|
--_fg: var(--tui-button-fg, var(--tui-theme-primary-strong));
|
|
1145
1208
|
--_border: transparent;
|
|
1209
|
+
text-decoration: underline;
|
|
1146
1210
|
border-width: 0;
|
|
1147
1211
|
padding: 0;
|
|
1148
1212
|
}
|
|
@@ -1183,10 +1247,15 @@
|
|
|
1183
1247
|
color: LinkText;
|
|
1184
1248
|
border-color: transparent;
|
|
1185
1249
|
}
|
|
1250
|
+
.tui-interface .tui-button[disabled], .tui-interface .tui-button.is-disabled {
|
|
1251
|
+
color: GrayText;
|
|
1252
|
+
border-color: GrayText;
|
|
1253
|
+
background-color: Canvas;
|
|
1254
|
+
}
|
|
1186
1255
|
}
|
|
1187
1256
|
.tui-interface input[type=file] {
|
|
1188
1257
|
--_bg: var(--tui-button-bg, var(--tui-theme-primary-base));
|
|
1189
|
-
--_fg: var(--tui-button-fg, var(--tui-color-
|
|
1258
|
+
--_fg: var(--tui-button-fg, var(--tui-color-fg-on-accent));
|
|
1190
1259
|
--_border: var(--tui-button-border, var(--tui-theme-primary-base));
|
|
1191
1260
|
--_radius: var(--tui-button-radius, var(--tui-radius-md));
|
|
1192
1261
|
--_bg-interact: var(--tui-button-bg-interact, var(--tui-theme-primary-stronger));
|
|
@@ -1206,13 +1275,13 @@
|
|
|
1206
1275
|
padding-block: 0.575em;
|
|
1207
1276
|
min-height: var(--tui-control-height-md);
|
|
1208
1277
|
gap: 0.5em;
|
|
1209
|
-
background-color: var(--_bg);
|
|
1210
|
-
color: var(--_fg);
|
|
1211
|
-
border: var(--tui-border-width) solid var(--_border);
|
|
1212
1278
|
border-radius: var(--_radius);
|
|
1213
1279
|
transition-duration: var(--tui-motion-duration);
|
|
1214
1280
|
transition-timing-function: var(--tui-motion-timing);
|
|
1215
1281
|
transition-property: border-color, color, background-color;
|
|
1282
|
+
background-color: var(--_bg);
|
|
1283
|
+
color: var(--_fg);
|
|
1284
|
+
border: var(--tui-border-width) solid var(--_border);
|
|
1216
1285
|
}
|
|
1217
1286
|
.tui-interface input[type=file]:hover::file-selector-button {
|
|
1218
1287
|
background-color: var(--_bg-interact);
|
|
@@ -1236,9 +1305,9 @@
|
|
|
1236
1305
|
--_border: var(--tui-card-border, var(--tui-color-border));
|
|
1237
1306
|
--_border-interact: var(--tui-card-border-interact, var(--tui-theme-primary-base));
|
|
1238
1307
|
--_radius: var(--tui-card-radius, var(--tui-radius-md));
|
|
1239
|
-
--_shadow: var(--tui-card-shadow, var(--tui-shadow-
|
|
1240
|
-
--_shadow-interact: var(--tui-card-shadow-interact, var(--tui-shadow-
|
|
1241
|
-
--_padding: var(--tui-card-padding, var(--tui-spacing-
|
|
1308
|
+
--_shadow: var(--tui-card-shadow, var(--tui-shadow-sm));
|
|
1309
|
+
--_shadow-interact: var(--tui-card-shadow-interact, var(--tui-shadow-md));
|
|
1310
|
+
--_padding: var(--tui-card-padding, var(--tui-spacing-lg));
|
|
1242
1311
|
--_foot-basis: var(--tui-card-foot-basis, 500px);
|
|
1243
1312
|
container-type: inline-size;
|
|
1244
1313
|
container-name: tuiCard;
|
|
@@ -1367,15 +1436,23 @@
|
|
|
1367
1436
|
:where(.tui-interface) .tui-card.has-interaction:hover {
|
|
1368
1437
|
--_border: var(--_border-interact);
|
|
1369
1438
|
}
|
|
1370
|
-
:where(.tui-interface) .tui-card.has-interaction:focus, :where(.tui-interface) .tui-card.has-interaction:focus-
|
|
1439
|
+
:where(.tui-interface) .tui-card.has-interaction:focus-visible, :where(.tui-interface) .tui-card.has-interaction:has(:focus-visible) {
|
|
1371
1440
|
--_border: var(--_border-interact);
|
|
1372
1441
|
}
|
|
1373
1442
|
:where(.tui-interface) .tui-card.has-interaction:active, :where(.tui-interface) .tui-card.has-interaction.active {
|
|
1374
|
-
--_border: var(--tui-card-border-active, var(--tui-theme-
|
|
1443
|
+
--_border: var(--tui-card-border-active, var(--tui-theme-primary-soft));
|
|
1444
|
+
}
|
|
1445
|
+
:where(.tui-interface) .tui-card .tui-stretched-link:focus {
|
|
1446
|
+
outline: none;
|
|
1447
|
+
}
|
|
1448
|
+
:where(.tui-interface) .tui-card .tui-stretched-link:focus-visible::after {
|
|
1449
|
+
outline: var(--tui-focus-ring-width) solid var(--tui-focus-ring-color);
|
|
1450
|
+
outline-offset: calc(-1 * var(--tui-focus-ring-offset));
|
|
1451
|
+
border-radius: var(--_radius);
|
|
1375
1452
|
}
|
|
1376
|
-
:where(.tui-interface) .tui-card
|
|
1377
|
-
:where(.tui-interface) .tui-card.has-interaction .disabled {
|
|
1453
|
+
:where(.tui-interface) .tui-card[aria-disabled=true] {
|
|
1378
1454
|
opacity: var(--tui-opacity-disabled);
|
|
1455
|
+
pointer-events: none;
|
|
1379
1456
|
}
|
|
1380
1457
|
:where(.tui-interface) .tui-card.is-style-elevated {
|
|
1381
1458
|
box-shadow: var(--_shadow);
|
|
@@ -1464,7 +1541,7 @@
|
|
|
1464
1541
|
outline-offset: var(--tui-focus-ring-offset);
|
|
1465
1542
|
}
|
|
1466
1543
|
:where(.tui-interface) .tui-chip.is-interactive:is(:active, [aria-pressed=true], .is-selected), :where(.tui-interface) .tui-chip.is-interactive:has(input:checked), :where(.tui-interface) .tui-chip:is(a, button, [role=button]):is(:active, [aria-pressed=true], .is-selected), :where(.tui-interface) .tui-chip:is(a, button, [role=button]):has(input:checked), :where(.tui-interface) .tui-chip:has(input[type=checkbox], input[type=radio]):is(:active, [aria-pressed=true], .is-selected), :where(.tui-interface) .tui-chip:has(input[type=checkbox], input[type=radio]):has(input:checked) {
|
|
1467
|
-
box-shadow: 0 0 0 1px var(--_fg) inset;
|
|
1544
|
+
box-shadow: 0 0 0 var(--tui-chip-selected-ring, 1px) var(--_fg) inset;
|
|
1468
1545
|
filter: brightness(0.95);
|
|
1469
1546
|
}
|
|
1470
1547
|
:where(.tui-interface) .tui-chip.is-interactive:is(a), :where(.tui-interface) .tui-chip:is(a, button, [role=button]):is(a), :where(.tui-interface) .tui-chip:has(input[type=checkbox], input[type=radio]):is(a) {
|
|
@@ -1502,12 +1579,21 @@
|
|
|
1502
1579
|
--_border: var(--tui-chip-border, var(--tui-theme-danger-subtlest));
|
|
1503
1580
|
--_icon: var(--tui-chip-icon, var(--tui-theme-danger-base));
|
|
1504
1581
|
}
|
|
1505
|
-
:where(.tui-interface) .tui-chip.is-style-ghost
|
|
1582
|
+
:where(.tui-interface) .tui-chip.is-style-ghost {
|
|
1506
1583
|
--_bg: transparent;
|
|
1507
|
-
}
|
|
1508
|
-
:where(.tui-interface) .tui-chip.is-style-ghost:not(:is(:focus-visible, :active, [aria-pressed=true], .is-selected)) {
|
|
1509
1584
|
--_border: transparent;
|
|
1510
1585
|
}
|
|
1586
|
+
@media (hover: hover) {
|
|
1587
|
+
:where(.tui-interface) .tui-chip.is-style-ghost.is-interactive:hover, :where(.tui-interface) .tui-chip.is-style-ghost:is(a, button, [role=button]):hover, :where(.tui-interface) .tui-chip.is-style-ghost:has(input[type=checkbox], input[type=radio]):hover {
|
|
1588
|
+
--_bg: var(--tui-chip-bg, var(--tui-theme-secondary-subtle));
|
|
1589
|
+
}
|
|
1590
|
+
}
|
|
1591
|
+
:where(.tui-interface) .tui-chip.is-style-ghost.is-interactive:focus, :where(.tui-interface) .tui-chip.is-style-ghost:is(a, button, [role=button]):focus, :where(.tui-interface) .tui-chip.is-style-ghost:has(input[type=checkbox], input[type=radio]):focus {
|
|
1592
|
+
--_bg: var(--tui-chip-bg, var(--tui-theme-secondary-subtle));
|
|
1593
|
+
}
|
|
1594
|
+
:where(.tui-interface) .tui-chip.is-style-ghost:is(:focus-visible, :active, [aria-pressed=true], .is-selected), :where(.tui-interface) .tui-chip.is-style-ghost:has(input:checked) {
|
|
1595
|
+
--_border: var(--tui-chip-border, var(--tui-theme-secondary-subtle));
|
|
1596
|
+
}
|
|
1511
1597
|
:where(.tui-interface) .tui-chip.is-style-outline {
|
|
1512
1598
|
--_bg: var(--tui-chip-bg, var(--tui-color-bg-surface));
|
|
1513
1599
|
--_fg: var(--tui-chip-fg, var(--tui-theme-secondary-base));
|
|
@@ -1956,12 +2042,12 @@
|
|
|
1956
2042
|
}
|
|
1957
2043
|
:where(.tui-interface) .tui-dropdown {
|
|
1958
2044
|
--_bg: var(--tui-dropdown-bg, var(--tui-color-bg-elevated));
|
|
1959
|
-
--_fg: var(--tui-dropdown-fg, var(--tui-color-fg
|
|
2045
|
+
--_fg: var(--tui-dropdown-fg, var(--tui-color-fg));
|
|
1960
2046
|
--_radius: var(--tui-dropdown-radius, var(--tui-radius-sm));
|
|
1961
2047
|
--_shadow: var(--tui-dropdown-shadow, var(--tui-shadow-md));
|
|
1962
2048
|
--_z: var(--tui-dropdown-z, var(--tui-layer-top));
|
|
1963
|
-
--_border: var(--tui-dropdown-border, var(--tui-color-border
|
|
1964
|
-
--_item-bg-hover: var(--tui-dropdown-item-bg-hover, var(--tui-color-bg-
|
|
2049
|
+
--_border: var(--tui-dropdown-border, var(--tui-color-border));
|
|
2050
|
+
--_item-bg-hover: var(--tui-dropdown-item-bg-hover, var(--tui-color-bg-muted));
|
|
1965
2051
|
--_item-bg-active: var(--tui-dropdown-item-bg-active, var(--tui-color-bg-muted));
|
|
1966
2052
|
z-index: var(--_z);
|
|
1967
2053
|
min-width: var(--tui-dropdown-min-width, 160px);
|
|
@@ -1991,16 +2077,21 @@
|
|
|
1991
2077
|
--tui-button-fg: inherit;
|
|
1992
2078
|
--tui-button-border-color: transparent;
|
|
1993
2079
|
}
|
|
1994
|
-
:where(.tui-interface) .tui-dropdown__item:hover, :where(.tui-interface) .tui-dropdown__item
|
|
2080
|
+
:where(.tui-interface) .tui-dropdown__item:hover, :where(.tui-interface) .tui-dropdown__item[data-active],
|
|
1995
2081
|
:where(.tui-interface) .tui-dropdown .tui-button:hover,
|
|
1996
|
-
:where(.tui-interface) .tui-dropdown .tui-button:focus-visible,
|
|
1997
2082
|
:where(.tui-interface) .tui-dropdown .tui-button[data-active],
|
|
1998
2083
|
:where(.tui-interface) .tui-dropdown .tui-icon-button:hover,
|
|
1999
|
-
:where(.tui-interface) .tui-dropdown .tui-icon-button:focus-visible,
|
|
2000
2084
|
:where(.tui-interface) .tui-dropdown .tui-icon-button[data-active] {
|
|
2001
2085
|
--tui-button-bg: var(--_item-bg-hover);
|
|
2002
2086
|
--tui-button-fg: inherit;
|
|
2003
|
-
|
|
2087
|
+
}
|
|
2088
|
+
:where(.tui-interface) .tui-dropdown__item:focus-visible,
|
|
2089
|
+
:where(.tui-interface) .tui-dropdown .tui-button:focus-visible,
|
|
2090
|
+
:where(.tui-interface) .tui-dropdown .tui-icon-button:focus-visible {
|
|
2091
|
+
--tui-button-bg: var(--_item-bg-hover);
|
|
2092
|
+
--tui-button-fg: inherit;
|
|
2093
|
+
outline: var(--tui-focus-ring-width, 2px) solid var(--tui-focus-ring-color, #2563eb);
|
|
2094
|
+
outline-offset: calc(-1 * var(--tui-focus-ring-width, 2px));
|
|
2004
2095
|
}
|
|
2005
2096
|
:where(.tui-interface) .tui-dropdown__item:active,
|
|
2006
2097
|
:where(.tui-interface) .tui-dropdown .tui-button:active,
|
|
@@ -2019,6 +2110,25 @@
|
|
|
2019
2110
|
:where(.tui-interface) .tui-dropdown .tui-icon-button {
|
|
2020
2111
|
justify-content: center;
|
|
2021
2112
|
}
|
|
2113
|
+
:where(.tui-interface) .tui-dropdown__separator {
|
|
2114
|
+
border: none;
|
|
2115
|
+
border-top: 1px solid var(--tui-color-border);
|
|
2116
|
+
margin: var(--tui-spacing-xxs, 4px) 0;
|
|
2117
|
+
}
|
|
2118
|
+
:where(.tui-interface) .tui-dropdown__header {
|
|
2119
|
+
padding: var(--tui-spacing-xs, 8px) var(--tui-spacing-sm, 12px);
|
|
2120
|
+
padding-block-end: var(--tui-spacing-xxs, 4px);
|
|
2121
|
+
font-size: var(--tui-typography-size-xs, 11px);
|
|
2122
|
+
font-weight: var(--tui-font-weight-semibold, 600);
|
|
2123
|
+
color: var(--tui-color-fg-muted);
|
|
2124
|
+
letter-spacing: 0.02em;
|
|
2125
|
+
user-select: none;
|
|
2126
|
+
}
|
|
2127
|
+
@media (prefers-reduced-motion: reduce) {
|
|
2128
|
+
:where(.tui-interface) .tui-dropdown {
|
|
2129
|
+
animation: none;
|
|
2130
|
+
}
|
|
2131
|
+
}
|
|
2022
2132
|
@media (forced-colors: active) {
|
|
2023
2133
|
:where(.tui-interface) .tui-dropdown {
|
|
2024
2134
|
background-color: Canvas;
|
|
@@ -2507,7 +2617,7 @@
|
|
|
2507
2617
|
}
|
|
2508
2618
|
:where(.tui-interface) .tui-select__option[aria-selected=true] {
|
|
2509
2619
|
background-color: var(--_bg-selected);
|
|
2510
|
-
font-weight: 500;
|
|
2620
|
+
font-weight: var(--tui-font-weight-medium, 500);
|
|
2511
2621
|
}
|
|
2512
2622
|
:where(.tui-interface) .tui-select__option[aria-selected=true]:hover:not([data-disabled]), :where(.tui-interface) .tui-select__option[aria-selected=true][data-highlighted]:not([data-disabled]) {
|
|
2513
2623
|
background-color: var(--tui-theme-primary-subtle);
|
|
@@ -2882,6 +2992,7 @@
|
|
|
2882
2992
|
--_radius: var(--tui-icon-button-radius, var(--tui-radius-md));
|
|
2883
2993
|
--_bg-interact: var(--tui-icon-button-bg-interact, var(--tui-theme-secondary-subtle));
|
|
2884
2994
|
--_fg-interact: var(--tui-icon-button-fg-interact, var(--tui-color-fg));
|
|
2995
|
+
--_bg-pressed: var(--tui-theme-secondary-soft);
|
|
2885
2996
|
appearance: none;
|
|
2886
2997
|
border: none;
|
|
2887
2998
|
background: none;
|
|
@@ -2918,10 +3029,14 @@
|
|
|
2918
3029
|
outline: var(--tui-focus-ring-width) solid var(--tui-focus-ring-color);
|
|
2919
3030
|
outline-offset: var(--tui-focus-ring-offset);
|
|
2920
3031
|
}
|
|
2921
|
-
.tui-interface .tui-icon-button:
|
|
3032
|
+
.tui-interface .tui-icon-button:active {
|
|
2922
3033
|
--_bg: var(--_bg-interact);
|
|
2923
3034
|
--_fg: var(--_fg-interact);
|
|
2924
3035
|
}
|
|
3036
|
+
.tui-interface .tui-icon-button[aria-pressed=true] {
|
|
3037
|
+
--_bg: var(--_bg-pressed);
|
|
3038
|
+
--_fg: var(--_fg-interact);
|
|
3039
|
+
}
|
|
2925
3040
|
.tui-interface .tui-icon-button:where(:disabled, [aria-disabled=true], .is-disabled) {
|
|
2926
3041
|
pointer-events: none;
|
|
2927
3042
|
cursor: not-allowed;
|
|
@@ -2937,15 +3052,20 @@
|
|
|
2937
3052
|
.tui-interface .tui-icon-button.is-size-lg {
|
|
2938
3053
|
--_size: var(--tui-control-height-lg, 3rem);
|
|
2939
3054
|
}
|
|
3055
|
+
.tui-interface .tui-icon-button.is-shape-circle {
|
|
3056
|
+
border-radius: 50%;
|
|
3057
|
+
}
|
|
2940
3058
|
.tui-interface .tui-icon-button.is-theme-primary {
|
|
2941
3059
|
--_fg: var(--tui-icon-button-fg, var(--tui-theme-primary-base));
|
|
2942
3060
|
--_fg-interact: var(--tui-icon-button-fg-interact, var(--tui-theme-primary-strong));
|
|
2943
3061
|
--_bg-interact: var(--tui-icon-button-bg-interact, var(--tui-theme-primary-subtlest));
|
|
3062
|
+
--_bg-pressed: var(--tui-theme-primary-subtle);
|
|
2944
3063
|
}
|
|
2945
3064
|
.tui-interface .tui-icon-button.is-theme-danger {
|
|
2946
3065
|
--_fg: var(--tui-icon-button-fg, var(--tui-theme-danger-base));
|
|
2947
3066
|
--_fg-interact: var(--tui-icon-button-fg-interact, var(--tui-theme-danger-strong));
|
|
2948
3067
|
--_bg-interact: var(--tui-icon-button-bg-interact, var(--tui-theme-danger-subtlest));
|
|
3068
|
+
--_bg-pressed: var(--tui-theme-danger-subtle);
|
|
2949
3069
|
}
|
|
2950
3070
|
.tui-interface .tui-icon-button.is-style-outline {
|
|
2951
3071
|
--_border: var(--tui-icon-button-border, var(--tui-color-border));
|
|
@@ -2964,24 +3084,36 @@
|
|
|
2964
3084
|
.tui-interface .tui-icon-button.is-style-solid {
|
|
2965
3085
|
--_bg: var(--tui-icon-button-bg, var(--tui-theme-secondary-subtle));
|
|
2966
3086
|
--_fg: var(--tui-icon-button-fg, var(--tui-color-fg));
|
|
3087
|
+
--_bg-pressed: var(--tui-theme-secondary-soft);
|
|
2967
3088
|
}
|
|
2968
|
-
.tui-interface .tui-icon-button.is-style-solid:hover, .tui-interface .tui-icon-button.is-style-solid:focus-visible, .tui-interface .tui-icon-button.is-style-solid:
|
|
3089
|
+
.tui-interface .tui-icon-button.is-style-solid:hover, .tui-interface .tui-icon-button.is-style-solid:focus-visible, .tui-interface .tui-icon-button.is-style-solid:active {
|
|
2969
3090
|
--_bg: var(--tui-icon-button-bg-interact, var(--tui-theme-secondary-soft));
|
|
2970
3091
|
}
|
|
3092
|
+
.tui-interface .tui-icon-button.is-style-solid[aria-pressed=true] {
|
|
3093
|
+
--_bg: var(--_bg-pressed);
|
|
3094
|
+
}
|
|
2971
3095
|
.tui-interface .tui-icon-button.is-style-solid.is-theme-primary {
|
|
2972
3096
|
--_bg: var(--tui-icon-button-bg, var(--tui-theme-primary-base));
|
|
2973
3097
|
--_fg: var(--tui-icon-button-fg, var(--tui-color-fg-on-accent));
|
|
3098
|
+
--_bg-pressed: var(--tui-theme-primary-stronger);
|
|
2974
3099
|
}
|
|
2975
|
-
.tui-interface .tui-icon-button.is-style-solid.is-theme-primary:hover, .tui-interface .tui-icon-button.is-style-solid.is-theme-primary:focus-visible, .tui-interface .tui-icon-button.is-style-solid.is-theme-primary:
|
|
3100
|
+
.tui-interface .tui-icon-button.is-style-solid.is-theme-primary:hover, .tui-interface .tui-icon-button.is-style-solid.is-theme-primary:focus-visible, .tui-interface .tui-icon-button.is-style-solid.is-theme-primary:active {
|
|
2976
3101
|
--_bg: var(--tui-icon-button-bg-interact, var(--tui-theme-primary-stronger));
|
|
2977
3102
|
}
|
|
3103
|
+
.tui-interface .tui-icon-button.is-style-solid.is-theme-primary[aria-pressed=true] {
|
|
3104
|
+
--_bg: var(--_bg-pressed);
|
|
3105
|
+
}
|
|
2978
3106
|
.tui-interface .tui-icon-button.is-style-solid.is-theme-danger {
|
|
2979
3107
|
--_bg: var(--tui-icon-button-bg, var(--tui-theme-danger-base));
|
|
2980
3108
|
--_fg: var(--tui-icon-button-fg, var(--tui-color-fg-on-accent));
|
|
3109
|
+
--_bg-pressed: var(--tui-theme-danger-stronger);
|
|
2981
3110
|
}
|
|
2982
|
-
.tui-interface .tui-icon-button.is-style-solid.is-theme-danger:hover, .tui-interface .tui-icon-button.is-style-solid.is-theme-danger:focus-visible, .tui-interface .tui-icon-button.is-style-solid.is-theme-danger:
|
|
3111
|
+
.tui-interface .tui-icon-button.is-style-solid.is-theme-danger:hover, .tui-interface .tui-icon-button.is-style-solid.is-theme-danger:focus-visible, .tui-interface .tui-icon-button.is-style-solid.is-theme-danger:active {
|
|
2983
3112
|
--_bg: var(--tui-icon-button-bg-interact, var(--tui-theme-danger-stronger));
|
|
2984
3113
|
}
|
|
3114
|
+
.tui-interface .tui-icon-button.is-style-solid.is-theme-danger[aria-pressed=true] {
|
|
3115
|
+
--_bg: var(--_bg-pressed);
|
|
3116
|
+
}
|
|
2985
3117
|
.tui-interface .tui-icon-button[aria-busy=true] {
|
|
2986
3118
|
pointer-events: none;
|
|
2987
3119
|
}
|
|
@@ -2997,6 +3129,12 @@
|
|
|
2997
3129
|
border-radius: 50%;
|
|
2998
3130
|
animation: tui-spin 0.85s linear infinite;
|
|
2999
3131
|
}
|
|
3132
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3133
|
+
.tui-interface .tui-icon-button__spinner {
|
|
3134
|
+
animation: none;
|
|
3135
|
+
border-style: dashed;
|
|
3136
|
+
}
|
|
3137
|
+
}
|
|
3000
3138
|
@media (forced-colors: active) {
|
|
3001
3139
|
.tui-icon-button {
|
|
3002
3140
|
forced-color-adjust: none;
|
|
@@ -3012,6 +3150,11 @@
|
|
|
3012
3150
|
outline: 2px solid Highlight;
|
|
3013
3151
|
outline-offset: 2px;
|
|
3014
3152
|
}
|
|
3153
|
+
.tui-icon-button:is(:disabled, [aria-disabled=true]) {
|
|
3154
|
+
color: GrayText;
|
|
3155
|
+
border-color: GrayText;
|
|
3156
|
+
background-color: Canvas;
|
|
3157
|
+
}
|
|
3015
3158
|
}
|
|
3016
3159
|
.tui-modal {
|
|
3017
3160
|
--_z: var(--tui-modal-z, var(--tui-layer-modal, 1000));
|
|
@@ -3047,7 +3190,7 @@
|
|
|
3047
3190
|
--_bg: var(--tui-modal-bg, var(--tui-color-bg-surface));
|
|
3048
3191
|
--_border: var(--tui-modal-border, var(--tui-color-border));
|
|
3049
3192
|
--_radius: var(--tui-modal-radius, var(--tui-radius-lg));
|
|
3050
|
-
--_padding: var(--tui-modal-padding, var(--tui-spacing-
|
|
3193
|
+
--_padding: var(--tui-modal-padding, var(--tui-spacing-lg));
|
|
3051
3194
|
--_shadow: var(--tui-modal-shadow, var(--tui-shadow-lg));
|
|
3052
3195
|
position: relative;
|
|
3053
3196
|
width: 100%;
|
|
@@ -3068,6 +3211,10 @@
|
|
|
3068
3211
|
.tui-modal__dialog:has(> .tui-modal__foot) {
|
|
3069
3212
|
--_min-foot: 4rem;
|
|
3070
3213
|
}
|
|
3214
|
+
.tui-modal__dialog:focus-visible {
|
|
3215
|
+
outline: var(--tui-focus-ring-width) solid var(--tui-focus-ring-color);
|
|
3216
|
+
outline-offset: var(--tui-focus-ring-offset);
|
|
3217
|
+
}
|
|
3071
3218
|
.tui-modal__dialog {
|
|
3072
3219
|
color: var(--tui-color-fg);
|
|
3073
3220
|
border-style: solid;
|
|
@@ -3102,12 +3249,41 @@
|
|
|
3102
3249
|
}
|
|
3103
3250
|
.tui-modal__dialog .tui-modal__body-inner > p {
|
|
3104
3251
|
margin: 0;
|
|
3252
|
+
margin-block-end: var(--tui-spacing-md);
|
|
3253
|
+
}
|
|
3254
|
+
.tui-modal__dialog .tui-modal__body-inner > p:last-child {
|
|
3255
|
+
margin-block-end: 0;
|
|
3105
3256
|
}
|
|
3106
3257
|
.tui-modal__dialog .tui-modal__head {
|
|
3107
3258
|
padding-block: var(--_padding);
|
|
3108
3259
|
padding-inline: var(--_padding);
|
|
3109
3260
|
width: 100%;
|
|
3110
3261
|
}
|
|
3262
|
+
.tui-modal__dialog .tui-modal__head.has-icon {
|
|
3263
|
+
display: flex;
|
|
3264
|
+
align-items: flex-start;
|
|
3265
|
+
gap: var(--tui-spacing-sm);
|
|
3266
|
+
}
|
|
3267
|
+
.tui-modal__dialog .tui-modal__head-icon {
|
|
3268
|
+
flex-shrink: 0;
|
|
3269
|
+
display: flex;
|
|
3270
|
+
align-items: center;
|
|
3271
|
+
height: 1.5em;
|
|
3272
|
+
font-size: var(--tui-typography-size-lg);
|
|
3273
|
+
color: var(--tui-color-fg);
|
|
3274
|
+
}
|
|
3275
|
+
.tui-modal__dialog .tui-modal__head-content {
|
|
3276
|
+
flex: 1 1 auto;
|
|
3277
|
+
min-width: 0;
|
|
3278
|
+
}
|
|
3279
|
+
.tui-modal__dialog .tui-modal__head-subtitle {
|
|
3280
|
+
margin-block-start: var(--tui-spacing-xxs);
|
|
3281
|
+
font-size: var(--tui-typography-size-sm);
|
|
3282
|
+
color: var(--tui-color-fg-muted);
|
|
3283
|
+
}
|
|
3284
|
+
.tui-modal__dialog:has(> .tui-modal__close) > .tui-modal__head {
|
|
3285
|
+
padding-inline-end: calc(var(--_padding) + var(--tui-spacing-xl));
|
|
3286
|
+
}
|
|
3111
3287
|
.tui-modal__dialog .tui-modal__foot {
|
|
3112
3288
|
padding-block: var(--_padding);
|
|
3113
3289
|
padding-inline: var(--_padding);
|
|
@@ -3331,7 +3507,8 @@
|
|
|
3331
3507
|
align-items: center;
|
|
3332
3508
|
justify-content: center;
|
|
3333
3509
|
width: auto;
|
|
3334
|
-
min-
|
|
3510
|
+
min-width: 32px;
|
|
3511
|
+
min-height: 32px;
|
|
3335
3512
|
background: none;
|
|
3336
3513
|
border: none;
|
|
3337
3514
|
border-radius: var(--tui-radius-sm);
|
|
@@ -3345,7 +3522,7 @@
|
|
|
3345
3522
|
transition-property: color;
|
|
3346
3523
|
}
|
|
3347
3524
|
.tui-interface .tui-move-handle.is-handle .tui-icon {
|
|
3348
|
-
font-size:
|
|
3525
|
+
font-size: var(--_icon-size);
|
|
3349
3526
|
}
|
|
3350
3527
|
.tui-interface .tui-move-handle.is-handle:hover {
|
|
3351
3528
|
color: var(--_fg-interact);
|
|
@@ -3396,7 +3573,7 @@
|
|
|
3396
3573
|
--_stripe: var(--tui-notice-stripe, var(--tui-theme-primary-base));
|
|
3397
3574
|
--_fg: var(--tui-notice-fg, inherit);
|
|
3398
3575
|
--_radius: var(--tui-notice-radius, var(--tui-radius-md));
|
|
3399
|
-
--_padding: var(--tui-notice-padding, var(--tui-spacing-
|
|
3576
|
+
--_padding: var(--tui-notice-padding, var(--tui-spacing-md));
|
|
3400
3577
|
--_foot-basis: var(--tui-notice-foot-basis, 500px);
|
|
3401
3578
|
--_gap: var(--tui-spacing-sm);
|
|
3402
3579
|
container-type: inline-size;
|
|
@@ -3421,6 +3598,7 @@
|
|
|
3421
3598
|
justify-content: center;
|
|
3422
3599
|
line-height: 0;
|
|
3423
3600
|
font-size: var(--tui-typography-size-xl);
|
|
3601
|
+
color: var(--_icon-color, inherit);
|
|
3424
3602
|
}
|
|
3425
3603
|
:where(.tui-interface) .tui-notice__title {
|
|
3426
3604
|
flex: 1 1 auto;
|
|
@@ -3447,6 +3625,10 @@
|
|
|
3447
3625
|
}
|
|
3448
3626
|
:where(.tui-interface) .tui-notice__body > p {
|
|
3449
3627
|
margin: 0;
|
|
3628
|
+
margin-block-end: var(--tui-spacing-sm);
|
|
3629
|
+
}
|
|
3630
|
+
:where(.tui-interface) .tui-notice__body > p:last-child {
|
|
3631
|
+
margin-block-end: 0;
|
|
3450
3632
|
}
|
|
3451
3633
|
:where(.tui-interface) .tui-notice__body a {
|
|
3452
3634
|
color: var(--tui-theme-primary-strong);
|
|
@@ -3514,7 +3696,7 @@
|
|
|
3514
3696
|
}
|
|
3515
3697
|
}
|
|
3516
3698
|
:where(.tui-interface) .tui-notice.is-dismissible .tui-notice__inner {
|
|
3517
|
-
padding-inline-end: calc(var(--_padding) +
|
|
3699
|
+
padding-inline-end: calc(var(--_padding) + var(--tui-control-height-sm));
|
|
3518
3700
|
}
|
|
3519
3701
|
@container tuiNotice (width >= 400px) {
|
|
3520
3702
|
:where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible .tui-notice__inner {
|
|
@@ -3527,24 +3709,32 @@
|
|
|
3527
3709
|
}
|
|
3528
3710
|
}
|
|
3529
3711
|
:where(.tui-interface) .tui-notice.has-stripe {
|
|
3530
|
-
border-inline-start-width: 4px;
|
|
3712
|
+
border-inline-start-width: var(--tui-notice-stripe-width, 4px);
|
|
3531
3713
|
border-inline-start-color: var(--_stripe);
|
|
3532
3714
|
}
|
|
3533
3715
|
:where(.tui-interface) .tui-notice.is-theme-info {
|
|
3534
3716
|
--_bg: var(--tui-notice-bg, var(--tui-theme-primary-subtlest));
|
|
3717
|
+
--_bg-hover: var(--tui-theme-primary-subtle);
|
|
3535
3718
|
--_stripe: var(--tui-notice-stripe, var(--tui-theme-primary-base));
|
|
3719
|
+
--_icon-color: var(--tui-theme-primary-base);
|
|
3536
3720
|
}
|
|
3537
3721
|
:where(.tui-interface) .tui-notice.is-theme-success {
|
|
3538
3722
|
--_bg: var(--tui-notice-bg, var(--tui-theme-success-subtlest));
|
|
3723
|
+
--_bg-hover: var(--tui-theme-success-subtle);
|
|
3539
3724
|
--_stripe: var(--tui-notice-stripe, var(--tui-theme-success-base));
|
|
3725
|
+
--_icon-color: var(--tui-theme-success-base);
|
|
3540
3726
|
}
|
|
3541
3727
|
:where(.tui-interface) .tui-notice.is-theme-warning {
|
|
3542
3728
|
--_bg: var(--tui-notice-bg, var(--tui-theme-warning-subtlest));
|
|
3729
|
+
--_bg-hover: var(--tui-theme-warning-subtle);
|
|
3543
3730
|
--_stripe: var(--tui-notice-stripe, var(--tui-theme-warning-base));
|
|
3731
|
+
--_icon-color: var(--tui-theme-warning-base);
|
|
3544
3732
|
}
|
|
3545
3733
|
:where(.tui-interface) .tui-notice.is-theme-danger {
|
|
3546
3734
|
--_bg: var(--tui-notice-bg, var(--tui-theme-danger-subtlest));
|
|
3735
|
+
--_bg-hover: var(--tui-theme-danger-subtle);
|
|
3547
3736
|
--_stripe: var(--tui-notice-stripe, var(--tui-theme-danger-base));
|
|
3737
|
+
--_icon-color: var(--tui-theme-danger-base);
|
|
3548
3738
|
}
|
|
3549
3739
|
:where(.tui-interface) .tui-notice.is-style-elevated {
|
|
3550
3740
|
box-shadow: var(--tui-shadow-md);
|
|
@@ -3556,7 +3746,7 @@
|
|
|
3556
3746
|
transition-timing-function: var(--tui-motion-timing);
|
|
3557
3747
|
}
|
|
3558
3748
|
:where(.tui-interface) .tui-notice.has-interaction:hover {
|
|
3559
|
-
--_bg: var(--tui-color-bg-muted);
|
|
3749
|
+
--_bg: var(--_bg-hover, var(--tui-color-bg-muted));
|
|
3560
3750
|
}
|
|
3561
3751
|
:where(.tui-interface) .tui-notice.has-interaction:focus-visible {
|
|
3562
3752
|
outline: var(--tui-focus-ring-width) solid var(--tui-focus-ring-color);
|
|
@@ -3572,20 +3762,23 @@
|
|
|
3572
3762
|
}
|
|
3573
3763
|
:where(.tui-interface) .tui-notice.is-exiting-collapse {
|
|
3574
3764
|
display: grid;
|
|
3575
|
-
animation: tui-noticeExitCollapse
|
|
3765
|
+
animation: tui-noticeExitCollapse var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
3576
3766
|
}
|
|
3577
3767
|
:where(.tui-interface) .tui-notice.is-exiting-collapse .tui-notice__inner {
|
|
3578
3768
|
min-height: 0;
|
|
3579
3769
|
overflow: hidden;
|
|
3580
3770
|
}
|
|
3581
3771
|
:where(.tui-interface) .tui-notice.is-exiting-fade {
|
|
3582
|
-
animation: tui-noticeExitFade
|
|
3772
|
+
animation: tui-noticeExitFade var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
3583
3773
|
}
|
|
3584
3774
|
@media (prefers-reduced-motion: reduce) {
|
|
3585
3775
|
:where(.tui-interface) .tui-notice.is-exiting-collapse, :where(.tui-interface) .tui-notice.is-exiting-fade {
|
|
3586
3776
|
animation: none;
|
|
3587
3777
|
opacity: 0;
|
|
3588
3778
|
}
|
|
3779
|
+
:where(.tui-interface) .tui-notice.has-interaction {
|
|
3780
|
+
transition-duration: 0s;
|
|
3781
|
+
}
|
|
3589
3782
|
}
|
|
3590
3783
|
@keyframes tui-noticeExitCollapse {
|
|
3591
3784
|
0% {
|
|
@@ -3609,15 +3802,15 @@
|
|
|
3609
3802
|
}
|
|
3610
3803
|
.tui-notice .tui-notice__dismiss {
|
|
3611
3804
|
position: absolute;
|
|
3612
|
-
inset-block-start: var(--tui-notice-padding, var(--tui-spacing-
|
|
3613
|
-
inset-inline-end: var(--tui-notice-padding, var(--tui-spacing-
|
|
3805
|
+
inset-block-start: var(--tui-notice-padding, var(--tui-spacing-md));
|
|
3806
|
+
inset-inline-end: var(--tui-notice-padding, var(--tui-spacing-md));
|
|
3614
3807
|
}
|
|
3615
3808
|
.tui-notice.is-layout-inline .tui-notice__dismiss {
|
|
3616
3809
|
position: static;
|
|
3617
3810
|
flex-shrink: 0;
|
|
3618
3811
|
align-self: center;
|
|
3619
3812
|
margin-inline-start: var(--tui-spacing-sm);
|
|
3620
|
-
margin-inline-end: var(--tui-notice-padding, var(--tui-spacing-
|
|
3813
|
+
margin-inline-end: var(--tui-notice-padding, var(--tui-spacing-md));
|
|
3621
3814
|
}
|
|
3622
3815
|
:where(.tui-interface) .tui-overlap-stack {
|
|
3623
3816
|
display: inline-flex;
|
|
@@ -3651,7 +3844,7 @@
|
|
|
3651
3844
|
background-color: var(--_bg);
|
|
3652
3845
|
color: var(--_fg);
|
|
3653
3846
|
font-size: 0.75rem;
|
|
3654
|
-
font-weight: 500;
|
|
3847
|
+
font-weight: var(--tui-font-weight-medium, 500);
|
|
3655
3848
|
}
|
|
3656
3849
|
@media (forced-colors: active) {
|
|
3657
3850
|
:where(.tui-interface) .tui-overlap-stack__overflow {
|
|
@@ -4387,6 +4580,15 @@
|
|
|
4387
4580
|
:where(.tui-interface) .tui-sidebar__header h1, :where(.tui-interface) .tui-sidebar__header h2, :where(.tui-interface) .tui-sidebar__header h3, :where(.tui-interface) .tui-sidebar__header h4, :where(.tui-interface) .tui-sidebar__header h5, :where(.tui-interface) .tui-sidebar__header h6 {
|
|
4388
4581
|
margin: 0;
|
|
4389
4582
|
}
|
|
4583
|
+
:where(.tui-interface) .tui-sidebar__footer {
|
|
4584
|
+
flex-shrink: 0;
|
|
4585
|
+
margin-top: auto;
|
|
4586
|
+
padding: var(--_padding);
|
|
4587
|
+
border-top: var(--tui-border-width) solid var(--_border);
|
|
4588
|
+
display: flex;
|
|
4589
|
+
flex-direction: column;
|
|
4590
|
+
gap: var(--tui-spacing-sm);
|
|
4591
|
+
}
|
|
4390
4592
|
:where(.tui-interface) .tui-sidebar__nav {
|
|
4391
4593
|
flex: 1;
|
|
4392
4594
|
overflow-y: auto;
|
|
@@ -4405,9 +4607,12 @@
|
|
|
4405
4607
|
:where(.tui-interface) .tui-sidebar-drawer__backdrop {
|
|
4406
4608
|
position: absolute;
|
|
4407
4609
|
inset: 0;
|
|
4408
|
-
background-color: var(--tui-color-bg-overlay
|
|
4610
|
+
background-color: var(--tui-color-bg-overlay);
|
|
4409
4611
|
animation: tui-fadeFromTransparent var(--tui-motion-duration) var(--tui-motion-timing);
|
|
4410
4612
|
}
|
|
4613
|
+
[data-state=closing] > :where(.tui-interface) .tui-sidebar-drawer__backdrop {
|
|
4614
|
+
animation: tui-fadeToTransparent var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
4615
|
+
}
|
|
4411
4616
|
:where(.tui-interface) .tui-sidebar-drawer__panel {
|
|
4412
4617
|
position: relative;
|
|
4413
4618
|
z-index: 1;
|
|
@@ -4420,6 +4625,12 @@
|
|
|
4420
4625
|
[data-position=right] > :where(.tui-interface) .tui-sidebar-drawer__panel {
|
|
4421
4626
|
animation: tui-slideInFromRight var(--tui-motion-duration) var(--tui-motion-timing);
|
|
4422
4627
|
}
|
|
4628
|
+
[data-state=closing][data-position=left] > :where(.tui-interface) .tui-sidebar-drawer__panel {
|
|
4629
|
+
animation: tui-slideOutToLeft var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
4630
|
+
}
|
|
4631
|
+
[data-state=closing][data-position=right] > :where(.tui-interface) .tui-sidebar-drawer__panel {
|
|
4632
|
+
animation: tui-slideOutToRight var(--tui-motion-duration) var(--tui-motion-timing) forwards;
|
|
4633
|
+
}
|
|
4423
4634
|
:where(.tui-interface) .tui-sidebar-drawer__panel .tui-sidebar {
|
|
4424
4635
|
height: 100%;
|
|
4425
4636
|
border-left: none;
|
|
@@ -4441,6 +4652,36 @@
|
|
|
4441
4652
|
transform: translateX(0);
|
|
4442
4653
|
}
|
|
4443
4654
|
}
|
|
4655
|
+
@keyframes tui-slideOutToLeft {
|
|
4656
|
+
from {
|
|
4657
|
+
transform: translateX(0);
|
|
4658
|
+
}
|
|
4659
|
+
to {
|
|
4660
|
+
transform: translateX(-100%);
|
|
4661
|
+
}
|
|
4662
|
+
}
|
|
4663
|
+
@keyframes tui-slideOutToRight {
|
|
4664
|
+
from {
|
|
4665
|
+
transform: translateX(0);
|
|
4666
|
+
}
|
|
4667
|
+
to {
|
|
4668
|
+
transform: translateX(100%);
|
|
4669
|
+
}
|
|
4670
|
+
}
|
|
4671
|
+
@keyframes tui-fadeToTransparent {
|
|
4672
|
+
from {
|
|
4673
|
+
opacity: 1;
|
|
4674
|
+
}
|
|
4675
|
+
to {
|
|
4676
|
+
opacity: 0;
|
|
4677
|
+
}
|
|
4678
|
+
}
|
|
4679
|
+
@media (prefers-reduced-motion: reduce) {
|
|
4680
|
+
:where(.tui-interface) .tui-sidebar-drawer__backdrop,
|
|
4681
|
+
:where(.tui-interface) .tui-sidebar-drawer__panel {
|
|
4682
|
+
animation: none;
|
|
4683
|
+
}
|
|
4684
|
+
}
|
|
4444
4685
|
body.tui-sidebar-drawer-open {
|
|
4445
4686
|
overflow: hidden;
|
|
4446
4687
|
}
|
|
@@ -4659,6 +4900,10 @@
|
|
|
4659
4900
|
align-items: stretch;
|
|
4660
4901
|
flex-wrap: nowrap;
|
|
4661
4902
|
}
|
|
4903
|
+
:where(.tui-interface) .tui-tabs[data-orientation=vertical] .tui-tabs__tab {
|
|
4904
|
+
text-align: start;
|
|
4905
|
+
justify-content: flex-start;
|
|
4906
|
+
}
|
|
4662
4907
|
:where(.tui-interface) .tui-tabs__list {
|
|
4663
4908
|
display: flex;
|
|
4664
4909
|
flex-wrap: wrap;
|
|
@@ -4682,7 +4927,7 @@
|
|
|
4682
4927
|
--_fg: var(--tui-tabs-tab-fg, var(--tui-color-fg-muted));
|
|
4683
4928
|
--_border: var(--tui-tabs-tab-border, transparent);
|
|
4684
4929
|
--_bg-active: var(--tui-tabs-tab-bg-active, var(--tui-theme-primary-base, currentColor));
|
|
4685
|
-
--_fg-active: var(--tui-tabs-tab-fg-active, var(--tui-color-fg-on-accent
|
|
4930
|
+
--_fg-active: var(--tui-tabs-tab-fg-active, var(--tui-color-fg-on-accent));
|
|
4686
4931
|
--_bg-hover: var(--tui-tabs-tab-bg-hover, var(--tui-color-bg-muted));
|
|
4687
4932
|
--_indicator: var(--tui-tabs-indicator, var(--tui-theme-primary-base, currentColor));
|
|
4688
4933
|
--_indicator-size: var(--tui-tabs-indicator-size, 2px);
|
|
@@ -4698,9 +4943,9 @@
|
|
|
4698
4943
|
background: var(--_bg);
|
|
4699
4944
|
color: var(--_fg);
|
|
4700
4945
|
font: inherit;
|
|
4701
|
-
font-size: var(--tui-
|
|
4946
|
+
font-size: var(--tui-typography-size-sm);
|
|
4702
4947
|
font-weight: var(--tui-font-weight-medium, 500);
|
|
4703
|
-
line-height: var(--tui-line-height-tight);
|
|
4948
|
+
line-height: var(--tui-line-height-tight, 1.25);
|
|
4704
4949
|
text-decoration: none;
|
|
4705
4950
|
white-space: nowrap;
|
|
4706
4951
|
cursor: pointer;
|
|
@@ -4736,6 +4981,7 @@
|
|
|
4736
4981
|
--_padding: var(--tui-tabs-tab-padding, var(--tui-spacing-sm) var(--tui-spacing-xs));
|
|
4737
4982
|
--_radius: 0;
|
|
4738
4983
|
--_bg-hover: transparent;
|
|
4984
|
+
--_fg-active: var(--tui-tabs-tab-fg-active, var(--tui-color-fg));
|
|
4739
4985
|
position: relative;
|
|
4740
4986
|
margin-block-end: calc(var(--tui-border-width) * -1);
|
|
4741
4987
|
border-bottom: var(--_indicator-size) solid transparent;
|
|
@@ -4745,7 +4991,7 @@
|
|
|
4745
4991
|
color: var(--tui-color-fg);
|
|
4746
4992
|
}
|
|
4747
4993
|
.tui-interface [data-variant=underline] .tui-tabs__tab[data-state=active] {
|
|
4748
|
-
color: var(--
|
|
4994
|
+
color: var(--_fg-active);
|
|
4749
4995
|
border-bottom-color: var(--_indicator);
|
|
4750
4996
|
}
|
|
4751
4997
|
.tui-interface [data-variant=underline] .tui-tabs__tab:focus-visible {
|
|
@@ -4755,11 +5001,12 @@
|
|
|
4755
5001
|
--_radius: var(--tui-tabs-tab-radius, var(--tui-radius-full));
|
|
4756
5002
|
--_border: var(--tui-tabs-tab-border, var(--tui-color-border));
|
|
4757
5003
|
--_bg-hover: var(--tui-tabs-tab-bg-hover, var(--tui-color-bg-muted));
|
|
5004
|
+
--_fg-active: var(--tui-tabs-tab-fg-active, var(--tui-theme-primary-strong, currentColor));
|
|
4758
5005
|
border: var(--tui-border-width) solid var(--_border);
|
|
4759
5006
|
}
|
|
4760
5007
|
.tui-interface [data-variant=outline] .tui-tabs__tab[data-state=active] {
|
|
4761
5008
|
--_border: var(--tui-theme-primary-base, currentColor);
|
|
4762
|
-
color: var(--
|
|
5009
|
+
color: var(--_fg-active);
|
|
4763
5010
|
background: var(--tui-theme-primary-subtlest, transparent);
|
|
4764
5011
|
}
|
|
4765
5012
|
:where(.tui-interface) .tui-tabs__panel[data-state=inactive] {
|
|
@@ -4855,10 +5102,12 @@
|
|
|
4855
5102
|
border: var(--tui-border-width) solid var(--_border);
|
|
4856
5103
|
border-radius: var(--_radius);
|
|
4857
5104
|
padding-inline: var(--tui-spacing-xs);
|
|
5105
|
+
cursor: text;
|
|
4858
5106
|
}
|
|
4859
5107
|
:where(.tui-interface) .tui-input-group .tui-input,
|
|
4860
5108
|
:where(.tui-interface) .tui-input-group input {
|
|
4861
5109
|
border: none;
|
|
5110
|
+
border-radius: 0;
|
|
4862
5111
|
background: transparent;
|
|
4863
5112
|
padding-inline: 0;
|
|
4864
5113
|
padding-block: 0;
|
|
@@ -4904,6 +5153,31 @@
|
|
|
4904
5153
|
:where(.tui-interface) .tui-input-group__suffix .tui-icon {
|
|
4905
5154
|
font-size: 1em;
|
|
4906
5155
|
}
|
|
5156
|
+
:where(.tui-interface) .tui-input-group__prefix.is-text,
|
|
5157
|
+
:where(.tui-interface) .tui-input-group__suffix.is-text {
|
|
5158
|
+
background-color: var(--tui-color-bg-surface);
|
|
5159
|
+
padding-inline: var(--tui-spacing-xs);
|
|
5160
|
+
margin-block: calc(-1 * var(--_py));
|
|
5161
|
+
align-self: stretch;
|
|
5162
|
+
display: inline-flex;
|
|
5163
|
+
align-items: center;
|
|
5164
|
+
}
|
|
5165
|
+
:where(.tui-interface) .tui-input-group__prefix.is-text {
|
|
5166
|
+
border-inline-end: var(--tui-border-width) solid var(--_border);
|
|
5167
|
+
border-start-start-radius: calc(var(--_radius) - var(--tui-border-width));
|
|
5168
|
+
border-end-start-radius: calc(var(--_radius) - var(--tui-border-width));
|
|
5169
|
+
}
|
|
5170
|
+
:where(.tui-interface) .tui-input-group__suffix.is-text {
|
|
5171
|
+
border-inline-start: var(--tui-border-width) solid var(--_border);
|
|
5172
|
+
border-start-end-radius: calc(var(--_radius) - var(--tui-border-width));
|
|
5173
|
+
border-end-end-radius: calc(var(--_radius) - var(--tui-border-width));
|
|
5174
|
+
}
|
|
5175
|
+
:where(.tui-interface) .tui-input-group:has(> .tui-input-group__prefix.is-text) {
|
|
5176
|
+
padding-inline-start: 0;
|
|
5177
|
+
}
|
|
5178
|
+
:where(.tui-interface) .tui-input-group:has(> .tui-input-group__suffix.is-text) {
|
|
5179
|
+
padding-inline-end: 0;
|
|
5180
|
+
}
|
|
4907
5181
|
:where(.tui-interface) .tui-toolbar {
|
|
4908
5182
|
--_gap: var(--tui-toolbar-gap, var(--tui-spacing-sm));
|
|
4909
5183
|
--_padding: var(--tui-toolbar-padding, 0);
|
|
@@ -4936,30 +5210,46 @@
|
|
|
4936
5210
|
:where(.tui-interface) .tui-tooltip {
|
|
4937
5211
|
--_bg: var(--tui-tooltip-bg, var(--tui-color-bg-inverted));
|
|
4938
5212
|
--_fg: var(--tui-tooltip-fg, var(--tui-color-fg-inverted));
|
|
4939
|
-
--_radius: var(--tui-tooltip-radius, var(--tui-radius-
|
|
5213
|
+
--_radius: var(--tui-tooltip-radius, var(--tui-radius-sm));
|
|
4940
5214
|
--_z: var(--tui-tooltip-z, var(--tui-layer-top));
|
|
4941
5215
|
z-index: var(--_z);
|
|
4942
5216
|
width: max-content;
|
|
4943
5217
|
max-width: min(250px, 100vw - 2 * var(--tui-spacing-xs, 8px));
|
|
4944
|
-
padding: 0.
|
|
5218
|
+
padding: 0.35em 0.65em;
|
|
4945
5219
|
pointer-events: auto;
|
|
4946
5220
|
background-color: var(--_bg);
|
|
4947
5221
|
color: var(--_fg);
|
|
4948
5222
|
border-radius: var(--_radius);
|
|
4949
|
-
font-size: var(--tui-typography-size-
|
|
5223
|
+
font-size: var(--tui-typography-size-sm, 13px);
|
|
4950
5224
|
line-height: 1.4;
|
|
4951
5225
|
animation: tui-fadeFromTransparent var(--tui-motion-duration) var(--tui-motion-timing);
|
|
4952
5226
|
}
|
|
5227
|
+
:where(.tui-interface) .tui-tooltip.is-theme-light {
|
|
5228
|
+
--_bg: var(--tui-tooltip-bg, var(--tui-color-bg-surface));
|
|
5229
|
+
--_fg: var(--tui-tooltip-fg, var(--tui-color-fg));
|
|
5230
|
+
border: 1px solid var(--tui-color-border);
|
|
5231
|
+
}
|
|
5232
|
+
:where(.tui-interface) .tui-tooltip__arrow {
|
|
5233
|
+
fill: var(--_bg);
|
|
5234
|
+
}
|
|
4953
5235
|
:where(.tui-interface) [data-tooltip-open]:focus-visible {
|
|
4954
5236
|
outline: var(--tui-focus-ring-width) solid var(--tui-focus-ring-color);
|
|
4955
5237
|
outline-offset: var(--tui-focus-ring-offset);
|
|
4956
5238
|
}
|
|
5239
|
+
@media (prefers-reduced-motion: reduce) {
|
|
5240
|
+
:where(.tui-interface) .tui-tooltip {
|
|
5241
|
+
animation: none;
|
|
5242
|
+
}
|
|
5243
|
+
}
|
|
4957
5244
|
@media (forced-colors: active) {
|
|
4958
5245
|
:where(.tui-interface) .tui-tooltip {
|
|
4959
5246
|
background-color: Canvas;
|
|
4960
5247
|
color: CanvasText;
|
|
4961
5248
|
border: 1px solid CanvasText;
|
|
4962
5249
|
}
|
|
5250
|
+
:where(.tui-interface) .tui-tooltip__arrow {
|
|
5251
|
+
fill: Canvas;
|
|
5252
|
+
}
|
|
4963
5253
|
}
|
|
4964
5254
|
}
|
|
4965
5255
|
@layer utilities {
|