vuetify 3.1.13 → 3.1.15

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 (128) hide show
  1. package/dist/json/attributes.json +173 -105
  2. package/dist/json/importMap.json +68 -68
  3. package/dist/json/tags.json +18 -1
  4. package/dist/json/web-types.json +518 -251
  5. package/dist/vuetify-labs.css +448 -420
  6. package/dist/vuetify-labs.d.ts +1066 -658
  7. package/dist/vuetify-labs.esm.js +261 -159
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +261 -159
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +63 -35
  12. package/dist/vuetify.d.ts +911 -562
  13. package/dist/vuetify.esm.js +189 -98
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +189 -98
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +745 -724
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAutocomplete/VAutocomplete.css +9 -0
  21. package/lib/components/VAutocomplete/VAutocomplete.mjs +55 -8
  22. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  23. package/lib/components/VAutocomplete/VAutocomplete.sass +10 -0
  24. package/lib/components/VAutocomplete/index.d.ts +67 -49
  25. package/lib/components/VCard/VCard.mjs.map +1 -1
  26. package/lib/components/VCard/index.d.ts +21 -16
  27. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  28. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  29. package/lib/components/VCheckbox/index.d.ts +36 -15
  30. package/lib/components/VChip/VChip.mjs +2 -2
  31. package/lib/components/VChip/VChip.mjs.map +1 -1
  32. package/lib/components/VChip/index.d.ts +14 -14
  33. package/lib/components/VCombobox/VCombobox.css +1 -1
  34. package/lib/components/VCombobox/VCombobox.mjs +12 -7
  35. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  36. package/lib/components/VCombobox/VCombobox.sass +1 -1
  37. package/lib/components/VCombobox/index.d.ts +67 -49
  38. package/lib/components/VField/VField.mjs +3 -3
  39. package/lib/components/VField/VField.mjs.map +1 -1
  40. package/lib/components/VField/index.d.ts +26 -20
  41. package/lib/components/VFileInput/VFileInput.mjs +13 -18
  42. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  43. package/lib/components/VFileInput/index.d.ts +118 -79
  44. package/lib/components/VImg/VImg.mjs +3 -3
  45. package/lib/components/VImg/VImg.mjs.map +1 -1
  46. package/lib/components/VImg/index.d.ts +19 -19
  47. package/lib/components/VInput/VInput.mjs +16 -9
  48. package/lib/components/VInput/VInput.mjs.map +1 -1
  49. package/lib/components/VInput/index.d.ts +36 -15
  50. package/lib/components/VList/VList.mjs +2 -1
  51. package/lib/components/VList/VList.mjs.map +1 -1
  52. package/lib/components/VList/VListItem.css +12 -0
  53. package/lib/components/VList/VListItem.mjs +2 -2
  54. package/lib/components/VList/VListItem.mjs.map +1 -1
  55. package/lib/components/VList/VListItem.sass +5 -0
  56. package/lib/components/VList/index.d.ts +14 -14
  57. package/lib/components/VOverlay/locationStrategies.mjs +9 -4
  58. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  59. package/lib/components/VOverlay/useActivator.mjs +1 -0
  60. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  61. package/lib/components/VProgressCircular/VProgressCircular.css +3 -1
  62. package/lib/components/VProgressCircular/VProgressCircular.sass +3 -1
  63. package/lib/components/VProgressCircular/_variables.scss +1 -0
  64. package/lib/components/VProgressLinear/VProgressLinear.css +5 -2
  65. package/lib/components/VProgressLinear/VProgressLinear.sass +3 -0
  66. package/lib/components/VProgressLinear/_variables.scss +1 -1
  67. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  68. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  69. package/lib/components/VRadioGroup/index.d.ts +36 -15
  70. package/lib/components/VRangeSlider/VRangeSlider.mjs +2 -2
  71. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  72. package/lib/components/VRangeSlider/index.d.ts +36 -15
  73. package/lib/components/VSelect/VSelect.mjs +37 -2
  74. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  75. package/lib/components/VSelect/index.d.ts +70 -49
  76. package/lib/components/VSlider/VSlider.mjs +2 -2
  77. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  78. package/lib/components/VSlider/index.d.ts +36 -15
  79. package/lib/components/VSwitch/VSwitch.mjs +5 -3
  80. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  81. package/lib/components/VSwitch/index.d.ts +57 -15
  82. package/lib/components/VTextField/VTextField.mjs +6 -14
  83. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  84. package/lib/components/VTextField/index.d.ts +153 -99
  85. package/lib/components/VTextarea/VTextarea.mjs +12 -17
  86. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  87. package/lib/components/VTextarea/index.d.ts +117 -72
  88. package/lib/components/VToolbar/VToolbar.css +2 -0
  89. package/lib/components/VToolbar/VToolbar.sass +2 -0
  90. package/lib/components/VTreeview/_mixins.sass +0 -0
  91. package/lib/components/VTreeview/util/filterTreeItems.mjs +0 -0
  92. package/lib/components/VValidation/index.d.ts +10 -1
  93. package/lib/components/index.d.ts +891 -542
  94. package/lib/composables/focus.mjs +3 -2
  95. package/lib/composables/focus.mjs.map +1 -1
  96. package/lib/composables/items.mjs +7 -2
  97. package/lib/composables/items.mjs.map +1 -1
  98. package/lib/composables/proxiedModel.mjs +2 -1
  99. package/lib/composables/proxiedModel.mjs.map +1 -1
  100. package/lib/composables/theme.mjs +1 -1
  101. package/lib/composables/theme.mjs.map +1 -1
  102. package/lib/entry-bundler.mjs +1 -1
  103. package/lib/framework.mjs +1 -1
  104. package/lib/iconsets/mdi-svg.mjs +2 -2
  105. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  106. package/lib/index.d.ts +20 -20
  107. package/lib/labs/VDataTable/VDataTable.mjs +5 -5
  108. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  109. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  110. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  111. package/lib/labs/VDataTable/VDataTableRows.mjs +54 -48
  112. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  113. package/lib/labs/VDataTable/VDataTableServer.mjs +6 -4
  114. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  115. package/lib/labs/VDataTable/VDataTableVirtual.mjs +5 -4
  116. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  117. package/lib/labs/VDataTable/composables/options.mjs +2 -1
  118. package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
  119. package/lib/labs/VDataTable/index.d.ts +166 -107
  120. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +1 -0
  121. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  122. package/lib/labs/VSkeletonLoader/index.d.ts +9 -9
  123. package/lib/labs/components.d.ts +175 -116
  124. package/lib/locale/el.mjs +0 -0
  125. package/lib/locale/index.mjs +0 -0
  126. package/lib/util/helpers.mjs +1 -1
  127. package/lib/util/helpers.mjs.map +1 -1
  128. package/package.json +3 -3
@@ -30,8 +30,8 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
30
30
 
31
31
  declare function deepEqual(a: any, b: any): boolean;
32
32
  type SelectItemKey = boolean | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any);
33
- type EventProp<T = (...args: any[]) => any> = T | T[];
34
- declare const EventProp: PropType<EventProp<(...args: any[]) => any>>;
33
+ type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
34
+ declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
35
35
 
36
36
  interface LoaderSlotProps {
37
37
  color: string | undefined;
@@ -178,10 +178,10 @@ declare const VAutocomplete: {
178
178
  errorMessages: string | string[];
179
179
  maxErrors: string | number;
180
180
  rules: ValidationRule[];
181
+ persistentHint: boolean;
181
182
  clearable: boolean;
182
183
  persistentClear: boolean;
183
184
  singleLine: boolean;
184
- persistentHint: boolean;
185
185
  persistentPlaceholder: boolean;
186
186
  persistentCounter: boolean;
187
187
  valueComparator: typeof deepEqual;
@@ -263,12 +263,13 @@ declare const VAutocomplete: {
263
263
  default: string;
264
264
  };
265
265
  prependInnerIcon: vue.PropType<IconValue>;
266
- 'onClick:clear': vue.PropType<EventProp<(...args: any[]) => any>>;
267
- 'onClick:append': vue.PropType<EventProp<(...args: any[]) => any>>;
268
- 'onClick:prepend': vue.PropType<EventProp<(...args: any[]) => any>>;
269
- 'onClick:appendInner': vue.PropType<EventProp<(...args: any[]) => any>>;
270
- 'onClick:prependInner': vue.PropType<EventProp<(...args: any[]) => any>>;
266
+ 'onClick:clear': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
267
+ 'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
268
+ 'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
269
+ 'onClick:appendInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
270
+ 'onClick:prependInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
271
271
  focused: BooleanConstructor;
272
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
272
273
  validateOn: vue.PropType<"input" | "blur" | "submit" | undefined>;
273
274
  errorMessages: {
274
275
  type: vue.PropType<string | string[]>;
@@ -282,16 +283,17 @@ declare const VAutocomplete: {
282
283
  type: vue.PropType<ValidationRule[]>;
283
284
  default: () => never[];
284
285
  };
286
+ hint: StringConstructor;
287
+ persistentHint: BooleanConstructor;
285
288
  hideDetails: vue.PropType<boolean | "auto">;
286
289
  clearable: BooleanConstructor;
287
290
  persistentClear: BooleanConstructor;
288
291
  singleLine: BooleanConstructor;
289
- hint: StringConstructor;
290
- persistentHint: BooleanConstructor;
291
292
  persistentPlaceholder: BooleanConstructor;
292
293
  persistentCounter: BooleanConstructor;
293
294
  suffix: StringConstructor;
294
295
  counterValue: vue.PropType<(value: any) => number>;
296
+ modelModifiers: vue.PropType<Record<string, boolean>>;
295
297
  items: {
296
298
  type: vue.PropType<any[]>;
297
299
  default: () => never[];
@@ -664,9 +666,10 @@ declare const VAutocomplete: {
664
666
  noFilter: BooleanConstructor;
665
667
  search: StringConstructor;
666
668
  }, "multiple" | "$children" | "$slots" | "v-slots" | "items" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:details" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:item" | "returnObject" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">>> & {
669
+ "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
667
670
  "onUpdate:menu"?: ((val: boolean) => any) | undefined;
668
671
  "onUpdate:search"?: ((val: any) => any) | undefined;
669
- } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "reverse" | "type" | "error" | "active" | "direction" | "transition" | "menu" | "autofocus" | "eager" | "disabled" | "readonly" | "noDataText" | "messages" | "density" | "variant" | "clearIcon" | "focused" | "errorMessages" | "maxErrors" | "rules" | "clearable" | "persistentClear" | "singleLine" | "persistentHint" | "persistentPlaceholder" | "persistentCounter" | "valueComparator" | "itemTitle" | "itemValue" | "itemChildren" | "itemProps" | "chips" | "closableChips" | "hideNoData" | "hideSelected" | "menuIcon" | "openOnClear" | "filterMode" | "noFilter" | "filterKeys">;
672
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "reverse" | "type" | "error" | "active" | "direction" | "transition" | "menu" | "autofocus" | "eager" | "disabled" | "readonly" | "noDataText" | "messages" | "density" | "variant" | "clearIcon" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint" | "clearable" | "persistentClear" | "singleLine" | "persistentPlaceholder" | "persistentCounter" | "valueComparator" | "itemTitle" | "itemValue" | "itemChildren" | "itemProps" | "chips" | "closableChips" | "hideNoData" | "hideSelected" | "menuIcon" | "openOnClear" | "filterMode" | "noFilter" | "filterKeys">;
670
673
  $attrs: {
671
674
  [x: string]: unknown;
672
675
  };
@@ -678,7 +681,7 @@ declare const VAutocomplete: {
678
681
  }>;
679
682
  $root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
680
683
  $parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
681
- $emit: ((event: "update:menu", val: boolean) => void) & ((event: "update:search", val: any) => void);
684
+ $emit: ((event: "update:focused", focused: boolean) => void) & ((event: "update:menu", val: boolean) => void) & ((event: "update:search", val: any) => void);
682
685
  $el: any;
683
686
  $options: vue.ComponentOptionsBase<Readonly<vue.ExtractPropTypes<Omit<{
684
687
  transition: Omit<{
@@ -745,12 +748,13 @@ declare const VAutocomplete: {
745
748
  default: string;
746
749
  };
747
750
  prependInnerIcon: vue.PropType<IconValue>;
748
- 'onClick:clear': vue.PropType<EventProp<(...args: any[]) => any>>;
749
- 'onClick:append': vue.PropType<EventProp<(...args: any[]) => any>>;
750
- 'onClick:prepend': vue.PropType<EventProp<(...args: any[]) => any>>;
751
- 'onClick:appendInner': vue.PropType<EventProp<(...args: any[]) => any>>;
752
- 'onClick:prependInner': vue.PropType<EventProp<(...args: any[]) => any>>;
751
+ 'onClick:clear': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
752
+ 'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
753
+ 'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
754
+ 'onClick:appendInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
755
+ 'onClick:prependInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
753
756
  focused: BooleanConstructor;
757
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
754
758
  validateOn: vue.PropType<"input" | "blur" | "submit" | undefined>;
755
759
  errorMessages: {
756
760
  type: vue.PropType<string | string[]>;
@@ -764,16 +768,17 @@ declare const VAutocomplete: {
764
768
  type: vue.PropType<ValidationRule[]>;
765
769
  default: () => never[];
766
770
  };
771
+ hint: StringConstructor;
772
+ persistentHint: BooleanConstructor;
767
773
  hideDetails: vue.PropType<boolean | "auto">;
768
774
  clearable: BooleanConstructor;
769
775
  persistentClear: BooleanConstructor;
770
776
  singleLine: BooleanConstructor;
771
- hint: StringConstructor;
772
- persistentHint: BooleanConstructor;
773
777
  persistentPlaceholder: BooleanConstructor;
774
778
  persistentCounter: BooleanConstructor;
775
779
  suffix: StringConstructor;
776
780
  counterValue: vue.PropType<(value: any) => number>;
781
+ modelModifiers: vue.PropType<Record<string, boolean>>;
777
782
  items: {
778
783
  type: vue.PropType<any[]>;
779
784
  default: () => never[];
@@ -1146,6 +1151,7 @@ declare const VAutocomplete: {
1146
1151
  noFilter: BooleanConstructor;
1147
1152
  search: StringConstructor;
1148
1153
  }, "multiple" | "$children" | "$slots" | "v-slots" | "items" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:details" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:item" | "returnObject" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">>> & {
1154
+ "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
1149
1155
  "onUpdate:menu"?: ((val: boolean) => any) | undefined;
1150
1156
  "onUpdate:search"?: ((val: any) => any) | undefined;
1151
1157
  }, {
@@ -1158,6 +1164,7 @@ declare const VAutocomplete: {
1158
1164
  filteredItems: vue.Ref<InternalItem<any>[]>;
1159
1165
  select: (item: InternalItem) => void;
1160
1166
  } & Omit<any, string | number | symbol>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
1167
+ 'update:focused': (focused: boolean) => boolean;
1161
1168
  'update:search': (val: any) => true;
1162
1169
  'update:modelValue': (val: any) => boolean;
1163
1170
  'update:menu': (val: boolean) => true;
@@ -1184,10 +1191,10 @@ declare const VAutocomplete: {
1184
1191
  errorMessages: string | string[];
1185
1192
  maxErrors: string | number;
1186
1193
  rules: ValidationRule[];
1194
+ persistentHint: boolean;
1187
1195
  clearable: boolean;
1188
1196
  persistentClear: boolean;
1189
1197
  singleLine: boolean;
1190
- persistentHint: boolean;
1191
1198
  persistentPlaceholder: boolean;
1192
1199
  persistentCounter: boolean;
1193
1200
  valueComparator: typeof deepEqual;
@@ -1289,12 +1296,13 @@ declare const VAutocomplete: {
1289
1296
  default: string;
1290
1297
  };
1291
1298
  prependInnerIcon: vue.PropType<IconValue>;
1292
- 'onClick:clear': vue.PropType<EventProp<(...args: any[]) => any>>;
1293
- 'onClick:append': vue.PropType<EventProp<(...args: any[]) => any>>;
1294
- 'onClick:prepend': vue.PropType<EventProp<(...args: any[]) => any>>;
1295
- 'onClick:appendInner': vue.PropType<EventProp<(...args: any[]) => any>>;
1296
- 'onClick:prependInner': vue.PropType<EventProp<(...args: any[]) => any>>;
1299
+ 'onClick:clear': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1300
+ 'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1301
+ 'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1302
+ 'onClick:appendInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1303
+ 'onClick:prependInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1297
1304
  focused: BooleanConstructor;
1305
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
1298
1306
  validateOn: vue.PropType<"input" | "blur" | "submit" | undefined>;
1299
1307
  errorMessages: {
1300
1308
  type: vue.PropType<string | string[]>;
@@ -1308,16 +1316,17 @@ declare const VAutocomplete: {
1308
1316
  type: vue.PropType<ValidationRule[]>;
1309
1317
  default: () => never[];
1310
1318
  };
1319
+ hint: StringConstructor;
1320
+ persistentHint: BooleanConstructor;
1311
1321
  hideDetails: vue.PropType<boolean | "auto">;
1312
1322
  clearable: BooleanConstructor;
1313
1323
  persistentClear: BooleanConstructor;
1314
1324
  singleLine: BooleanConstructor;
1315
- hint: StringConstructor;
1316
- persistentHint: BooleanConstructor;
1317
1325
  persistentPlaceholder: BooleanConstructor;
1318
1326
  persistentCounter: BooleanConstructor;
1319
1327
  suffix: StringConstructor;
1320
1328
  counterValue: vue.PropType<(value: any) => number>;
1329
+ modelModifiers: vue.PropType<Record<string, boolean>>;
1321
1330
  items: {
1322
1331
  type: vue.PropType<any[]>;
1323
1332
  default: () => never[];
@@ -1690,6 +1699,7 @@ declare const VAutocomplete: {
1690
1699
  noFilter: BooleanConstructor;
1691
1700
  search: StringConstructor;
1692
1701
  }, "multiple" | "$children" | "$slots" | "v-slots" | "items" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:details" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:item" | "returnObject" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">>> & {
1702
+ "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
1693
1703
  "onUpdate:menu"?: ((val: boolean) => any) | undefined;
1694
1704
  "onUpdate:search"?: ((val: any) => any) | undefined;
1695
1705
  } & vue.ShallowUnwrapRef<{
@@ -1770,12 +1780,13 @@ declare const VAutocomplete: {
1770
1780
  default: string;
1771
1781
  };
1772
1782
  prependInnerIcon: vue.PropType<IconValue>;
1773
- 'onClick:clear': vue.PropType<EventProp<(...args: any[]) => any>>;
1774
- 'onClick:append': vue.PropType<EventProp<(...args: any[]) => any>>;
1775
- 'onClick:prepend': vue.PropType<EventProp<(...args: any[]) => any>>;
1776
- 'onClick:appendInner': vue.PropType<EventProp<(...args: any[]) => any>>;
1777
- 'onClick:prependInner': vue.PropType<EventProp<(...args: any[]) => any>>;
1783
+ 'onClick:clear': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1784
+ 'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1785
+ 'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1786
+ 'onClick:appendInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1787
+ 'onClick:prependInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
1778
1788
  focused: BooleanConstructor;
1789
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
1779
1790
  validateOn: vue.PropType<"input" | "blur" | "submit" | undefined>;
1780
1791
  errorMessages: {
1781
1792
  type: vue.PropType<string | string[]>;
@@ -1789,16 +1800,17 @@ declare const VAutocomplete: {
1789
1800
  type: vue.PropType<ValidationRule[]>;
1790
1801
  default: () => never[];
1791
1802
  };
1803
+ hint: StringConstructor;
1804
+ persistentHint: BooleanConstructor;
1792
1805
  hideDetails: vue.PropType<boolean | "auto">;
1793
1806
  clearable: BooleanConstructor;
1794
1807
  persistentClear: BooleanConstructor;
1795
1808
  singleLine: BooleanConstructor;
1796
- hint: StringConstructor;
1797
- persistentHint: BooleanConstructor;
1798
1809
  persistentPlaceholder: BooleanConstructor;
1799
1810
  persistentCounter: BooleanConstructor;
1800
1811
  suffix: StringConstructor;
1801
1812
  counterValue: vue.PropType<(value: any) => number>;
1813
+ modelModifiers: vue.PropType<Record<string, boolean>>;
1802
1814
  items: {
1803
1815
  type: vue.PropType<any[]>;
1804
1816
  default: () => never[];
@@ -2171,6 +2183,7 @@ declare const VAutocomplete: {
2171
2183
  noFilter: BooleanConstructor;
2172
2184
  search: StringConstructor;
2173
2185
  }, "multiple" | "$children" | "$slots" | "v-slots" | "items" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:details" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:item" | "returnObject" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">>> & {
2186
+ "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
2174
2187
  "onUpdate:menu"?: ((val: boolean) => any) | undefined;
2175
2188
  "onUpdate:search"?: ((val: any) => any) | undefined;
2176
2189
  }, {
@@ -2183,6 +2196,7 @@ declare const VAutocomplete: {
2183
2196
  filteredItems: vue.Ref<InternalItem<any>[]>;
2184
2197
  select: (item: InternalItem) => void;
2185
2198
  } & Omit<any, string | number | symbol>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
2199
+ 'update:focused': (focused: boolean) => boolean;
2186
2200
  'update:search': (val: any) => true;
2187
2201
  'update:modelValue': (val: any) => boolean;
2188
2202
  'update:menu': (val: boolean) => true;
@@ -2209,10 +2223,10 @@ declare const VAutocomplete: {
2209
2223
  errorMessages: string | string[];
2210
2224
  maxErrors: string | number;
2211
2225
  rules: ValidationRule[];
2226
+ persistentHint: boolean;
2212
2227
  clearable: boolean;
2213
2228
  persistentClear: boolean;
2214
2229
  singleLine: boolean;
2215
- persistentHint: boolean;
2216
2230
  persistentPlaceholder: boolean;
2217
2231
  persistentCounter: boolean;
2218
2232
  valueComparator: typeof deepEqual;
@@ -2410,12 +2424,13 @@ declare const VAutocomplete: {
2410
2424
  default: string;
2411
2425
  };
2412
2426
  prependInnerIcon: vue.PropType<IconValue>;
2413
- 'onClick:clear': vue.PropType<EventProp<(...args: any[]) => any>>;
2414
- 'onClick:append': vue.PropType<EventProp<(...args: any[]) => any>>;
2415
- 'onClick:prepend': vue.PropType<EventProp<(...args: any[]) => any>>;
2416
- 'onClick:appendInner': vue.PropType<EventProp<(...args: any[]) => any>>;
2417
- 'onClick:prependInner': vue.PropType<EventProp<(...args: any[]) => any>>;
2427
+ 'onClick:clear': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2428
+ 'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2429
+ 'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2430
+ 'onClick:appendInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2431
+ 'onClick:prependInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2418
2432
  focused: BooleanConstructor;
2433
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
2419
2434
  validateOn: vue.PropType<"input" | "blur" | "submit" | undefined>;
2420
2435
  errorMessages: {
2421
2436
  type: vue.PropType<string | string[]>;
@@ -2429,16 +2444,17 @@ declare const VAutocomplete: {
2429
2444
  type: vue.PropType<ValidationRule[]>;
2430
2445
  default: () => never[];
2431
2446
  };
2447
+ hint: StringConstructor;
2448
+ persistentHint: BooleanConstructor;
2432
2449
  hideDetails: vue.PropType<boolean | "auto">;
2433
2450
  clearable: BooleanConstructor;
2434
2451
  persistentClear: BooleanConstructor;
2435
2452
  singleLine: BooleanConstructor;
2436
- hint: StringConstructor;
2437
- persistentHint: BooleanConstructor;
2438
2453
  persistentPlaceholder: BooleanConstructor;
2439
2454
  persistentCounter: BooleanConstructor;
2440
2455
  suffix: StringConstructor;
2441
2456
  counterValue: vue.PropType<(value: any) => number>;
2457
+ modelModifiers: vue.PropType<Record<string, boolean>>;
2442
2458
  items: {
2443
2459
  type: vue.PropType<any[]>;
2444
2460
  default: () => never[];
@@ -2875,12 +2891,13 @@ declare const VAutocomplete: {
2875
2891
  default: string;
2876
2892
  };
2877
2893
  prependInnerIcon: vue.PropType<IconValue>;
2878
- 'onClick:clear': vue.PropType<EventProp<(...args: any[]) => any>>;
2879
- 'onClick:append': vue.PropType<EventProp<(...args: any[]) => any>>;
2880
- 'onClick:prepend': vue.PropType<EventProp<(...args: any[]) => any>>;
2881
- 'onClick:appendInner': vue.PropType<EventProp<(...args: any[]) => any>>;
2882
- 'onClick:prependInner': vue.PropType<EventProp<(...args: any[]) => any>>;
2894
+ 'onClick:clear': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2895
+ 'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2896
+ 'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2897
+ 'onClick:appendInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2898
+ 'onClick:prependInner': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
2883
2899
  focused: BooleanConstructor;
2900
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
2884
2901
  validateOn: vue.PropType<"input" | "blur" | "submit" | undefined>;
2885
2902
  errorMessages: {
2886
2903
  type: vue.PropType<string | string[]>;
@@ -2894,16 +2911,17 @@ declare const VAutocomplete: {
2894
2911
  type: vue.PropType<ValidationRule[]>;
2895
2912
  default: () => never[];
2896
2913
  };
2914
+ hint: StringConstructor;
2915
+ persistentHint: BooleanConstructor;
2897
2916
  hideDetails: vue.PropType<boolean | "auto">;
2898
2917
  clearable: BooleanConstructor;
2899
2918
  persistentClear: BooleanConstructor;
2900
2919
  singleLine: BooleanConstructor;
2901
- hint: StringConstructor;
2902
- persistentHint: BooleanConstructor;
2903
2920
  persistentPlaceholder: BooleanConstructor;
2904
2921
  persistentCounter: BooleanConstructor;
2905
2922
  suffix: StringConstructor;
2906
2923
  counterValue: vue.PropType<(value: any) => number>;
2924
+ modelModifiers: vue.PropType<Record<string, boolean>>;
2907
2925
  items: {
2908
2926
  type: vue.PropType<any[]>;
2909
2927
  default: () => never[];
@@ -1 +1 @@
1
- {"version":3,"file":"VCard.mjs","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeBorderProps","useBorder","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","computed","genericComponent","useRender","VCard","name","directives","props","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","subtitle","text","title","variant","setup","_ref","attrs","slots","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","loaderClasses","locationStyles","positionClasses","roundedClasses","isLink","value","isClickable","Tag","tag","hasTitle","hasSubtitle","hasHeader","hasAppend","append","hasPrepend","prepend","hasImage","hasCardItem","hasText","_withDirectives","_createVNode","href","navigate","cover","src","loading","loader","item","actions","_resolveDirective"],"sources":["../../../src/components/VCard/VCard.tsx"],"sourcesContent":["/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VCardActions } from './VCardActions'\nimport { VCardItem } from './VCardItem'\nimport { VCardText } from './VCardText'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\n\nexport type VCardSlots = MakeSlots<{\n default: []\n actions: []\n title: []\n subtitle: []\n text: []\n loader: []\n image: []\n prepend: []\n append: []\n}>\n\nexport const VCard = genericComponent<VCardSlots>()({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: {\n type: Boolean,\n default: undefined,\n },\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: String,\n text: String,\n title: String,\n\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLoaderProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeVariantProps({ variant: 'elevated' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { loaderClasses } = useLoader(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\n\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value)\n )\n\n useRender(() => {\n const Tag = isLink.value ? 'a' : props.tag\n const hasTitle = !!(slots.title || props.title)\n const hasSubtitle = !!(slots.subtitle || props.subtitle)\n const hasHeader = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasCardItem = hasHeader || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n loaderClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n href={ link.href.value }\n onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-card__image\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n cover\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\n )}\n </div>\n )}\n\n <LoaderSlot\n name=\"v-card\"\n active={ !!props.loading }\n color={ typeof props.loading === 'boolean' ? undefined : props.loading }\n v-slots={{ default: slots.loader }}\n />\n\n { hasCardItem && (\n <VCardItem\n key=\"item\"\n prependAvatar={ props.prependAvatar }\n prependIcon={ props.prependIcon }\n title={ props.title }\n subtitle={ props.subtitle }\n appendAvatar={ props.appendAvatar }\n appendIcon={ props.appendIcon }\n >\n {{\n default: slots.item,\n prepend: slots.prepend,\n title: slots.title,\n subtitle: slots.subtitle,\n append: slots.append,\n }}\n </VCardItem>\n )}\n\n { hasText && (\n <VCardText key=\"text\">\n { slots.text?.() ?? props.text }\n </VCardText>\n )}\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n )}\n\n { genOverlays(isClickable.value, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":";AAAA;;AAEA;AACA;;AAEA;AAAA,SACSA,YAAY;AAAA,SACZC,SAAS;AAAA,SACTC,SAAS;AAAA,SACTC,iBAAiB;AAAA,SACjBC,IAAI,6BAEb;AAAA,SACSC,MAAM,6CAEf;AAAA,SACSC,WAAW,EAAEC,gBAAgB,EAAEC,UAAU;AAAA,SACzCC,SAAS;AAAA,SACTC,UAAU,EAAEC,eAAe,EAAEC,SAAS;AAAA,SACtCC,eAAe,EAAEC,SAAS;AAAA,SAC1BC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,iBAAiB,EAAEC,WAAW;AAAA,SAC9BC,iBAAiB,EAAEC,WAAW;AAAA,SAC9BC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,eAAe,EAAEC,OAAO;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,SAAS,gCAEpC;AAeA,OAAO,MAAMC,KAAK,GAAGF,gBAAgB,EAAc,CAAC;EAClDG,IAAI,EAAE,OAAO;EAEbC,UAAU,EAAE;IAAEhC;EAAO,CAAC;EAEtBiC,KAAK,EAAE;IACLC,YAAY,EAAEC,MAAM;IACpBC,UAAU,EAAEhC,SAAS;IACrBiC,QAAQ,EAAEC,OAAO;IACjBC,IAAI,EAAED,OAAO;IACbE,KAAK,EAAEF,OAAO;IACdG,KAAK,EAAEN,MAAM;IACbO,IAAI,EAAE;MACJC,IAAI,EAAEL,OAAO;MACbM,OAAO,EAAEC;IACX,CAAC;IACDC,aAAa,EAAEX,MAAM;IACrBY,WAAW,EAAE3C,SAAS;IACtB4C,MAAM,EAAE;MACNL,IAAI,EAAEL,OAAO;MACbM,OAAO,EAAE;IACX,CAAC;IACDK,QAAQ,EAAEd,MAAM;IAChBe,IAAI,EAAEf,MAAM;IACZgB,KAAK,EAAEhB,MAAM;IAEb,GAAGV,cAAc,EAAE;IACnB,GAAGjB,eAAe,EAAE;IACpB,GAAGE,gBAAgB,EAAE;IACrB,GAAGE,kBAAkB,EAAE;IACvB,GAAGE,kBAAkB,EAAE;IACvB,GAAGR,eAAe,EAAE;IACpB,GAAGU,iBAAiB,EAAE;IACtB,GAAGE,iBAAiB,EAAE;IACtB,GAAGE,gBAAgB,EAAE;IACrB,GAAGE,eAAe,EAAE;IACpB,GAAGE,YAAY,EAAE;IACjB,GAAGtB,gBAAgB,CAAC;MAAEkD,OAAO,EAAE;IAAW,CAAC;EAC7C,CAAC;EAEDC,KAAKA,CAAEpB,KAAK,EAAAqB,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAM;MAAEG;IAAa,CAAC,GAAG/B,YAAY,CAACO,KAAK,CAAC;IAC5C,MAAM;MAAEyB;IAAc,CAAC,GAAGjD,SAAS,CAACwB,KAAK,CAAC;IAC1C,MAAM;MAAE0B,YAAY;MAAEC,WAAW;MAAEC;IAAe,CAAC,GAAG1D,UAAU,CAAC8B,KAAK,CAAC;IACvE,MAAM;MAAE6B;IAAe,CAAC,GAAGnD,UAAU,CAACsB,KAAK,CAAC;IAC5C,MAAM;MAAE8B;IAAgB,CAAC,GAAGlD,YAAY,CAACoB,KAAK,CAAC;IAC/C,MAAM;MAAE+B;IAAiB,CAAC,GAAGjD,YAAY,CAACkB,KAAK,CAAC;IAChD,MAAM;MAAEgC;IAAc,CAAC,GAAG1D,SAAS,CAAC0B,KAAK,CAAC;IAC1C,MAAM;MAAEiC;IAAe,CAAC,GAAGjD,WAAW,CAACgB,KAAK,CAAC;IAC7C,MAAM;MAAEkC;IAAgB,CAAC,GAAGhD,WAAW,CAACc,KAAK,CAAC;IAC9C,MAAM;MAAEmC;IAAe,CAAC,GAAG/C,UAAU,CAACY,KAAK,CAAC;IAC5C,MAAMS,IAAI,GAAGnB,OAAO,CAACU,KAAK,EAAEsB,KAAK,CAAC;IAElC,MAAMc,MAAM,GAAG1C,QAAQ,CAAC,MAAMM,KAAK,CAACS,IAAI,KAAK,KAAK,IAAIA,IAAI,CAAC2B,MAAM,CAACC,KAAK,CAAC;IACxE,MAAMC,WAAW,GAAG5C,QAAQ,CAAC,MAC3B,CAACM,KAAK,CAACI,QAAQ,IACfJ,KAAK,CAACS,IAAI,KAAK,KAAK,KACnBT,KAAK,CAACS,IAAI,IAAIA,IAAI,CAAC6B,WAAW,CAACD,KAAK,CAAC,CACvC;IAEDzC,SAAS,CAAC,MAAM;MACd,MAAM2C,GAAG,GAAGH,MAAM,CAACC,KAAK,GAAG,GAAG,GAAGrC,KAAK,CAACwC,GAAG;MAC1C,MAAMC,QAAQ,GAAG,CAAC,EAAElB,KAAK,CAACL,KAAK,IAAIlB,KAAK,CAACkB,KAAK,CAAC;MAC/C,MAAMwB,WAAW,GAAG,CAAC,EAAEnB,KAAK,CAACP,QAAQ,IAAIhB,KAAK,CAACgB,QAAQ,CAAC;MACxD,MAAM2B,SAAS,GAAGF,QAAQ,IAAIC,WAAW;MACzC,MAAME,SAAS,GAAG,CAAC,EAAErB,KAAK,CAACsB,MAAM,IAAI7C,KAAK,CAACC,YAAY,IAAID,KAAK,CAACG,UAAU,CAAC;MAC5E,MAAM2C,UAAU,GAAG,CAAC,EAAEvB,KAAK,CAACwB,OAAO,IAAI/C,KAAK,CAACa,aAAa,IAAIb,KAAK,CAACc,WAAW,CAAC;MAChF,MAAMkC,QAAQ,GAAG,CAAC,EAAEzB,KAAK,CAACf,KAAK,IAAIR,KAAK,CAACQ,KAAK,CAAC;MAC/C,MAAMyC,WAAW,GAAGN,SAAS,IAAIG,UAAU,IAAIF,SAAS;MACxD,MAAMM,OAAO,GAAG,CAAC,EAAE3B,KAAK,CAACN,IAAI,IAAIjB,KAAK,CAACiB,IAAI,CAAC;MAE5C,OAAAkC,eAAA,CAAAC,YAAA,CAAAb,GAAA;QAAA,SAEW,CACL,QAAQ,EACR;UACE,kBAAkB,EAAEvC,KAAK,CAACI,QAAQ;UAClC,cAAc,EAAEJ,KAAK,CAACM,IAAI;UAC1B,eAAe,EAAEN,KAAK,CAACO,KAAK,IAAI,EAAEP,KAAK,CAACI,QAAQ,IAAIJ,KAAK,CAACM,IAAI,CAAC;UAC/D,cAAc,EAAEgC,WAAW,CAACD;QAC9B,CAAC,EACDb,YAAY,CAACa,KAAK,EAClBZ,aAAa,CAACY,KAAK,EACnBX,YAAY,CAACW,KAAK,EAClBR,cAAc,CAACQ,KAAK,EACpBN,gBAAgB,CAACM,KAAK,EACtBL,aAAa,CAACK,KAAK,EACnBH,eAAe,CAACG,KAAK,EACrBF,cAAc,CAACE,KAAK,EACpBT,cAAc,CAACS,KAAK,CACrB;QAAA,SACM,CACLV,WAAW,CAACU,KAAK,EACjBP,eAAe,CAACO,KAAK,EACrBJ,cAAc,CAACI,KAAK,CACrB;QAAA,QACM5B,IAAI,CAAC4C,IAAI,CAAChB,KAAK;QAAA,WACZC,WAAW,CAACD,KAAK,IAAI5B,IAAI,CAAC6C,QAAQ;QAAA,YAEjCtD,KAAK,CAACI,QAAQ,GAAG,CAAC,CAAC,GAAGQ;MAAS;QAAAD,OAAA,EAAAA,CAAA,MAExCqC,QAAQ,IAAAI,YAAA;UAAA,OACC,OAAO;UAAA,SAAO;QAAe,IAClC,CAAC7B,KAAK,CAACf,KAAK,GAAA4C,YAAA,CAAAtF,IAAA;UAAA,OAEN,WAAW;UAAA;UAAA,OAETkC,KAAK,CAACQ;QAAK,WAAA4C,YAAA,CAAAvF,iBAAA;UAAA,OAIb,gBAAgB;UAAA,YACT,CAACmC,KAAK,CAACQ,KAAK;UAAA,YACb;YACR1C,IAAI,EAAE;cACJyF,KAAK,EAAE,IAAI;cACXC,GAAG,EAAExD,KAAK,CAACQ;YACb;UACF;QAAC,GACiBe,KAAK,CAACf,KAAK,CAEhC,EAEJ,EAAA4C,YAAA,CAAAhF,UAAA;UAAA,QAGM,QAAQ;UAAA,UACJ,CAAC,CAAC4B,KAAK,CAACyD,OAAO;UAAA,SAChB,OAAOzD,KAAK,CAACyD,OAAO,KAAK,SAAS,GAAG7C,SAAS,GAAGZ,KAAK,CAACyD;QAAO,GAC7D;UAAE9C,OAAO,EAAEY,KAAK,CAACmC;QAAO,CAAC,GAGlCT,WAAW,IAAAG,YAAA,CAAAzF,SAAA;UAAA,OAEL,MAAM;UAAA,iBACMqC,KAAK,CAACa,aAAa;UAAA,eACrBb,KAAK,CAACc,WAAW;UAAA,SACvBd,KAAK,CAACkB,KAAK;UAAA,YACRlB,KAAK,CAACgB,QAAQ;UAAA,gBACVhB,KAAK,CAACC,YAAY;UAAA,cACpBD,KAAK,CAACG;QAAU;UAG3BQ,OAAO,EAAEY,KAAK,CAACoC,IAAI;UACnBZ,OAAO,EAAExB,KAAK,CAACwB,OAAO;UACtB7B,KAAK,EAAEK,KAAK,CAACL,KAAK;UAClBF,QAAQ,EAAEO,KAAK,CAACP,QAAQ;UACxB6B,MAAM,EAAEtB,KAAK,CAACsB;QAAM,EAGzB,EAECK,OAAO,IAAAE,YAAA,CAAAxF,SAAA;UAAA,OACQ;QAAM;UAAA+C,OAAA,EAAAA,CAAA,MACjBY,KAAK,CAACN,IAAI,IAAI,IAAIjB,KAAK,CAACiB,IAAI;QAAA,EAEjC,EAECM,KAAK,CAACZ,OAAO,IAAI,EAEjBY,KAAK,CAACqC,OAAO,IAAAR,YAAA,CAAA1F,YAAA,QACU;UAAEiD,OAAO,EAAEY,KAAK,CAACqC;QAAQ,CAAC,CAClD,EAEC5F,WAAW,CAACsE,WAAW,CAACD,KAAK,EAAE,QAAQ,CAAC;MAAA,MAAAwB,iBAAA,YAlE/BvB,WAAW,CAACD,KAAK,IAAIrC,KAAK,CAACe,MAAM;IAqElD,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VCard.mjs","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeBorderProps","useBorder","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","computed","genericComponent","useRender","VCard","name","directives","props","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","subtitle","text","title","variant","setup","_ref","attrs","slots","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","loaderClasses","locationStyles","positionClasses","roundedClasses","isLink","value","isClickable","Tag","tag","hasTitle","hasSubtitle","hasHeader","hasAppend","append","hasPrepend","prepend","hasImage","hasCardItem","hasText","_withDirectives","_createVNode","href","navigate","cover","src","loading","loader","item","actions","_resolveDirective"],"sources":["../../../src/components/VCard/VCard.tsx"],"sourcesContent":["/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VCardActions } from './VCardActions'\nimport { VCardItem } from './VCardItem'\nimport { VCardText } from './VCardText'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\nimport type { LoaderSlotProps } from '@/composables/loader'\n\nexport type VCardSlots = MakeSlots<{\n default: []\n actions: []\n title: []\n subtitle: []\n text: []\n loader: [LoaderSlotProps]\n image: []\n prepend: []\n append: []\n}>\n\nexport const VCard = genericComponent<VCardSlots>()({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: {\n type: Boolean,\n default: undefined,\n },\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: String,\n text: String,\n title: String,\n\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLoaderProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeVariantProps({ variant: 'elevated' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { loaderClasses } = useLoader(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\n\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value)\n )\n\n useRender(() => {\n const Tag = isLink.value ? 'a' : props.tag\n const hasTitle = !!(slots.title || props.title)\n const hasSubtitle = !!(slots.subtitle || props.subtitle)\n const hasHeader = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasCardItem = hasHeader || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n loaderClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n href={ link.href.value }\n onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-card__image\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n cover\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\n )}\n </div>\n )}\n\n <LoaderSlot\n name=\"v-card\"\n active={ !!props.loading }\n color={ typeof props.loading === 'boolean' ? undefined : props.loading }\n v-slots={{ default: slots.loader }}\n />\n\n { hasCardItem && (\n <VCardItem\n key=\"item\"\n prependAvatar={ props.prependAvatar }\n prependIcon={ props.prependIcon }\n title={ props.title }\n subtitle={ props.subtitle }\n appendAvatar={ props.appendAvatar }\n appendIcon={ props.appendIcon }\n >\n {{\n default: slots.item,\n prepend: slots.prepend,\n title: slots.title,\n subtitle: slots.subtitle,\n append: slots.append,\n }}\n </VCardItem>\n )}\n\n { hasText && (\n <VCardText key=\"text\">\n { slots.text?.() ?? props.text }\n </VCardText>\n )}\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n )}\n\n { genOverlays(isClickable.value, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":"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"}
@@ -18,6 +18,11 @@ type Density = null | 'default' | 'comfortable' | 'compact';
18
18
  type IconValue = string | JSXComponent;
19
19
  declare const IconValue: PropType<IconValue>;
20
20
 
21
+ interface LoaderSlotProps {
22
+ color: string | undefined;
23
+ isActive: boolean;
24
+ }
25
+
21
26
  declare const VCard: {
22
27
  new (...args: any[]): {
23
28
  $: vue.ComponentInternalInstance;
@@ -77,7 +82,7 @@ declare const VCard: {
77
82
  title?: (() => vue.VNodeChild) | undefined;
78
83
  subtitle?: (() => vue.VNodeChild) | undefined;
79
84
  text?: (() => vue.VNodeChild) | undefined;
80
- loader?: (() => vue.VNodeChild) | undefined;
85
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
81
86
  image?: (() => vue.VNodeChild) | undefined;
82
87
  prepend?: (() => vue.VNodeChild) | undefined;
83
88
  append?: (() => vue.VNodeChild) | undefined;
@@ -88,7 +93,7 @@ declare const VCard: {
88
93
  title?: (() => vue.VNodeChild) | undefined;
89
94
  subtitle?: (() => vue.VNodeChild) | undefined;
90
95
  text?: (() => vue.VNodeChild) | undefined;
91
- loader?: (() => vue.VNodeChild) | undefined;
96
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
92
97
  image?: (() => vue.VNodeChild) | undefined;
93
98
  prepend?: (() => vue.VNodeChild) | undefined;
94
99
  append?: (() => vue.VNodeChild) | undefined;
@@ -99,7 +104,7 @@ declare const VCard: {
99
104
  title?: false | (() => vue.VNodeChild) | undefined;
100
105
  subtitle?: false | (() => vue.VNodeChild) | undefined;
101
106
  text?: false | (() => vue.VNodeChild) | undefined;
102
- loader?: false | (() => vue.VNodeChild) | undefined;
107
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
103
108
  image?: false | (() => vue.VNodeChild) | undefined;
104
109
  prepend?: false | (() => vue.VNodeChild) | undefined;
105
110
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -110,7 +115,7 @@ declare const VCard: {
110
115
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
111
116
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
112
117
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
113
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
118
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
114
119
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
115
120
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
116
121
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -171,7 +176,7 @@ declare const VCard: {
171
176
  title?: (() => vue.VNodeChild) | undefined;
172
177
  subtitle?: (() => vue.VNodeChild) | undefined;
173
178
  text?: (() => vue.VNodeChild) | undefined;
174
- loader?: (() => vue.VNodeChild) | undefined;
179
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
175
180
  image?: (() => vue.VNodeChild) | undefined;
176
181
  prepend?: (() => vue.VNodeChild) | undefined;
177
182
  append?: (() => vue.VNodeChild) | undefined;
@@ -182,7 +187,7 @@ declare const VCard: {
182
187
  title?: (() => vue.VNodeChild) | undefined;
183
188
  subtitle?: (() => vue.VNodeChild) | undefined;
184
189
  text?: (() => vue.VNodeChild) | undefined;
185
- loader?: (() => vue.VNodeChild) | undefined;
190
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
186
191
  image?: (() => vue.VNodeChild) | undefined;
187
192
  prepend?: (() => vue.VNodeChild) | undefined;
188
193
  append?: (() => vue.VNodeChild) | undefined;
@@ -193,7 +198,7 @@ declare const VCard: {
193
198
  title?: false | (() => vue.VNodeChild) | undefined;
194
199
  subtitle?: false | (() => vue.VNodeChild) | undefined;
195
200
  text?: false | (() => vue.VNodeChild) | undefined;
196
- loader?: false | (() => vue.VNodeChild) | undefined;
201
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
197
202
  image?: false | (() => vue.VNodeChild) | undefined;
198
203
  prepend?: false | (() => vue.VNodeChild) | undefined;
199
204
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -204,7 +209,7 @@ declare const VCard: {
204
209
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
205
210
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
206
211
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
207
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
212
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
208
213
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
209
214
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
210
215
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -283,7 +288,7 @@ declare const VCard: {
283
288
  title?: (() => vue.VNodeChild) | undefined;
284
289
  subtitle?: (() => vue.VNodeChild) | undefined;
285
290
  text?: (() => vue.VNodeChild) | undefined;
286
- loader?: (() => vue.VNodeChild) | undefined;
291
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
287
292
  image?: (() => vue.VNodeChild) | undefined;
288
293
  prepend?: (() => vue.VNodeChild) | undefined;
289
294
  append?: (() => vue.VNodeChild) | undefined;
@@ -294,7 +299,7 @@ declare const VCard: {
294
299
  title?: (() => vue.VNodeChild) | undefined;
295
300
  subtitle?: (() => vue.VNodeChild) | undefined;
296
301
  text?: (() => vue.VNodeChild) | undefined;
297
- loader?: (() => vue.VNodeChild) | undefined;
302
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
298
303
  image?: (() => vue.VNodeChild) | undefined;
299
304
  prepend?: (() => vue.VNodeChild) | undefined;
300
305
  append?: (() => vue.VNodeChild) | undefined;
@@ -305,7 +310,7 @@ declare const VCard: {
305
310
  title?: false | (() => vue.VNodeChild) | undefined;
306
311
  subtitle?: false | (() => vue.VNodeChild) | undefined;
307
312
  text?: false | (() => vue.VNodeChild) | undefined;
308
- loader?: false | (() => vue.VNodeChild) | undefined;
313
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
309
314
  image?: false | (() => vue.VNodeChild) | undefined;
310
315
  prepend?: false | (() => vue.VNodeChild) | undefined;
311
316
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -316,7 +321,7 @@ declare const VCard: {
316
321
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
317
322
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
318
323
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
319
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
324
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
320
325
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
321
326
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
322
327
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -367,7 +372,7 @@ declare const VCard: {
367
372
  title?: (() => vue.VNodeChild) | undefined;
368
373
  subtitle?: (() => vue.VNodeChild) | undefined;
369
374
  text?: (() => vue.VNodeChild) | undefined;
370
- loader?: (() => vue.VNodeChild) | undefined;
375
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
371
376
  image?: (() => vue.VNodeChild) | undefined;
372
377
  prepend?: (() => vue.VNodeChild) | undefined;
373
378
  append?: (() => vue.VNodeChild) | undefined;
@@ -378,7 +383,7 @@ declare const VCard: {
378
383
  title?: (() => vue.VNodeChild) | undefined;
379
384
  subtitle?: (() => vue.VNodeChild) | undefined;
380
385
  text?: (() => vue.VNodeChild) | undefined;
381
- loader?: (() => vue.VNodeChild) | undefined;
386
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
382
387
  image?: (() => vue.VNodeChild) | undefined;
383
388
  prepend?: (() => vue.VNodeChild) | undefined;
384
389
  append?: (() => vue.VNodeChild) | undefined;
@@ -389,7 +394,7 @@ declare const VCard: {
389
394
  title?: false | (() => vue.VNodeChild) | undefined;
390
395
  subtitle?: false | (() => vue.VNodeChild) | undefined;
391
396
  text?: false | (() => vue.VNodeChild) | undefined;
392
- loader?: false | (() => vue.VNodeChild) | undefined;
397
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
393
398
  image?: false | (() => vue.VNodeChild) | undefined;
394
399
  prepend?: false | (() => vue.VNodeChild) | undefined;
395
400
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -400,7 +405,7 @@ declare const VCard: {
400
405
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
401
406
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
402
407
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
403
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
408
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
404
409
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
405
410
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
406
411
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -3,7 +3,7 @@ import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirectiv
3
3
  import "./VCheckbox.css";
4
4
 
5
5
  // Components
6
- import { filterInputProps, makeVInputProps, VInput } from "../VInput/VInput.mjs";
6
+ import { makeVInputProps, VInput } from "../VInput/VInput.mjs";
7
7
  import { makeVCheckboxBtnProps, VCheckboxBtn } from "./VCheckboxBtn.mjs"; // Composables
8
8
  import { useFocus } from "../../composables/focus.mjs"; // Utilities
9
9
  import { computed } from 'vue';
@@ -32,7 +32,7 @@ export const VCheckbox = genericComponent()({
32
32
  const id = computed(() => props.id || `checkbox-${uid}`);
33
33
  useRender(() => {
34
34
  const [inputAttrs, controlAttrs] = filterInputAttrs(attrs);
35
- const [inputProps, _1] = filterInputProps(props);
35
+ const [inputProps, _1] = VInput.filterProps(props);
36
36
  const [checkboxProps, _2] = VCheckboxBtn.filterProps(props);
37
37
  return _createVNode(VInput, _mergeProps({
38
38
  "class": "v-checkbox"
@@ -1 +1 @@
1
- {"version":3,"file":"VCheckbox.mjs","names":["filterInputProps","makeVInputProps","VInput","makeVCheckboxBtnProps","VCheckboxBtn","useFocus","computed","filterInputAttrs","genericComponent","getUid","omit","useRender","VCheckbox","name","inheritAttrs","props","emits","focused","setup","_ref","attrs","slots","isFocused","focus","blur","uid","id","inputAttrs","controlAttrs","inputProps","_1","checkboxProps","_2","filterProps","_createVNode","_mergeProps","value","default","_ref2","messagesId","isDisabled","isReadonly"],"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\n\n// Utilities\nimport { computed } from 'vue'\nimport { filterInputAttrs, genericComponent, getUid, omit, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\n\nexport type VCheckboxSlots = VInputSlots & VSelectionControlSlots\n\nexport const VCheckbox = genericComponent<VCheckboxSlots>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n },\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { isFocused, focus, blur } = useFocus(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `checkbox-${uid}`)\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [checkboxProps, _2] = VCheckboxBtn.filterProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n id={ id.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n }) => (\n <VCheckboxBtn\n { ...checkboxProps }\n id={ id.value }\n aria-describedby={ messagesId.value }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n onFocus={ focus }\n onBlur={ blur }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SAESA,gBAAgB,EAAEC,eAAe,EAAEC,MAAM;AAAA,SACzCC,qBAAqB,EAAEC,YAAY,8BAE5C;AAAA,SACSC,QAAQ,uCAEjB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,gBAAgB,EAAEC,MAAM,EAAEC,IAAI,EAAEC,SAAS,gCAEpE;AAKA,OAAO,MAAMC,SAAS,GAAGJ,gBAAgB,EAAkB,CAAC;EAC1DK,IAAI,EAAE,WAAW;EAEjBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACL,GAAGd,eAAe,EAAE;IACpB,GAAGS,IAAI,CAACP,qBAAqB,EAAE,EAAE,CAAC,QAAQ,CAAC;EAC7C,CAAC;EAEDa,KAAK,EAAE;IACL,gBAAgB,EAAGC,OAAgB,IAAK;EAC1C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAM;MAAEG,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGnB,QAAQ,CAACU,KAAK,CAAC;IAElD,MAAMU,GAAG,GAAGhB,MAAM,EAAE;IACpB,MAAMiB,EAAE,GAAGpB,QAAQ,CAAC,MAAMS,KAAK,CAACW,EAAE,IAAK,YAAWD,GAAI,EAAC,CAAC;IAExDd,SAAS,CAAC,MAAM;MACd,MAAM,CAACgB,UAAU,EAAEC,YAAY,CAAC,GAAGrB,gBAAgB,CAACa,KAAK,CAAC;MAC1D,MAAM,CAACS,UAAU,EAAEC,EAAE,CAAC,GAAG9B,gBAAgB,CAACe,KAAK,CAAC;MAChD,MAAM,CAACgB,aAAa,EAAEC,EAAE,CAAC,GAAG5B,YAAY,CAAC6B,WAAW,CAAClB,KAAK,CAAC;MAE3D,OAAAmB,YAAA,CAAAhC,MAAA,EAAAiC,WAAA;QAAA,SAEU;MAAY,GACbR,UAAU,EACVE,UAAU;QAAA,MACVH,EAAE,CAACU,KAAK;QAAA,WACHd,SAAS,CAACc;MAAK;QAGvB,GAAGf,KAAK;QACRgB,OAAO,EAAEC,KAAA;UAAA,IAAC;YACRZ,EAAE;YACFa,UAAU;YACVC,UAAU;YACVC;UACF,CAAC,GAAAH,KAAA;UAAA,OAAAJ,YAAA,CAAA9B,YAAA,EAAA+B,WAAA,CAEQJ,aAAa;YAAA,MACbL,EAAE,CAACU,KAAK;YAAA,oBACMG,UAAU,CAACH,KAAK;YAAA,YACxBI,UAAU,CAACJ,KAAK;YAAA,YAChBK,UAAU,CAACL;UAAK,GACtBR,YAAY;YAAA,WACPL,KAAK;YAAA,UACNC;UAAI,IACHH,KAAK;QAAA;MAElB;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VCheckbox.mjs","names":["makeVInputProps","VInput","makeVCheckboxBtnProps","VCheckboxBtn","useFocus","computed","filterInputAttrs","genericComponent","getUid","omit","useRender","VCheckbox","name","inheritAttrs","props","emits","focused","setup","_ref","attrs","slots","isFocused","focus","blur","uid","id","inputAttrs","controlAttrs","inputProps","_1","filterProps","checkboxProps","_2","_createVNode","_mergeProps","value","default","_ref2","messagesId","isDisabled","isReadonly"],"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\n\n// Utilities\nimport { computed } from 'vue'\nimport { filterInputAttrs, genericComponent, getUid, omit, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\n\nexport type VCheckboxSlots = VInputSlots & VSelectionControlSlots\n\nexport const VCheckbox = genericComponent<VCheckboxSlots>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n },\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { isFocused, focus, blur } = useFocus(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `checkbox-${uid}`)\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = VInput.filterProps(props)\n const [checkboxProps, _2] = VCheckboxBtn.filterProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n id={ id.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n }) => (\n <VCheckboxBtn\n { ...checkboxProps }\n id={ id.value }\n aria-describedby={ messagesId.value }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n onFocus={ focus }\n onBlur={ blur }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SAESA,eAAe,EAAEC,MAAM;AAAA,SACvBC,qBAAqB,EAAEC,YAAY,8BAE5C;AAAA,SACSC,QAAQ,uCAEjB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,gBAAgB,EAAEC,MAAM,EAAEC,IAAI,EAAEC,SAAS,gCAEpE;AAKA,OAAO,MAAMC,SAAS,GAAGJ,gBAAgB,EAAkB,CAAC;EAC1DK,IAAI,EAAE,WAAW;EAEjBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACL,GAAGd,eAAe,EAAE;IACpB,GAAGS,IAAI,CAACP,qBAAqB,EAAE,EAAE,CAAC,QAAQ,CAAC;EAC7C,CAAC;EAEDa,KAAK,EAAE;IACL,gBAAgB,EAAGC,OAAgB,IAAK;EAC1C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAM;MAAEG,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGnB,QAAQ,CAACU,KAAK,CAAC;IAElD,MAAMU,GAAG,GAAGhB,MAAM,EAAE;IACpB,MAAMiB,EAAE,GAAGpB,QAAQ,CAAC,MAAMS,KAAK,CAACW,EAAE,IAAK,YAAWD,GAAI,EAAC,CAAC;IAExDd,SAAS,CAAC,MAAM;MACd,MAAM,CAACgB,UAAU,EAAEC,YAAY,CAAC,GAAGrB,gBAAgB,CAACa,KAAK,CAAC;MAC1D,MAAM,CAACS,UAAU,EAAEC,EAAE,CAAC,GAAG5B,MAAM,CAAC6B,WAAW,CAAChB,KAAK,CAAC;MAClD,MAAM,CAACiB,aAAa,EAAEC,EAAE,CAAC,GAAG7B,YAAY,CAAC2B,WAAW,CAAChB,KAAK,CAAC;MAE3D,OAAAmB,YAAA,CAAAhC,MAAA,EAAAiC,WAAA;QAAA,SAEU;MAAY,GACbR,UAAU,EACVE,UAAU;QAAA,MACVH,EAAE,CAACU,KAAK;QAAA,WACHd,SAAS,CAACc;MAAK;QAGvB,GAAGf,KAAK;QACRgB,OAAO,EAAEC,KAAA;UAAA,IAAC;YACRZ,EAAE;YACFa,UAAU;YACVC,UAAU;YACVC;UACF,CAAC,GAAAH,KAAA;UAAA,OAAAJ,YAAA,CAAA9B,YAAA,EAAA+B,WAAA,CAEQH,aAAa;YAAA,MACbN,EAAE,CAACU,KAAK;YAAA,oBACMG,UAAU,CAACH,KAAK;YAAA,YACxBI,UAAU,CAACJ,KAAK;YAAA,YAChBK,UAAU,CAACL;UAAK,GACtBR,YAAY;YAAA,WACPL,KAAK;YAAA,UACNC;UAAI,IACHH,KAAK;QAAA;MAElB;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}