@threadlabs/looma 0.17.2 → 0.17.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@threadlabs/looma",
3
- "version": "0.17.2",
3
+ "version": "0.17.4",
4
4
  "type": "module",
5
5
  "description": "Looma components as HTML, Vue, and plain DOM, with design tokens.",
6
6
  "license": "MIT",
@@ -131,6 +131,11 @@
131
131
  margin: 0;
132
132
  }
133
133
 
134
+ /* An anchor keeps the boxed button look even when an app styles ordinary links. */
135
+ :scope:is(a) {
136
+ text-decoration: none;
137
+ }
138
+
134
139
  .spinner-wrap {
135
140
  display: inline-flex;
136
141
  flex: none;
@@ -363,6 +368,8 @@
363
368
  @scope ([data-component~="ui-button"]) to ([data-component]) {
364
369
  /* This component's hooks style the element they are set on, and never a nested one. */
365
370
 
371
+ /* An anchor keeps the boxed button look even when an app styles ordinary links. */
372
+
366
373
  @supports (text-box-trim: trim-both) {
367
374
  }
368
375
 
@@ -14,15 +14,15 @@
14
14
  @keyframes ui-checkbox-check {
15
15
  from {
16
16
  opacity: 0;
17
- transform: translate(0.07rem, -0.09rem) rotate(45deg) scale(0.55);
17
+ transform: translateY(-0.09rem) rotate(45deg) scale(0.55);
18
18
  }
19
19
  65% {
20
20
  opacity: 1;
21
- transform: translate(0.07rem, -0.09rem) rotate(45deg) scale(1.12);
21
+ transform: translateY(-0.09rem) rotate(45deg) scale(1.12);
22
22
  }
23
23
  to {
24
24
  opacity: 1;
25
- transform: translate(0.07rem, -0.09rem) rotate(45deg) scale(1);
25
+ transform: translateY(-0.09rem) rotate(45deg) scale(1);
26
26
  }
27
27
  }
28
28
  @scope ([data-component~="ui-checkbox"]) to ([data-component], [data-slotted]) {
@@ -97,7 +97,7 @@
97
97
  box-shadow: var(--ui-control-inset);
98
98
  }
99
99
 
100
- /* Centre the tick's box, then lift it: a rotated L's ink sits ~0.11rem below its box centre. */
100
+ /* Centre the tick's box and lift it slightly for the rotated check shape. */
101
101
  input:checked::after {
102
102
  inset: 0;
103
103
  margin: auto;
@@ -109,7 +109,7 @@
109
109
  border-color: var(--ui-text-on-accent);
110
110
  border-width: 0 0.125rem 0.125rem 0;
111
111
  opacity: 1;
112
- transform: translate(0.07rem, -0.09rem) rotate(45deg);
112
+ transform: translateY(-0.09rem) rotate(45deg);
113
113
  animation: ui-checkbox-check 180ms var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
114
114
  }
115
115
 
@@ -197,7 +197,7 @@
197
197
 
198
198
  /* The label, and under it an optional line saying what the choice means. */
199
199
 
200
- /* Centre the tick's box, then lift it: a rotated L's ink sits ~0.11rem below its box centre. */
200
+ /* Centre the tick's box and lift it slightly for the rotated check shape. */
201
201
 
202
202
  @media (prefers-reduced-motion: reduce) {
203
203
  }
@@ -117,7 +117,7 @@
117
117
  @media (hover: hover) and (pointer: fine) {
118
118
  :scope[data-ui-icon-button-state~="anticipatory"]:not(:scope[data-ui-icon-button-state~="variant=solid"], :scope[data-ui-icon-button-state~="loading"], :scope[data-ui-icon-button-state~="pending"], :disabled, [data-ui-proximity="near"], :hover, :focus-visible) {
119
119
  border-color: transparent;
120
- background: transparent;
120
+ background-color: transparent;
121
121
  box-shadow: none;
122
122
  }
123
123
 
@@ -145,7 +145,7 @@
145
145
  margin: 0;
146
146
  border: 1px solid transparent;
147
147
  border-radius: var(--ui-icon-button-radius, var(--ui-action-radius, var(--ui-radius-md)));
148
- background: var(--ui-icon-button-surface, transparent);
148
+ background-color: var(--ui-icon-button-surface, transparent);
149
149
  color: inherit;
150
150
  display: inline-flex;
151
151
  align-items: center;
@@ -217,14 +217,14 @@
217
217
 
218
218
  :scope[data-ui-icon-button-state~="variant=outline"] {
219
219
  border-color: var(--ui-icon-button-border, var(--ui-control-border, var(--ui-border-strong)));
220
- background: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
220
+ background-color: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
221
221
  background-image: var(--ui-raised-highlight);
222
222
  color: var(--ui-icon-button-outline-text, var(--ui-text-primary));
223
223
  box-shadow: var(--ui-raised);
224
224
  }
225
225
 
226
226
  :scope[data-ui-icon-button-state~="variant=solid"] {
227
- background: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
227
+ background-color: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
228
228
  background-image: var(--ui-raised-highlight);
229
229
  color: var(--ui-icon-button-solid-text, var(--ui-text-on-accent));
230
230
  box-shadow: var(
@@ -235,7 +235,7 @@
235
235
 
236
236
  :scope:hover:enabled:not([aria-disabled="true"]) {
237
237
  /* Derived from the text colour so the ghost hover shows on any background. */
238
- background: var(--ui-icon-button-hover-surface, color-mix(in srgb, currentColor 8%, transparent));
238
+ background-color: var(--ui-icon-button-hover-surface, color-mix(in srgb, currentColor 8%, transparent));
239
239
  color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
240
240
  }
241
241
 
@@ -244,7 +244,7 @@
244
244
  }
245
245
 
246
246
  :scope[data-ui-icon-button-state~="variant=solid"]:hover:enabled:not([aria-disabled="true"]) {
247
- background: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
247
+ background-color: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
248
248
  }
249
249
 
250
250
  :scope:active:enabled:not([aria-disabled="true"]) {
@@ -279,7 +279,7 @@
279
279
  /* Disabled is a flat neutral control, independent of the active variant's tone. */
280
280
  :scope:disabled {
281
281
  border-color: var(--ui-disabled-border);
282
- background: var(--ui-disabled-surface);
282
+ background-color: var(--ui-disabled-surface);
283
283
  color: var(--ui-disabled-text);
284
284
  filter: var(--ui-icon-button-disabled-filter, var(--ui-disabled-filter));
285
285
  opacity: var(--ui-icon-button-disabled-opacity, 1);
@@ -119,7 +119,7 @@
119
119
  flex: none;
120
120
  align-items: center;
121
121
  padding-inline: var(--ui-space-2);
122
- color: var(--ui-text-secondary);
122
+ color: var(--ui-text-muted);
123
123
  font-family: var(--ui-font-family-mono);
124
124
  font-size: var(--ui-font-size-sm);
125
125
  white-space: nowrap;
@@ -45,18 +45,14 @@
45
45
  align-items: flex-start;
46
46
  gap: var(--ui-search-result-row-gap, var(--ui-space-3));
47
47
  background: var(--ui-search-result-row-surface, transparent);
48
- border: none;
49
- border-block-end: 1px solid var(--ui-search-result-row-border, var(--ui-border-divider));
48
+ border: 1px solid var(--ui-search-result-row-border, transparent);
49
+ border-radius: var(--ui-radius-md);
50
50
  color: inherit;
51
51
  cursor: pointer;
52
52
  text-align: left;
53
53
  transition: background-color var(--ui-motion-fast) var(--ui-motion-ease);
54
54
  }
55
55
 
56
- :scope:last-child {
57
- border-block-end: none;
58
- }
59
-
60
56
  :scope:hover:enabled {
61
57
  background: var(--ui-search-result-row-hover-surface, color-mix(in srgb, var(--ui-surface) 85%, black 3%));
62
58
  }
@@ -96,14 +96,6 @@
96
96
 
97
97
  .search {
98
98
  padding: var(--ui-space-3);
99
- border-block-end: 1px solid var(--ui-border-divider);
100
- transition: border-color var(--ui-motion-fast) var(--ui-motion-ease), box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
101
- }
102
-
103
- /* The search region shows where typing goes, whatever the author put in it. */
104
- .search:focus-within {
105
- border-block-end-color: var(--_ui-search-shell-focus-color, var(--ui-control-focus));
106
- box-shadow: inset 0 -1px 0 var(--_ui-search-shell-focus-color, var(--ui-control-focus));
107
99
  }
108
100
 
109
101
  .status,
@@ -115,7 +107,7 @@
115
107
  }
116
108
 
117
109
  .status {
118
- border-block-end: 1px solid var(--ui-border-divider);
110
+ padding-block-start: 0;
119
111
  }
120
112
 
121
113
  /* Laid out like the dialog's action row: actions right-aligned, spaced as buttons, no fill. */
@@ -126,7 +118,6 @@
126
118
  justify-content: flex-end;
127
119
  gap: var(--ui-space-2);
128
120
  padding: var(--ui-space-3) var(--ui-space-4);
129
- border-block-start: 1px solid var(--ui-border-divider);
130
121
  }
131
122
 
132
123
  .status:empty,
@@ -180,8 +171,6 @@
180
171
  @scope ([data-component~="ui-search-shell"]) to ([data-component]) {
181
172
  /* This component's hooks style the element they are set on, and never a nested one. */
182
173
 
183
- /* The search region shows where typing goes, whatever the author put in it. */
184
-
185
174
  :where([data-slotted], [data-slotted] *):is(input[slot="search"]) {
186
175
  box-sizing: border-box;
187
176
  inline-size: 100%;
@@ -196,7 +185,7 @@
196
185
  }
197
186
 
198
187
  :where([data-slotted], [data-slotted] *):is(input[slot="search"]:focus-visible) {
199
- border-color: var(--ui-control-focus);
188
+ border-color: var(--_ui-search-shell-focus-color, var(--ui-control-focus));
200
189
  outline: 2px solid var(--ui-focus-ring);
201
190
  outline-offset: 2px;
202
191
  }
@@ -18,22 +18,16 @@
18
18
  flex: none;
19
19
  align-items: center;
20
20
  justify-content: center;
21
+ box-sizing: border-box;
21
22
  inline-size: 1em;
22
23
  block-size: 1em;
23
- color: currentColor;
24
- font-size: var(--ui-font-size-lg);
25
- line-height: 1;
26
- }
27
-
28
- .ring {
29
- display: block;
30
- box-sizing: border-box;
31
- inline-size: 100%;
32
- block-size: 100%;
33
24
  border: 2px solid transparent;
34
25
  border-block-start-color: currentColor;
35
26
  border-inline-end-color: color-mix(in srgb, currentColor 52%, transparent);
36
27
  border-radius: 50%;
28
+ color: currentColor;
29
+ font-size: var(--ui-font-size-lg);
30
+ line-height: 1;
37
31
  animation: ui-spinner-chase 1s linear infinite;
38
32
  }
39
33
 
@@ -42,7 +36,7 @@
42
36
  }
43
37
 
44
38
  @media (prefers-reduced-motion: reduce) {
45
- .ring {
39
+ :scope {
46
40
  animation: none;
47
41
  }
48
42
  }
@@ -147,14 +147,14 @@
147
147
  inset-inline-start: auto;
148
148
  inset-inline-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
149
149
  border-inline-end-width: 1px;
150
- border-block-end-width: 1px;
150
+ border-block-start-width: 1px;
151
151
  }
152
152
 
153
153
  :scope[data-ui-actual-placement="right"] .surface::after {
154
154
  inset-inline-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
155
155
  inset-inline-end: auto;
156
156
  border-inline-start-width: 1px;
157
- border-block-start-width: 1px;
157
+ border-block-end-width: 1px;
158
158
  }
159
159
 
160
160
  :scope[data-ui-actual-placement="left"][data-ui-actual-align="start"] .surface::after,
package/vue/UiButton.vue CHANGED
@@ -241,6 +241,11 @@ function attribute(value: unknown): any {
241
241
  margin: 0;
242
242
  }
243
243
 
244
+ /* An anchor keeps the boxed button look even when an app styles ordinary links. */
245
+ [data-component~="ui-button"]:is(a) {
246
+ text-decoration: none;
247
+ }
248
+
244
249
  .spinner-wrap {
245
250
  display: inline-flex;
246
251
  flex: none;
@@ -188,7 +188,7 @@ input:indeterminate {
188
188
  box-shadow: var(--ui-control-inset);
189
189
  }
190
190
 
191
- /* Centre the tick's box, then lift it: a rotated L's ink sits ~0.11rem below its box centre. */
191
+ /* Centre the tick's box and lift it slightly for the rotated check shape. */
192
192
  input:checked::after {
193
193
  inset: 0;
194
194
  margin: auto;
@@ -200,7 +200,7 @@ input:checked::after {
200
200
  border-color: var(--ui-text-on-accent);
201
201
  border-width: 0 0.125rem 0.125rem 0;
202
202
  opacity: 1;
203
- transform: translate(0.07rem, -0.09rem) rotate(45deg);
203
+ transform: translateY(-0.09rem) rotate(45deg);
204
204
  animation: ui-checkbox-check 180ms var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
205
205
  }
206
206
 
@@ -216,15 +216,15 @@ input:indeterminate::after {
216
216
  @keyframes ui-checkbox-check {
217
217
  from {
218
218
  opacity: 0;
219
- transform: translate(0.07rem, -0.09rem) rotate(45deg) scale(0.55);
219
+ transform: translateY(-0.09rem) rotate(45deg) scale(0.55);
220
220
  }
221
221
  65% {
222
222
  opacity: 1;
223
- transform: translate(0.07rem, -0.09rem) rotate(45deg) scale(1.12);
223
+ transform: translateY(-0.09rem) rotate(45deg) scale(1.12);
224
224
  }
225
225
  to {
226
226
  opacity: 1;
227
- transform: translate(0.07rem, -0.09rem) rotate(45deg) scale(1);
227
+ transform: translateY(-0.09rem) rotate(45deg) scale(1);
228
228
  }
229
229
  }
230
230
 
@@ -204,7 +204,7 @@ function attribute(value: unknown): any {
204
204
  @media (hover: hover) and (pointer: fine) {
205
205
  [data-component~="ui-icon-button"][data-ui-icon-button-state~="anticipatory"]:not([data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="loading"], [data-component~="ui-icon-button"][data-ui-icon-button-state~="pending"], :disabled, [data-ui-proximity="near"], :hover, :focus-visible) {
206
206
  border-color: transparent;
207
- background: transparent;
207
+ background-color: transparent;
208
208
  box-shadow: none;
209
209
  }
210
210
 
@@ -232,7 +232,7 @@ function attribute(value: unknown): any {
232
232
  margin: 0;
233
233
  border: 1px solid transparent;
234
234
  border-radius: var(--ui-icon-button-radius, var(--ui-action-radius, var(--ui-radius-md)));
235
- background: var(--ui-icon-button-surface, transparent);
235
+ background-color: var(--ui-icon-button-surface, transparent);
236
236
  color: inherit;
237
237
  display: inline-flex;
238
238
  align-items: center;
@@ -304,14 +304,14 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"]::after {
304
304
 
305
305
  [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=outline"] {
306
306
  border-color: var(--ui-icon-button-border, var(--ui-control-border, var(--ui-border-strong)));
307
- background: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
307
+ background-color: var(--ui-icon-button-outline-surface, var(--ui-surface-default));
308
308
  background-image: var(--ui-raised-highlight);
309
309
  color: var(--ui-icon-button-outline-text, var(--ui-text-primary));
310
310
  box-shadow: var(--ui-raised);
311
311
  }
312
312
 
313
313
  [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"] {
314
- background: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
314
+ background-color: var(--ui-icon-button-solid-surface, var(--ui-accent-solid));
315
315
  background-image: var(--ui-raised-highlight);
316
316
  color: var(--ui-icon-button-solid-text, var(--ui-text-on-accent));
317
317
  box-shadow: var(
@@ -322,7 +322,10 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"]::after {
322
322
 
323
323
  [data-component~="ui-icon-button"]:hover:enabled:not([aria-disabled="true"]) {
324
324
  /* Derived from the text colour so the ghost hover shows on any background. */
325
- background: var(--ui-icon-button-hover-surface, color-mix(in srgb, currentColor 8%, transparent));
325
+ background-color: var(
326
+ --ui-icon-button-hover-surface,
327
+ color-mix(in srgb, currentColor 8%, transparent)
328
+ );
326
329
  color: var(--ui-icon-button-hover-text, var(--ui-text-primary));
327
330
  }
328
331
 
@@ -334,7 +337,7 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"]::after {
334
337
  }
335
338
 
336
339
  [data-component~="ui-icon-button"][data-ui-icon-button-state~="variant=solid"]:hover:enabled:not([aria-disabled="true"]) {
337
- background: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
340
+ background-color: var(--ui-icon-button-solid-hover-surface, var(--ui-accent-hover));
338
341
  }
339
342
 
340
343
  [data-component~="ui-icon-button"]:active:enabled:not([aria-disabled="true"]) {
@@ -370,7 +373,7 @@ html[data-ui-input-modality="touch"] [data-component~="ui-icon-button"]::after {
370
373
  /* Disabled is a flat neutral control, independent of the active variant's tone. */
371
374
  [data-component~="ui-icon-button"]:disabled {
372
375
  border-color: var(--ui-disabled-border);
373
- background: var(--ui-disabled-surface);
376
+ background-color: var(--ui-disabled-surface);
374
377
  color: var(--ui-disabled-text);
375
378
  filter: var(--ui-icon-button-disabled-filter, var(--ui-disabled-filter));
376
379
  opacity: var(--ui-icon-button-disabled-opacity, 1);
@@ -176,7 +176,7 @@ useComponentHost(controllerModule.default, {
176
176
  flex: none;
177
177
  align-items: center;
178
178
  padding-inline: var(--ui-space-2);
179
- color: var(--ui-text-secondary);
179
+ color: var(--ui-text-muted);
180
180
  font-family: var(--ui-font-family-mono);
181
181
  font-size: var(--ui-font-size-sm);
182
182
  white-space: nowrap;
@@ -86,18 +86,14 @@ const hostState = computed(() =>
86
86
  align-items: flex-start;
87
87
  gap: var(--ui-search-result-row-gap, var(--ui-space-3));
88
88
  background: var(--ui-search-result-row-surface, transparent);
89
- border: none;
90
- border-block-end: 1px solid var(--ui-search-result-row-border, var(--ui-border-divider));
89
+ border: 1px solid var(--ui-search-result-row-border, transparent);
90
+ border-radius: var(--ui-radius-md);
91
91
  color: inherit;
92
92
  cursor: pointer;
93
93
  text-align: left;
94
94
  transition: background-color var(--ui-motion-fast) var(--ui-motion-ease);
95
95
  }
96
96
 
97
- [data-component~="ui-search-result-row"]:last-child {
98
- border-block-end: none;
99
- }
100
-
101
97
  [data-component~="ui-search-result-row"]:hover:enabled {
102
98
  background: var(
103
99
  --ui-search-result-row-hover-surface,
@@ -180,16 +180,6 @@ dialog::backdrop {
180
180
 
181
181
  .search {
182
182
  padding: var(--ui-space-3);
183
- border-block-end: 1px solid var(--ui-border-divider);
184
- transition:
185
- border-color var(--ui-motion-fast) var(--ui-motion-ease),
186
- box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
187
- }
188
-
189
- /* The search region shows where typing goes, whatever the author put in it. */
190
- .search:focus-within {
191
- border-block-end-color: var(--_ui-search-shell-focus-color, var(--ui-control-focus));
192
- box-shadow: inset 0 -1px 0 var(--_ui-search-shell-focus-color, var(--ui-control-focus));
193
183
  }
194
184
 
195
185
  :slotted(input[slot="search"]) {
@@ -206,7 +196,7 @@ dialog::backdrop {
206
196
  }
207
197
 
208
198
  :slotted(input[slot="search"]:focus-visible) {
209
- border-color: var(--ui-control-focus);
199
+ border-color: var(--_ui-search-shell-focus-color, var(--ui-control-focus));
210
200
  outline: 2px solid var(--ui-focus-ring);
211
201
  outline-offset: 2px;
212
202
  }
@@ -220,7 +210,7 @@ dialog::backdrop {
220
210
  }
221
211
 
222
212
  .status {
223
- border-block-end: 1px solid var(--ui-border-divider);
213
+ padding-block-start: 0;
224
214
  }
225
215
 
226
216
  /* Laid out like the dialog's action row: actions right-aligned, spaced as buttons, no fill. */
@@ -231,7 +221,6 @@ dialog::backdrop {
231
221
  justify-content: flex-end;
232
222
  gap: var(--ui-space-2);
233
223
  padding: var(--ui-space-3) var(--ui-space-4);
234
- border-block-start: 1px solid var(--ui-border-divider);
235
224
  }
236
225
 
237
226
  .status:empty,
package/vue/UiSpinner.vue CHANGED
@@ -60,22 +60,16 @@ function attribute(value: unknown): any {
60
60
  flex: none;
61
61
  align-items: center;
62
62
  justify-content: center;
63
+ box-sizing: border-box;
63
64
  inline-size: 1em;
64
65
  block-size: 1em;
65
- color: currentColor;
66
- font-size: var(--ui-font-size-lg);
67
- line-height: 1;
68
- }
69
-
70
- .ring {
71
- display: block;
72
- box-sizing: border-box;
73
- inline-size: 100%;
74
- block-size: 100%;
75
66
  border: 2px solid transparent;
76
67
  border-block-start-color: currentColor;
77
68
  border-inline-end-color: color-mix(in srgb, currentColor 52%, transparent);
78
69
  border-radius: 50%;
70
+ color: currentColor;
71
+ font-size: var(--ui-font-size-lg);
72
+ line-height: 1;
79
73
  animation: ui-spinner-chase 1s linear infinite;
80
74
  }
81
75
 
@@ -96,7 +90,7 @@ function attribute(value: unknown): any {
96
90
  }
97
91
 
98
92
  @media (prefers-reduced-motion: reduce) {
99
- .ring {
93
+ [data-component~="ui-spinner"] {
100
94
  animation: none;
101
95
  }
102
96
  }
package/vue/UiTooltip.vue CHANGED
@@ -256,14 +256,14 @@ useComponentHost(controllerModule.default, {
256
256
  inset-inline-start: auto;
257
257
  inset-inline-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
258
258
  border-inline-end-width: 1px;
259
- border-block-end-width: 1px;
259
+ border-block-start-width: 1px;
260
260
  }
261
261
 
262
262
  [data-component~="ui-tooltip"][data-ui-actual-placement="right"] .surface::after {
263
263
  inset-inline-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - 0.5px);
264
264
  inset-inline-end: auto;
265
265
  border-inline-start-width: 1px;
266
- border-block-start-width: 1px;
266
+ border-block-end-width: 1px;
267
267
  }
268
268
 
269
269
  [data-component~="ui-tooltip"][data-ui-actual-placement="left"][data-ui-actual-align="start"]
@@ -139,6 +139,6 @@ var UiButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
139
139
  }), [__props.loading || __props.pending ? (openBlock(), createElementBlock("span", _hoisted_4, [createVNode(UiSpinner_default, { size: "sm" })])) : createCommentVNode("v-if", true), renderSlot(_ctx.$slots, "default", {}, void 0, true)], 16, _hoisted_3));
140
140
  };
141
141
  }
142
- }), [["__scopeId", "data-v-84ef27e9"]]);
142
+ }), [["__scopeId", "data-v-a89a1895"]]);
143
143
  //#endregion
144
144
  export { UiButton_default as t };
@@ -105,6 +105,6 @@ var UiCheckbox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
105
105
  }, null, 40, _hoisted_2), createElementVNode("span", _hoisted_3, [createElementVNode("span", _hoisted_4, [renderSlot(_ctx.$slots, "default", {}, void 0, true)]), createElementVNode("span", _hoisted_5, [renderSlot(_ctx.$slots, "description", {}, void 0, true)], 512)])], 16, _hoisted_1);
106
106
  };
107
107
  }
108
- }), [["__scopeId", "data-v-62f133c7"]]);
108
+ }), [["__scopeId", "data-v-9a218638"]]);
109
109
  //#endregion
110
110
  export { UiCheckbox_default as t };
@@ -95,6 +95,6 @@ var UiIconButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
95
95
  })) : createCommentVNode("v-if", true), createElementVNode("span", _hoisted_2, [renderSlot(_ctx.$slots, "default")])], 16, _hoisted_1);
96
96
  };
97
97
  }
98
- }), [["__scopeId", "data-v-e99fb642"]]);
98
+ }), [["__scopeId", "data-v-ae1ec9d2"]]);
99
99
  //#endregion
100
100
  export { UiIconButton_default as t };
@@ -41,6 +41,6 @@ var UiInputGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
41
41
  ], 16, _hoisted_1);
42
42
  };
43
43
  }
44
- }), [["__scopeId", "data-v-8627fd48"]]);
44
+ }), [["__scopeId", "data-v-51eefe72"]]);
45
45
  //#endregion
46
46
  export { UiInputGroup_default as t };
@@ -50,6 +50,6 @@ var UiSearchResultRow_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
50
50
  ], 16, _hoisted_1);
51
51
  };
52
52
  }
53
- }), [["__scopeId", "data-v-5a2d6e2a"]]);
53
+ }), [["__scopeId", "data-v-5fd17258"]]);
54
54
  //#endregion
55
55
  export { UiSearchResultRow_default as t };
@@ -67,6 +67,6 @@ var UiSearchShell_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
67
67
  ])], 8, _hoisted_1)], 16);
68
68
  };
69
69
  }
70
- }), [["__scopeId", "data-v-089e37ee"]]);
70
+ }), [["__scopeId", "data-v-b1cde00b"]]);
71
71
  //#endregion
72
72
  export { UiSearchShell_default as t };
@@ -61,6 +61,6 @@ var UiSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
61
61
  }), null, 16, _hoisted_1);
62
62
  };
63
63
  }
64
- }), [["__scopeId", "data-v-1c74343f"]]);
64
+ }), [["__scopeId", "data-v-f5f5cd89"]]);
65
65
  //#endregion
66
66
  export { UiSpinner_default as t };
@@ -68,6 +68,6 @@ var UiTooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
68
68
  }), [createElementVNode("div", _hoisted_2, [renderSlot(_ctx.$slots, "default", {}, void 0, true)])], 16, _hoisted_1);
69
69
  };
70
70
  }
71
- }), [["__scopeId", "data-v-8f81f4b2"]]);
71
+ }), [["__scopeId", "data-v-0e272bf3"]]);
72
72
  //#endregion
73
73
  export { UiTooltip_default as t };