@grampro/kit 2.4.0 → 2.4.2

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 (56) hide show
  1. package/CHANGELOG.md +214 -139
  2. package/index.cjs +53 -13
  3. package/package.json +77 -76
  4. package/source/components/accordion/passport.json +2 -2
  5. package/source/components/accordion/styles.css +9 -9
  6. package/source/components/alert/passport.json +2 -2
  7. package/source/components/alert/styles.css +6 -6
  8. package/source/components/avatar/passport.json +2 -2
  9. package/source/components/avatar/styles.css +21 -21
  10. package/source/components/badge/passport.json +2 -2
  11. package/source/components/badge/styles.css +22 -22
  12. package/source/components/breadcrumb/passport.json +2 -2
  13. package/source/components/breadcrumb/styles.css +2 -2
  14. package/source/components/button/passport.json +2 -2
  15. package/source/components/button/styles.css +10 -10
  16. package/source/components/card/passport.json +2 -2
  17. package/source/components/card/styles.css +8 -8
  18. package/source/components/checkbox/passport.json +2 -2
  19. package/source/components/checkbox/styles.css +3 -3
  20. package/source/components/combobox/passport.json +2 -2
  21. package/source/components/combobox/styles.css +2 -2
  22. package/source/components/data-grid/passport.json +2 -2
  23. package/source/components/data-grid/styles.css +7 -7
  24. package/source/components/date-picker/passport.json +2 -2
  25. package/source/components/date-picker/styles.css +2 -2
  26. package/source/components/dialog/passport.json +2 -2
  27. package/source/components/dialog/styles.css +9 -9
  28. package/source/components/file-uploader/passport.json +2 -2
  29. package/source/components/file-uploader/styles.css +10 -10
  30. package/source/components/input/passport.json +2 -2
  31. package/source/components/input/styles.css +3 -3
  32. package/source/components/menu/passport.json +2 -2
  33. package/source/components/menu/styles.css +3 -3
  34. package/source/components/modal/passport.json +2 -2
  35. package/source/components/modal/styles.css +9 -9
  36. package/source/components/number-input/passport.json +2 -2
  37. package/source/components/number-input/styles.css +3 -3
  38. package/source/components/popover/passport.json +2 -2
  39. package/source/components/popover/styles.css +3 -3
  40. package/source/components/progress/passport.json +2 -2
  41. package/source/components/progress/styles.css +8 -8
  42. package/source/components/radio-group/passport.json +2 -2
  43. package/source/components/radio-group/styles.css +14 -14
  44. package/source/components/skeleton/passport.json +2 -2
  45. package/source/components/skeleton/styles.css +12 -12
  46. package/source/components/spinner/passport.json +2 -2
  47. package/source/components/spinner/styles.css +1 -1
  48. package/source/components/switch/passport.json +2 -2
  49. package/source/components/switch/styles.css +3 -3
  50. package/source/components/tabs/passport.json +2 -2
  51. package/source/components/tabs/styles.css +17 -17
  52. package/source/components/textarea/passport.json +2 -2
  53. package/source/components/textarea/styles.css +7 -7
  54. package/source/components/toaster/passport.json +2 -2
  55. package/source/components/toaster/styles.css +7 -7
  56. package/source/components/tooltip/passport.json +1 -1
@@ -57,27 +57,27 @@
57
57
 
58
58
  /* Text bars are sized from the font, so a paragraph placeholder takes the
59
59
  space the paragraph will. */
60
- .sk-root[data-variant="text"] {
60
+ .sk-root:where([data-variant="text"]) {
61
61
  height: var(--sk-height);
62
62
  }
63
- .sk-root[data-variant="text"] .sk-line {
63
+ .sk-root:where([data-variant="text"]) .sk-line {
64
64
  height: var(--sk-height, 0.85em);
65
65
  border-radius: 4px;
66
66
  }
67
67
 
68
- .sk-root[data-variant="circle"] {
68
+ .sk-root:where([data-variant="circle"]) {
69
69
  width: var(--sk-width, 40px);
70
70
  height: var(--sk-height, var(--sk-width, 40px));
71
71
  }
72
- .sk-root[data-variant="circle"] .sk-line {
72
+ .sk-root:where([data-variant="circle"]) .sk-line {
73
73
  border-radius: 50%;
74
74
  }
75
75
 
76
- .sk-root[data-variant="rect"] {
76
+ .sk-root:where([data-variant="rect"]) {
77
77
  height: var(--sk-height, 80px);
78
78
  }
79
79
 
80
- .sk-root[data-animation="pulse"] .sk-line {
80
+ .sk-root:where([data-animation="pulse"]) .sk-line {
81
81
  animation: sk-pulse var(--sk-duration) ease-in-out infinite;
82
82
  }
83
83
  @keyframes sk-pulse {
@@ -86,11 +86,11 @@
86
86
  }
87
87
  }
88
88
 
89
- .sk-root[data-animation="wave"] .sk-line {
89
+ .sk-root:where([data-animation="wave"]) .sk-line {
90
90
  position: relative;
91
91
  overflow: hidden;
92
92
  }
93
- .sk-root[data-animation="wave"] .sk-line::after {
93
+ .sk-root:where([data-animation="wave"]) .sk-line::after {
94
94
  content: "";
95
95
  position: absolute;
96
96
  inset: 0;
@@ -131,10 +131,10 @@
131
131
  text-align: center;
132
132
  text-wrap: pretty;
133
133
  }
134
- .em-root[data-size="sm"] {
134
+ .em-root:where([data-size="sm"]) {
135
135
  padding: 24px 16px;
136
136
  }
137
- .em-root[data-size="lg"] {
137
+ .em-root:where([data-size="lg"]) {
138
138
  padding: 64px 24px;
139
139
  }
140
140
 
@@ -143,7 +143,7 @@
143
143
  margin-bottom: 4px;
144
144
  color: var(--sk-muted);
145
145
  }
146
- .em-root[data-size="sm"] .em-icon {
146
+ .em-root:where([data-size="sm"]) .em-icon {
147
147
  margin-bottom: 0;
148
148
  }
149
149
 
@@ -152,7 +152,7 @@
152
152
  font-size: 1.05em;
153
153
  font-weight: 600;
154
154
  }
155
- .em-root[data-size="lg"] .em-title {
155
+ .em-root:where([data-size="lg"]) .em-title {
156
156
  font-size: 1.2em;
157
157
  }
158
158
 
@@ -8,7 +8,7 @@
8
8
  ]
9
9
  },
10
10
  "source": {
11
- "libraryVersion": "2.4.0",
11
+ "libraryVersion": "2.4.2",
12
12
  "files": [
13
13
  "core/index.ts",
14
14
  "core/types.ts",
@@ -19,7 +19,7 @@
19
19
  "react/props.ts",
20
20
  "react/useDelayedLoading.ts"
21
21
  ],
22
- "sourceHash": "sha256:2b6b8fa25750f5a491b73f37711de1beed2b1bcf9e38e2cf1b1f419d763b6c2e"
22
+ "sourceHash": "sha256:42ece669a14148ab88a6dccbbf495206c489f8198793daff831c0ee1d8e9ae86"
23
23
  },
24
24
  "props": [
25
25
  {
@@ -88,7 +88,7 @@
88
88
 
89
89
  /* ---------------------------------------------------------------- dots */
90
90
 
91
- .sp-indicator[data-variant="dots"] {
91
+ .sp-indicator:where([data-variant="dots"]) {
92
92
  grid-auto-flow: column;
93
93
  gap: calc(var(--sp-size) * 0.1);
94
94
  }
@@ -8,7 +8,7 @@
8
8
  ]
9
9
  },
10
10
  "source": {
11
- "libraryVersion": "2.4.0",
11
+ "libraryVersion": "2.4.2",
12
12
  "files": [
13
13
  "core/index.ts",
14
14
  "core/toggle.ts",
@@ -18,7 +18,7 @@
18
18
  "react/locale.ts",
19
19
  "react/props.ts"
20
20
  ],
21
- "sourceHash": "sha256:0e4b4a46e705b32ea7bf347c63743dfadb86ee1c5eedd2ae25e4e48721ad1989"
21
+ "sourceHash": "sha256:0681194dbbbe6c31a4930b88e98250a66cd49e0c0f4c9b12a88f6c79ffb007ca"
22
22
  },
23
23
  "props": [
24
24
  {
@@ -47,20 +47,20 @@
47
47
  box-sizing: border-box;
48
48
  }
49
49
 
50
- .sw-root[data-size="sm"] {
50
+ .sw-root:where([data-size="sm"]) {
51
51
  --sw-height: 16px;
52
52
  --sw-width: 28px;
53
53
  --sw-gap: 2px;
54
54
  --sw-font-size: 12px;
55
55
  }
56
- .sw-root[data-size="lg"] {
56
+ .sw-root:where([data-size="lg"]) {
57
57
  --sw-height: 24px;
58
58
  --sw-width: 44px;
59
59
  --sw-font-size: 14px;
60
60
  }
61
61
 
62
62
  /* The label first, the track pushed to the far edge: a settings row. */
63
- .sw-root[data-label-position="start"] {
63
+ .sw-root:where([data-label-position="start"]) {
64
64
  flex-direction: row-reverse;
65
65
  justify-content: space-between;
66
66
  }
@@ -12,7 +12,7 @@
12
12
  ]
13
13
  },
14
14
  "source": {
15
- "libraryVersion": "2.4.0",
15
+ "libraryVersion": "2.4.2",
16
16
  "files": [
17
17
  "core/index.ts",
18
18
  "core/navigation.ts",
@@ -21,7 +21,7 @@
21
21
  "react/Tabs.tsx",
22
22
  "react/context.ts"
23
23
  ],
24
- "sourceHash": "sha256:26d83e8f7ddcdcbcf8693f48d7f2769a53fdf4f38df38b64f7070c8e9cc3f9f5"
24
+ "sourceHash": "sha256:994b9d82745fdbaf05031dcd27a854e7b8f900f1d9058db0b8f43d13b11dbd68"
25
25
  },
26
26
  "props": [
27
27
  {
@@ -55,17 +55,17 @@
55
55
  box-sizing: border-box;
56
56
  }
57
57
 
58
- .tb-root[data-size="sm"] {
58
+ .tb-root:where([data-size="sm"]) {
59
59
  --tb-height: 30px;
60
60
  --tb-px: 10px;
61
61
  --tb-font-size: 12px;
62
62
  }
63
- .tb-root[data-size="lg"] {
63
+ .tb-root:where([data-size="lg"]) {
64
64
  --tb-height: 44px;
65
65
  --tb-px: 16px;
66
66
  --tb-font-size: 14px;
67
67
  }
68
- .tb-root[data-orientation="vertical"] {
68
+ .tb-root:where([data-orientation="vertical"]) {
69
69
  flex-direction: row;
70
70
  gap: 20px;
71
71
  }
@@ -80,7 +80,7 @@
80
80
  overflow-x: auto;
81
81
  scrollbar-width: none;
82
82
  }
83
- .tb-root[data-orientation="vertical"] .tb-list {
83
+ .tb-root:where([data-orientation="vertical"]) .tb-list {
84
84
  flex-direction: column;
85
85
  overflow: visible;
86
86
  }
@@ -105,7 +105,7 @@
105
105
  cursor: pointer;
106
106
  transition: color 120ms ease;
107
107
  }
108
- .tb-root[data-orientation="vertical"] .tb-tab {
108
+ .tb-root:where([data-orientation="vertical"]) .tb-tab {
109
109
  justify-content: flex-start;
110
110
  }
111
111
  .tb-tab:hover:not([aria-disabled="true"]),
@@ -161,10 +161,10 @@
161
161
 
162
162
  /* ---------------------------------------------------------------- line */
163
163
 
164
- .tb-root[data-variant="line"] .tb-list {
164
+ .tb-root:where([data-variant="line"]) .tb-list {
165
165
  border-bottom: 1px solid var(--tb-border);
166
166
  }
167
- .tb-root[data-variant="line"] .tb-indicator {
167
+ .tb-root:where([data-variant="line"]) .tb-indicator {
168
168
  bottom: -1px;
169
169
  left: var(--tb-indicator-start);
170
170
  width: var(--tb-indicator-size);
@@ -172,11 +172,11 @@
172
172
  border-radius: 2px;
173
173
  background: var(--tb-accent);
174
174
  }
175
- .tb-root[data-variant="line"][data-orientation="vertical"] .tb-list {
175
+ .tb-root:where([data-variant="line"]):where([data-orientation="vertical"]) .tb-list {
176
176
  border-bottom: 0;
177
177
  border-inline-end: 1px solid var(--tb-border);
178
178
  }
179
- .tb-root[data-variant="line"][data-orientation="vertical"] .tb-indicator {
179
+ .tb-root:where([data-variant="line"]):where([data-orientation="vertical"]) .tb-indicator {
180
180
  top: var(--tb-indicator-start);
181
181
  bottom: auto;
182
182
  left: auto;
@@ -187,7 +187,7 @@
187
187
 
188
188
  /* --------------------------------------------------------------- pills */
189
189
 
190
- .tb-root[data-variant="pills"] .tb-indicator {
190
+ .tb-root:where([data-variant="pills"]) .tb-indicator {
191
191
  top: 0;
192
192
  left: var(--tb-indicator-start);
193
193
  width: var(--tb-indicator-size);
@@ -195,10 +195,10 @@
195
195
  border-radius: calc(var(--tb-radius) - 2px);
196
196
  background: var(--tb-accent-soft);
197
197
  }
198
- .tb-root[data-variant="pills"] .tb-tab[aria-selected="true"] {
198
+ .tb-root:where([data-variant="pills"]) .tb-tab[aria-selected="true"] {
199
199
  color: var(--tb-accent);
200
200
  }
201
- .tb-root[data-variant="pills"][data-orientation="vertical"] .tb-indicator {
201
+ .tb-root:where([data-variant="pills"]):where([data-orientation="vertical"]) .tb-indicator {
202
202
  top: var(--tb-indicator-start);
203
203
  left: 0;
204
204
  width: 100%;
@@ -207,12 +207,12 @@
207
207
 
208
208
  /* ------------------------------------------------------------ enclosed */
209
209
 
210
- .tb-root[data-variant="enclosed"] .tb-list {
210
+ .tb-root:where([data-variant="enclosed"]) .tb-list {
211
211
  padding: 3px;
212
212
  border-radius: var(--tb-radius);
213
213
  background: var(--tb-track);
214
214
  }
215
- .tb-root[data-variant="enclosed"] .tb-indicator {
215
+ .tb-root:where([data-variant="enclosed"]) .tb-indicator {
216
216
  top: 3px;
217
217
  bottom: 3px;
218
218
  left: var(--tb-indicator-start);
@@ -221,10 +221,10 @@
221
221
  background: var(--tb-bg);
222
222
  box-shadow: 0 1px 3px light-dark(rgb(0 0 0 / 0.12), rgb(0 0 0 / 0.5));
223
223
  }
224
- .tb-root[data-variant="enclosed"] .tb-tab {
224
+ .tb-root:where([data-variant="enclosed"]) .tb-tab {
225
225
  height: calc(var(--tb-height) - 6px);
226
226
  }
227
- .tb-root[data-variant="enclosed"][data-orientation="vertical"] .tb-indicator {
227
+ .tb-root:where([data-variant="enclosed"]):where([data-orientation="vertical"]) .tb-indicator {
228
228
  top: var(--tb-indicator-start);
229
229
  bottom: auto;
230
230
  left: 3px;
@@ -234,7 +234,7 @@
234
234
  }
235
235
 
236
236
  /* Before the indicator is measured (server render), mark the selected tab statically. */
237
- .tb-root[data-variant="line"] .tb-list:not([style*="--tb-indicator-size"]) .tb-tab[aria-selected="true"] {
237
+ .tb-root:where([data-variant="line"]) .tb-list:not([style*="--tb-indicator-size"]) .tb-tab[aria-selected="true"] {
238
238
  box-shadow: inset 0 -2px 0 var(--tb-accent);
239
239
  }
240
240
 
@@ -8,7 +8,7 @@
8
8
  ]
9
9
  },
10
10
  "source": {
11
- "libraryVersion": "2.4.0",
11
+ "libraryVersion": "2.4.2",
12
12
  "files": [
13
13
  "core/count.ts",
14
14
  "core/index.ts",
@@ -19,7 +19,7 @@
19
19
  "react/locale.ts",
20
20
  "react/props.ts"
21
21
  ],
22
- "sourceHash": "sha256:99fe1b42359a0d09331c6cf00b5c8d2e01fe57d9a02769637c990906ede431cf"
22
+ "sourceHash": "sha256:17fa3942bc38126b91bd2eacaccffbe0cb8065f7672697abb052ff85dafea6f2"
23
23
  },
24
24
  "props": [
25
25
  {
@@ -46,12 +46,12 @@
46
46
  box-sizing: border-box;
47
47
  }
48
48
 
49
- .ta-root[data-size="sm"] {
49
+ .ta-root:where([data-size="sm"]) {
50
50
  --ta-font-size: 12px;
51
51
  --ta-px: 8px;
52
52
  --ta-py: 6px;
53
53
  }
54
- .ta-root[data-size="lg"] {
54
+ .ta-root:where([data-size="lg"]) {
55
55
  --ta-font-size: 14px;
56
56
  --ta-px: 12px;
57
57
  --ta-py: 10px;
@@ -100,16 +100,16 @@
100
100
  cursor: not-allowed;
101
101
  }
102
102
 
103
- .ta-input[data-resize="none"] {
103
+ .ta-input:where([data-resize="none"]) {
104
104
  resize: none;
105
105
  }
106
- .ta-input[data-resize="vertical"] {
106
+ .ta-input:where([data-resize="vertical"]) {
107
107
  resize: vertical;
108
108
  }
109
- .ta-input[data-resize="horizontal"] {
109
+ .ta-input:where([data-resize="horizontal"]) {
110
110
  resize: horizontal;
111
111
  }
112
- .ta-input[data-resize="both"] {
112
+ .ta-input:where([data-resize="both"]) {
113
113
  resize: both;
114
114
  }
115
115
 
@@ -118,7 +118,7 @@
118
118
  * component; `--ta-max-rows: none` makes max-height invalid, which means no limit.
119
119
  */
120
120
  @supports (field-sizing: content) {
121
- .ta-input[data-autoresize] {
121
+ .ta-input:where([data-autoresize]) {
122
122
  field-sizing: content;
123
123
  min-height: calc(var(--ta-min-rows, 3) * 1lh + 2 * var(--ta-py) + 2px);
124
124
  max-height: calc(var(--ta-max-rows) * 1lh + 2 * var(--ta-py) + 2px);
@@ -11,7 +11,7 @@
11
11
  ]
12
12
  },
13
13
  "source": {
14
- "libraryVersion": "2.4.0",
14
+ "libraryVersion": "2.4.2",
15
15
  "files": [
16
16
  "core/api.ts",
17
17
  "core/index.ts",
@@ -26,7 +26,7 @@
26
26
  "react/props.ts",
27
27
  "react/useToasts.ts"
28
28
  ],
29
- "sourceHash": "sha256:29756fca7fc33de05f42257fbb145017a6c507565eecb99ce06814ba404262ef"
29
+ "sourceHash": "sha256:9071d3b6937872ce25e6461cf3af993e512ac26ff8fa3c05121ee7ad53289035"
30
30
  },
31
31
  "props": [
32
32
  {
@@ -160,16 +160,16 @@
160
160
  width: 3px;
161
161
  background: var(--ts-type-color);
162
162
  }
163
- .ts-toast[data-type="success"] {
163
+ .ts-toast:where([data-type="success"]) {
164
164
  --ts-type-color: var(--ts-success);
165
165
  }
166
- .ts-toast[data-type="error"] {
166
+ .ts-toast:where([data-type="error"]) {
167
167
  --ts-type-color: var(--ts-error);
168
168
  }
169
- .ts-toast[data-type="warning"] {
169
+ .ts-toast:where([data-type="warning"]) {
170
170
  --ts-type-color: var(--ts-warning);
171
171
  }
172
- .ts-toast[data-type="info"] {
172
+ .ts-toast:where([data-type="info"]) {
173
173
  --ts-type-color: var(--ts-info);
174
174
  }
175
175
 
@@ -180,7 +180,7 @@
180
180
  margin-top: 1px;
181
181
  color: var(--ts-type-color);
182
182
  }
183
- .ts-toast:is([data-type="default"], [data-type="loading"]) .ts-icon {
183
+ .ts-toast:is(:where([data-type="default"]), :where([data-type="loading"])) .ts-icon {
184
184
  color: var(--ts-muted);
185
185
  }
186
186
 
@@ -219,12 +219,12 @@
219
219
  .ts-button:hover {
220
220
  background: var(--ts-hover);
221
221
  }
222
- .ts-button[data-variant="action"] {
222
+ .ts-button:where([data-variant="action"]) {
223
223
  border-color: var(--ts-accent);
224
224
  background: var(--ts-accent);
225
225
  color: var(--ts-accent-fg);
226
226
  }
227
- .ts-button[data-variant="action"]:hover {
227
+ .ts-button:where([data-variant="action"]):hover {
228
228
  background: color-mix(in oklab, var(--ts-accent), var(--ts-fg) 12%);
229
229
  }
230
230
  .ts-button:focus-visible {
@@ -8,7 +8,7 @@
8
8
  ]
9
9
  },
10
10
  "source": {
11
- "libraryVersion": "2.4.0",
11
+ "libraryVersion": "2.4.2",
12
12
  "files": [
13
13
  "core/index.ts",
14
14
  "core/types.ts",