@vuetify/nightly 3.7.6-dev.2024-12-18 → 3.7.6-master.2024-12-18

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 (281) hide show
  1. package/dist/json/attributes.json +2045 -2053
  2. package/dist/json/importMap-labs.json +20 -20
  3. package/dist/json/importMap.json +174 -174
  4. package/dist/json/tags.json +0 -2
  5. package/dist/json/web-types.json +4154 -4172
  6. package/dist/vuetify-labs.css +3035 -3035
  7. package/dist/vuetify-labs.d.ts +14357 -3345
  8. package/dist/vuetify-labs.esm.js +47 -45
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +46 -44
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +3397 -3397
  13. package/dist/vuetify.d.ts +11515 -2341
  14. package/dist/vuetify.esm.js +47 -45
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +46 -44
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +883 -878
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAlert/VAlert.mjs +1 -1
  22. package/lib/components/VAlert/index.d.mts +86 -8
  23. package/lib/components/VApp/index.d.mts +20 -4
  24. package/lib/components/VAppBar/VAppBar.mjs +1 -1
  25. package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
  26. package/lib/components/VAppBar/VAppBarTitle.mjs +1 -1
  27. package/lib/components/VAppBar/index.d.mts +154 -18
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -1
  29. package/lib/components/VAutocomplete/index.d.mts +1380 -221
  30. package/lib/components/VAvatar/index.d.mts +31 -4
  31. package/lib/components/VBadge/VBadge.mjs +1 -1
  32. package/lib/components/VBadge/index.d.mts +41 -4
  33. package/lib/components/VBanner/VBanner.mjs +1 -1
  34. package/lib/components/VBanner/index.d.mts +88 -12
  35. package/lib/components/VBottomNavigation/index.d.mts +32 -4
  36. package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -1
  37. package/lib/components/VBottomSheet/index.d.mts +88 -4
  38. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
  39. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +1 -1
  40. package/lib/components/VBreadcrumbs/index.d.mts +65 -12
  41. package/lib/components/VBtn/VBtn.mjs +1 -1
  42. package/lib/components/VBtn/index.d.mts +79 -11
  43. package/lib/components/VBtnGroup/VBtnGroup.mjs +1 -1
  44. package/lib/components/VBtnGroup/index.d.mts +28 -4
  45. package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -1
  46. package/lib/components/VBtnToggle/index.d.mts +33 -13
  47. package/lib/components/VCard/VCard.mjs +1 -1
  48. package/lib/components/VCard/VCardItem.mjs +1 -1
  49. package/lib/components/VCard/VCardSubtitle.mjs +1 -1
  50. package/lib/components/VCard/VCardText.mjs +1 -1
  51. package/lib/components/VCard/index.d.mts +190 -24
  52. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  53. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  54. package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
  55. package/lib/components/VCarousel/index.d.mts +95 -17
  56. package/lib/components/VCheckbox/VCheckbox.mjs +4 -4
  57. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  58. package/lib/components/VCheckbox/VCheckboxBtn.mjs +1 -1
  59. package/lib/components/VCheckbox/index.d.mts +90 -8
  60. package/lib/components/VChip/VChip.mjs +9 -16
  61. package/lib/components/VChip/VChip.mjs.map +1 -1
  62. package/lib/components/VChip/index.d.mts +105 -9
  63. package/lib/components/VChipGroup/VChipGroup.mjs +1 -3
  64. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  65. package/lib/components/VChipGroup/index.d.mts +43 -24
  66. package/lib/components/VCode/index.d.mts +18 -4
  67. package/lib/components/VColorPicker/VColorPicker.mjs +1 -1
  68. package/lib/components/VColorPicker/index.d.mts +68 -4
  69. package/lib/components/VCombobox/VCombobox.mjs +1 -1
  70. package/lib/components/VCombobox/index.d.mts +1380 -221
  71. package/lib/components/VConfirmEdit/VConfirmEdit.mjs +1 -1
  72. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
  73. package/lib/components/VConfirmEdit/index.d.mts +13 -6
  74. package/lib/components/VCounter/VCounter.mjs +1 -1
  75. package/lib/components/VCounter/index.d.mts +31 -9
  76. package/lib/components/VDataIterator/index.d.mts +56 -12
  77. package/lib/components/VDataTable/VDataTable.mjs +1 -1
  78. package/lib/components/VDataTable/VDataTableFooter.mjs +1 -1
  79. package/lib/components/VDataTable/VDataTableGroupHeaderRow.mjs +1 -1
  80. package/lib/components/VDataTable/VDataTableHeaders.mjs +1 -1
  81. package/lib/components/VDataTable/VDataTableRow.mjs +1 -1
  82. package/lib/components/VDataTable/VDataTableRows.mjs +1 -1
  83. package/lib/components/VDataTable/VDataTableServer.mjs +1 -1
  84. package/lib/components/VDataTable/VDataTableVirtual.mjs +1 -1
  85. package/lib/components/VDataTable/index.d.mts +388 -36
  86. package/lib/components/VDatePicker/VDatePicker.mjs +1 -1
  87. package/lib/components/VDatePicker/VDatePickerMonth.mjs +1 -1
  88. package/lib/components/VDatePicker/VDatePickerMonths.mjs +1 -1
  89. package/lib/components/VDatePicker/VDatePickerYears.mjs +1 -1
  90. package/lib/components/VDatePicker/index.d.mts +276 -24
  91. package/lib/components/VDefaultsProvider/index.d.mts +20 -4
  92. package/lib/components/VDialog/VDialog.mjs +1 -1
  93. package/lib/components/VDialog/__test__/VDialog.spec.cy.mjs +1 -1
  94. package/lib/components/VDialog/index.d.mts +389 -143
  95. package/lib/components/VDivider/index.d.mts +24 -4
  96. package/lib/components/VEmptyState/VEmptyState.mjs +1 -1
  97. package/lib/components/VEmptyState/index.d.mts +66 -4
  98. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +1 -1
  99. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +1 -1
  100. package/lib/components/VExpansionPanel/index.d.mts +159 -23
  101. package/lib/components/VFab/VFab.mjs +1 -1
  102. package/lib/components/VFab/index.d.mts +84 -15
  103. package/lib/components/VField/VField.mjs +4 -4
  104. package/lib/components/VField/VField.mjs.map +1 -1
  105. package/lib/components/VField/VFieldLabel.mjs +1 -1
  106. package/lib/components/VField/index.d.mts +59 -11
  107. package/lib/components/VFileInput/VFileInput.mjs +1 -1
  108. package/lib/components/VFileInput/index.d.mts +256 -71
  109. package/lib/components/VFooter/VFooter.mjs +1 -1
  110. package/lib/components/VFooter/index.d.mts +29 -4
  111. package/lib/components/VForm/index.d.mts +175 -267
  112. package/lib/components/VGrid/VContainer.mjs +1 -1
  113. package/lib/components/VGrid/index.d.mts +118 -16
  114. package/lib/components/VHover/index.d.mts +33 -4
  115. package/lib/components/VIcon/index.d.mts +75 -17
  116. package/lib/components/VImg/VImg.mjs +1 -1
  117. package/lib/components/VImg/index.d.mts +74 -19
  118. package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
  119. package/lib/components/VInfiniteScroll/index.d.mts +46 -4
  120. package/lib/components/VInput/VInput.mjs +4 -4
  121. package/lib/components/VInput/VInput.mjs.map +1 -1
  122. package/lib/components/VInput/index.d.mts +37 -4
  123. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  124. package/lib/components/VItemGroup/index.d.mts +74 -17
  125. package/lib/components/VKbd/index.d.mts +18 -4
  126. package/lib/components/VLabel/index.d.mts +20 -4
  127. package/lib/components/VLayout/index.d.mts +48 -8
  128. package/lib/components/VLazy/VLazy.mjs +1 -1
  129. package/lib/components/VLazy/index.d.mts +31 -4
  130. package/lib/components/VList/VList.mjs +1 -1
  131. package/lib/components/VList/VListChildren.mjs +1 -1
  132. package/lib/components/VList/VListGroup.mjs +1 -1
  133. package/lib/components/VList/VListItem.mjs +1 -1
  134. package/lib/components/VList/VListItemAction.mjs +1 -1
  135. package/lib/components/VList/VListItemMedia.mjs +1 -1
  136. package/lib/components/VList/VListItemSubtitle.mjs +1 -1
  137. package/lib/components/VList/index.d.mts +291 -48
  138. package/lib/components/VLocaleProvider/index.d.mts +21 -4
  139. package/lib/components/VMain/index.d.mts +25 -4
  140. package/lib/components/VMenu/VMenu.mjs +4 -4
  141. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  142. package/lib/components/VMenu/index.d.mts +397 -155
  143. package/lib/components/VMessages/index.d.mts +27 -4
  144. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  145. package/lib/components/VNavigationDrawer/index.d.mts +62 -7
  146. package/lib/components/VOtpInput/VOtpInput.mjs +1 -1
  147. package/lib/components/VOtpInput/index.d.mts +52 -7
  148. package/lib/components/VOverlay/VOverlay.mjs +1 -1
  149. package/lib/components/VOverlay/index.d.mts +101 -19
  150. package/lib/components/VPagination/VPagination.mjs +1 -1
  151. package/lib/components/VPagination/index.d.mts +64 -4
  152. package/lib/components/VParallax/VParallax.mjs +1 -1
  153. package/lib/components/VParallax/index.d.mts +27 -4
  154. package/lib/components/VProgressCircular/index.d.mts +34 -4
  155. package/lib/components/VProgressLinear/index.d.mts +54 -4
  156. package/lib/components/VRadio/VRadio.mjs +1 -1
  157. package/lib/components/VRadio/index.d.mts +68 -4
  158. package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -4
  159. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  160. package/lib/components/VRadioGroup/index.d.mts +48 -4
  161. package/lib/components/VRangeSlider/VRangeSlider.mjs +1 -1
  162. package/lib/components/VRangeSlider/index.d.mts +107 -4
  163. package/lib/components/VRating/VRating.mjs +4 -5
  164. package/lib/components/VRating/VRating.mjs.map +1 -1
  165. package/lib/components/VRating/index.d.mts +42 -4
  166. package/lib/components/VResponsive/index.d.mts +29 -4
  167. package/lib/components/VSelect/VSelect.mjs +1 -1
  168. package/lib/components/VSelect/index.d.mts +1372 -220
  169. package/lib/components/VSelectionControl/VSelectionControl.mjs +4 -4
  170. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  171. package/lib/components/VSelectionControl/index.d.mts +37 -10
  172. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  173. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  174. package/lib/components/VSelectionControlGroup/index.d.mts +26 -4
  175. package/lib/components/VSheet/VSheet.mjs +1 -1
  176. package/lib/components/VSheet/index.d.mts +32 -4
  177. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +1 -1
  178. package/lib/components/VSkeletonLoader/index.d.mts +28 -4
  179. package/lib/components/VSlideGroup/index.d.mts +77 -21
  180. package/lib/components/VSlider/VSlider.mjs +1 -1
  181. package/lib/components/VSlider/VSliderThumb.mjs +1 -1
  182. package/lib/components/VSlider/index.d.mts +106 -4
  183. package/lib/components/VSnackbar/VSnackbar.mjs +1 -1
  184. package/lib/components/VSnackbar/index.d.mts +398 -152
  185. package/lib/components/VSparkline/VBarline.mjs +4 -3
  186. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  187. package/lib/components/VSparkline/VSparkline.mjs +1 -1
  188. package/lib/components/VSparkline/VTrendline.mjs +4 -3
  189. package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
  190. package/lib/components/VSparkline/index.d.mts +49 -4
  191. package/lib/components/VSpeedDial/VSpeedDial.mjs +1 -1
  192. package/lib/components/VSpeedDial/index.d.mts +85 -4
  193. package/lib/components/VStepper/VStepper.mjs +1 -1
  194. package/lib/components/VStepper/VStepperItem.mjs +1 -1
  195. package/lib/components/VStepper/VStepperWindow.mjs +1 -1
  196. package/lib/components/VStepper/VStepperWindowItem.mjs +1 -1
  197. package/lib/components/VStepper/index.d.mts +250 -24
  198. package/lib/components/VSwitch/VSwitch.mjs +4 -4
  199. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  200. package/lib/components/VSwitch/index.d.mts +59 -4
  201. package/lib/components/VSystemBar/VSystemBar.mjs +1 -1
  202. package/lib/components/VSystemBar/index.d.mts +28 -4
  203. package/lib/components/VTable/index.d.mts +33 -4
  204. package/lib/components/VTabs/VTab.mjs +1 -1
  205. package/lib/components/VTabs/VTabs.mjs +1 -1
  206. package/lib/components/VTabs/VTabsWindow.mjs +1 -1
  207. package/lib/components/VTabs/VTabsWindowItem.mjs +1 -1
  208. package/lib/components/VTabs/index.d.mts +401 -105
  209. package/lib/components/VTextField/VTextField.mjs +1 -1
  210. package/lib/components/VTextField/index.d.mts +374 -152
  211. package/lib/components/VTextarea/VTextarea.mjs +1 -1
  212. package/lib/components/VTextarea/index.d.mts +244 -71
  213. package/lib/components/VThemeProvider/index.d.mts +20 -4
  214. package/lib/components/VTimeline/VTimeline.mjs +1 -1
  215. package/lib/components/VTimeline/VTimelineDivider.mjs +1 -1
  216. package/lib/components/VTimeline/VTimelineItem.mjs +1 -1
  217. package/lib/components/VTimeline/index.d.mts +75 -8
  218. package/lib/components/VToolbar/VToolbar.mjs +1 -1
  219. package/lib/components/VToolbar/index.d.mts +90 -12
  220. package/lib/components/VTooltip/VTooltip.mjs +4 -4
  221. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  222. package/lib/components/VTooltip/index.d.mts +386 -147
  223. package/lib/components/VValidation/index.d.mts +24 -10
  224. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +1 -1
  225. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +1 -1
  226. package/lib/components/VVirtualScroll/index.d.mts +15 -4
  227. package/lib/components/VWindow/VWindow.mjs +1 -1
  228. package/lib/components/VWindow/VWindowItem.mjs +1 -1
  229. package/lib/components/VWindow/index.d.mts +54 -15
  230. package/lib/components/index.d.mts +11736 -2562
  231. package/lib/components/transitions/dialog-transition.mjs +2 -1
  232. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  233. package/lib/components/transitions/index.d.mts +309 -64
  234. package/lib/composables/group.mjs +3 -3
  235. package/lib/composables/group.mjs.map +1 -1
  236. package/lib/composables/icons.mjs +1 -1
  237. package/lib/composables/layout.mjs +3 -3
  238. package/lib/composables/layout.mjs.map +1 -1
  239. package/lib/composables/nested/nested.mjs +2 -2
  240. package/lib/composables/nested/nested.mjs.map +1 -1
  241. package/lib/composables/validation.mjs +3 -3
  242. package/lib/composables/validation.mjs.map +1 -1
  243. package/lib/composables/variant.mjs +1 -1
  244. package/lib/composables/virtual.mjs +1 -1
  245. package/lib/composables/virtual.mjs.map +1 -1
  246. package/lib/entry-bundler.mjs +1 -1
  247. package/lib/entry-bundler.mjs.map +1 -1
  248. package/lib/framework.mjs +3 -2
  249. package/lib/framework.mjs.map +1 -1
  250. package/lib/index.d.mts +65 -65
  251. package/lib/labs/VCalendar/VCalendar.mjs +1 -1
  252. package/lib/labs/VCalendar/VCalendarDay.mjs +1 -1
  253. package/lib/labs/VCalendar/index.d.mts +211 -24
  254. package/lib/labs/VDateInput/VDateInput.mjs +1 -1
  255. package/lib/labs/VDateInput/index.d.mts +115 -4
  256. package/lib/labs/VFileUpload/VFileUpload.mjs +1 -1
  257. package/lib/labs/VFileUpload/VFileUploadItem.mjs +1 -1
  258. package/lib/labs/VFileUpload/index.d.mts +195 -8
  259. package/lib/labs/VNumberInput/VNumberInput.mjs +1 -1
  260. package/lib/labs/VNumberInput/index.d.mts +1267 -564
  261. package/lib/labs/VPicker/VPicker.mjs +1 -1
  262. package/lib/labs/VPicker/index.d.mts +63 -8
  263. package/lib/labs/VPullToRefresh/index.d.mts +35 -4
  264. package/lib/labs/VSnackbarQueue/VSnackbarQueue.mjs +1 -1
  265. package/lib/labs/VSnackbarQueue/index.d.mts +453 -156
  266. package/lib/labs/VStepperVertical/VStepperVertical.mjs +1 -1
  267. package/lib/labs/VStepperVertical/VStepperVerticalActions.mjs +1 -1
  268. package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs +1 -1
  269. package/lib/labs/VStepperVertical/index.d.mts +227 -12
  270. package/lib/labs/VTimePicker/VTimePicker.mjs +1 -1
  271. package/lib/labs/VTimePicker/VTimePickerControls.mjs +1 -1
  272. package/lib/labs/VTimePicker/index.d.mts +122 -12
  273. package/lib/labs/VTreeview/VTreeview.mjs +1 -1
  274. package/lib/labs/VTreeview/VTreeviewChildren.mjs +1 -1
  275. package/lib/labs/VTreeview/VTreeviewGroup.mjs +1 -1
  276. package/lib/labs/VTreeview/VTreeviewItem.mjs +1 -1
  277. package/lib/labs/VTreeview/index.d.mts +205 -18
  278. package/lib/labs/components.d.mts +3056 -972
  279. package/lib/util/getCurrentInstance.mjs +15 -1
  280. package/lib/util/getCurrentInstance.mjs.map +1 -1
  281. package/package.json +4 -5
@@ -1,4 +1,4 @@
1
- import { mergeProps as _mergeProps, createVNode as _createVNode, Fragment as _Fragment, resolveDirective as _resolveDirective, withDirectives as _withDirectives } from "vue";
1
+ import { withDirectives as _withDirectives, resolveDirective as _resolveDirective, Fragment as _Fragment, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
2
2
  // Styles
3
3
  import "./VSelectionControl.css";
4
4
 
@@ -11,8 +11,8 @@ import { makeComponentProps } from "../../composables/component.mjs";
11
11
  import { useDensity } from "../../composables/density.mjs";
12
12
  import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Directives
13
13
  import { Ripple } from "../../directives/ripple/index.mjs"; // Utilities
14
- import { computed, inject, nextTick, ref, shallowRef, useId } from 'vue';
15
- import { filterInputAttrs, genericComponent, matchesSelector, propsFactory, useRender, wrapInArray } from "../../util/index.mjs"; // Types
14
+ import { computed, inject, nextTick, ref, shallowRef } from 'vue';
15
+ import { filterInputAttrs, genericComponent, getUid, matchesSelector, propsFactory, useRender, wrapInArray } from "../../util/index.mjs"; // Types
16
16
  export const makeVSelectionControlProps = propsFactory({
17
17
  label: String,
18
18
  baseColor: String,
@@ -103,7 +103,7 @@ export const VSelectionControl = genericComponent()({
103
103
  backgroundColorStyles,
104
104
  trueValue
105
105
  } = useSelectionControl(props);
106
- const uid = useId();
106
+ const uid = getUid();
107
107
  const isFocused = shallowRef(false);
108
108
  const isFocusVisible = shallowRef(false);
109
109
  const input = ref();
@@ -1 +1 @@
1
- {"version":3,"file":"VSelectionControl.mjs","names":["VIcon","VLabel","makeSelectionControlGroupProps","VSelectionControlGroupSymbol","useBackgroundColor","useTextColor","makeComponentProps","useDensity","useProxiedModel","Ripple","computed","inject","nextTick","ref","shallowRef","useId","filterInputAttrs","genericComponent","matchesSelector","propsFactory","useRender","wrapInArray","makeVSelectionControlProps","label","String","baseColor","trueValue","falseValue","value","useSelectionControl","props","group","undefined","densityClasses","modelValue","isMultiple","multiple","Array","isArray","model","get","val","some","v","valueComparator","set","readonly","currentValue","newVal","filter","item","textColorClasses","textColorStyles","error","disabled","color","backgroundColorClasses","backgroundColorStyles","icon","trueIcon","falseIcon","VSelectionControl","name","directives","inheritAttrs","emits","setup","_ref","attrs","slots","uid","isFocused","isFocusVisible","input","id","isInteractive","onForceUpdate","checked","onFocus","e","target","onBlur","onClickLabel","stopPropagation","onInput","forceUpdate","for","rootAttrs","inputAttrs","inputNode","_createVNode","_mergeProps","type","inline","class","style","default","_withDirectives","_Fragment","_resolveDirective","ripple"],"sources":["../../../src/components/VSelectionControl/VSelectionControl.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { makeSelectionControlGroupProps, VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { useDensity } from '@/composables/density'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, inject, nextTick, ref, shallowRef, useId } from 'vue'\nimport {\n filterInputAttrs,\n genericComponent,\n matchesSelector,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { CSSProperties, ExtractPropTypes, Ref, VNode, WritableComputedRef } from 'vue'\nimport type { IconValue } from '@/composables/icons'\nimport type { EventProp, GenericProps } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef<boolean>\n textColorClasses: Ref<string[]>\n textColorStyles: Ref<CSSProperties>\n backgroundColorClasses: Ref<string[]>\n backgroundColorStyles: Ref<CSSProperties>\n inputNode: VNode\n icon: IconValue | undefined\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport type VSelectionControlSlots = {\n default: {\n backgroundColorClasses: Ref<string[]>\n backgroundColorStyles: Ref<CSSProperties>\n }\n label: { label: string | undefined, props: Record<string, unknown> }\n input: SelectionControlSlot\n}\n\nexport const makeVSelectionControlProps = propsFactory({\n label: String,\n baseColor: String,\n trueValue: null,\n falseValue: null,\n value: null,\n\n ...makeComponentProps(),\n ...makeSelectionControlGroupProps(),\n}, 'VSelectionControl')\n\nexport function useSelectionControl (\n props: ExtractPropTypes<ReturnType<typeof makeVSelectionControlProps>> & {\n 'onUpdate:modelValue': EventProp | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? wrapInArray(val).some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => {\n if (props.error || props.disabled) return undefined\n\n return model.value ? props.color : props.baseColor\n }))\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(computed(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : props.baseColor\n }))\n const icon = computed(() => model.value ? props.trueIcon : props.falseIcon)\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VSelectionControl',\n\n directives: { Ripple },\n\n inheritAttrs: false,\n\n props: makeVSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n group,\n densityClasses,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = useId()\n const isFocused = shallowRef(false)\n const isFocusVisible = shallowRef(false)\n const input = ref<HTMLInputElement>()\n const id = computed(() => props.id || `input-${uid}`)\n const isInteractive = computed(() => !props.disabled && !props.readonly)\n\n group?.onForceUpdate(() => {\n if (input.value) {\n input.value.checked = model.value\n }\n })\n\n function onFocus (e: FocusEvent) {\n if (!isInteractive.value) return\n\n isFocused.value = true\n if (matchesSelector(e.target as HTMLElement, ':focus-visible') !== false) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n function onClickLabel (e: Event) {\n e.stopPropagation()\n }\n\n function onInput (e: Event) {\n if (!isInteractive.value) {\n if (input.value) {\n // model value is not updated when input is not interactive\n // but the internal checked state of the input is still updated,\n // so here it's value is restored\n input.value.checked = model.value\n }\n\n return\n }\n\n if (props.readonly && group) {\n nextTick(() => group.forceUpdate())\n }\n model.value = (e.target as HTMLInputElement).checked\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n const inputNode = (\n <input\n ref={ input }\n checked={ model.value }\n disabled={ !!props.disabled }\n id={ id.value }\n onBlur={ onBlur }\n onFocus={ onFocus }\n onInput={ onInput }\n aria-disabled={ !!props.disabled }\n aria-label={ props.label }\n type={ props.type }\n value={ trueValue.value }\n name={ props.name }\n aria-checked={ props.type === 'checkbox' ? model.value : undefined }\n { ...inputAttrs }\n />\n )\n\n return (\n <div\n class={[\n 'v-selection-control',\n {\n 'v-selection-control--dirty': model.value,\n 'v-selection-control--disabled': props.disabled,\n 'v-selection-control--error': props.error,\n 'v-selection-control--focused': isFocused.value,\n 'v-selection-control--focus-visible': isFocusVisible.value,\n 'v-selection-control--inline': props.inline,\n },\n densityClasses.value,\n props.class,\n ]}\n { ...rootAttrs }\n style={ props.style }\n >\n <div\n class={[\n 'v-selection-control__wrapper',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { slots.default?.({\n backgroundColorClasses,\n backgroundColorStyles,\n })}\n\n <div\n class={[\n 'v-selection-control__input',\n ]}\n v-ripple={ props.ripple && [\n !props.disabled && !props.readonly,\n null,\n ['center', 'circle'],\n ]}\n >\n { slots.input?.({\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n inputNode,\n icon: icon.value,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n } satisfies SelectionControlSlot) ?? (\n <>\n { icon.value && <VIcon key=\"icon\" icon={ icon.value } /> }\n\n { inputNode }\n </>\n )}\n </div>\n </div>\n\n { label && (\n <VLabel for={ id.value } onClick={ onClickLabel }>\n { label }\n </VLabel>\n )}\n </div>\n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType<typeof VSelectionControl>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VSelectionControl.mjs","names":["VIcon","VLabel","makeSelectionControlGroupProps","VSelectionControlGroupSymbol","useBackgroundColor","useTextColor","makeComponentProps","useDensity","useProxiedModel","Ripple","computed","inject","nextTick","ref","shallowRef","filterInputAttrs","genericComponent","getUid","matchesSelector","propsFactory","useRender","wrapInArray","makeVSelectionControlProps","label","String","baseColor","trueValue","falseValue","value","useSelectionControl","props","group","undefined","densityClasses","modelValue","isMultiple","multiple","Array","isArray","model","get","val","some","v","valueComparator","set","readonly","currentValue","newVal","filter","item","textColorClasses","textColorStyles","error","disabled","color","backgroundColorClasses","backgroundColorStyles","icon","trueIcon","falseIcon","VSelectionControl","name","directives","inheritAttrs","emits","setup","_ref","attrs","slots","uid","isFocused","isFocusVisible","input","id","isInteractive","onForceUpdate","checked","onFocus","e","target","onBlur","onClickLabel","stopPropagation","onInput","forceUpdate","for","rootAttrs","inputAttrs","inputNode","_createVNode","_mergeProps","type","inline","class","style","default","_withDirectives","_Fragment","_resolveDirective","ripple"],"sources":["../../../src/components/VSelectionControl/VSelectionControl.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { makeSelectionControlGroupProps, VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { useDensity } from '@/composables/density'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, inject, nextTick, ref, shallowRef } from 'vue'\nimport {\n filterInputAttrs,\n genericComponent,\n getUid,\n matchesSelector,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { CSSProperties, ExtractPropTypes, Ref, VNode, WritableComputedRef } from 'vue'\nimport type { IconValue } from '@/composables/icons'\nimport type { EventProp, GenericProps } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef<boolean>\n textColorClasses: Ref<string[]>\n textColorStyles: Ref<CSSProperties>\n backgroundColorClasses: Ref<string[]>\n backgroundColorStyles: Ref<CSSProperties>\n inputNode: VNode\n icon: IconValue | undefined\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport type VSelectionControlSlots = {\n default: {\n backgroundColorClasses: Ref<string[]>\n backgroundColorStyles: Ref<CSSProperties>\n }\n label: { label: string | undefined, props: Record<string, unknown> }\n input: SelectionControlSlot\n}\n\nexport const makeVSelectionControlProps = propsFactory({\n label: String,\n baseColor: String,\n trueValue: null,\n falseValue: null,\n value: null,\n\n ...makeComponentProps(),\n ...makeSelectionControlGroupProps(),\n}, 'VSelectionControl')\n\nexport function useSelectionControl (\n props: ExtractPropTypes<ReturnType<typeof makeVSelectionControlProps>> & {\n 'onUpdate:modelValue': EventProp | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? wrapInArray(val).some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => {\n if (props.error || props.disabled) return undefined\n\n return model.value ? props.color : props.baseColor\n }))\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(computed(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : props.baseColor\n }))\n const icon = computed(() => model.value ? props.trueIcon : props.falseIcon)\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VSelectionControl',\n\n directives: { Ripple },\n\n inheritAttrs: false,\n\n props: makeVSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n group,\n densityClasses,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = getUid()\n const isFocused = shallowRef(false)\n const isFocusVisible = shallowRef(false)\n const input = ref<HTMLInputElement>()\n const id = computed(() => props.id || `input-${uid}`)\n const isInteractive = computed(() => !props.disabled && !props.readonly)\n\n group?.onForceUpdate(() => {\n if (input.value) {\n input.value.checked = model.value\n }\n })\n\n function onFocus (e: FocusEvent) {\n if (!isInteractive.value) return\n\n isFocused.value = true\n if (matchesSelector(e.target as HTMLElement, ':focus-visible') !== false) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n function onClickLabel (e: Event) {\n e.stopPropagation()\n }\n\n function onInput (e: Event) {\n if (!isInteractive.value) {\n if (input.value) {\n // model value is not updated when input is not interactive\n // but the internal checked state of the input is still updated,\n // so here it's value is restored\n input.value.checked = model.value\n }\n\n return\n }\n\n if (props.readonly && group) {\n nextTick(() => group.forceUpdate())\n }\n model.value = (e.target as HTMLInputElement).checked\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n\n const inputNode = (\n <input\n ref={ input }\n checked={ model.value }\n disabled={ !!props.disabled }\n id={ id.value }\n onBlur={ onBlur }\n onFocus={ onFocus }\n onInput={ onInput }\n aria-disabled={ !!props.disabled }\n aria-label={ props.label }\n type={ props.type }\n value={ trueValue.value }\n name={ props.name }\n aria-checked={ props.type === 'checkbox' ? model.value : undefined }\n { ...inputAttrs }\n />\n )\n\n return (\n <div\n class={[\n 'v-selection-control',\n {\n 'v-selection-control--dirty': model.value,\n 'v-selection-control--disabled': props.disabled,\n 'v-selection-control--error': props.error,\n 'v-selection-control--focused': isFocused.value,\n 'v-selection-control--focus-visible': isFocusVisible.value,\n 'v-selection-control--inline': props.inline,\n },\n densityClasses.value,\n props.class,\n ]}\n { ...rootAttrs }\n style={ props.style }\n >\n <div\n class={[\n 'v-selection-control__wrapper',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { slots.default?.({\n backgroundColorClasses,\n backgroundColorStyles,\n })}\n\n <div\n class={[\n 'v-selection-control__input',\n ]}\n v-ripple={ props.ripple && [\n !props.disabled && !props.readonly,\n null,\n ['center', 'circle'],\n ]}\n >\n { slots.input?.({\n model,\n textColorClasses,\n textColorStyles,\n backgroundColorClasses,\n backgroundColorStyles,\n inputNode,\n icon: icon.value,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n } satisfies SelectionControlSlot) ?? (\n <>\n { icon.value && <VIcon key=\"icon\" icon={ icon.value } /> }\n\n { inputNode }\n </>\n )}\n </div>\n </div>\n\n { label && (\n <VLabel for={ id.value } onClick={ onClickLabel }>\n { label }\n </VLabel>\n )}\n </div>\n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType<typeof VSelectionControl>\n"],"mappings":"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","ignoreList":[]}
@@ -79,7 +79,7 @@ type VSelectionControlSlots = {
79
79
  input: SelectionControlSlot;
80
80
  };
81
81
  declare const VSelectionControl: {
82
- new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<{
82
+ new (...args: any[]): vue.CreateComponentPublicInstance<{
83
83
  inline: boolean;
84
84
  error: boolean;
85
85
  style: vue.StyleValue;
@@ -107,11 +107,38 @@ declare const VSelectionControl: {
107
107
  trueValue?: any;
108
108
  falseValue?: any;
109
109
  } & {}, {
110
- isFocused: vue.ShallowRef<boolean, boolean>;
111
- input: Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
110
+ isFocused: vue.ShallowRef<boolean>;
111
+ input: Ref<HTMLInputElement | undefined>;
112
112
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
113
113
  'update:modelValue': (value: any) => true;
114
- }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue" | "v-slot:input" | "v-slot:label">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
114
+ }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue" | "v-slot:input" | "v-slot:label">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
115
+ inline: boolean;
116
+ error: boolean;
117
+ style: vue.StyleValue;
118
+ disabled: boolean | null;
119
+ multiple: boolean | null;
120
+ readonly: boolean | null;
121
+ density: Density;
122
+ ripple: boolean | {
123
+ class: string;
124
+ } | undefined;
125
+ valueComparator: typeof deepEqual;
126
+ } & {
127
+ name?: string | undefined;
128
+ type?: string | undefined;
129
+ id?: string | undefined;
130
+ color?: string | undefined;
131
+ value?: any;
132
+ label?: string | undefined;
133
+ class?: any;
134
+ theme?: string | undefined;
135
+ baseColor?: string | undefined;
136
+ defaultsTarget?: string | undefined;
137
+ falseIcon?: IconValue | undefined;
138
+ trueIcon?: IconValue | undefined;
139
+ trueValue?: any;
140
+ falseValue?: any;
141
+ } & {}, {
115
142
  inline: boolean;
116
143
  error: boolean;
117
144
  style: vue.StyleValue;
@@ -133,7 +160,7 @@ declare const VSelectionControl: {
133
160
  props: Record<string, unknown>;
134
161
  }) => VNode[];
135
162
  input: (arg: SelectionControlSlot) => VNode[];
136
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
163
+ }>>, {
137
164
  P: {};
138
165
  B: {};
139
166
  D: {};
@@ -168,8 +195,8 @@ declare const VSelectionControl: {
168
195
  trueValue?: any;
169
196
  falseValue?: any;
170
197
  } & {}, {
171
- isFocused: vue.ShallowRef<boolean, boolean>;
172
- input: Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
198
+ isFocused: vue.ShallowRef<boolean>;
199
+ input: Ref<HTMLInputElement | undefined>;
173
200
  }, {}, {}, {}, {
174
201
  inline: boolean;
175
202
  error: boolean;
@@ -214,8 +241,8 @@ declare const VSelectionControl: {
214
241
  trueValue?: any;
215
242
  falseValue?: any;
216
243
  } & {}, {
217
- isFocused: vue.ShallowRef<boolean, boolean>;
218
- input: Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
244
+ isFocused: vue.ShallowRef<boolean>;
245
+ input: Ref<HTMLInputElement | undefined>;
219
246
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
220
247
  'update:modelValue': (value: any) => true;
221
248
  }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue" | "v-slot:input" | "v-slot:label">, string, {
@@ -240,7 +267,7 @@ declare const VSelectionControl: {
240
267
  props: Record<string, unknown>;
241
268
  }) => VNode[];
242
269
  input: (arg: SelectionControlSlot) => VNode[];
243
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>(props: {
270
+ }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>(props: {
244
271
  modelValue?: T;
245
272
  "onUpdate:modelValue"?: (value: T) => void;
246
273
  }, slots: VSelectionControlSlots) => GenericProps<typeof props, typeof slots>) & FilterPropsOptions<{
@@ -9,8 +9,8 @@ import { makeDensityProps } from "../../composables/density.mjs";
9
9
  import { IconValue } from "../../composables/icons.mjs";
10
10
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
11
11
  import { makeThemeProps } from "../../composables/theme.mjs"; // Utilities
12
- import { computed, onScopeDispose, provide, toRef, useId } from 'vue';
13
- import { deepEqual, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
12
+ import { computed, onScopeDispose, provide, toRef } from 'vue';
13
+ import { deepEqual, genericComponent, getUid, propsFactory, useRender } from "../../util/index.mjs"; // Types
14
14
  export const VSelectionControlGroupSymbol = Symbol.for('vuetify:selection-control-group');
15
15
  export const makeSelectionControlGroupProps = propsFactory({
16
16
  color: String,
@@ -63,7 +63,7 @@ export const VSelectionControlGroup = genericComponent()({
63
63
  slots
64
64
  } = _ref;
65
65
  const modelValue = useProxiedModel(props, 'modelValue');
66
- const uid = useId();
66
+ const uid = getUid();
67
67
  const id = computed(() => props.id || `v-selection-control-group-${uid}`);
68
68
  const name = computed(() => props.name || id.value);
69
69
  const updateHandlers = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"VSelectionControlGroup.mjs","names":["makeComponentProps","provideDefaults","makeDensityProps","IconValue","useProxiedModel","makeThemeProps","computed","onScopeDispose","provide","toRef","useId","deepEqual","genericComponent","propsFactory","useRender","VSelectionControlGroupSymbol","Symbol","for","makeSelectionControlGroupProps","color","String","disabled","type","Boolean","default","defaultsTarget","error","id","inline","falseIcon","trueIcon","ripple","Object","multiple","name","readonly","modelValue","valueComparator","Function","makeVSelectionControlGroupProps","VSelectionControlGroup","props","emits","value","setup","_ref","slots","uid","updateHandlers","Set","forceUpdate","forEach","fn","onForceUpdate","cb","add","delete","density","Array","isArray","_createVNode","class","style","undefined"],"sources":["../../../src/components/VSelectionControlGroup/VSelectionControlGroup.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { computed, onScopeDispose, provide, toRef, useId } from 'vue'\nimport { deepEqual, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\nimport type { GenericProps } from '@/util'\n\nexport interface VSelectionGroupContext {\n modelValue: Ref<any>\n forceUpdate: () => void\n onForceUpdate: (fn: () => void) => void\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey<VSelectionGroupContext> = Symbol.for('vuetify:selection-control-group')\n\nexport const makeSelectionControlGroupProps = propsFactory({\n color: String,\n disabled: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n defaultsTarget: String,\n error: Boolean,\n id: String,\n inline: Boolean,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n name: String,\n readonly: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n modelValue: null,\n type: String,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeThemeProps(),\n}, 'SelectionControlGroup')\n\nexport const makeVSelectionControlGroupProps = propsFactory({\n ...makeSelectionControlGroupProps({\n defaultsTarget: 'VSelectionControl',\n }),\n}, 'VSelectionControlGroup')\n\nexport const VSelectionControlGroup = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: { default: never },\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VSelectionControlGroup',\n\n props: makeVSelectionControlGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = useId()\n const id = computed(() => props.id || `v-selection-control-group-${uid}`)\n const name = computed(() => props.name || id.value)\n\n const updateHandlers = new Set<() => void>()\n provide(VSelectionControlGroupSymbol, {\n modelValue,\n forceUpdate: () => {\n updateHandlers.forEach(fn => fn())\n },\n onForceUpdate: cb => {\n updateHandlers.add(cb)\n onScopeDispose(() => {\n updateHandlers.delete(cb)\n })\n },\n })\n\n provideDefaults({\n [props.defaultsTarget]: {\n color: toRef(props, 'color'),\n disabled: toRef(props, 'disabled'),\n density: toRef(props, 'density'),\n error: toRef(props, 'error'),\n inline: toRef(props, 'inline'),\n modelValue,\n multiple: computed(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(props, 'falseIcon'),\n trueIcon: toRef(props, 'trueIcon'),\n readonly: toRef(props, 'readonly'),\n ripple: toRef(props, 'ripple'),\n type: toRef(props, 'type'),\n valueComparator: toRef(props, 'valueComparator'),\n },\n })\n\n useRender(() => (\n <div\n class={[\n 'v-selection-control-group',\n { 'v-selection-control-group--inline': props.inline },\n props.class,\n ]}\n style={ props.style }\n role={ props.type === 'radio' ? 'radiogroup' : undefined }\n >\n { slots.default?.() }\n </div>\n ))\n\n return {}\n },\n})\n\nexport type VSelectionControlGroup = InstanceType<typeof VSelectionControlGroup>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,gBAAgB;AAAA,SAChBC,SAAS;AAAA,SACTC,eAAe;AAAA,SACfC,cAAc,uCAEvB;AACA,SAASC,QAAQ,EAAEC,cAAc,EAAEC,OAAO,EAAEC,KAAK,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5DC,SAAS,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAE7D;AAWA,OAAO,MAAMC,4BAAkE,GAAGC,MAAM,CAACC,GAAG,CAAC,iCAAiC,CAAC;AAE/H,OAAO,MAAMC,8BAA8B,GAAGL,YAAY,CAAC;EACzDM,KAAK,EAAEC,MAAM;EACbC,QAAQ,EAAE;IACRC,IAAI,EAAEC,OAAmC;IACzCC,OAAO,EAAE;EACX,CAAC;EACDC,cAAc,EAAEL,MAAM;EACtBM,KAAK,EAAEH,OAAO;EACdI,EAAE,EAAEP,MAAM;EACVQ,MAAM,EAAEL,OAAO;EACfM,SAAS,EAAE1B,SAAS;EACpB2B,QAAQ,EAAE3B,SAAS;EACnB4B,MAAM,EAAE;IACNT,IAAI,EAAE,CAACC,OAAO,EAAES,MAAM,CAA8C;IACpER,OAAO,EAAE;EACX,CAAC;EACDS,QAAQ,EAAE;IACRX,IAAI,EAAEC,OAAmC;IACzCC,OAAO,EAAE;EACX,CAAC;EACDU,IAAI,EAAEd,MAAM;EACZe,QAAQ,EAAE;IACRb,IAAI,EAAEC,OAAmC;IACzCC,OAAO,EAAE;EACX,CAAC;EACDY,UAAU,EAAE,IAAI;EAChBd,IAAI,EAAEF,MAAM;EACZiB,eAAe,EAAE;IACff,IAAI,EAAEgB,QAAsC;IAC5Cd,OAAO,EAAEb;EACX,CAAC;EAED,GAAGX,kBAAkB,CAAC,CAAC;EACvB,GAAGE,gBAAgB,CAAC,CAAC;EACrB,GAAGG,cAAc,CAAC;AACpB,CAAC,EAAE,uBAAuB,CAAC;AAE3B,OAAO,MAAMkC,+BAA+B,GAAG1B,YAAY,CAAC;EAC1D,GAAGK,8BAA8B,CAAC;IAChCO,cAAc,EAAE;EAClB,CAAC;AACH,CAAC,EAAE,wBAAwB,CAAC;AAE5B,OAAO,MAAMe,sBAAsB,GAAG5B,gBAAgB,CAMP,CAAC,CAAC;EAC/CsB,IAAI,EAAE,wBAAwB;EAE9BO,KAAK,EAAEF,+BAA+B,CAAC,CAAC;EAExCG,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAMT,UAAU,GAAGhC,eAAe,CAACqC,KAAK,EAAE,YAAY,CAAC;IACvD,MAAMM,GAAG,GAAGrC,KAAK,CAAC,CAAC;IACnB,MAAMiB,EAAE,GAAGrB,QAAQ,CAAC,MAAMmC,KAAK,CAACd,EAAE,IAAI,6BAA6BoB,GAAG,EAAE,CAAC;IACzE,MAAMb,IAAI,GAAG5B,QAAQ,CAAC,MAAMmC,KAAK,CAACP,IAAI,IAAIP,EAAE,CAACgB,KAAK,CAAC;IAEnD,MAAMK,cAAc,GAAG,IAAIC,GAAG,CAAa,CAAC;IAC5CzC,OAAO,CAACO,4BAA4B,EAAE;MACpCqB,UAAU;MACVc,WAAW,EAAEA,CAAA,KAAM;QACjBF,cAAc,CAACG,OAAO,CAACC,EAAE,IAAIA,EAAE,CAAC,CAAC,CAAC;MACpC,CAAC;MACDC,aAAa,EAAEC,EAAE,IAAI;QACnBN,cAAc,CAACO,GAAG,CAACD,EAAE,CAAC;QACtB/C,cAAc,CAAC,MAAM;UACnByC,cAAc,CAACQ,MAAM,CAACF,EAAE,CAAC;QAC3B,CAAC,CAAC;MACJ;IACF,CAAC,CAAC;IAEFrD,eAAe,CAAC;MACd,CAACwC,KAAK,CAAChB,cAAc,GAAG;QACtBN,KAAK,EAAEV,KAAK,CAACgC,KAAK,EAAE,OAAO,CAAC;QAC5BpB,QAAQ,EAAEZ,KAAK,CAACgC,KAAK,EAAE,UAAU,CAAC;QAClCgB,OAAO,EAAEhD,KAAK,CAACgC,KAAK,EAAE,SAAS,CAAC;QAChCf,KAAK,EAAEjB,KAAK,CAACgC,KAAK,EAAE,OAAO,CAAC;QAC5Bb,MAAM,EAAEnB,KAAK,CAACgC,KAAK,EAAE,QAAQ,CAAC;QAC9BL,UAAU;QACVH,QAAQ,EAAE3B,QAAQ,CAAC,MAAM,CAAC,CAACmC,KAAK,CAACR,QAAQ,IAAKQ,KAAK,CAACR,QAAQ,IAAI,IAAI,IAAIyB,KAAK,CAACC,OAAO,CAACvB,UAAU,CAACO,KAAK,CAAE,CAAC;QACzGT,IAAI;QACJL,SAAS,EAAEpB,KAAK,CAACgC,KAAK,EAAE,WAAW,CAAC;QACpCX,QAAQ,EAAErB,KAAK,CAACgC,KAAK,EAAE,UAAU,CAAC;QAClCN,QAAQ,EAAE1B,KAAK,CAACgC,KAAK,EAAE,UAAU,CAAC;QAClCV,MAAM,EAAEtB,KAAK,CAACgC,KAAK,EAAE,QAAQ,CAAC;QAC9BnB,IAAI,EAAEb,KAAK,CAACgC,KAAK,EAAE,MAAM,CAAC;QAC1BJ,eAAe,EAAE5B,KAAK,CAACgC,KAAK,EAAE,iBAAiB;MACjD;IACF,CAAC,CAAC;IAEF3B,SAAS,CAAC,MAAA8C,YAAA;MAAA,SAEC,CACL,2BAA2B,EAC3B;QAAE,mCAAmC,EAAEnB,KAAK,CAACb;MAAO,CAAC,EACrDa,KAAK,CAACoB,KAAK,CACZ;MAAA,SACOpB,KAAK,CAACqB,KAAK;MAAA,QACZrB,KAAK,CAACnB,IAAI,KAAK,OAAO,GAAG,YAAY,GAAGyC;IAAS,IAEtDjB,KAAK,CAACtB,OAAO,GAAG,CAAC,EAEtB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VSelectionControlGroup.mjs","names":["makeComponentProps","provideDefaults","makeDensityProps","IconValue","useProxiedModel","makeThemeProps","computed","onScopeDispose","provide","toRef","deepEqual","genericComponent","getUid","propsFactory","useRender","VSelectionControlGroupSymbol","Symbol","for","makeSelectionControlGroupProps","color","String","disabled","type","Boolean","default","defaultsTarget","error","id","inline","falseIcon","trueIcon","ripple","Object","multiple","name","readonly","modelValue","valueComparator","Function","makeVSelectionControlGroupProps","VSelectionControlGroup","props","emits","value","setup","_ref","slots","uid","updateHandlers","Set","forceUpdate","forEach","fn","onForceUpdate","cb","add","delete","density","Array","isArray","_createVNode","class","style","undefined"],"sources":["../../../src/components/VSelectionControlGroup/VSelectionControlGroup.tsx"],"sourcesContent":["// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps } from '@/composables/density'\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { computed, onScopeDispose, provide, toRef } from 'vue'\nimport { deepEqual, genericComponent, getUid, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\nimport type { GenericProps } from '@/util'\n\nexport interface VSelectionGroupContext {\n modelValue: Ref<any>\n forceUpdate: () => void\n onForceUpdate: (fn: () => void) => void\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey<VSelectionGroupContext> = Symbol.for('vuetify:selection-control-group')\n\nexport const makeSelectionControlGroupProps = propsFactory({\n color: String,\n disabled: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n defaultsTarget: String,\n error: Boolean,\n id: String,\n inline: Boolean,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n name: String,\n readonly: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n modelValue: null,\n type: String,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeThemeProps(),\n}, 'SelectionControlGroup')\n\nexport const makeVSelectionControlGroupProps = propsFactory({\n ...makeSelectionControlGroupProps({\n defaultsTarget: 'VSelectionControl',\n }),\n}, 'VSelectionControlGroup')\n\nexport const VSelectionControlGroup = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: { default: never },\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VSelectionControlGroup',\n\n props: makeVSelectionControlGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = getUid()\n const id = computed(() => props.id || `v-selection-control-group-${uid}`)\n const name = computed(() => props.name || id.value)\n\n const updateHandlers = new Set<() => void>()\n provide(VSelectionControlGroupSymbol, {\n modelValue,\n forceUpdate: () => {\n updateHandlers.forEach(fn => fn())\n },\n onForceUpdate: cb => {\n updateHandlers.add(cb)\n onScopeDispose(() => {\n updateHandlers.delete(cb)\n })\n },\n })\n\n provideDefaults({\n [props.defaultsTarget]: {\n color: toRef(props, 'color'),\n disabled: toRef(props, 'disabled'),\n density: toRef(props, 'density'),\n error: toRef(props, 'error'),\n inline: toRef(props, 'inline'),\n modelValue,\n multiple: computed(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(props, 'falseIcon'),\n trueIcon: toRef(props, 'trueIcon'),\n readonly: toRef(props, 'readonly'),\n ripple: toRef(props, 'ripple'),\n type: toRef(props, 'type'),\n valueComparator: toRef(props, 'valueComparator'),\n },\n })\n\n useRender(() => (\n <div\n class={[\n 'v-selection-control-group',\n { 'v-selection-control-group--inline': props.inline },\n props.class,\n ]}\n style={ props.style }\n role={ props.type === 'radio' ? 'radiogroup' : undefined }\n >\n { slots.default?.() }\n </div>\n ))\n\n return {}\n },\n})\n\nexport type VSelectionControlGroup = InstanceType<typeof VSelectionControlGroup>\n"],"mappings":"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","ignoreList":[]}
@@ -54,7 +54,7 @@ interface RippleDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'v
54
54
  }
55
55
 
56
56
  declare const VSelectionControlGroup: {
57
- new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<{
57
+ new (...args: any[]): vue.CreateComponentPublicInstance<{
58
58
  inline: boolean;
59
59
  error: boolean;
60
60
  style: vue.StyleValue;
@@ -78,7 +78,29 @@ declare const VSelectionControlGroup: {
78
78
  trueIcon?: IconValue | undefined;
79
79
  } & {}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
80
80
  'update:modelValue': (value: any) => true;
81
- }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
81
+ }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
82
+ inline: boolean;
83
+ error: boolean;
84
+ style: vue.StyleValue;
85
+ disabled: boolean | null;
86
+ multiple: boolean | null;
87
+ readonly: boolean | null;
88
+ density: Density;
89
+ ripple: boolean | {
90
+ class: string;
91
+ } | undefined;
92
+ defaultsTarget: string;
93
+ valueComparator: typeof deepEqual;
94
+ } & {
95
+ name?: string | undefined;
96
+ type?: string | undefined;
97
+ id?: string | undefined;
98
+ color?: string | undefined;
99
+ class?: any;
100
+ theme?: string | undefined;
101
+ falseIcon?: IconValue | undefined;
102
+ trueIcon?: IconValue | undefined;
103
+ } & {}, {
82
104
  inline: boolean;
83
105
  error: boolean;
84
106
  style: vue.StyleValue;
@@ -93,7 +115,7 @@ declare const VSelectionControlGroup: {
93
115
  valueComparator: typeof deepEqual;
94
116
  }, true, {}, vue.SlotsType<Partial<{
95
117
  default: () => vue.VNode[];
96
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
118
+ }>>, {
97
119
  P: {};
98
120
  B: {};
99
121
  D: {};
@@ -178,7 +200,7 @@ declare const VSelectionControlGroup: {
178
200
  valueComparator: typeof deepEqual;
179
201
  }, {}, string, vue.SlotsType<Partial<{
180
202
  default: () => vue.VNode[];
181
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>(props: {
203
+ }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T>(props: {
182
204
  modelValue?: T;
183
205
  "onUpdate:modelValue"?: (value: T) => void;
184
206
  }, slots: {
@@ -1,4 +1,4 @@
1
- import { createVNode as _createVNode } from "vue";
1
+ import { createVNode as _createVNode, resolveDirective as _resolveDirective } from "vue";
2
2
  // Styles
3
3
  import "./VSheet.css";
4
4
 
@@ -14,7 +14,7 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
14
14
  }
15
15
 
16
16
  declare const VSheet: {
17
- new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<{
17
+ new (...args: any[]): vue.CreateComponentPublicInstance<{
18
18
  style: vue.StyleValue;
19
19
  tag: string;
20
20
  tile: boolean;
@@ -42,14 +42,42 @@ declare const VSheet: {
42
42
  } | undefined;
43
43
  } & {
44
44
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
45
- }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
45
+ }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
46
+ style: vue.StyleValue;
47
+ tag: string;
48
+ tile: boolean;
49
+ } & {
50
+ location?: Anchor | null | undefined;
51
+ height?: string | number | undefined;
52
+ width?: string | number | undefined;
53
+ border?: string | number | boolean | undefined;
54
+ color?: string | undefined;
55
+ maxHeight?: string | number | undefined;
56
+ maxWidth?: string | number | undefined;
57
+ minHeight?: string | number | undefined;
58
+ minWidth?: string | number | undefined;
59
+ position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
60
+ class?: any;
61
+ theme?: string | undefined;
62
+ elevation?: string | number | undefined;
63
+ rounded?: string | number | boolean | undefined;
64
+ } & {
65
+ $children?: vue.VNodeChild | {
66
+ default?: (() => vue.VNodeChild) | undefined;
67
+ } | (() => vue.VNodeChild);
68
+ 'v-slots'?: {
69
+ default?: false | (() => vue.VNodeChild) | undefined;
70
+ } | undefined;
71
+ } & {
72
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
73
+ }, {
46
74
  style: vue.StyleValue;
47
75
  tag: string;
48
76
  rounded: string | number | boolean;
49
77
  tile: boolean;
50
78
  }, true, {}, vue.SlotsType<Partial<{
51
79
  default: () => vue.VNode[];
52
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
80
+ }>>, {
53
81
  P: {};
54
82
  B: {};
55
83
  D: {};
@@ -128,7 +156,7 @@ declare const VSheet: {
128
156
  tile: boolean;
129
157
  }, {}, string, vue.SlotsType<Partial<{
130
158
  default: () => vue.VNode[];
131
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
159
+ }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
132
160
  theme: StringConstructor;
133
161
  tag: {
134
162
  type: StringConstructor;
@@ -1,4 +1,4 @@
1
- import { createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
1
+ import { mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
2
2
  // Styles
3
3
  import "./VSkeletonLoader.css";
4
4
 
@@ -40,7 +40,7 @@ declare const rootTypes: {
40
40
  readonly text: "text";
41
41
  };
42
42
  declare const VSkeletonLoader: {
43
- new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<{
43
+ new (...args: any[]): vue.CreateComponentPublicInstance<{
44
44
  type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
45
45
  loading: boolean;
46
46
  loadingText: string;
@@ -64,14 +64,38 @@ declare const VSkeletonLoader: {
64
64
  } | undefined;
65
65
  } & {
66
66
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
67
- }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
67
+ }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
68
+ type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
69
+ loading: boolean;
70
+ loadingText: string;
71
+ boilerplate: boolean;
72
+ } & {
73
+ height?: string | number | undefined;
74
+ width?: string | number | undefined;
75
+ color?: string | undefined;
76
+ maxHeight?: string | number | undefined;
77
+ maxWidth?: string | number | undefined;
78
+ minHeight?: string | number | undefined;
79
+ minWidth?: string | number | undefined;
80
+ theme?: string | undefined;
81
+ elevation?: string | number | undefined;
82
+ } & {
83
+ $children?: vue.VNodeChild | {
84
+ default?: (() => vue.VNodeChild) | undefined;
85
+ } | (() => vue.VNodeChild);
86
+ 'v-slots'?: {
87
+ default?: false | (() => vue.VNodeChild) | undefined;
88
+ } | undefined;
89
+ } & {
90
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
91
+ }, {
68
92
  type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
69
93
  loading: boolean;
70
94
  loadingText: string;
71
95
  boilerplate: boolean;
72
96
  }, true, {}, vue.SlotsType<Partial<{
73
97
  default: () => VNode[];
74
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
98
+ }>>, {
75
99
  P: {};
76
100
  B: {};
77
101
  D: {};
@@ -142,7 +166,7 @@ declare const VSkeletonLoader: {
142
166
  boilerplate: boolean;
143
167
  }, {}, string, vue.SlotsType<Partial<{
144
168
  default: () => VNode[];
145
- }>>, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
169
+ }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
146
170
  theme: StringConstructor;
147
171
  elevation: {
148
172
  type: (StringConstructor | NumberConstructor)[];