@vuetify/nightly 3.9.0-beta.1-dev.2025-07-05 → 3.9.0-dev.2025-07-08

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 (77) hide show
  1. package/CHANGELOG.md +3 -117
  2. package/dist/json/attributes.json +3156 -3120
  3. package/dist/json/importMap-labs.json +12 -12
  4. package/dist/json/importMap.json +196 -196
  5. package/dist/json/tags.json +9 -0
  6. package/dist/json/web-types.json +6143 -6054
  7. package/dist/vuetify-labs.cjs +124 -32
  8. package/dist/vuetify-labs.css +4807 -4750
  9. package/dist/vuetify-labs.d.ts +281 -186
  10. package/dist/vuetify-labs.esm.js +124 -32
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +124 -32
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.cjs +123 -31
  15. package/dist/vuetify.cjs.map +1 -1
  16. package/dist/vuetify.css +4212 -4155
  17. package/dist/vuetify.d.ts +281 -186
  18. package/dist/vuetify.esm.js +123 -31
  19. package/dist/vuetify.esm.js.map +1 -1
  20. package/dist/vuetify.js +123 -31
  21. package/dist/vuetify.js.map +1 -1
  22. package/dist/vuetify.min.css +2 -2
  23. package/dist/vuetify.min.js +1083 -1079
  24. package/dist/vuetify.min.js.map +1 -1
  25. package/lib/components/VAutocomplete/VAutocomplete.d.ts +39 -14
  26. package/lib/components/VAutocomplete/VAutocomplete.js +2 -2
  27. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  28. package/lib/components/VCombobox/VCombobox.d.ts +39 -14
  29. package/lib/components/VCombobox/VCombobox.js +2 -2
  30. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  31. package/lib/components/VDataIterator/composables/items.d.ts +2 -1
  32. package/lib/components/VDataIterator/composables/items.js.map +1 -1
  33. package/lib/components/VDataTable/types.d.ts +1 -1
  34. package/lib/components/VDataTable/types.js.map +1 -1
  35. package/lib/components/VDatePicker/VDatePicker.js +2 -1
  36. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  37. package/lib/components/VList/VList.d.ts +24 -27
  38. package/lib/components/VList/VList.js +0 -4
  39. package/lib/components/VList/VList.js.map +1 -1
  40. package/lib/components/VSelect/VSelect.d.ts +58 -22
  41. package/lib/components/VSelect/VSelect.js +2 -2
  42. package/lib/components/VSelect/VSelect.js.map +1 -1
  43. package/lib/components/VTreeview/VTreeview.d.ts +229 -167
  44. package/lib/components/VTreeview/VTreeview.js +7 -3
  45. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  46. package/lib/components/VTreeview/VTreeviewChildren.d.ts +81 -10
  47. package/lib/components/VTreeview/VTreeviewChildren.js +50 -11
  48. package/lib/components/VTreeview/VTreeviewChildren.js.map +1 -1
  49. package/lib/components/VTreeview/VTreeviewItem.css +57 -0
  50. package/lib/components/VTreeview/VTreeviewItem.d.ts +119 -94
  51. package/lib/components/VTreeview/VTreeviewItem.js +13 -3
  52. package/lib/components/VTreeview/VTreeviewItem.js.map +1 -1
  53. package/lib/components/VTreeview/VTreeviewItem.sass +60 -0
  54. package/lib/components/VTreeview/_variables.scss +15 -0
  55. package/lib/composables/filter.d.ts +1 -0
  56. package/lib/composables/filter.js +1 -1
  57. package/lib/composables/filter.js.map +1 -1
  58. package/lib/composables/list-items.d.ts +14 -1
  59. package/lib/composables/list-items.js +9 -3
  60. package/lib/composables/list-items.js.map +1 -1
  61. package/lib/entry-bundler.js +1 -1
  62. package/lib/entry-bundler.js.map +1 -1
  63. package/lib/framework.d.ts +66 -65
  64. package/lib/framework.js +1 -1
  65. package/lib/framework.js.map +1 -1
  66. package/lib/labs/VCalendar/VCalendar.js +1 -1
  67. package/lib/labs/VCalendar/VCalendar.js.map +1 -1
  68. package/lib/util/helpers.d.ts +3 -0
  69. package/lib/util/helpers.js +4 -0
  70. package/lib/util/helpers.js.map +1 -1
  71. package/lib/util/indentLines.d.ts +17 -0
  72. package/lib/util/indentLines.js +34 -0
  73. package/lib/util/indentLines.js.map +1 -0
  74. package/lib/util/index.d.ts +1 -0
  75. package/lib/util/index.js +1 -0
  76. package/lib/util/index.js.map +1 -1
  77. package/package.json +1 -1
@@ -17,6 +17,7 @@ export declare const makeSelectProps: <Defaults extends {
17
17
  itemValue?: unknown;
18
18
  itemChildren?: unknown;
19
19
  itemProps?: unknown;
20
+ itemType?: unknown;
20
21
  returnObject?: unknown;
21
22
  valueComparator?: unknown;
22
23
  chips?: unknown;
@@ -92,6 +93,16 @@ export declare const makeSelectProps: <Defaults extends {
92
93
  type: PropType<unknown extends Defaults["itemProps"] ? SelectItemKey : SelectItemKey | Defaults["itemProps"]>;
93
94
  default: unknown extends Defaults["itemProps"] ? SelectItemKey : NonNullable<SelectItemKey> | Defaults["itemProps"];
94
95
  };
96
+ itemType: unknown extends Defaults["itemType"] ? {
97
+ type: PropType<SelectItemKey>;
98
+ default: string;
99
+ } : Omit<{
100
+ type: PropType<SelectItemKey>;
101
+ default: string;
102
+ }, "type" | "default"> & {
103
+ type: PropType<unknown extends Defaults["itemType"] ? SelectItemKey : SelectItemKey | Defaults["itemType"]>;
104
+ default: unknown extends Defaults["itemType"] ? SelectItemKey : NonNullable<SelectItemKey> | Defaults["itemType"];
105
+ };
95
106
  returnObject: unknown extends Defaults["returnObject"] ? BooleanConstructor : {
96
107
  type: PropType<unknown extends Defaults["returnObject"] ? boolean : boolean | Defaults["returnObject"]>;
97
108
  default: unknown extends Defaults["returnObject"] ? boolean : boolean | Defaults["returnObject"];
@@ -163,7 +174,7 @@ export declare const makeSelectProps: <Defaults extends {
163
174
  activatable: boolean;
164
175
  selectable: boolean;
165
176
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
166
- itemType: string;
177
+ itemType: SelectItemKey;
167
178
  }> & Omit<{
168
179
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
169
180
  nav: boolean;
@@ -181,7 +192,7 @@ export declare const makeSelectProps: <Defaults extends {
181
192
  activatable: boolean;
182
193
  selectable: boolean;
183
194
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
184
- itemType: string;
195
+ itemType: SelectItemKey;
185
196
  height?: string | number | undefined;
186
197
  width?: string | number | undefined;
187
198
  border?: string | number | boolean | undefined;
@@ -328,7 +339,7 @@ export declare const makeSelectProps: <Defaults extends {
328
339
  activatable: boolean;
329
340
  selectable: boolean;
330
341
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
331
- itemType: string;
342
+ itemType: SelectItemKey;
332
343
  }> & Omit<{
333
344
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
334
345
  nav: boolean;
@@ -346,7 +357,7 @@ export declare const makeSelectProps: <Defaults extends {
346
357
  activatable: boolean;
347
358
  selectable: boolean;
348
359
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
349
- itemType: string;
360
+ itemType: SelectItemKey;
350
361
  height?: string | number | undefined;
351
362
  width?: string | number | undefined;
352
363
  border?: string | number | boolean | undefined;
@@ -494,7 +505,7 @@ export declare const makeSelectProps: <Defaults extends {
494
505
  activatable: boolean;
495
506
  selectable: boolean;
496
507
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
497
- itemType: string;
508
+ itemType: SelectItemKey;
498
509
  }> & Omit<{
499
510
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
500
511
  nav: boolean;
@@ -512,7 +523,7 @@ export declare const makeSelectProps: <Defaults extends {
512
523
  activatable: boolean;
513
524
  selectable: boolean;
514
525
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
515
- itemType: string;
526
+ itemType: SelectItemKey;
516
527
  height?: string | number | undefined;
517
528
  width?: string | number | undefined;
518
529
  border?: string | number | boolean | undefined;
@@ -659,7 +670,7 @@ export declare const makeSelectProps: <Defaults extends {
659
670
  activatable: boolean;
660
671
  selectable: boolean;
661
672
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
662
- itemType: string;
673
+ itemType: SelectItemKey;
663
674
  }> & Omit<{
664
675
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
665
676
  nav: boolean;
@@ -677,7 +688,7 @@ export declare const makeSelectProps: <Defaults extends {
677
688
  activatable: boolean;
678
689
  selectable: boolean;
679
690
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
680
- itemType: string;
691
+ itemType: SelectItemKey;
681
692
  height?: string | number | undefined;
682
693
  width?: string | number | undefined;
683
694
  border?: string | number | boolean | undefined;
@@ -1770,6 +1781,7 @@ export declare const makeVSelectProps: <Defaults extends {
1770
1781
  itemValue?: unknown;
1771
1782
  itemChildren?: unknown;
1772
1783
  itemProps?: unknown;
1784
+ itemType?: unknown;
1773
1785
  returnObject?: unknown;
1774
1786
  valueComparator?: unknown;
1775
1787
  chips?: unknown;
@@ -2237,6 +2249,16 @@ export declare const makeVSelectProps: <Defaults extends {
2237
2249
  type: PropType<unknown extends Defaults["itemProps"] ? SelectItemKey : SelectItemKey | Defaults["itemProps"]>;
2238
2250
  default: unknown extends Defaults["itemProps"] ? SelectItemKey : NonNullable<SelectItemKey> | Defaults["itemProps"];
2239
2251
  };
2252
+ itemType: unknown extends Defaults["itemType"] ? {
2253
+ type: PropType<SelectItemKey>;
2254
+ default: string;
2255
+ } : Omit<{
2256
+ type: PropType<SelectItemKey>;
2257
+ default: string;
2258
+ }, "type" | "default"> & {
2259
+ type: PropType<unknown extends Defaults["itemType"] ? SelectItemKey : SelectItemKey | Defaults["itemType"]>;
2260
+ default: unknown extends Defaults["itemType"] ? SelectItemKey : NonNullable<SelectItemKey> | Defaults["itemType"];
2261
+ };
2240
2262
  returnObject: unknown extends Defaults["returnObject"] ? BooleanConstructor : {
2241
2263
  type: PropType<unknown extends Defaults["returnObject"] ? boolean : boolean | Defaults["returnObject"]>;
2242
2264
  default: unknown extends Defaults["returnObject"] ? boolean : boolean | Defaults["returnObject"];
@@ -2308,7 +2330,7 @@ export declare const makeVSelectProps: <Defaults extends {
2308
2330
  activatable: boolean;
2309
2331
  selectable: boolean;
2310
2332
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2311
- itemType: string;
2333
+ itemType: SelectItemKey;
2312
2334
  }> & Omit<{
2313
2335
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
2314
2336
  nav: boolean;
@@ -2326,7 +2348,7 @@ export declare const makeVSelectProps: <Defaults extends {
2326
2348
  activatable: boolean;
2327
2349
  selectable: boolean;
2328
2350
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2329
- itemType: string;
2351
+ itemType: SelectItemKey;
2330
2352
  height?: string | number | undefined;
2331
2353
  width?: string | number | undefined;
2332
2354
  border?: string | number | boolean | undefined;
@@ -2473,7 +2495,7 @@ export declare const makeVSelectProps: <Defaults extends {
2473
2495
  activatable: boolean;
2474
2496
  selectable: boolean;
2475
2497
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2476
- itemType: string;
2498
+ itemType: SelectItemKey;
2477
2499
  }> & Omit<{
2478
2500
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
2479
2501
  nav: boolean;
@@ -2491,7 +2513,7 @@ export declare const makeVSelectProps: <Defaults extends {
2491
2513
  activatable: boolean;
2492
2514
  selectable: boolean;
2493
2515
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2494
- itemType: string;
2516
+ itemType: SelectItemKey;
2495
2517
  height?: string | number | undefined;
2496
2518
  width?: string | number | undefined;
2497
2519
  border?: string | number | boolean | undefined;
@@ -2639,7 +2661,7 @@ export declare const makeVSelectProps: <Defaults extends {
2639
2661
  activatable: boolean;
2640
2662
  selectable: boolean;
2641
2663
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2642
- itemType: string;
2664
+ itemType: SelectItemKey;
2643
2665
  }> & Omit<{
2644
2666
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
2645
2667
  nav: boolean;
@@ -2657,7 +2679,7 @@ export declare const makeVSelectProps: <Defaults extends {
2657
2679
  activatable: boolean;
2658
2680
  selectable: boolean;
2659
2681
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2660
- itemType: string;
2682
+ itemType: SelectItemKey;
2661
2683
  height?: string | number | undefined;
2662
2684
  width?: string | number | undefined;
2663
2685
  border?: string | number | boolean | undefined;
@@ -2804,7 +2826,7 @@ export declare const makeVSelectProps: <Defaults extends {
2804
2826
  activatable: boolean;
2805
2827
  selectable: boolean;
2806
2828
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2807
- itemType: string;
2829
+ itemType: SelectItemKey;
2808
2830
  }> & Omit<{
2809
2831
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
2810
2832
  nav: boolean;
@@ -2822,7 +2844,7 @@ export declare const makeVSelectProps: <Defaults extends {
2822
2844
  activatable: boolean;
2823
2845
  selectable: boolean;
2824
2846
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
2825
- itemType: string;
2847
+ itemType: SelectItemKey;
2826
2848
  height?: string | number | undefined;
2827
2849
  width?: string | number | undefined;
2828
2850
  border?: string | number | boolean | undefined;
@@ -3882,6 +3904,7 @@ export declare const VSelect: {
3882
3904
  hideSpinButtons: boolean;
3883
3905
  persistentHint: boolean;
3884
3906
  itemChildren: SelectItemKey;
3907
+ itemType: SelectItemKey;
3885
3908
  clearable: boolean;
3886
3909
  persistentClear: boolean;
3887
3910
  singleLine: boolean;
@@ -3948,7 +3971,7 @@ export declare const VSelect: {
3948
3971
  activatable: boolean;
3949
3972
  selectable: boolean;
3950
3973
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
3951
- itemType: string;
3974
+ itemType: SelectItemKey;
3952
3975
  }> & Omit<{
3953
3976
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
3954
3977
  nav: boolean;
@@ -3966,7 +3989,7 @@ export declare const VSelect: {
3966
3989
  activatable: boolean;
3967
3990
  selectable: boolean;
3968
3991
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
3969
- itemType: string;
3992
+ itemType: SelectItemKey;
3970
3993
  height?: string | number | undefined;
3971
3994
  width?: string | number | undefined;
3972
3995
  border?: string | number | boolean | undefined;
@@ -6298,6 +6321,7 @@ export declare const VSelect: {
6298
6321
  hideSpinButtons: boolean;
6299
6322
  persistentHint: boolean;
6300
6323
  itemChildren: SelectItemKey;
6324
+ itemType: SelectItemKey;
6301
6325
  clearable: boolean;
6302
6326
  persistentClear: boolean;
6303
6327
  singleLine: boolean;
@@ -6392,6 +6416,7 @@ export declare const VSelect: {
6392
6416
  hideSpinButtons: boolean;
6393
6417
  persistentHint: boolean;
6394
6418
  itemChildren: SelectItemKey;
6419
+ itemType: SelectItemKey;
6395
6420
  clearable: boolean;
6396
6421
  persistentClear: boolean;
6397
6422
  singleLine: boolean;
@@ -6458,7 +6483,7 @@ export declare const VSelect: {
6458
6483
  activatable: boolean;
6459
6484
  selectable: boolean;
6460
6485
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
6461
- itemType: string;
6486
+ itemType: SelectItemKey;
6462
6487
  }> & Omit<{
6463
6488
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
6464
6489
  nav: boolean;
@@ -6476,7 +6501,7 @@ export declare const VSelect: {
6476
6501
  activatable: boolean;
6477
6502
  selectable: boolean;
6478
6503
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
6479
- itemType: string;
6504
+ itemType: SelectItemKey;
6480
6505
  height?: string | number | undefined;
6481
6506
  width?: string | number | undefined;
6482
6507
  border?: string | number | boolean | undefined;
@@ -8804,6 +8829,7 @@ export declare const VSelect: {
8804
8829
  hideSpinButtons: boolean;
8805
8830
  persistentHint: boolean;
8806
8831
  itemChildren: SelectItemKey;
8832
+ itemType: SelectItemKey;
8807
8833
  clearable: boolean;
8808
8834
  persistentClear: boolean;
8809
8835
  singleLine: boolean;
@@ -8855,6 +8881,7 @@ export declare const VSelect: {
8855
8881
  hideSpinButtons: boolean;
8856
8882
  persistentHint: boolean;
8857
8883
  itemChildren: SelectItemKey;
8884
+ itemType: SelectItemKey;
8858
8885
  clearable: boolean;
8859
8886
  persistentClear: boolean;
8860
8887
  singleLine: boolean;
@@ -8921,7 +8948,7 @@ export declare const VSelect: {
8921
8948
  activatable: boolean;
8922
8949
  selectable: boolean;
8923
8950
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
8924
- itemType: string;
8951
+ itemType: SelectItemKey;
8925
8952
  }> & Omit<{
8926
8953
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
8927
8954
  nav: boolean;
@@ -8939,7 +8966,7 @@ export declare const VSelect: {
8939
8966
  activatable: boolean;
8940
8967
  selectable: boolean;
8941
8968
  openStrategy: import("../../composables/nested/nested.js").OpenStrategyProp;
8942
- itemType: string;
8969
+ itemType: SelectItemKey;
8943
8970
  height?: string | number | undefined;
8944
8971
  width?: string | number | undefined;
8945
8972
  border?: string | number | boolean | undefined;
@@ -11271,6 +11298,7 @@ export declare const VSelect: {
11271
11298
  hideSpinButtons: boolean;
11272
11299
  persistentHint: boolean;
11273
11300
  itemChildren: SelectItemKey;
11301
+ itemType: SelectItemKey;
11274
11302
  clearable: boolean;
11275
11303
  persistentClear: boolean;
11276
11304
  singleLine: boolean;
@@ -11508,6 +11536,10 @@ export declare const VSelect: {
11508
11536
  type: PropType<SelectItemKey>;
11509
11537
  default: string;
11510
11538
  };
11539
+ itemType: {
11540
+ type: PropType<SelectItemKey>;
11541
+ default: string;
11542
+ };
11511
11543
  returnObject: BooleanConstructor;
11512
11544
  valueComparator: PropType<typeof deepEqual>;
11513
11545
  chips: BooleanConstructor;
@@ -11691,6 +11723,10 @@ export declare const VSelect: {
11691
11723
  type: PropType<SelectItemKey>;
11692
11724
  default: string;
11693
11725
  };
11726
+ itemType: {
11727
+ type: PropType<SelectItemKey>;
11728
+ default: string;
11729
+ };
11694
11730
  returnObject: BooleanConstructor;
11695
11731
  valueComparator: PropType<typeof deepEqual>;
11696
11732
  chips: BooleanConstructor;
@@ -364,7 +364,7 @@ export const VSelect = genericComponent()({
364
364
  key: item.value,
365
365
  onClick: () => select(item, null)
366
366
  });
367
- if (item.raw.type === 'divider') {
367
+ if (item.type === 'divider') {
368
368
  return slots.divider?.({
369
369
  props: item.raw,
370
370
  index
@@ -372,7 +372,7 @@ export const VSelect = genericComponent()({
372
372
  "key": `divider-${index}`
373
373
  }), null);
374
374
  }
375
- if (item.raw.type === 'subheader') {
375
+ if (item.type === 'subheader') {
376
376
  return slots.subheader?.({
377
377
  props: item.raw,
378
378
  index
@@ -1 +1 @@
1
- {"version":3,"file":"VSelect.js","names":["VDialogTransition","VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VDivider","VIcon","VList","VListItem","VListSubheader","VMenu","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useForm","forwardRefs","IconValue","makeItemsProps","useItems","useLocale","useProxiedModel","makeTransitionProps","computed","mergeProps","nextTick","ref","shallowRef","toRef","watch","camelizeProps","checkPrintable","deepEqual","ensureValidVNode","genericComponent","IN_BROWSER","matchesSelector","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","closeText","type","String","default","openText","eager","hideNoData","hideSelected","listProps","Object","menu","menuIcon","menuProps","multiple","noDataText","openOnClear","itemColor","noAutoScroll","itemChildren","makeVSelectProps","modelValue","role","transition","component","VSelect","name","props","emits","focused","value","ue","setup","_ref","slots","t","vTextFieldRef","vMenuRef","vVirtualScrollRef","items","transformIn","transformOut","model","v","transformed","counterValue","length","form","selectedValues","map","selection","isFocused","keyboardLookupPrefix","keyboardLookupIndex","keyboardLookupLastTime","displayItems","filter","item","some","s","valueComparator","menuDisabled","isReadonly","isDisabled","_menu","get","set","ΨopenChildren","size","label","computedMenuProps","activatorProps","listRef","listEvents","onClear","e","onMousedownControl","onListKeydown","onKeydown","key","includes","preventDefault","focus","KEYBOARD_LOOKUP_THRESHOLD","now","performance","toLowerCase","findItem","result","findItemBase","at","slice","i","_item","title","startsWith","undefined","index","select","arguments","disabled","findIndex","add","splice","onBlur","$el","contains","relatedTarget","onAfterEnter","calculateVisibleItems","onAfterLeave","onFocusin","onModelUpdate","find","window","requestAnimationFrame","scrollToIndex","newVal","oldVal","hasChips","chip","hasList","isDirty","textFieldProps","filterProps","placeholder","persistentPlaceholder","_createVNode","_mergeProps","join","$event","externalValue","class","style","_createElementVNode","_Fragment","color","_ref2","itemRef","camelizedProps","itemProps","onClick","raw","divider","subheader","prepend","_ref3","isSelected","prependAvatar","prependIcon","onChipClose","stopPropagation","slotProps","onMousedown","hasSlot","slotContent","closable","text","_createTextVNode","append-inner","_len","args","Array","_key","fieldIconColor"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from './useScrolling'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n camelizeProps,\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { Component, PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = [T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? readonly Val<T, ReturnObject>[]\n : Val<T, ReturnObject> | null\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n closeText: {\n type: String,\n default: '$vuetify.close',\n },\n openText: {\n type: String,\n default: '$vuetify.open',\n },\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n listProps: {\n type: Object as PropType<VList['$props']>,\n },\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType<VMenu['$props']>,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n itemColor: String,\n noAutoScroll: Boolean,\n\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VSelect = genericComponent<new <\n T extends readonly any[],\n Item = ItemType<T>,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value<Item, ReturnObject, Multiple> = Value<Item, ReturnObject, Multiple>\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey<ItemType<T>>\n itemValue?: SelectItemKey<ItemType<T>>\n itemProps?: SelectItemKey<ItemType<T>>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit<VInputSlots & VFieldSlots, 'default'> & {\n item: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n chip: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n selection: { item: ListItem<Item>, index: number }\n subheader: { props: Record<string, unknown>, index: number }\n divider: { props: Record<string, unknown>, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (ue: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref<VTextField>()\n const vMenuRef = ref<VMenu>()\n const vVirtualScrollRef = ref<VVirtualScroll>()\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupIndex = -1\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)))\n }\n return items.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const label = toRef(() => menu.value ? props.closeText : props.openText)\n\n const computedMenuProps = computed(() => {\n return {\n ...props.menuProps,\n activatorProps: {\n ...(props.menuProps?.activatorProps || {}),\n 'aria-haspopup': 'listbox', // Set aria-haspopup to 'listbox'\n },\n }\n })\n\n const listRef = ref<VList>()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e)) {\n onKeydown(e)\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (!e.key || form.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n\n // html select hotkeys\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n\n if (!checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n keyboardLookupIndex = -1\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const items = displayItems.value\n function findItem () {\n let result = findItemBase()\n if (result) return result\n\n if (keyboardLookupPrefix.at(-1) === keyboardLookupPrefix.at(-2)) {\n // No matches but we have a repeated letter, try the next item with that prefix\n keyboardLookupPrefix = keyboardLookupPrefix.slice(0, -1)\n result = findItemBase()\n if (result) return result\n }\n\n // Still nothing, wrap around to the top\n keyboardLookupIndex = -1\n result = findItemBase()\n if (result) return result\n\n // Still nothing, try just the new letter\n keyboardLookupPrefix = e.key.toLowerCase()\n return findItemBase()\n }\n function findItemBase () {\n for (let i = keyboardLookupIndex + 1; i < items.length; i++) {\n const _item = items[i]\n if (_item.title.toLowerCase().startsWith(keyboardLookupPrefix)) {\n return [_item, i] as const\n }\n }\n return undefined\n }\n\n const result = findItem()\n if (!result) return\n\n const [item, index] = result\n keyboardLookupIndex = index\n listRef.value?.focus(index)\n if (!props.multiple) {\n model.value = [item]\n }\n }\n\n /** @param set - null means toggle */\n function select (item: ListItem, set: boolean | null = true) {\n if (item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n\n nextTick(() => {\n menu.value = false\n })\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n function onModelUpdate (v: any) {\n if (v == null) model.value = []\n else if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === v)\n if (item) {\n select(item)\n }\n } else if (vTextFieldRef.value) {\n vTextFieldRef.value.value = ''\n }\n }\n\n watch(menu, () => {\n if (!props.hideSelected && menu.value && model.value.length) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && !props.noAutoScroll && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(() => props.items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n const placeholder = isDirty || (\n !isFocused.value &&\n props.label &&\n !props.persistentPlaceholder\n ) ? undefined : props.placeholder\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n modelValue={ model.value.map(v => v.props.value).join(', ') }\n onUpdate:modelValue={ onModelUpdate }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n 'v-select--selection-slot': !!slots.selection,\n },\n props.class,\n ]}\n style={ props.style }\n inputmode=\"none\"\n placeholder={ placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n aria-label={ t(label.value) }\n title={ t(label.value) }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-select__content\"\n disabled={ menuDisabled.value }\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n transition={ props.transition }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n { ...computedMenuProps.value }\n >\n { hasList && (\n <VList\n ref={ listRef }\n selected={ selectedValues.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n tabindex=\"-1\"\n aria-live=\"polite\"\n aria-label={ `${props.label}-list` }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem key=\"no-data\" title={ t(props.noDataText) } />\n ))}\n\n <VVirtualScroll ref={ vVirtualScrollRef } renderless items={ displayItems.value } itemKey=\"value\">\n { ({ item, index, itemRef }) => {\n const camelizedProps = camelizeProps(item.props)\n\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n onClick: () => select(item, null),\n })\n\n if (item.raw.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n <VDivider { ...item.props } key={ `divider-${index}` } />\n )\n }\n\n if (item.raw.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n <VListSubheader { ...item.props } key={ `subheader-${index}` } />\n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n <VListItem { ...itemProps } role=\"option\">\n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n <VCheckboxBtn\n key={ item.value }\n modelValue={ isSelected }\n ripple={ false }\n tabindex=\"-1\"\n />\n ) : undefined }\n\n { camelizedProps.prependAvatar && (\n <VAvatar image={ camelizedProps.prependAvatar } />\n )}\n\n { camelizedProps.prependIcon && (\n <VIcon icon={ camelizedProps.prependIcon } />\n )}\n </>\n ),\n }}\n </VListItem>\n )\n }}\n </VVirtualScroll>\n\n { slots['append-item']?.() }\n </VList>\n )}\n </VMenu>\n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\n\n const hasSlot = hasChips ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n <div key={ item.value } class=\"v-select__selection\">\n { hasChips ? (\n !slots.chip ? (\n <VChip\n key=\"chip\"\n closable={ props.closableChips }\n size=\"small\"\n text={ item.title }\n disabled={ item.props.disabled }\n { ...slotProps }\n />\n ) : (\n <VDefaultsProvider\n key=\"chip-defaults\"\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: item.title,\n },\n }}\n >\n { slotContent }\n </VDefaultsProvider>\n )\n ) : (\n slotContent ?? (\n <span class=\"v-select__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-select__selection-comma\">,</span>\n )}\n </span>\n )\n )}\n </div>\n )\n })}\n </>\n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { props.menuIcon ? (\n <VIcon\n class=\"v-select__menu-icon\"\n color={ vTextFieldRef.value?.fieldIconColor }\n icon={ props.menuIcon }\n />\n ) : undefined }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n isFocused,\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,iBAAiB;AAAA,SACjBC,OAAO;AAAA,SACPC,YAAY;AAAA,SACZC,KAAK;AAAA,SACLC,iBAAiB;AAAA,SACjBC,QAAQ;AAAA,SACRC,KAAK;AAAA,SACLC,KAAK,EAAEC,SAAS,EAAEC,cAAc;AAAA,SAChCC,KAAK;AAAA,SACLC,mBAAmB,EAAEC,UAAU;AAAA,SAC/BC,cAAc,sCAEvB;AAAA,SACSC,YAAY;AAAA,SACZC,OAAO;AAAA,SACPC,WAAW;AAAA,SACXC,SAAS;AAAA,SACTC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,SAAS;AAAA,SACTC,eAAe;AAAA,SACfC,mBAAmB,2CAE5B;AACA,SAASC,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,GAAG,EAAEC,UAAU,EAAEC,KAAK,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAEjFC,aAAa,EACbC,cAAc,EACdC,SAAS,EACTC,gBAAgB,EAChBC,gBAAgB,EAChBC,UAAU,EACVC,eAAe,EACfC,IAAI,EACJC,YAAY,EACZC,SAAS,EACTC,WAAW,+BAGb;AAkBA,OAAO,MAAMC,eAAe,GAAGH,YAAY,CAAC;EAC1CI,KAAK,EAAEC,OAAO;EACdC,aAAa,EAAED,OAAO;EACtBE,SAAS,EAAE;IACTC,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX,CAAC;EACDC,QAAQ,EAAE;IACRH,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX,CAAC;EACDE,KAAK,EAAEP,OAAO;EACdQ,UAAU,EAAER,OAAO;EACnBS,YAAY,EAAET,OAAO;EACrBU,SAAS,EAAE;IACTP,IAAI,EAAEQ;EACR,CAAC;EACDC,IAAI,EAAEZ,OAAO;EACba,QAAQ,EAAE;IACRV,IAAI,EAAE7B,SAAS;IACf+B,OAAO,EAAE;EACX,CAAC;EACDS,SAAS,EAAE;IACTX,IAAI,EAAEQ;EACR,CAAC;EACDI,QAAQ,EAAEf,OAAO;EACjBgB,UAAU,EAAE;IACVb,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX,CAAC;EACDY,WAAW,EAAEjB,OAAO;EACpBkB,SAAS,EAAEd,MAAM;EACjBe,YAAY,EAAEnB,OAAO;EAErB,GAAGzB,cAAc,CAAC;IAAE6C,YAAY,EAAE;EAAM,CAAC;AAC3C,CAAC,EAAE,QAAQ,CAAC;AAEZ,OAAO,MAAMC,gBAAgB,GAAG1B,YAAY,CAAC;EAC3C,GAAGG,eAAe,CAAC,CAAC;EACpB,GAAGJ,IAAI,CAAC1B,mBAAmB,CAAC;IAC1BsD,UAAU,EAAE,IAAI;IAChBC,IAAI,EAAE;EACR,CAAC,CAAC,EAAE,CAAC,iBAAiB,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;EACpD,GAAG5C,mBAAmB,CAAC;IAAE6C,UAAU,EAAE;MAAEC,SAAS,EAAEpE;IAA+B;EAAE,CAAC;AACtF,CAAC,EAAE,SAAS,CAAC;AAIb,OAAO,MAAMqE,OAAO,GAAGnC,gBAAgB,CA2BQ,CAAC,CAAC;EAC/CoC,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAEP,gBAAgB,CAAC,CAAC;EAEzBQ,KAAK,EAAE;IACL,gBAAgB,EAAGC,OAAgB,IAAK,IAAI;IAC5C,mBAAmB,EAAGC,KAAU,IAAK,IAAI;IACzC,aAAa,EAAGC,EAAW,IAAK;EAClC,CAAC;EAEDC,KAAKA,CAAEL,KAAK,EAAAM,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAE,CAAC,GAAG3D,SAAS,CAAC,CAAC;IACzB,MAAM4D,aAAa,GAAGtD,GAAG,CAAa,CAAC;IACvC,MAAMuD,QAAQ,GAAGvD,GAAG,CAAQ,CAAC;IAC7B,MAAMwD,iBAAiB,GAAGxD,GAAG,CAAiB,CAAC;IAC/C,MAAM;MAAEyD,KAAK;MAAEC,WAAW;MAAEC;IAAa,CAAC,GAAGlE,QAAQ,CAACoD,KAAK,CAAC;IAC5D,MAAMe,KAAK,GAAGjE,eAAe,CAC3BkD,KAAK,EACL,YAAY,EACZ,EAAE,EACFgB,CAAC,IAAIH,WAAW,CAACG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG/C,WAAW,CAAC+C,CAAC,CAAC,CAAC,EACtDA,CAAC,IAAI;MACH,MAAMC,WAAW,GAAGH,YAAY,CAACE,CAAC,CAAC;MACnC,OAAOhB,KAAK,CAACb,QAAQ,GAAG8B,WAAW,GAAIA,WAAW,CAAC,CAAC,CAAC,IAAI,IAAK;IAChE,CACF,CAAC;IACD,MAAMC,YAAY,GAAGlE,QAAQ,CAAC,MAAM;MAClC,OAAO,OAAOgD,KAAK,CAACkB,YAAY,KAAK,UAAU,GAAGlB,KAAK,CAACkB,YAAY,CAACH,KAAK,CAACZ,KAAK,CAAC,GAC7E,OAAOH,KAAK,CAACkB,YAAY,KAAK,QAAQ,GAAGlB,KAAK,CAACkB,YAAY,GAC3DH,KAAK,CAACZ,KAAK,CAACgB,MAAM;IACxB,CAAC,CAAC;IACF,MAAMC,IAAI,GAAG5E,OAAO,CAACwD,KAAK,CAAC;IAC3B,MAAMqB,cAAc,GAAGrE,QAAQ,CAAC,MAAM+D,KAAK,CAACZ,KAAK,CAACmB,GAAG,CAACC,SAAS,IAAIA,SAAS,CAACpB,KAAK,CAAC,CAAC;IACpF,MAAMqB,SAAS,GAAGpE,UAAU,CAAC,KAAK,CAAC;IAEnC,IAAIqE,oBAAoB,GAAG,EAAE;IAC7B,IAAIC,mBAAmB,GAAG,CAAC,CAAC;IAC5B,IAAIC,sBAA8B;IAElC,MAAMC,YAAY,GAAG5E,QAAQ,CAAC,MAAM;MAClC,IAAIgD,KAAK,CAACnB,YAAY,EAAE;QACtB,OAAO+B,KAAK,CAACT,KAAK,CAAC0B,MAAM,CAACC,IAAI,IAAI,CAACf,KAAK,CAACZ,KAAK,CAAC4B,IAAI,CAACC,CAAC,IAAI,CAAChC,KAAK,CAACiC,eAAe,IAAIxE,SAAS,EAAEuE,CAAC,EAAEF,IAAI,CAAC,CAAC,CAAC;MAC1G;MACA,OAAOlB,KAAK,CAACT,KAAK;IACpB,CAAC,CAAC;IAEF,MAAM+B,YAAY,GAAGlF,QAAQ,CAAC,MAC3BgD,KAAK,CAACpB,UAAU,IAAI,CAACgD,YAAY,CAACzB,KAAK,CAACgB,MAAM,IAC/CC,IAAI,CAACe,UAAU,CAAChC,KAAK,IAAIiB,IAAI,CAACgB,UAAU,CAACjC,KAC1C,CAAC;IACF,MAAMkC,KAAK,GAAGvF,eAAe,CAACkD,KAAK,EAAE,MAAM,CAAC;IAC5C,MAAMhB,IAAI,GAAGhC,QAAQ,CAAC;MACpBsF,GAAG,EAAEA,CAAA,KAAMD,KAAK,CAAClC,KAAK;MACtBoC,GAAG,EAAEvB,CAAC,IAAI;QACR,IAAIqB,KAAK,CAAClC,KAAK,IAAI,CAACa,CAAC,IAAIN,QAAQ,CAACP,KAAK,EAAEqC,aAAa,CAACC,IAAI,EAAE;QAC7D,IAAIzB,CAAC,IAAIkB,YAAY,CAAC/B,KAAK,EAAE;QAC7BkC,KAAK,CAAClC,KAAK,GAAGa,CAAC;MACjB;IACF,CAAC,CAAC;IAEF,MAAM0B,KAAK,GAAGrF,KAAK,CAAC,MAAM2B,IAAI,CAACmB,KAAK,GAAGH,KAAK,CAAC1B,SAAS,GAAG0B,KAAK,CAACtB,QAAQ,CAAC;IAExE,MAAMiE,iBAAiB,GAAG3F,QAAQ,CAAC,MAAM;MACvC,OAAO;QACL,GAAGgD,KAAK,CAACd,SAAS;QAClB0D,cAAc,EAAE;UACd,IAAI5C,KAAK,CAACd,SAAS,EAAE0D,cAAc,IAAI,CAAC,CAAC,CAAC;UAC1C,eAAe,EAAE,SAAS,CAAE;QAC9B;MACF,CAAC;IACH,CAAC,CAAC;IAEF,MAAMC,OAAO,GAAG1F,GAAG,CAAQ,CAAC;IAC5B,MAAM2F,UAAU,GAAGvG,YAAY,CAACsG,OAAO,EAAEpC,aAAa,CAAC;IACvD,SAASsC,OAAOA,CAAEC,CAAa,EAAE;MAC/B,IAAIhD,KAAK,CAACX,WAAW,EAAE;QACrBL,IAAI,CAACmB,KAAK,GAAG,IAAI;MACnB;IACF;IACA,SAAS8C,kBAAkBA,CAAA,EAAI;MAC7B,IAAIf,YAAY,CAAC/B,KAAK,EAAE;MAExBnB,IAAI,CAACmB,KAAK,GAAG,CAACnB,IAAI,CAACmB,KAAK;IAC1B;IACA,SAAS+C,aAAaA,CAAEF,CAAgB,EAAE;MACxC,IAAIxF,cAAc,CAACwF,CAAC,CAAC,EAAE;QACrBG,SAAS,CAACH,CAAC,CAAC;MACd;IACF;IACA,SAASG,SAASA,CAAEH,CAAgB,EAAE;MACpC,IAAI,CAACA,CAAC,CAACI,GAAG,IAAIhC,IAAI,CAACe,UAAU,CAAChC,KAAK,EAAE;MAErC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAACkD,QAAQ,CAACL,CAAC,CAACI,GAAG,CAAC,EAAE;QACzEJ,CAAC,CAACM,cAAc,CAAC,CAAC;MACpB;MAEA,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,CAACD,QAAQ,CAACL,CAAC,CAACI,GAAG,CAAC,EAAE;QAC/CpE,IAAI,CAACmB,KAAK,GAAG,IAAI;MACnB;MAEA,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAACkD,QAAQ,CAACL,CAAC,CAACI,GAAG,CAAC,EAAE;QACrCpE,IAAI,CAACmB,KAAK,GAAG,KAAK;MACpB;MAEA,IAAI6C,CAAC,CAACI,GAAG,KAAK,MAAM,EAAE;QACpBP,OAAO,CAAC1C,KAAK,EAAEoD,KAAK,CAAC,OAAO,CAAC;MAC/B,CAAC,MAAM,IAAIP,CAAC,CAACI,GAAG,KAAK,KAAK,EAAE;QAC1BP,OAAO,CAAC1C,KAAK,EAAEoD,KAAK,CAAC,MAAM,CAAC;MAC9B;;MAEA;MACA,MAAMC,yBAAyB,GAAG,IAAI,EAAC;;MAEvC,IAAI,CAAChG,cAAc,CAACwF,CAAC,CAAC,EAAE;MAExB,MAAMS,GAAG,GAAGC,WAAW,CAACD,GAAG,CAAC,CAAC;MAC7B,IAAIA,GAAG,GAAG9B,sBAAsB,GAAG6B,yBAAyB,EAAE;QAC5D/B,oBAAoB,GAAG,EAAE;QACzBC,mBAAmB,GAAG,CAAC,CAAC;MAC1B;MACAD,oBAAoB,IAAIuB,CAAC,CAACI,GAAG,CAACO,WAAW,CAAC,CAAC;MAC3ChC,sBAAsB,GAAG8B,GAAG;MAE5B,MAAM7C,KAAK,GAAGgB,YAAY,CAACzB,KAAK;MAChC,SAASyD,QAAQA,CAAA,EAAI;QACnB,IAAIC,MAAM,GAAGC,YAAY,CAAC,CAAC;QAC3B,IAAID,MAAM,EAAE,OAAOA,MAAM;QAEzB,IAAIpC,oBAAoB,CAACsC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAKtC,oBAAoB,CAACsC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;UAC/D;UACAtC,oBAAoB,GAAGA,oBAAoB,CAACuC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;UACxDH,MAAM,GAAGC,YAAY,CAAC,CAAC;UACvB,IAAID,MAAM,EAAE,OAAOA,MAAM;QAC3B;;QAEA;QACAnC,mBAAmB,GAAG,CAAC,CAAC;QACxBmC,MAAM,GAAGC,YAAY,CAAC,CAAC;QACvB,IAAID,MAAM,EAAE,OAAOA,MAAM;;QAEzB;QACApC,oBAAoB,GAAGuB,CAAC,CAACI,GAAG,CAACO,WAAW,CAAC,CAAC;QAC1C,OAAOG,YAAY,CAAC,CAAC;MACvB;MACA,SAASA,YAAYA,CAAA,EAAI;QACvB,KAAK,IAAIG,CAAC,GAAGvC,mBAAmB,GAAG,CAAC,EAAEuC,CAAC,GAAGrD,KAAK,CAACO,MAAM,EAAE8C,CAAC,EAAE,EAAE;UAC3D,MAAMC,KAAK,GAAGtD,KAAK,CAACqD,CAAC,CAAC;UACtB,IAAIC,KAAK,CAACC,KAAK,CAACR,WAAW,CAAC,CAAC,CAACS,UAAU,CAAC3C,oBAAoB,CAAC,EAAE;YAC9D,OAAO,CAACyC,KAAK,EAAED,CAAC,CAAC;UACnB;QACF;QACA,OAAOI,SAAS;MAClB;MAEA,MAAMR,MAAM,GAAGD,QAAQ,CAAC,CAAC;MACzB,IAAI,CAACC,MAAM,EAAE;MAEb,MAAM,CAAC/B,IAAI,EAAEwC,KAAK,CAAC,GAAGT,MAAM;MAC5BnC,mBAAmB,GAAG4C,KAAK;MAC3BzB,OAAO,CAAC1C,KAAK,EAAEoD,KAAK,CAACe,KAAK,CAAC;MAC3B,IAAI,CAACtE,KAAK,CAACb,QAAQ,EAAE;QACnB4B,KAAK,CAACZ,KAAK,GAAG,CAAC2B,IAAI,CAAC;MACtB;IACF;;IAEA;IACA,SAASyC,MAAMA,CAAEzC,IAAc,EAA8B;MAAA,IAA5BS,GAAmB,GAAAiC,SAAA,CAAArD,MAAA,QAAAqD,SAAA,QAAAH,SAAA,GAAAG,SAAA,MAAG,IAAI;MACzD,IAAI1C,IAAI,CAAC9B,KAAK,CAACyE,QAAQ,EAAE;MAEzB,IAAIzE,KAAK,CAACb,QAAQ,EAAE;QAClB,MAAMmF,KAAK,GAAGvD,KAAK,CAACZ,KAAK,CAACuE,SAAS,CAACnD,SAAS,IAAI,CAACvB,KAAK,CAACiC,eAAe,IAAIxE,SAAS,EAAE8D,SAAS,CAACpB,KAAK,EAAE2B,IAAI,CAAC3B,KAAK,CAAC,CAAC;QACnH,MAAMwE,GAAG,GAAGpC,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC+B,KAAK,GAAG/B,GAAG;QAEvC,IAAI,CAAC+B,KAAK,EAAE;UACV,MAAMnE,KAAK,GAAGwE,GAAG,GAAG,CAAC,GAAG5D,KAAK,CAACZ,KAAK,EAAE2B,IAAI,CAAC,GAAG,CAAC,GAAGf,KAAK,CAACZ,KAAK,CAAC;UAC7DA,KAAK,CAACyE,MAAM,CAACN,KAAK,EAAE,CAAC,CAAC;UACtBvD,KAAK,CAACZ,KAAK,GAAGA,KAAK;QACrB,CAAC,MAAM,IAAIwE,GAAG,EAAE;UACd5D,KAAK,CAACZ,KAAK,GAAG,CAAC,GAAGY,KAAK,CAACZ,KAAK,EAAE2B,IAAI,CAAC;QACtC;MACF,CAAC,MAAM;QACL,MAAM6C,GAAG,GAAGpC,GAAG,KAAK,KAAK;QACzBxB,KAAK,CAACZ,KAAK,GAAGwE,GAAG,GAAG,CAAC7C,IAAI,CAAC,GAAG,EAAE;QAE/B5E,QAAQ,CAAC,MAAM;UACb8B,IAAI,CAACmB,KAAK,GAAG,KAAK;QACpB,CAAC,CAAC;MACJ;IACF;IACA,SAAS0E,MAAMA,CAAE7B,CAAa,EAAE;MAC9B,IAAI,CAACH,OAAO,CAAC1C,KAAK,EAAE2E,GAAG,CAACC,QAAQ,CAAC/B,CAAC,CAACgC,aAA4B,CAAC,EAAE;QAChEhG,IAAI,CAACmB,KAAK,GAAG,KAAK;MACpB;IACF;IACA,SAAS8E,YAAYA,CAAA,EAAI;MACvB,IAAIjF,KAAK,CAACrB,KAAK,EAAE;QACfgC,iBAAiB,CAACR,KAAK,EAAE+E,qBAAqB,CAAC,CAAC;MAClD;IACF;IACA,SAASC,YAAYA,CAAA,EAAI;MACvB,IAAI3D,SAAS,CAACrB,KAAK,EAAE;QACnBM,aAAa,CAACN,KAAK,EAAEoD,KAAK,CAAC,CAAC;MAC9B;IACF;IACA,SAAS6B,SAASA,CAAEpC,CAAa,EAAE;MACjCxB,SAAS,CAACrB,KAAK,GAAG,IAAI;IACxB;IACA,SAASkF,aAAaA,CAAErE,CAAM,EAAE;MAC9B,IAAIA,CAAC,IAAI,IAAI,EAAED,KAAK,CAACZ,KAAK,GAAG,EAAE,MAC1B,IAAItC,eAAe,CAAC4C,aAAa,CAACN,KAAK,EAAE,WAAW,CAAC,IAAItC,eAAe,CAAC4C,aAAa,CAACN,KAAK,EAAE,mBAAmB,CAAC,EAAE;QACvH,MAAM2B,IAAI,GAAGlB,KAAK,CAACT,KAAK,CAACmF,IAAI,CAACxD,IAAI,IAAIA,IAAI,CAACqC,KAAK,KAAKnD,CAAC,CAAC;QACvD,IAAIc,IAAI,EAAE;UACRyC,MAAM,CAACzC,IAAI,CAAC;QACd;MACF,CAAC,MAAM,IAAIrB,aAAa,CAACN,KAAK,EAAE;QAC9BM,aAAa,CAACN,KAAK,CAACA,KAAK,GAAG,EAAE;MAChC;IACF;IAEA7C,KAAK,CAAC0B,IAAI,EAAE,MAAM;MAChB,IAAI,CAACgB,KAAK,CAACnB,YAAY,IAAIG,IAAI,CAACmB,KAAK,IAAIY,KAAK,CAACZ,KAAK,CAACgB,MAAM,EAAE;QAC3D,MAAMmD,KAAK,GAAG1C,YAAY,CAACzB,KAAK,CAACuE,SAAS,CACxC5C,IAAI,IAAIf,KAAK,CAACZ,KAAK,CAAC4B,IAAI,CAACC,CAAC,IAAI,CAAChC,KAAK,CAACiC,eAAe,IAAIxE,SAAS,EAAEuE,CAAC,CAAC7B,KAAK,EAAE2B,IAAI,CAAC3B,KAAK,CAAC,CACzF,CAAC;QACDvC,UAAU,IAAI,CAACoC,KAAK,CAACT,YAAY,IAAIgG,MAAM,CAACC,qBAAqB,CAAC,MAAM;UACtElB,KAAK,IAAI,CAAC,IAAI3D,iBAAiB,CAACR,KAAK,EAAEsF,aAAa,CAACnB,KAAK,CAAC;QAC7D,CAAC,CAAC;MACJ;IACF,CAAC,CAAC;IAEFhH,KAAK,CAAC,MAAM0C,KAAK,CAACY,KAAK,EAAE,CAAC8E,MAAM,EAAEC,MAAM,KAAK;MAC3C,IAAI3G,IAAI,CAACmB,KAAK,EAAE;MAEhB,IAAIqB,SAAS,CAACrB,KAAK,IAAI,CAACwF,MAAM,CAACxE,MAAM,IAAIuE,MAAM,CAACvE,MAAM,EAAE;QACtDnC,IAAI,CAACmB,KAAK,GAAG,IAAI;MACnB;IACF,CAAC,CAAC;IAEFnC,SAAS,CAAC,MAAM;MACd,MAAM4H,QAAQ,GAAG,CAAC,EAAE5F,KAAK,CAAC7B,KAAK,IAAIoC,KAAK,CAACsF,IAAI,CAAC;MAC9C,MAAMC,OAAO,GAAG,CAAC,EACd,CAAC9F,KAAK,CAACpB,UAAU,IAAIgD,YAAY,CAACzB,KAAK,CAACgB,MAAM,IAC/CZ,KAAK,CAAC,cAAc,CAAC,IACrBA,KAAK,CAAC,aAAa,CAAC,IACpBA,KAAK,CAAC,SAAS,CAAC,CACjB;MACD,MAAMwF,OAAO,GAAGhF,KAAK,CAACZ,KAAK,CAACgB,MAAM,GAAG,CAAC;MACtC,MAAM6E,cAAc,GAAG3J,UAAU,CAAC4J,WAAW,CAACjG,KAAK,CAAC;MAEpD,MAAMkG,WAAW,GAAGH,OAAO,IACzB,CAACvE,SAAS,CAACrB,KAAK,IAChBH,KAAK,CAAC0C,KAAK,IACX,CAAC1C,KAAK,CAACmG,qBACR,GAAG9B,SAAS,GAAGrE,KAAK,CAACkG,WAAW;MAEjC,OAAAE,YAAA,CAAA/J,UAAA,EAAAgK,WAAA;QAAA,OAEU5F;MAAa,GACduF,cAAc;QAAA,cACNjF,KAAK,CAACZ,KAAK,CAACmB,GAAG,CAACN,CAAC,IAAIA,CAAC,CAAChB,KAAK,CAACG,KAAK,CAAC,CAACmG,IAAI,CAAC,IAAI,CAAC;QAAA,uBACrCjB,aAAa;QAAA,WACjB7D,SAAS,CAACrB,KAAK;QAAA,oBAAAoG,MAAA,IAAf/E,SAAS,CAACrB,KAAK,GAAAoG,MAAA;QAAA,mBACfxF,KAAK,CAACyF,aAAa;QAAA,gBACtBtF,YAAY,CAACf,KAAK;QAAA,SACzB4F,OAAO;QAAA,SACR,CACL,UAAU,EACV;UACE,uBAAuB,EAAE/G,IAAI,CAACmB,KAAK;UACnC,iBAAiB,EAAE,CAAC,CAACH,KAAK,CAAC7B,KAAK;UAChC,CAAC,aAAa6B,KAAK,CAACb,QAAQ,GAAG,UAAU,GAAG,QAAQ,EAAE,GAAG,IAAI;UAC7D,oBAAoB,EAAE4B,KAAK,CAACZ,KAAK,CAACgB,MAAM;UACxC,0BAA0B,EAAE,CAAC,CAACZ,KAAK,CAACgB;QACtC,CAAC,EACDvB,KAAK,CAACyG,KAAK,CACZ;QAAA,SACOzG,KAAK,CAAC0G,KAAK;QAAA;QAAA,eAELR,WAAW;QAAA,iBACTnD,OAAO;QAAA,uBACDE,kBAAkB;QAAA,UAC/B4B,MAAM;QAAA,aACH1B,SAAS;QAAA,cACR3C,CAAC,CAACkC,KAAK,CAACvC,KAAK,CAAC;QAAA,SACnBK,CAAC,CAACkC,KAAK,CAACvC,KAAK;MAAC;QAGpB,GAAGI,KAAK;QACR9B,OAAO,EAAEA,CAAA,KAAAkI,mBAAA,CAAAC,SAAA,SAAAR,YAAA,CAAAjK,KAAA,EAAAkK,WAAA;UAAA,OAGG3F,QAAQ;UAAA,cACJ1B,IAAI,CAACmB,KAAK;UAAA,uBAAAoG,MAAA,IAAVvH,IAAI,CAACmB,KAAK,GAAAoG,MAAA;UAAA;UAAA;UAAA,YAGTrE,YAAY,CAAC/B,KAAK;UAAA,SACrBH,KAAK,CAACrB,KAAK;UAAA,aACP,GAAG;UAAA,eACD,KAAK;UAAA,uBACG,KAAK;UAAA,cACdqB,KAAK,CAACJ,UAAU;UAAA,gBACdqF,YAAY;UAAA,gBACZE;QAAY,GACtBxC,iBAAiB,CAACxC,KAAK;UAAA1B,OAAA,EAAAA,CAAA,MAE1BqH,OAAO,IAAAM,YAAA,CAAApK,KAAA,EAAAqK,WAAA;YAAA,OAECxD,OAAO;YAAA,YACFxB,cAAc,CAAClB,KAAK;YAAA,kBACdH,KAAK,CAACb,QAAQ,GAAG,aAAa,GAAG,oBAAoB;YAAA,eACvD6D,CAAa,IAAKA,CAAC,CAACM,cAAc,CAAC,CAAC;YAAA,aACvCJ,aAAa;YAAA,aACbkC,SAAS;YAAA;YAAA;YAAA,cAGR,GAAGpF,KAAK,CAAC0C,KAAK,OAAO;YAAA,SAC1B1C,KAAK,CAACV,SAAS,IAAIU,KAAK,CAAC6G;UAAK,GACjC/D,UAAU,EACV9C,KAAK,CAAClB,SAAS;YAAAL,OAAA,EAAAA,CAAA,MAElB8B,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAEzB,CAACqB,YAAY,CAACzB,KAAK,CAACgB,MAAM,IAAI,CAACnB,KAAK,CAACpB,UAAU,KAAK2B,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAA6F,YAAA,CAAAnK,SAAA;cAAA;cAAA,SACvCuE,CAAC,CAACR,KAAK,CAACZ,UAAU;YAAC,QACrD,CAAC,EAAAgH,YAAA,CAAA9J,cAAA;cAAA,OAEoBqE,iBAAiB;cAAA;cAAA,SAAsBiB,YAAY,CAACzB,KAAK;cAAA;YAAA;cAAA1B,OAAA,EAC3EqI,KAAA,IAA8B;gBAAA,IAA7B;kBAAEhF,IAAI;kBAAEwC,KAAK;kBAAEyC;gBAAQ,CAAC,GAAAD,KAAA;gBACzB,MAAME,cAAc,GAAGzJ,aAAa,CAACuE,IAAI,CAAC9B,KAAK,CAAC;gBAEhD,MAAMiH,SAAS,GAAGhK,UAAU,CAAC6E,IAAI,CAAC9B,KAAK,EAAE;kBACvC7C,GAAG,EAAE4J,OAAO;kBACZ3D,GAAG,EAAEtB,IAAI,CAAC3B,KAAK;kBACf+G,OAAO,EAAEA,CAAA,KAAM3C,MAAM,CAACzC,IAAI,EAAE,IAAI;gBAClC,CAAC,CAAC;gBAEF,IAAIA,IAAI,CAACqF,GAAG,CAAC5I,IAAI,KAAK,SAAS,EAAE;kBAC/B,OAAOgC,KAAK,CAAC6G,OAAO,GAAG;oBAAEpH,KAAK,EAAE8B,IAAI,CAACqF,GAAG;oBAAE7C;kBAAM,CAAC,CAAC,IAAA8B,YAAA,CAAAtK,QAAA,EAAAuK,WAAA,CACjCvE,IAAI,CAAC9B,KAAK;oBAAA,OAAS,WAAWsE,KAAK;kBAAE,SACrD;gBACH;gBAEA,IAAIxC,IAAI,CAACqF,GAAG,CAAC5I,IAAI,KAAK,WAAW,EAAE;kBACjC,OAAOgC,KAAK,CAAC8G,SAAS,GAAG;oBAAErH,KAAK,EAAE8B,IAAI,CAACqF,GAAG;oBAAE7C;kBAAM,CAAC,CAAC,IAAA8B,YAAA,CAAAlK,cAAA,EAAAmK,WAAA,CAC7BvE,IAAI,CAAC9B,KAAK;oBAAA,OAAS,aAAasE,KAAK;kBAAE,SAC7D;gBACH;gBAEA,OAAO/D,KAAK,CAACuB,IAAI,GAAG;kBAClBA,IAAI;kBACJwC,KAAK;kBACLtE,KAAK,EAAEiH;gBACT,CAAC,CAAC,IAAAb,YAAA,CAAAnK,SAAA,EAAAoK,WAAA,CACgBY,SAAS;kBAAA;gBAAA;kBAErBK,OAAO,EAAEC,KAAA;oBAAA,IAAC;sBAAEC;oBAAW,CAAC,GAAAD,KAAA;oBAAA,OAAAZ,mBAAA,CAAAC,SAAA,SAElB5G,KAAK,CAACb,QAAQ,IAAI,CAACa,KAAK,CAACnB,YAAY,GAAAuH,YAAA,CAAAzK,YAAA;sBAAA,OAE7BmG,IAAI,CAAC3B,KAAK;sBAAA,cACHqH,UAAU;sBAAA,UACd,KAAK;sBAAA;oBAAA,WAGdnD,SAAS,EAEX2C,cAAc,CAACS,aAAa,IAAArB,YAAA,CAAA1K,OAAA;sBAAA,SACXsL,cAAc,CAACS;oBAAa,QAC9C,EAECT,cAAc,CAACU,WAAW,IAAAtB,YAAA,CAAArK,KAAA;sBAAA,QACZiL,cAAc,CAACU;oBAAW,QACzC;kBAAA;gBAEJ,EAGN;cACH;YAAC,IAGDnH,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;UAAA,EAE7B;QAAA,IAGDQ,KAAK,CAACZ,KAAK,CAACmB,GAAG,CAAC,CAACQ,IAAI,EAAEwC,KAAK,KAAK;UACjC,SAASqD,WAAWA,CAAE3E,CAAQ,EAAE;YAC9BA,CAAC,CAAC4E,eAAe,CAAC,CAAC;YACnB5E,CAAC,CAACM,cAAc,CAAC,CAAC;YAElBiB,MAAM,CAACzC,IAAI,EAAE,KAAK,CAAC;UACrB;UAEA,MAAM+F,SAAS,GAAG;YAChB,eAAe,EAAEF,WAAW;YAC5BxE,SAASA,CAAEH,CAAgB,EAAE;cAC3B,IAAIA,CAAC,CAACI,GAAG,KAAK,OAAO,IAAIJ,CAAC,CAACI,GAAG,KAAK,GAAG,EAAE;cAExCJ,CAAC,CAACM,cAAc,CAAC,CAAC;cAClBN,CAAC,CAAC4E,eAAe,CAAC,CAAC;cAEnBD,WAAW,CAAC3E,CAAC,CAAC;YAChB,CAAC;YACD8E,WAAWA,CAAE9E,CAAa,EAAE;cAC1BA,CAAC,CAACM,cAAc,CAAC,CAAC;cAClBN,CAAC,CAAC4E,eAAe,CAAC,CAAC;YACrB,CAAC;YACDlI,UAAU,EAAE,IAAI;YAChB,qBAAqB,EAAE2E;UACzB,CAAC;UAED,MAAM0D,OAAO,GAAGnC,QAAQ,GAAG,CAAC,CAACrF,KAAK,CAACsF,IAAI,GAAG,CAAC,CAACtF,KAAK,CAACgB,SAAS;UAC3D,MAAMyG,WAAW,GAAGD,OAAO,GACvBrK,gBAAgB,CAChBkI,QAAQ,GACJrF,KAAK,CAACsF,IAAI,CAAE;YAAE/D,IAAI;YAAEwC,KAAK;YAAEtE,KAAK,EAAE6H;UAAU,CAAC,CAAC,GAC9CtH,KAAK,CAACgB,SAAS,CAAE;YAAEO,IAAI;YAAEwC;UAAM,CAAC,CACtC,CAAC,GACCD,SAAS;UAEb,IAAI0D,OAAO,IAAI,CAACC,WAAW,EAAE,OAAO3D,SAAS;UAE7C,OAAAsC,mBAAA;YAAA,OACa7E,IAAI,CAAC3B,KAAK;YAAA;UAAA,IACjByF,QAAQ,GACR,CAACrF,KAAK,CAACsF,IAAI,GAAAO,YAAA,CAAAxK,KAAA,EAAAyK,WAAA;YAAA;YAAA,YAGIrG,KAAK,CAAC3B,aAAa;YAAA;YAAA,QAEvByD,IAAI,CAACqC,KAAK;YAAA,YACNrC,IAAI,CAAC9B,KAAK,CAACyE;UAAQ,GACzBoD,SAAS,WAAAzB,YAAA,CAAAvK,iBAAA;YAAA;YAAA,YAKJ;cACRD,KAAK,EAAE;gBACLqM,QAAQ,EAAEjI,KAAK,CAAC3B,aAAa;gBAC7BoE,IAAI,EAAE,OAAO;gBACbyF,IAAI,EAAEpG,IAAI,CAACqC;cACb;YACF;UAAC;YAAA1F,OAAA,EAAAA,CAAA,MAECuJ,WAAW;UAAA,EAEhB,GAEDA,WAAW,IAAArB,mBAAA;YAAA;UAAA,IAEL7E,IAAI,CAACqC,KAAK,EACVnE,KAAK,CAACb,QAAQ,IAAKmF,KAAK,GAAGvD,KAAK,CAACZ,KAAK,CAACgB,MAAM,GAAG,CAAE,IAAAwF,mBAAA;YAAA;UAAA,IAAAwB,gBAAA,OAEnD,EAGN;QAGP,CAAC,CAAC,EAEL;QACD,cAAc,EAAE,SAAAC,CAAA;UAAA,SAAAC,IAAA,GAAA7D,SAAA,CAAArD,MAAA,EAAImH,IAAI,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;YAAJF,IAAI,CAAAE,IAAA,IAAAhE,SAAA,CAAAgE,IAAA;UAAA;UAAA,OAAA7B,mBAAA,CAAAC,SAAA,SAElBrG,KAAK,CAAC,cAAc,CAAC,GAAG,GAAG+H,IAAI,CAAC,EAChCtI,KAAK,CAACf,QAAQ,GAAAmH,YAAA,CAAArK,KAAA;YAAA;YAAA,SAGJ0E,aAAa,CAACN,KAAK,EAAEsI,cAAc;YAAA,QACpCzI,KAAK,CAACf;UAAQ,WAErBoF,SAAS;QAAA;MAEhB;IAIT,CAAC,CAAC;IAEF,OAAO5H,WAAW,CAAC;MACjB+E,SAAS;MACTxC,IAAI;MACJuF;IACF,CAAC,EAAE9D,aAAa,CAAC;EACnB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VSelect.js","names":["VDialogTransition","VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VDivider","VIcon","VList","VListItem","VListSubheader","VMenu","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useForm","forwardRefs","IconValue","makeItemsProps","useItems","useLocale","useProxiedModel","makeTransitionProps","computed","mergeProps","nextTick","ref","shallowRef","toRef","watch","camelizeProps","checkPrintable","deepEqual","ensureValidVNode","genericComponent","IN_BROWSER","matchesSelector","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","closeText","type","String","default","openText","eager","hideNoData","hideSelected","listProps","Object","menu","menuIcon","menuProps","multiple","noDataText","openOnClear","itemColor","noAutoScroll","itemChildren","makeVSelectProps","modelValue","role","transition","component","VSelect","name","props","emits","focused","value","ue","setup","_ref","slots","t","vTextFieldRef","vMenuRef","vVirtualScrollRef","items","transformIn","transformOut","model","v","transformed","counterValue","length","form","selectedValues","map","selection","isFocused","keyboardLookupPrefix","keyboardLookupIndex","keyboardLookupLastTime","displayItems","filter","item","some","s","valueComparator","menuDisabled","isReadonly","isDisabled","_menu","get","set","ΨopenChildren","size","label","computedMenuProps","activatorProps","listRef","listEvents","onClear","e","onMousedownControl","onListKeydown","onKeydown","key","includes","preventDefault","focus","KEYBOARD_LOOKUP_THRESHOLD","now","performance","toLowerCase","findItem","result","findItemBase","at","slice","i","_item","title","startsWith","undefined","index","select","arguments","disabled","findIndex","add","splice","onBlur","$el","contains","relatedTarget","onAfterEnter","calculateVisibleItems","onAfterLeave","onFocusin","onModelUpdate","find","window","requestAnimationFrame","scrollToIndex","newVal","oldVal","hasChips","chip","hasList","isDirty","textFieldProps","filterProps","placeholder","persistentPlaceholder","_createVNode","_mergeProps","join","$event","externalValue","class","style","_createElementVNode","_Fragment","color","_ref2","itemRef","camelizedProps","itemProps","onClick","divider","raw","subheader","prepend","_ref3","isSelected","prependAvatar","prependIcon","onChipClose","stopPropagation","slotProps","onMousedown","hasSlot","slotContent","closable","text","_createTextVNode","append-inner","_len","args","Array","_key","fieldIconColor"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from './useScrolling'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue'\nimport {\n camelizeProps,\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { Component, PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = [T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? readonly Val<T, ReturnObject>[]\n : Val<T, ReturnObject> | null\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n closeText: {\n type: String,\n default: '$vuetify.close',\n },\n openText: {\n type: String,\n default: '$vuetify.open',\n },\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n listProps: {\n type: Object as PropType<VList['$props']>,\n },\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType<VMenu['$props']>,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n itemColor: String,\n noAutoScroll: Boolean,\n\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VSelect = genericComponent<new <\n T extends readonly any[],\n Item = ItemType<T>,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value<Item, ReturnObject, Multiple> = Value<Item, ReturnObject, Multiple>\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey<ItemType<T>>\n itemValue?: SelectItemKey<ItemType<T>>\n itemProps?: SelectItemKey<ItemType<T>>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit<VInputSlots & VFieldSlots, 'default'> & {\n item: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n chip: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n selection: { item: ListItem<Item>, index: number }\n subheader: { props: Record<string, unknown>, index: number }\n divider: { props: Record<string, unknown>, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (ue: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref<VTextField>()\n const vMenuRef = ref<VMenu>()\n const vVirtualScrollRef = ref<VVirtualScroll>()\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupIndex = -1\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)))\n }\n return items.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const label = toRef(() => menu.value ? props.closeText : props.openText)\n\n const computedMenuProps = computed(() => {\n return {\n ...props.menuProps,\n activatorProps: {\n ...(props.menuProps?.activatorProps || {}),\n 'aria-haspopup': 'listbox', // Set aria-haspopup to 'listbox'\n },\n }\n })\n\n const listRef = ref<VList>()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e)) {\n onKeydown(e)\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (!e.key || form.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n\n // html select hotkeys\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n\n if (!checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n keyboardLookupIndex = -1\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const items = displayItems.value\n function findItem () {\n let result = findItemBase()\n if (result) return result\n\n if (keyboardLookupPrefix.at(-1) === keyboardLookupPrefix.at(-2)) {\n // No matches but we have a repeated letter, try the next item with that prefix\n keyboardLookupPrefix = keyboardLookupPrefix.slice(0, -1)\n result = findItemBase()\n if (result) return result\n }\n\n // Still nothing, wrap around to the top\n keyboardLookupIndex = -1\n result = findItemBase()\n if (result) return result\n\n // Still nothing, try just the new letter\n keyboardLookupPrefix = e.key.toLowerCase()\n return findItemBase()\n }\n function findItemBase () {\n for (let i = keyboardLookupIndex + 1; i < items.length; i++) {\n const _item = items[i]\n if (_item.title.toLowerCase().startsWith(keyboardLookupPrefix)) {\n return [_item, i] as const\n }\n }\n return undefined\n }\n\n const result = findItem()\n if (!result) return\n\n const [item, index] = result\n keyboardLookupIndex = index\n listRef.value?.focus(index)\n if (!props.multiple) {\n model.value = [item]\n }\n }\n\n /** @param set - null means toggle */\n function select (item: ListItem, set: boolean | null = true) {\n if (item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n\n nextTick(() => {\n menu.value = false\n })\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n function onModelUpdate (v: any) {\n if (v == null) model.value = []\n else if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === v)\n if (item) {\n select(item)\n }\n } else if (vTextFieldRef.value) {\n vTextFieldRef.value.value = ''\n }\n }\n\n watch(menu, () => {\n if (!props.hideSelected && menu.value && model.value.length) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && !props.noAutoScroll && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(() => props.items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n const placeholder = isDirty || (\n !isFocused.value &&\n props.label &&\n !props.persistentPlaceholder\n ) ? undefined : props.placeholder\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n modelValue={ model.value.map(v => v.props.value).join(', ') }\n onUpdate:modelValue={ onModelUpdate }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n 'v-select--selection-slot': !!slots.selection,\n },\n props.class,\n ]}\n style={ props.style }\n inputmode=\"none\"\n placeholder={ placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n aria-label={ t(label.value) }\n title={ t(label.value) }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-select__content\"\n disabled={ menuDisabled.value }\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n transition={ props.transition }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n { ...computedMenuProps.value }\n >\n { hasList && (\n <VList\n ref={ listRef }\n selected={ selectedValues.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n tabindex=\"-1\"\n aria-live=\"polite\"\n aria-label={ `${props.label}-list` }\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem key=\"no-data\" title={ t(props.noDataText) } />\n ))}\n\n <VVirtualScroll ref={ vVirtualScrollRef } renderless items={ displayItems.value } itemKey=\"value\">\n { ({ item, index, itemRef }) => {\n const camelizedProps = camelizeProps(item.props)\n\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n onClick: () => select(item, null),\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n <VDivider { ...item.props } key={ `divider-${index}` } />\n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n <VListSubheader { ...item.props } key={ `subheader-${index}` } />\n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n <VListItem { ...itemProps } role=\"option\">\n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n <VCheckboxBtn\n key={ item.value }\n modelValue={ isSelected }\n ripple={ false }\n tabindex=\"-1\"\n />\n ) : undefined }\n\n { camelizedProps.prependAvatar && (\n <VAvatar image={ camelizedProps.prependAvatar } />\n )}\n\n { camelizedProps.prependIcon && (\n <VIcon icon={ camelizedProps.prependIcon } />\n )}\n </>\n ),\n }}\n </VListItem>\n )\n }}\n </VVirtualScroll>\n\n { slots['append-item']?.() }\n </VList>\n )}\n </VMenu>\n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\n\n const hasSlot = hasChips ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n <div key={ item.value } class=\"v-select__selection\">\n { hasChips ? (\n !slots.chip ? (\n <VChip\n key=\"chip\"\n closable={ props.closableChips }\n size=\"small\"\n text={ item.title }\n disabled={ item.props.disabled }\n { ...slotProps }\n />\n ) : (\n <VDefaultsProvider\n key=\"chip-defaults\"\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: item.title,\n },\n }}\n >\n { slotContent }\n </VDefaultsProvider>\n )\n ) : (\n slotContent ?? (\n <span class=\"v-select__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-select__selection-comma\">,</span>\n )}\n </span>\n )\n )}\n </div>\n )\n })}\n </>\n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { props.menuIcon ? (\n <VIcon\n class=\"v-select__menu-icon\"\n color={ vTextFieldRef.value?.fieldIconColor }\n icon={ props.menuIcon }\n />\n ) : undefined }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n isFocused,\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n"],"mappings":"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","ignoreList":[]}