@threadlabs/looma 0.23.10 → 0.23.11

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.
@@ -36,6 +36,15 @@ const propValidityContract = {
36
36
  description: 'Allows values that do not match an authored option.',
37
37
  default: false,
38
38
  },
39
+ autoHighlight: {
40
+ type: { kind: 'terminal', name: 'keyword' },
41
+ required: false,
42
+ target: { attribute: 'autohighlight' },
43
+ description:
44
+ 'single highlights the only enabled authored suggestion while typing. Ambiguous results and an empty query stay unhighlighted. none preserves manual\n highlighting with the arrow keys.',
45
+ values: ['none', 'single'],
46
+ default: 'none',
47
+ },
39
48
  clearable: {
40
49
  type: { kind: 'terminal', name: 'boolean' },
41
50
  required: false,
@@ -206,6 +215,14 @@ const propValidityContract = {
206
215
  'Requires a value: adds an asterisk to the label, marks the input required for native form validation, and makes validation report "A value is required."\n when the field is left empty. In multiple mode a chosen item satisfies it, whatever is left in the input.',
207
216
  default: false,
208
217
  },
218
+ selectOnTab: {
219
+ type: { kind: 'terminal', name: 'boolean' },
220
+ required: false,
221
+ target: { attribute: 'selectontab' },
222
+ description:
223
+ 'Commits a highlighted authored suggestion on forward Tab, then lets focus advance normally. In multiple mode a selected suggestion is retained without\n duplication or removal. Shift+Tab does not commit, and Tab never chooses the create offer.',
224
+ default: false,
225
+ },
209
226
  selectedValues: {
210
227
  type: { kind: 'list', item: { kind: 'terminal', name: 'string' } },
211
228
  required: false,
@@ -241,6 +258,7 @@ const propValidityContract = {
241
258
  const props = defineProps({
242
259
  allowCreate: { type: null as unknown as PropType<boolean | null>, default: false },
243
260
  allowFreeText: { type: null as unknown as PropType<boolean | null>, default: false },
261
+ autoHighlight: { type: null as unknown as PropType<'none' | 'single' | null>, default: 'none' },
244
262
  clearable: { type: null as unknown as PropType<boolean | null>, default: false },
245
263
  disabled: { type: null as unknown as PropType<boolean | null>, default: false },
246
264
  disclosure: { type: null as unknown as PropType<boolean | null>, default: false },
@@ -278,6 +296,7 @@ const props = defineProps({
278
296
  query: { type: null as unknown as PropType<string | null>, default: null },
279
297
  readonly: { type: null as unknown as PropType<boolean | null>, default: false },
280
298
  required: { type: null as unknown as PropType<boolean | null>, default: false },
299
+ selectOnTab: { type: null as unknown as PropType<boolean | null>, default: false },
281
300
  selectedValues: { type: null as unknown as PropType<readonly (string)[] | null>, default: null },
282
301
  size: { type: null as unknown as PropType<'sm' | 'md' | 'lg' | null>, default: 'md' },
283
302
  tokenSeparators: { type: null as unknown as PropType<readonly (string)[] | null>, default: null },
@@ -286,6 +305,7 @@ const props = defineProps({
286
305
  const acceptedProps: Record<string, unknown> = {
287
306
  allowCreate: false,
288
307
  allowFreeText: false,
308
+ autoHighlight: 'none',
289
309
  clearable: false,
290
310
  disabled: false,
291
311
  disclosure: false,
@@ -303,6 +323,7 @@ const acceptedProps: Record<string, unknown> = {
303
323
  query: null,
304
324
  readonly: false,
305
325
  required: false,
326
+ selectOnTab: false,
306
327
  selectedValues: null,
307
328
  size: 'md',
308
329
  tokenSeparators: null,
@@ -323,6 +344,13 @@ const checkedProps = computed(() => ({
323
344
  'allowFreeText',
324
345
  acceptedProps,
325
346
  ) as boolean,
347
+ autoHighlight: checkedProp<'none' | 'single'>(
348
+ props['autoHighlight'],
349
+ { kind: 'terminal', name: 'keyword' },
350
+ false,
351
+ 'autoHighlight',
352
+ acceptedProps,
353
+ ) as 'none' | 'single',
326
354
  clearable: checkedProp<boolean>(
327
355
  props['clearable'],
328
356
  { kind: 'terminal', name: 'boolean' },
@@ -491,6 +519,13 @@ const checkedProps = computed(() => ({
491
519
  'required',
492
520
  acceptedProps,
493
521
  ) as boolean,
522
+ selectOnTab: checkedProp<boolean>(
523
+ props['selectOnTab'],
524
+ { kind: 'terminal', name: 'boolean' },
525
+ false,
526
+ 'selectOnTab',
527
+ acceptedProps,
528
+ ) as boolean,
494
529
  selectedValues: checkedProp<readonly (string)[]>(
495
530
  props['selectedValues'],
496
531
  { kind: 'list', item: { kind: 'terminal', name: 'string' } },
@@ -1271,6 +1306,7 @@ const { host, ready } = useComponentHost(() => import('../components/ui-combobox
1271
1306
  propNames: [
1272
1307
  'allowCreate',
1273
1308
  'allowFreeText',
1309
+ 'autoHighlight',
1274
1310
  'clearable',
1275
1311
  'disabled',
1276
1312
  'disclosure',
@@ -1288,6 +1324,7 @@ const { host, ready } = useComponentHost(() => import('../components/ui-combobox
1288
1324
  'query',
1289
1325
  'readonly',
1290
1326
  'required',
1327
+ 'selectOnTab',
1291
1328
  'selectedValues',
1292
1329
  'size',
1293
1330
  'tokenSeparators',
@@ -1402,6 +1439,7 @@ function uniqueKeys<T>(
1402
1439
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
1403
1440
  :data-allow-create="reflectedProp('allowCreate', 'allow-create', checkedProps.allowCreate, undefined, false)"
1404
1441
  :data-allow-free-text="reflectedProp('allowFreeText', 'allow-free-text', checkedProps.allowFreeText, undefined, false)"
1442
+ :data-auto-highlight="reflectedProp('autoHighlight', 'auto-highlight', checkedProps.autoHighlight, undefined, false)"
1405
1443
  :data-clearable="reflectedProp('clearable', 'clearable', checkedProps.clearable, undefined, false)"
1406
1444
  :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
1407
1445
  :data-disclosure="reflectedProp('disclosure', 'disclosure', checkedProps.disclosure, undefined, false)"
@@ -1419,6 +1457,7 @@ function uniqueKeys<T>(
1419
1457
  :data-query="reflectedProp('query', 'query', checkedProps.query, undefined, false)"
1420
1458
  :data-readonly="reflectedProp('readonly', 'readonly', checkedProps.readonly, undefined, false)"
1421
1459
  :data-required="reflectedProp('required', 'required', checkedProps.required, undefined, false)"
1460
+ :data-select-on-tab="reflectedProp('selectOnTab', 'select-on-tab', checkedProps.selectOnTab, undefined, false)"
1422
1461
  :data-selected-values="reflectedProp('selectedValues', 'selected-values', checkedProps.selectedValues, undefined, false)"
1423
1462
  :data-size="reflectedProp('size', 'size', checkedProps.size, undefined, false)"
1424
1463
  :data-token-separators="reflectedProp('tokenSeparators', 'token-separators', checkedProps.tokenSeparators, undefined, false)"
@@ -9,6 +9,7 @@ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock
9
9
  var _hoisted_1 = [
10
10
  "data-allow-create",
11
11
  "data-allow-free-text",
12
+ "data-auto-highlight",
12
13
  "data-clearable",
13
14
  "data-disabled",
14
15
  "data-disclosure",
@@ -26,6 +27,7 @@ var _hoisted_1 = [
26
27
  "data-query",
27
28
  "data-readonly",
28
29
  "data-required",
30
+ "data-select-on-tab",
29
31
  "data-selected-values",
30
32
  "data-size",
31
33
  "data-token-separators",
@@ -140,6 +142,10 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
140
142
  type: null,
141
143
  default: false
142
144
  },
145
+ autoHighlight: {
146
+ type: null,
147
+ default: "none"
148
+ },
143
149
  clearable: {
144
150
  type: null,
145
151
  default: false
@@ -208,6 +214,10 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
208
214
  type: null,
209
215
  default: false
210
216
  },
217
+ selectOnTab: {
218
+ type: null,
219
+ default: false
220
+ },
211
221
  selectedValues: {
212
222
  type: null,
213
223
  default: null
@@ -263,6 +273,17 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
263
273
  description: "Allows values that do not match an authored option.",
264
274
  default: false
265
275
  },
276
+ autoHighlight: {
277
+ type: {
278
+ kind: "terminal",
279
+ name: "keyword"
280
+ },
281
+ required: false,
282
+ target: { attribute: "autohighlight" },
283
+ description: "single highlights the only enabled authored suggestion while typing. Ambiguous results and an empty query stay unhighlighted. none preserves manual\n highlighting with the arrow keys.",
284
+ values: ["none", "single"],
285
+ default: "none"
286
+ },
266
287
  clearable: {
267
288
  type: {
268
289
  kind: "terminal",
@@ -531,6 +552,16 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
531
552
  description: "Requires a value: adds an asterisk to the label, marks the input required for native form validation, and makes validation report \"A value is required.\"\n when the field is left empty. In multiple mode a chosen item satisfies it, whatever is left in the input.",
532
553
  default: false
533
554
  },
555
+ selectOnTab: {
556
+ type: {
557
+ kind: "terminal",
558
+ name: "boolean"
559
+ },
560
+ required: false,
561
+ target: { attribute: "selectontab" },
562
+ description: "Commits a highlighted authored suggestion on forward Tab, then lets focus advance normally. In multiple mode a selected suggestion is retained without\n duplication or removal. Shift+Tab does not commit, and Tab never chooses the create offer.",
563
+ default: false
564
+ },
534
565
  selectedValues: {
535
566
  type: {
536
567
  kind: "list",
@@ -584,6 +615,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
584
615
  const acceptedProps = {
585
616
  allowCreate: false,
586
617
  allowFreeText: false,
618
+ autoHighlight: "none",
587
619
  clearable: false,
588
620
  disabled: false,
589
621
  disclosure: false,
@@ -601,6 +633,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
601
633
  query: null,
602
634
  readonly: false,
603
635
  required: false,
636
+ selectOnTab: false,
604
637
  selectedValues: null,
605
638
  size: "md",
606
639
  tokenSeparators: null,
@@ -615,6 +648,10 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
615
648
  kind: "terminal",
616
649
  name: "boolean"
617
650
  }, false, "allowFreeText", acceptedProps),
651
+ autoHighlight: checkedProp(props["autoHighlight"], {
652
+ kind: "terminal",
653
+ name: "keyword"
654
+ }, false, "autoHighlight", acceptedProps),
618
655
  clearable: checkedProp(props["clearable"], {
619
656
  kind: "terminal",
620
657
  name: "boolean"
@@ -781,6 +818,10 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
781
818
  kind: "terminal",
782
819
  name: "boolean"
783
820
  }, false, "required", acceptedProps),
821
+ selectOnTab: checkedProp(props["selectOnTab"], {
822
+ kind: "terminal",
823
+ name: "boolean"
824
+ }, false, "selectOnTab", acceptedProps),
784
825
  selectedValues: checkedProp(props["selectedValues"], {
785
826
  kind: "list",
786
827
  item: {
@@ -1063,6 +1104,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1063
1104
  propNames: [
1064
1105
  "allowCreate",
1065
1106
  "allowFreeText",
1107
+ "autoHighlight",
1066
1108
  "clearable",
1067
1109
  "disabled",
1068
1110
  "disclosure",
@@ -1080,6 +1122,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1080
1122
  "query",
1081
1123
  "readonly",
1082
1124
  "required",
1125
+ "selectOnTab",
1083
1126
  "selectedValues",
1084
1127
  "size",
1085
1128
  "tokenSeparators",
@@ -1176,6 +1219,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1176
1219
  return withDirectives((openBlock(), createElementBlock("div", mergeProps({ "data-component": "ui-combobox" }, nativeAttrs(_ctx.$attrs), {
1177
1220
  "data-allow-create": reflectedProp("allowCreate", "allow-create", checkedProps.value.allowCreate, void 0, false),
1178
1221
  "data-allow-free-text": reflectedProp("allowFreeText", "allow-free-text", checkedProps.value.allowFreeText, void 0, false),
1222
+ "data-auto-highlight": reflectedProp("autoHighlight", "auto-highlight", checkedProps.value.autoHighlight, void 0, false),
1179
1223
  "data-clearable": reflectedProp("clearable", "clearable", checkedProps.value.clearable, void 0, false),
1180
1224
  "data-disabled": reflectedProp("disabled", "disabled", checkedProps.value.disabled, void 0, false),
1181
1225
  "data-disclosure": reflectedProp("disclosure", "disclosure", checkedProps.value.disclosure, void 0, false),
@@ -1193,6 +1237,7 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1193
1237
  "data-query": reflectedProp("query", "query", checkedProps.value.query, void 0, false),
1194
1238
  "data-readonly": reflectedProp("readonly", "readonly", checkedProps.value.readonly, void 0, false),
1195
1239
  "data-required": reflectedProp("required", "required", checkedProps.value.required, void 0, false),
1240
+ "data-select-on-tab": reflectedProp("selectOnTab", "select-on-tab", checkedProps.value.selectOnTab, void 0, false),
1196
1241
  "data-selected-values": reflectedProp("selectedValues", "selected-values", checkedProps.value.selectedValues, void 0, false),
1197
1242
  "data-size": reflectedProp("size", "size", checkedProps.value.size, void 0, false),
1198
1243
  "data-token-separators": reflectedProp("tokenSeparators", "token-separators", checkedProps.value.tokenSeparators, void 0, false),
@@ -1413,6 +1458,6 @@ var UiCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
1413
1458
  }]]);
1414
1459
  };
1415
1460
  }
1416
- }), [["__scopeId", "data-v-a593ab08"]]);
1461
+ }), [["__scopeId", "data-v-8e9a00eb"]]);
1417
1462
  //#endregion
1418
1463
  export { UiCombobox_default as t };
@@ -1800,7 +1800,7 @@ input[data-v-cb5d05aa]:focus-visible {
1800
1800
  syntax: "*";
1801
1801
  inherits: false;
1802
1802
  }
1803
- [data-component~="ui-combobox"][data-v-a593ab08] {
1803
+ [data-component~="ui-combobox"][data-v-8e9a00eb] {
1804
1804
  /* Hooks do not inherit, so the parts below read them from the root. */
1805
1805
  --_ui-combobox-label-text: var(--ui-combobox-label-text);
1806
1806
  --_ui-combobox-label-font-size: var(--ui-combobox-label-font-size);
@@ -1825,20 +1825,20 @@ input[data-v-cb5d05aa]:focus-visible {
1825
1825
  color: var(--ui-text-primary);
1826
1826
  font: inherit;
1827
1827
  }
1828
- label[data-v-a593ab08] {
1828
+ label[data-v-8e9a00eb] {
1829
1829
  color: var(--_ui-combobox-label-text, var(--ui-text-primary));
1830
1830
  font-size: var(--_ui-combobox-label-font-size, var(--ui-font-size-sm));
1831
1831
  font-weight: 500;
1832
1832
  }
1833
1833
  /* The field and anything that annotates it sit on one row; the help button is beside the box,
1834
1834
  not inside it, because a control's box holds its value. */
1835
- .control[data-v-a593ab08] {
1835
+ .control[data-v-8e9a00eb] {
1836
1836
  display: flex;
1837
1837
  align-items: center;
1838
1838
  gap: var(--ui-space-2);
1839
1839
  min-inline-size: 0;
1840
1840
  }
1841
- .field[data-v-a593ab08] {
1841
+ .field[data-v-8e9a00eb] {
1842
1842
  flex: 1 1 auto;
1843
1843
  display: flex;
1844
1844
  min-inline-size: 0;
@@ -1850,19 +1850,19 @@ label[data-v-a593ab08] {
1850
1850
  border-color var(--ui-motion-fast) var(--ui-motion-ease),
1851
1851
  box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
1852
1852
  }
1853
- .field[data-v-a593ab08]:focus-within {
1853
+ .field[data-v-8e9a00eb]:focus-within {
1854
1854
  border-color: var(--ui-control-focus, var(--ui-accent-solid));
1855
1855
  box-shadow:
1856
1856
  var(--ui-control-inset),
1857
1857
  var(--ui-control-focus-halo-shadow);
1858
1858
  }
1859
- .entry[data-v-a593ab08] {
1859
+ .entry[data-v-8e9a00eb] {
1860
1860
  display: flex;
1861
1861
  flex: 1 1 auto;
1862
1862
  min-inline-size: 0;
1863
1863
  }
1864
1864
  /* A ghost icon button: the affordance is the mark, not a box around it. */
1865
- .help[data-v-a593ab08] {
1865
+ .help[data-v-8e9a00eb] {
1866
1866
  flex: none;
1867
1867
  display: inline-flex;
1868
1868
  align-items: center;
@@ -1879,28 +1879,28 @@ label[data-v-a593ab08] {
1879
1879
  background-color var(--ui-motion-fast) var(--ui-motion-ease),
1880
1880
  color var(--ui-motion-fast) var(--ui-motion-ease);
1881
1881
  }
1882
- .help[data-v-a593ab08]:hover:enabled,
1883
- .help[aria-expanded="true"][data-v-a593ab08] {
1882
+ .help[data-v-8e9a00eb]:hover:enabled,
1883
+ .help[aria-expanded="true"][data-v-8e9a00eb] {
1884
1884
  background: color-mix(in srgb, currentColor 8%, transparent);
1885
1885
  color: var(--ui-text-primary);
1886
1886
  }
1887
- .help[data-v-a593ab08]:focus-visible {
1887
+ .help[data-v-8e9a00eb]:focus-visible {
1888
1888
  outline: none;
1889
1889
  box-shadow: var(--ui-focus-halo);
1890
1890
  }
1891
- .help[data-v-a593ab08]:disabled {
1891
+ .help[data-v-8e9a00eb]:disabled {
1892
1892
  color: var(--ui-disabled-text);
1893
1893
  cursor: not-allowed;
1894
1894
  }
1895
- .help-icon[data-v-a593ab08] {
1895
+ .help-icon[data-v-8e9a00eb] {
1896
1896
  inline-size: var(--ui-icon-size-sm);
1897
1897
  block-size: var(--ui-icon-size-sm);
1898
1898
  }
1899
- input[data-v-a593ab08]::selection {
1899
+ input[data-v-8e9a00eb]::selection {
1900
1900
  background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
1901
1901
  color: inherit;
1902
1902
  }
1903
- input[data-v-a593ab08] {
1903
+ input[data-v-8e9a00eb] {
1904
1904
  appearance: none;
1905
1905
  width: 100%;
1906
1906
  min-inline-size: 0;
@@ -1916,20 +1916,20 @@ input[data-v-a593ab08] {
1916
1916
  margin: 0;
1917
1917
  outline: none;
1918
1918
  }
1919
- [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"][data-v-a593ab08] {
1919
+ [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"][data-v-8e9a00eb] {
1920
1920
  --_row: var(--ui-control-size-sm);
1921
1921
  }
1922
- [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"] input[data-v-a593ab08] {
1922
+ [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"] input[data-v-8e9a00eb] {
1923
1923
  min-block-size: calc(var(--_row) - 2px);
1924
1924
  padding: var(--ui-space-1) var(--ui-space-2);
1925
1925
  font-size: var(--ui-font-size-sm);
1926
1926
  }
1927
- [data-component~="ui-combobox"][data-ui-combobox-state~="size=lg"] input[data-v-a593ab08] {
1927
+ [data-component~="ui-combobox"][data-ui-combobox-state~="size=lg"] input[data-v-8e9a00eb] {
1928
1928
  min-block-size: calc(var(--ui-control-size-lg) - 2px);
1929
1929
  padding: var(--ui-space-3) var(--ui-space-4);
1930
1930
  font-size: var(--ui-font-size-md);
1931
1931
  }
1932
- button[data-v-a593ab08] {
1932
+ button[data-v-8e9a00eb] {
1933
1933
  appearance: none;
1934
1934
  display: inline-grid;
1935
1935
  place-items: center;
@@ -1944,36 +1944,36 @@ button[data-v-a593ab08] {
1944
1944
  padding: 0 var(--ui-space-1);
1945
1945
  cursor: pointer;
1946
1946
  }
1947
- .affordance-icon[data-v-a593ab08] {
1947
+ .affordance-icon[data-v-8e9a00eb] {
1948
1948
  display: block;
1949
1949
  inline-size: var(--ui-icon-size-sm);
1950
1950
  block-size: var(--ui-icon-size-sm);
1951
1951
  }
1952
- button[data-v-a593ab08]:hover:enabled {
1952
+ button[data-v-8e9a00eb]:hover:enabled {
1953
1953
  background: var(--ui-surface-muted);
1954
1954
  color: var(--ui-text-primary);
1955
1955
  }
1956
- button[data-v-a593ab08]:focus-visible {
1956
+ button[data-v-8e9a00eb]:focus-visible {
1957
1957
  outline: none;
1958
1958
  background: var(--ui-surface-muted);
1959
1959
  box-shadow: inset 0 0 0 var(--ui-focus-width)
1960
1960
  color-mix(in srgb, var(--ui-focus-ring) 45%, transparent);
1961
1961
  }
1962
- input[data-v-a593ab08]:disabled, button[data-v-a593ab08]:disabled {
1962
+ input[data-v-8e9a00eb]:disabled, button[data-v-8e9a00eb]:disabled {
1963
1963
  color: var(--ui-disabled-text);
1964
1964
  cursor: not-allowed;
1965
1965
  }
1966
- .field[data-v-a593ab08]:has(input:disabled) {
1966
+ .field[data-v-8e9a00eb]:has(input:disabled) {
1967
1967
  background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
1968
1968
  }
1969
- [data-component~="ui-combobox"][data-ui-combobox-state~="validationStatus=error"] .field[data-v-a593ab08],
1970
- [data-component~="ui-combobox"][data-ui-combobox-state~="invalid"] .field[data-v-a593ab08] {
1969
+ [data-component~="ui-combobox"][data-ui-combobox-state~="validationStatus=error"] .field[data-v-8e9a00eb],
1970
+ [data-component~="ui-combobox"][data-ui-combobox-state~="invalid"] .field[data-v-8e9a00eb] {
1971
1971
  border-color: var(
1972
1972
  --_ui-combobox-invalid-border,
1973
1973
  var(--ui-field-danger, var(--ui-danger-solid, var(--ui-accent-active)))
1974
1974
  );
1975
1975
  }
1976
- .popup[data-v-a593ab08] {
1976
+ .popup[data-v-8e9a00eb] {
1977
1977
  box-sizing: border-box;
1978
1978
  min-inline-size: 12rem;
1979
1979
  max-inline-size: calc(100vw - 1rem);
@@ -1994,46 +1994,46 @@ input[data-v-a593ab08]:disabled, button[data-v-a593ab08]:disabled {
1994
1994
  var(--ui-overlay-shadow, var(--ui-elevation-overlay, var(--ui-shadow-lg)))
1995
1995
  );
1996
1996
  }
1997
- [hidden][data-v-a593ab08] {
1997
+ [hidden][data-v-8e9a00eb] {
1998
1998
  display: none;
1999
1999
  }
2000
- .option[aria-disabled="true"] .primary[data-v-a593ab08],
2001
- .option[aria-disabled="true"] .secondary[data-v-a593ab08] {
2000
+ .option[aria-disabled="true"] .primary[data-v-8e9a00eb],
2001
+ .option[aria-disabled="true"] .secondary[data-v-8e9a00eb] {
2002
2002
  color: var(--ui-disabled-text);
2003
2003
  }
2004
- .primary[data-v-a593ab08] {
2004
+ .primary[data-v-8e9a00eb] {
2005
2005
  display: block;
2006
2006
  color: var(--_ui-combobox-option-text, inherit);
2007
2007
  font-weight: 500;
2008
2008
  }
2009
2009
  /* A row with a tag or a description: the label and its tag on one line, the description under them. */
2010
- .detail[data-v-a593ab08] {
2010
+ .detail[data-v-8e9a00eb] {
2011
2011
  display: grid;
2012
2012
  gap: var(--ui-space-0-5);
2013
2013
  min-inline-size: 0;
2014
2014
  }
2015
- .line[data-v-a593ab08] {
2015
+ .line[data-v-8e9a00eb] {
2016
2016
  display: flex;
2017
2017
  flex-wrap: wrap;
2018
2018
  align-items: center;
2019
2019
  gap: var(--ui-space-2);
2020
2020
  }
2021
- .description[data-v-a593ab08] {
2021
+ .description[data-v-8e9a00eb] {
2022
2022
  color: var(--ui-text-muted);
2023
2023
  font-size: var(--ui-font-size-sm);
2024
2024
  line-height: var(--ui-line-height-md);
2025
2025
  }
2026
- .message[data-v-a593ab08], .group[data-v-a593ab08] {
2026
+ .message[data-v-8e9a00eb], .group[data-v-8e9a00eb] {
2027
2027
  color: var(--_ui-combobox-message-text, var(--ui-text-secondary));
2028
2028
  font-weight: 400;
2029
2029
  font-size: var(--ui-font-size-sm);
2030
2030
  line-height: var(--ui-line-height-md);
2031
2031
  overflow-wrap: anywhere;
2032
2032
  }
2033
- .group[data-v-a593ab08], .popup .message[data-v-a593ab08] {
2033
+ .group[data-v-8e9a00eb], .popup .message[data-v-8e9a00eb] {
2034
2034
  padding: var(--ui-space-2) var(--ui-space-3);
2035
2035
  }
2036
- .sr-only[data-v-a593ab08] {
2036
+ .sr-only[data-v-8e9a00eb] {
2037
2037
  position: absolute;
2038
2038
  inline-size: 1px;
2039
2039
  block-size: 1px;
@@ -2042,45 +2042,45 @@ input[data-v-a593ab08]:disabled, button[data-v-a593ab08]:disabled {
2042
2042
  white-space: nowrap;
2043
2043
  }
2044
2044
  @media (pointer: coarse) {
2045
- button[data-v-a593ab08] {
2045
+ button[data-v-8e9a00eb] {
2046
2046
  min-inline-size: 2.75rem;
2047
2047
  min-block-size: 2.75rem;
2048
2048
  }
2049
2049
  /* Under touch a small field is still a touch-sized target, as a small button is, and keeps
2050
2050
  body-size text: below 16px, iOS zooms the page into the focused field. */
2051
- [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"][data-v-a593ab08] {
2051
+ [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"][data-v-8e9a00eb] {
2052
2052
  --_row: var(--ui-control-min-block-size);
2053
2053
  }
2054
- [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"] input[data-v-a593ab08] {
2054
+ [data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"] input[data-v-8e9a00eb] {
2055
2055
  font-size: inherit;
2056
2056
  }
2057
2057
  }
2058
2058
  @media (forced-colors: active) {
2059
- .field[data-v-a593ab08], .popup[data-v-a593ab08] {
2059
+ .field[data-v-8e9a00eb], .popup[data-v-8e9a00eb] {
2060
2060
  border-color: CanvasText;
2061
2061
  }
2062
- .option.active[data-v-a593ab08] {
2062
+ .option.active[data-v-8e9a00eb] {
2063
2063
  outline-color: Highlight;
2064
2064
  }
2065
2065
  }
2066
2066
 
2067
2067
  /* Multiple mode keeps one control height. Chips and the input scroll within the entry,
2068
2068
  while the clear and disclosure controls remain fixed at the end of the field. */
2069
- [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .field[data-v-a593ab08] {
2069
+ [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .field[data-v-8e9a00eb] {
2070
2070
  align-items: center;
2071
2071
  min-block-size: var(--_ui-combobox-item-min-block-size, 2.5rem);
2072
2072
  padding: var(--ui-space-1);
2073
2073
  }
2074
- [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .entry[data-v-a593ab08] {
2074
+ [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .entry[data-v-8e9a00eb] {
2075
2075
  align-items: center;
2076
2076
  gap: var(--ui-space-1);
2077
2077
  overflow-x: auto;
2078
2078
  scrollbar-width: none;
2079
2079
  }
2080
- [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .entry[data-v-a593ab08]::-webkit-scrollbar {
2080
+ [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] .entry[data-v-8e9a00eb]::-webkit-scrollbar {
2081
2081
  display: none;
2082
2082
  }
2083
- [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] input[data-v-a593ab08] {
2083
+ [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"] input[data-v-8e9a00eb] {
2084
2084
  flex: 1 0 var(--_ui-combobox-item-input-min-inline-size, 5rem);
2085
2085
  width: auto;
2086
2086
  min-block-size: 1.75rem;
@@ -2088,27 +2088,27 @@ button[data-v-a593ab08] {
2088
2088
  }
2089
2089
  /* Size variants keep their control height as selections are added. */
2090
2090
  [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"][data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"]
2091
- .field[data-v-a593ab08] {
2091
+ .field[data-v-8e9a00eb] {
2092
2092
  min-block-size: 0;
2093
2093
  padding: var(--ui-space-0-5);
2094
2094
  }
2095
2095
  [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"][data-component~="ui-combobox"][data-ui-combobox-state~="size=sm"]
2096
- input[data-v-a593ab08] {
2096
+ input[data-v-8e9a00eb] {
2097
2097
  min-block-size: calc(var(--_row) - 2 * var(--ui-border-width) - 2 * var(--ui-space-0-5));
2098
2098
  padding: 0 var(--ui-space-1);
2099
2099
  }
2100
2100
  /* A large multiple field starts at the large control height, as sm starts at the small one. */
2101
2101
  [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"][data-component~="ui-combobox"][data-ui-combobox-state~="size=lg"]
2102
- .field[data-v-a593ab08] {
2102
+ .field[data-v-8e9a00eb] {
2103
2103
  min-block-size: 0;
2104
2104
  }
2105
2105
  [data-component~="ui-combobox"][data-ui-combobox-state~="multiple"][data-component~="ui-combobox"][data-ui-combobox-state~="size=lg"]
2106
- input[data-v-a593ab08] {
2106
+ input[data-v-8e9a00eb] {
2107
2107
  min-block-size: calc(
2108
2108
  var(--ui-control-size-lg) - 2 * var(--ui-border-width) - 2 * var(--ui-space-1)
2109
2109
  );
2110
2110
  }
2111
- .item[data-v-a593ab08] {
2111
+ .item[data-v-8e9a00eb] {
2112
2112
  appearance: none;
2113
2113
  display: inline-flex;
2114
2114
  flex: none;
@@ -2123,16 +2123,16 @@ button[data-v-a593ab08] {
2123
2123
  font: inherit;
2124
2124
  cursor: default;
2125
2125
  }
2126
- .item[data-v-a593ab08]:focus-visible {
2126
+ .item[data-v-8e9a00eb]:focus-visible {
2127
2127
  outline: var(--ui-focus-width) solid var(--ui-focus-ring);
2128
2128
  outline-offset: var(--ui-border-width);
2129
2129
  }
2130
- .item[data-v-a593ab08]:disabled {
2130
+ .item[data-v-8e9a00eb]:disabled {
2131
2131
  color: var(--ui-disabled-text);
2132
2132
  }
2133
2133
 
2134
2134
  /* A component that sets its display still honours the hidden attribute on its root. */
2135
- [data-component~="ui-combobox"][hidden][data-v-a593ab08] {
2135
+ [data-component~="ui-combobox"][hidden][data-v-8e9a00eb] {
2136
2136
  display: none;
2137
2137
  }
2138
2138