vuetify 3.1.12 → 3.1.14

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 (490) hide show
  1. package/dist/_component-variables-labs.sass +2 -1
  2. package/dist/json/attributes.json +4138 -3902
  3. package/dist/json/importMap-labs.json +8 -4
  4. package/dist/json/importMap.json +154 -154
  5. package/dist/json/tags.json +608 -544
  6. package/dist/json/web-types.json +14730 -14109
  7. package/dist/vuetify-labs.css +479 -236
  8. package/dist/vuetify-labs.d.ts +2356 -1425
  9. package/dist/vuetify-labs.esm.js +716 -505
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +716 -507
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.css +156 -133
  14. package/dist/vuetify.d.ts +1772 -1110
  15. package/dist/vuetify.esm.js +556 -480
  16. package/dist/vuetify.esm.js.map +1 -1
  17. package/dist/vuetify.js +556 -482
  18. package/dist/vuetify.js.map +1 -1
  19. package/dist/vuetify.min.css +2 -2
  20. package/dist/vuetify.min.js +202 -186
  21. package/dist/vuetify.min.js.map +1 -1
  22. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  23. package/lib/components/VApp/VApp.mjs.map +1 -1
  24. package/lib/components/VApp/index.d.ts +2 -2
  25. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  26. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  27. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs +7 -5
  29. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  30. package/lib/components/VAutocomplete/index.d.ts +77 -71
  31. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  32. package/lib/components/VBadge/VBadge.mjs +1 -1
  33. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  34. package/lib/components/VBadge/index.d.ts +13 -13
  35. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  36. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  37. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  38. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
  39. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  40. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  41. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  42. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  43. package/lib/components/VBtn/index.d.ts +4 -4
  44. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  45. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  46. package/lib/components/VCalendar/VCalendar.mjs.map +1 -1
  47. package/lib/components/VCalendar/VCalendarCategory.mjs.map +1 -1
  48. package/lib/components/VCalendar/VCalendarDaily.mjs.map +1 -1
  49. package/lib/components/VCalendar/VCalendarMonthly.mjs.map +1 -1
  50. package/lib/components/VCalendar/VCalendarWeekly.mjs.map +1 -1
  51. package/lib/components/VCalendar/mixins/calendar-base.mjs.map +1 -1
  52. package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +1 -1
  53. package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs.map +1 -1
  54. package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
  55. package/lib/components/VCalendar/mixins/times.mjs.map +1 -1
  56. package/lib/components/VCalendar/modes/column.mjs.map +1 -1
  57. package/lib/components/VCalendar/modes/common.mjs.map +1 -1
  58. package/lib/components/VCalendar/modes/stack.mjs.map +1 -1
  59. package/lib/components/VCalendar/util/events.mjs.map +1 -1
  60. package/lib/components/VCalendar/util/parser.mjs.map +1 -1
  61. package/lib/components/VCalendar/util/props.mjs.map +1 -1
  62. package/lib/components/VCalendar/util/timestamp.mjs.map +1 -1
  63. package/lib/components/VCard/VCard.mjs.map +1 -1
  64. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  65. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  66. package/lib/components/VCard/index.d.ts +1 -13
  67. package/lib/components/VCarousel/VCarousel.mjs +10 -10
  68. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  69. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  70. package/lib/components/VCarousel/index.d.ts +197 -19
  71. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  72. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  73. package/lib/components/VCheckbox/index.d.ts +14 -14
  74. package/lib/components/VChip/VChip.mjs +2 -2
  75. package/lib/components/VChip/VChip.mjs.map +1 -1
  76. package/lib/components/VChip/index.d.ts +14 -14
  77. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  78. package/lib/components/VColorPicker/VColorPicker.mjs +58 -61
  79. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  80. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  81. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  82. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  83. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  84. package/lib/components/VColorPicker/index.d.ts +113 -50
  85. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  86. package/lib/components/VCombobox/VCombobox.mjs +8 -6
  87. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  88. package/lib/components/VCombobox/index.d.ts +77 -71
  89. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  90. package/lib/components/VCounter/index.d.ts +123 -24
  91. package/lib/components/VData/VData.mjs.map +1 -1
  92. package/lib/components/VDataIterator/VDataFooter.mjs.map +1 -1
  93. package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
  94. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  95. package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +1 -1
  96. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
  97. package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +1 -1
  98. package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +1 -1
  99. package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
  100. package/lib/components/VDatePicker/mixins/date-picker-table.mjs.map +1 -1
  101. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -1
  102. package/lib/components/VDatePicker/util/eventHelpers.mjs.map +1 -1
  103. package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +1 -1
  104. package/lib/components/VDatePicker/util/pad.mjs.map +1 -1
  105. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  106. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  107. package/lib/components/VDialog/index.d.ts +43 -43
  108. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  109. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  110. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  111. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  112. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  113. package/lib/components/VField/VField.mjs +3 -3
  114. package/lib/components/VField/VField.mjs.map +1 -1
  115. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  116. package/lib/components/VField/index.d.ts +20 -20
  117. package/lib/components/VFileInput/VFileInput.mjs +0 -1
  118. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  119. package/lib/components/VFileInput/index.d.ts +59 -65
  120. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  121. package/lib/components/VForm/VForm.mjs.map +1 -1
  122. package/lib/components/VGrid/VCol.mjs.map +1 -1
  123. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  124. package/lib/components/VGrid/VRow.mjs.map +1 -1
  125. package/lib/components/VHover/VHover.mjs.map +1 -1
  126. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  127. package/lib/components/VImg/VImg.mjs +3 -3
  128. package/lib/components/VImg/VImg.mjs.map +1 -1
  129. package/lib/components/VImg/index.d.ts +28 -28
  130. package/lib/components/VInput/InputIcon.mjs.map +1 -1
  131. package/lib/components/VInput/VInput.mjs +2 -2
  132. package/lib/components/VInput/VInput.mjs.map +1 -1
  133. package/lib/components/VInput/index.d.ts +14 -14
  134. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  135. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  136. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  137. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  138. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  139. package/lib/components/VLayout/index.d.ts +2 -2
  140. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  141. package/lib/components/VLazy/index.d.ts +13 -13
  142. package/lib/components/VList/VList.mjs +2 -1
  143. package/lib/components/VList/VList.mjs.map +1 -1
  144. package/lib/components/VList/VListChildren.mjs.map +1 -1
  145. package/lib/components/VList/VListGroup.mjs +24 -13
  146. package/lib/components/VList/VListGroup.mjs.map +1 -1
  147. package/lib/components/VList/VListItem.css +12 -0
  148. package/lib/components/VList/VListItem.mjs +2 -2
  149. package/lib/components/VList/VListItem.mjs.map +1 -1
  150. package/lib/components/VList/VListItem.sass +5 -0
  151. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  152. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  153. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  154. package/lib/components/VList/index.d.ts +14 -14
  155. package/lib/components/VList/list.mjs.map +1 -1
  156. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  157. package/lib/components/VMain/VMain.mjs.map +1 -1
  158. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  159. package/lib/components/VMenu/index.d.ts +43 -43
  160. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  161. package/lib/components/VMessages/index.d.ts +123 -24
  162. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +8 -2
  163. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  164. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  165. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  166. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  167. package/lib/components/VNoSsr/index.d.ts +1 -13
  168. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
  169. package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
  170. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  171. package/lib/components/VOverlay/index.d.ts +15 -15
  172. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  173. package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -1
  174. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  175. package/lib/components/VOverlay/useActivator.mjs +1 -0
  176. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  177. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  178. package/lib/components/VPagination/VPagination.mjs +2 -2
  179. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  180. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  181. package/lib/components/VPicker/VPicker.mjs.map +1 -1
  182. package/lib/components/VProgressCircular/VProgressCircular.css +3 -1
  183. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  184. package/lib/components/VProgressCircular/VProgressCircular.sass +3 -1
  185. package/lib/components/VProgressCircular/_variables.scss +1 -0
  186. package/lib/components/VProgressLinear/VProgressLinear.css +6 -3
  187. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  188. package/lib/components/VProgressLinear/VProgressLinear.sass +3 -0
  189. package/lib/components/VProgressLinear/_variables.scss +1 -1
  190. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  191. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  192. package/lib/components/VRadioGroup/index.d.ts +14 -14
  193. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  194. package/lib/components/VRangeSlider/index.d.ts +14 -14
  195. package/lib/components/VRating/VRating.mjs.map +1 -1
  196. package/lib/components/VRating/index.d.ts +2 -2
  197. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  198. package/lib/components/VSelect/VSelect.mjs +31 -2
  199. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  200. package/lib/components/VSelect/index.d.ts +77 -71
  201. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  202. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  203. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  204. package/lib/components/VSlideGroup/VSlideGroup.mjs +29 -28
  205. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  206. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  207. package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
  208. package/lib/components/VSlideGroup/index.d.ts +17 -17
  209. package/lib/components/VSlider/VSlider.mjs +1 -1
  210. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  211. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  212. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  213. package/lib/components/VSlider/index.d.ts +14 -14
  214. package/lib/components/VSlider/slider.mjs +1 -1
  215. package/lib/components/VSlider/slider.mjs.map +1 -1
  216. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  217. package/lib/components/VSnackbar/index.d.ts +43 -43
  218. package/lib/components/VSparkline/VSparkline.mjs.map +1 -1
  219. package/lib/components/VSparkline/helpers/core.mjs.map +1 -1
  220. package/lib/components/VSparkline/helpers/math.mjs.map +1 -1
  221. package/lib/components/VSparkline/helpers/path.mjs.map +1 -1
  222. package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
  223. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  224. package/lib/components/VStepper/VStepperContent.mjs.map +1 -1
  225. package/lib/components/VStepper/VStepperStep.mjs.map +1 -1
  226. package/lib/components/VSwitch/VSwitch.css +4 -0
  227. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  228. package/lib/components/VSwitch/VSwitch.sass +4 -0
  229. package/lib/components/VSwitch/index.d.ts +14 -14
  230. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  231. package/lib/components/VTable/VTable.css +1 -1
  232. package/lib/components/VTable/VTable.mjs.map +1 -1
  233. package/lib/components/VTable/VTable.sass +1 -1
  234. package/lib/components/VTabs/VTab.mjs.map +1 -1
  235. package/lib/components/VTabs/VTabs.mjs +25 -30
  236. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  237. package/lib/components/VTabs/index.d.ts +165 -28
  238. package/lib/components/VTextField/VTextField.mjs +3 -6
  239. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  240. package/lib/components/VTextField/index.d.ts +83 -77
  241. package/lib/components/VTextarea/VTextarea.mjs +9 -6
  242. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  243. package/lib/components/VTextarea/index.d.ts +56 -50
  244. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  245. package/lib/components/VTimePicker/SelectingTimes.mjs +3 -3
  246. package/lib/components/VTimePicker/SelectingTimes.mjs.map +1 -1
  247. package/lib/components/VTimePicker/VTimePicker.mjs.map +1 -1
  248. package/lib/components/VTimePicker/VTimePickerClock.mjs.map +1 -1
  249. package/lib/components/VTimePicker/VTimePickerTitle.mjs.map +1 -1
  250. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  251. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  252. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  253. package/lib/components/VTimeline/index.d.ts +8 -8
  254. package/lib/components/VToolbar/VToolbar.css +2 -0
  255. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  256. package/lib/components/VToolbar/VToolbar.sass +2 -0
  257. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  258. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  259. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  260. package/lib/components/VTooltip/index.d.ts +43 -43
  261. package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
  262. package/lib/components/VTreeview/VTreeviewNode.mjs.map +1 -1
  263. package/lib/components/VTreeview/util/filterTreeItems.mjs.map +1 -1
  264. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  265. package/lib/components/VWindow/VWindow.mjs +38 -37
  266. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  267. package/lib/components/VWindow/VWindowItem.mjs +2 -1
  268. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  269. package/lib/components/index.d.ts +1655 -993
  270. package/lib/components/transitions/createTransition.mjs +59 -50
  271. package/lib/components/transitions/createTransition.mjs.map +1 -1
  272. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  273. package/lib/components/transitions/expand-transition.mjs.map +1 -1
  274. package/lib/components/transitions/index.d.ts +150 -15
  275. package/lib/composables/border.mjs.map +1 -1
  276. package/lib/composables/color.mjs.map +1 -1
  277. package/lib/composables/defaults.mjs +1 -1
  278. package/lib/composables/defaults.mjs.map +1 -1
  279. package/lib/composables/delay.mjs.map +1 -1
  280. package/lib/composables/density.mjs.map +1 -1
  281. package/lib/composables/dimensions.mjs.map +1 -1
  282. package/lib/composables/display.mjs.map +1 -1
  283. package/lib/composables/elevation.mjs.map +1 -1
  284. package/lib/composables/filter.mjs.map +1 -1
  285. package/lib/composables/focus.mjs.map +1 -1
  286. package/lib/composables/form.mjs.map +1 -1
  287. package/lib/composables/forwardRefs.mjs +17 -0
  288. package/lib/composables/forwardRefs.mjs.map +1 -1
  289. package/lib/composables/group.mjs.map +1 -1
  290. package/lib/composables/hydration.mjs.map +1 -1
  291. package/lib/composables/icons.mjs.map +1 -1
  292. package/lib/composables/intersectionObserver.mjs.map +1 -1
  293. package/lib/composables/items.mjs.map +1 -1
  294. package/lib/composables/layout.mjs.map +1 -1
  295. package/lib/composables/lazy.mjs.map +1 -1
  296. package/lib/composables/loader.mjs.map +1 -1
  297. package/lib/composables/locale.mjs.map +1 -1
  298. package/lib/composables/location.mjs.map +1 -1
  299. package/lib/composables/mutationObserver.mjs.map +1 -1
  300. package/lib/composables/nested/nested.mjs.map +1 -1
  301. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  302. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  303. package/lib/composables/position.mjs.map +1 -1
  304. package/lib/composables/proxiedModel.mjs +2 -1
  305. package/lib/composables/proxiedModel.mjs.map +1 -1
  306. package/lib/composables/refs.mjs.map +1 -1
  307. package/lib/composables/resizeObserver.mjs.map +1 -1
  308. package/lib/composables/rounded.mjs.map +1 -1
  309. package/lib/composables/router.mjs.map +1 -1
  310. package/lib/composables/scopeId.mjs.map +1 -1
  311. package/lib/composables/scroll.mjs.map +1 -1
  312. package/lib/composables/selectLink.mjs.map +1 -1
  313. package/lib/composables/size.mjs.map +1 -1
  314. package/lib/composables/ssrBoot.mjs.map +1 -1
  315. package/lib/composables/stack.mjs.map +1 -1
  316. package/lib/composables/teleport.mjs.map +1 -1
  317. package/lib/composables/theme.mjs +1 -1
  318. package/lib/composables/theme.mjs.map +1 -1
  319. package/lib/composables/toggleScope.mjs.map +1 -1
  320. package/lib/composables/touch.mjs.map +1 -1
  321. package/lib/composables/transition.mjs.map +1 -1
  322. package/lib/composables/validation.mjs +1 -1
  323. package/lib/composables/validation.mjs.map +1 -1
  324. package/lib/composables/variant.mjs.map +1 -1
  325. package/lib/directives/click-outside/index.mjs.map +1 -1
  326. package/lib/directives/color/index.mjs.map +1 -1
  327. package/lib/directives/intersect/index.mjs.map +1 -1
  328. package/lib/directives/mutate/index.mjs.map +1 -1
  329. package/lib/directives/resize/index.mjs.map +1 -1
  330. package/lib/directives/ripple/index.mjs.map +1 -1
  331. package/lib/directives/scroll/index.mjs.map +1 -1
  332. package/lib/directives/touch/index.mjs.map +1 -1
  333. package/lib/entry-bundler.mjs +1 -1
  334. package/lib/entry-bundler.mjs.map +1 -1
  335. package/lib/framework.mjs +1 -1
  336. package/lib/framework.mjs.map +1 -1
  337. package/lib/index.d.ts +39 -39
  338. package/lib/labs/VDataTable/VDataTable.mjs +7 -5
  339. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  340. package/lib/labs/VDataTable/VDataTableColumn.mjs.map +1 -1
  341. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  342. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  343. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  344. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  345. package/lib/labs/VDataTable/VDataTableRows.mjs +5 -7
  346. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  347. package/lib/labs/VDataTable/VDataTableServer.mjs +4 -3
  348. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  349. package/lib/labs/VDataTable/VDataTableVirtual.mjs +5 -3
  350. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  351. package/lib/labs/VDataTable/composables/expand.mjs.map +1 -1
  352. package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
  353. package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
  354. package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
  355. package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
  356. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  357. package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
  358. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  359. package/lib/labs/VDataTable/composables/virtual.mjs.map +1 -1
  360. package/lib/labs/VDataTable/index.d.ts +393 -340
  361. package/lib/labs/VSkeletonLoader/VSkeletonLoader.css +221 -0
  362. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +141 -0
  363. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -0
  364. package/lib/labs/VSkeletonLoader/VSkeletonLoader.sass +225 -0
  365. package/lib/labs/VSkeletonLoader/_variables.scss +44 -0
  366. package/lib/labs/VSkeletonLoader/index.d.ts +222 -0
  367. package/lib/labs/VSkeletonLoader/index.mjs +2 -0
  368. package/lib/labs/VSkeletonLoader/index.mjs.map +1 -0
  369. package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  370. package/lib/labs/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  371. package/lib/labs/components.d.ts +608 -341
  372. package/lib/labs/components.mjs +1 -0
  373. package/lib/labs/components.mjs.map +1 -1
  374. package/lib/labs/entry-bundler.mjs.map +1 -1
  375. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  376. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  377. package/lib/locale/af.mjs +2 -1
  378. package/lib/locale/af.mjs.map +1 -1
  379. package/lib/locale/ar.mjs +2 -1
  380. package/lib/locale/ar.mjs.map +1 -1
  381. package/lib/locale/az.mjs +2 -1
  382. package/lib/locale/az.mjs.map +1 -1
  383. package/lib/locale/bg.mjs +2 -1
  384. package/lib/locale/bg.mjs.map +1 -1
  385. package/lib/locale/ca.mjs +2 -1
  386. package/lib/locale/ca.mjs.map +1 -1
  387. package/lib/locale/ckb.mjs +2 -1
  388. package/lib/locale/ckb.mjs.map +1 -1
  389. package/lib/locale/cs.mjs +2 -1
  390. package/lib/locale/cs.mjs.map +1 -1
  391. package/lib/locale/da.mjs +2 -1
  392. package/lib/locale/da.mjs.map +1 -1
  393. package/lib/locale/de.mjs +2 -1
  394. package/lib/locale/de.mjs.map +1 -1
  395. package/lib/locale/el.mjs +2 -1
  396. package/lib/locale/el.mjs.map +1 -1
  397. package/lib/locale/en.mjs +2 -1
  398. package/lib/locale/en.mjs.map +1 -1
  399. package/lib/locale/es.mjs +2 -1
  400. package/lib/locale/es.mjs.map +1 -1
  401. package/lib/locale/et.mjs +2 -1
  402. package/lib/locale/et.mjs.map +1 -1
  403. package/lib/locale/fa.mjs +2 -1
  404. package/lib/locale/fa.mjs.map +1 -1
  405. package/lib/locale/fi.mjs +2 -1
  406. package/lib/locale/fi.mjs.map +1 -1
  407. package/lib/locale/fr.mjs +2 -1
  408. package/lib/locale/fr.mjs.map +1 -1
  409. package/lib/locale/he.mjs +2 -1
  410. package/lib/locale/he.mjs.map +1 -1
  411. package/lib/locale/hr.mjs +2 -1
  412. package/lib/locale/hr.mjs.map +1 -1
  413. package/lib/locale/hu.mjs +2 -1
  414. package/lib/locale/hu.mjs.map +1 -1
  415. package/lib/locale/id.mjs +2 -1
  416. package/lib/locale/id.mjs.map +1 -1
  417. package/lib/locale/index.d.ts +42 -0
  418. package/lib/locale/it.mjs +2 -1
  419. package/lib/locale/it.mjs.map +1 -1
  420. package/lib/locale/ja.mjs +2 -1
  421. package/lib/locale/ja.mjs.map +1 -1
  422. package/lib/locale/ko.mjs +2 -1
  423. package/lib/locale/ko.mjs.map +1 -1
  424. package/lib/locale/lt.mjs +2 -1
  425. package/lib/locale/lt.mjs.map +1 -1
  426. package/lib/locale/lv.mjs +2 -1
  427. package/lib/locale/lv.mjs.map +1 -1
  428. package/lib/locale/nl.mjs +2 -1
  429. package/lib/locale/nl.mjs.map +1 -1
  430. package/lib/locale/no.mjs +2 -1
  431. package/lib/locale/no.mjs.map +1 -1
  432. package/lib/locale/pl.mjs +2 -1
  433. package/lib/locale/pl.mjs.map +1 -1
  434. package/lib/locale/pt.mjs +2 -1
  435. package/lib/locale/pt.mjs.map +1 -1
  436. package/lib/locale/ro.mjs +2 -1
  437. package/lib/locale/ro.mjs.map +1 -1
  438. package/lib/locale/ru.mjs +2 -1
  439. package/lib/locale/ru.mjs.map +1 -1
  440. package/lib/locale/sk.mjs +2 -1
  441. package/lib/locale/sk.mjs.map +1 -1
  442. package/lib/locale/sl.mjs +2 -1
  443. package/lib/locale/sl.mjs.map +1 -1
  444. package/lib/locale/sr-Cyrl.mjs +2 -1
  445. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  446. package/lib/locale/sr-Latn.mjs +2 -1
  447. package/lib/locale/sr-Latn.mjs.map +1 -1
  448. package/lib/locale/sv.mjs +2 -1
  449. package/lib/locale/sv.mjs.map +1 -1
  450. package/lib/locale/th.mjs +2 -1
  451. package/lib/locale/th.mjs.map +1 -1
  452. package/lib/locale/tr.mjs +2 -1
  453. package/lib/locale/tr.mjs.map +1 -1
  454. package/lib/locale/uk.mjs +2 -1
  455. package/lib/locale/uk.mjs.map +1 -1
  456. package/lib/locale/vi.mjs +2 -1
  457. package/lib/locale/vi.mjs.map +1 -1
  458. package/lib/locale/zh-Hans.mjs +2 -1
  459. package/lib/locale/zh-Hans.mjs.map +1 -1
  460. package/lib/locale/zh-Hant.mjs +2 -1
  461. package/lib/locale/zh-Hant.mjs.map +1 -1
  462. package/lib/services/goto/index.mjs.map +1 -1
  463. package/lib/services/goto/util.mjs.map +1 -1
  464. package/lib/util/anchor.mjs.map +1 -1
  465. package/lib/util/animation.mjs.map +1 -1
  466. package/lib/util/box.mjs.map +1 -1
  467. package/lib/util/color/APCA.mjs.map +1 -1
  468. package/lib/util/color/transformCIELAB.mjs.map +1 -1
  469. package/lib/util/color/transformSRGB.mjs.map +1 -1
  470. package/lib/util/colorUtils.mjs.map +1 -1
  471. package/lib/util/console.mjs.map +1 -1
  472. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  473. package/lib/util/dateTimeUtils.mjs.map +1 -1
  474. package/lib/util/defineComponent.mjs.map +1 -1
  475. package/lib/util/dom.mjs.map +1 -1
  476. package/lib/util/getCurrentInstance.mjs.map +1 -1
  477. package/lib/util/getScrollParent.mjs.map +1 -1
  478. package/lib/util/helpers.mjs +1 -1
  479. package/lib/util/helpers.mjs.map +1 -1
  480. package/lib/util/injectSelf.mjs.map +1 -1
  481. package/lib/util/isFixedPosition.mjs.map +1 -1
  482. package/lib/util/propsFactory.mjs.map +1 -1
  483. package/lib/util/useRender.mjs.map +1 -1
  484. package/package.json +25 -25
  485. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +0 -179
  486. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +0 -1
  487. package/lib/components/VSkeletonLoader/VSkeletonLoader.sass +0 -377
  488. package/lib/components/VSkeletonLoader/_variables.scss +0 -54
  489. package/lib/components/VSkeletonLoader/index.mjs +0 -4
  490. package/lib/components/VSkeletonLoader/index.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"VImg.mjs","names":["VResponsive","intersect","makeTransitionProps","MaybeTransition","computed","nextTick","onBeforeMount","ref","vShow","watch","withDirectives","convertToUnit","genericComponent","SUPPORTS_INTERSECTION","useRender","VImg","name","directives","props","aspectRatio","String","Number","alt","cover","Boolean","eager","gradient","lazySrc","options","type","Object","default","root","undefined","rootMargin","threshold","sizes","src","srcset","width","emits","loadstart","event","load","error","setup","emit","slots","currentSrc","image","state","naturalWidth","naturalHeight","normalisedSrc","aspect","value","init","val","oldVal","pollForSize","isIntersecting","lazyImg","Image","complete","onError","onLoad","getSrc","img","timer","timeout","poll","clearTimeout","imgHeight","imgWidth","window","setTimeout","endsWith","startsWith","containClasses","__image","sources","transition","__preloadImage","__placeholder","placeholder","__error","__gradient","backgroundImage","isBooted","stop","requestAnimationFrame","additional","handler"],"sources":["../../../src/components/VImg/VImg.tsx"],"sourcesContent":["import './VImg.sass'\n\n// Components\nimport { VResponsive } from '@/components/VResponsive'\n\n// Directives\nimport intersect from '@/directives/intersect'\n\n// Composables\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport {\n computed,\n nextTick,\n onBeforeMount,\n ref,\n vShow,\n watch,\n withDirectives,\n} from 'vue'\nimport {\n convertToUnit,\n genericComponent,\n SUPPORTS_INTERSECTION,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// not intended for public use, this is passed in by vuetify-loader\nexport interface srcObject {\n src?: string\n srcset?: string\n lazySrc?: string\n aspect: number\n}\n\nexport type VImgSlots = {\n default: []\n placeholder: []\n error: []\n sources: []\n}\n\nexport const VImg = genericComponent<VImgSlots>()({\n name: 'VImg',\n\n directives: { intersect },\n\n props: {\n aspectRatio: [String, Number],\n alt: String,\n cover: Boolean,\n eager: Boolean,\n gradient: String,\n lazySrc: String,\n options: {\n type: Object as PropType<IntersectionObserverInit>,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n sizes: String,\n src: {\n type: [String, Object] as PropType<string | srcObject>,\n default: '',\n },\n srcset: String,\n width: [String, Number],\n\n ...makeTransitionProps(),\n },\n\n emits: {\n loadstart: (event: string | undefined) => true,\n load: (event: string | undefined) => true,\n error: (event: string | undefined) => true,\n },\n\n setup (props, { emit, slots }) {\n const currentSrc = ref('') // Set from srcset\n const image = ref<HTMLImageElement>()\n const state = ref<'idle' | 'loading' | 'loaded' | 'error'>(props.eager ? 'loading' : 'idle')\n const naturalWidth = ref<number>()\n const naturalHeight = ref<number>()\n\n const normalisedSrc = computed<srcObject>(() => {\n return props.src && typeof props.src === 'object'\n ? {\n src: props.src.src,\n srcset: props.srcset || props.src.srcset,\n lazySrc: props.lazySrc || props.src.lazySrc,\n aspect: Number(props.aspectRatio || props.src.aspect || 0),\n } : {\n src: props.src,\n srcset: props.srcset,\n lazySrc: props.lazySrc,\n aspect: Number(props.aspectRatio || 0),\n }\n })\n const aspectRatio = computed(() => {\n return normalisedSrc.value.aspect || naturalWidth.value! / naturalHeight.value! || 0\n })\n\n watch(() => props.src, () => {\n init(state.value !== 'idle')\n })\n watch(aspectRatio, (val, oldVal) => {\n if (!val && oldVal && image.value) {\n pollForSize(image.value)\n }\n })\n\n // TODO: getSrc when window width changes\n\n onBeforeMount(() => init())\n\n function init (isIntersecting?: boolean) {\n if (props.eager && isIntersecting) return\n if (\n SUPPORTS_INTERSECTION &&\n !isIntersecting &&\n !props.eager\n ) return\n\n state.value = 'loading'\n\n if (normalisedSrc.value.lazySrc) {\n const lazyImg = new Image()\n lazyImg.src = normalisedSrc.value.lazySrc\n pollForSize(lazyImg, null)\n }\n\n if (!normalisedSrc.value.src) return\n\n nextTick(() => {\n emit('loadstart', image.value?.currentSrc || normalisedSrc.value.src)\n\n if (image.value?.complete) {\n if (!image.value.naturalWidth) {\n onError()\n }\n\n if (state.value === 'error') return\n\n if (!aspectRatio.value) pollForSize(image.value, null)\n onLoad()\n } else {\n if (!aspectRatio.value) pollForSize(image.value!)\n getSrc()\n }\n })\n }\n\n function onLoad () {\n getSrc()\n state.value = 'loaded'\n emit('load', image.value?.currentSrc || normalisedSrc.value.src)\n }\n\n function onError () {\n state.value = 'error'\n emit('error', image.value?.currentSrc || normalisedSrc.value.src)\n }\n\n function getSrc () {\n const img = image.value\n if (img) currentSrc.value = img.currentSrc || img.src\n }\n\n let timer = -1\n function pollForSize (img: HTMLImageElement, timeout: number | null = 100) {\n const poll = () => {\n clearTimeout(timer)\n const { naturalHeight: imgHeight, naturalWidth: imgWidth } = img\n\n if (imgHeight || imgWidth) {\n naturalWidth.value = imgWidth\n naturalHeight.value = imgHeight\n } else if (!img.complete && state.value === 'loading' && timeout != null) {\n timer = window.setTimeout(poll, timeout)\n } else if (img.currentSrc.endsWith('.svg') || img.currentSrc.startsWith('data:image/svg+xml')) {\n naturalWidth.value = 1\n naturalHeight.value = 1\n }\n }\n\n poll()\n }\n\n const containClasses = computed(() => ({\n 'v-img__img--cover': props.cover,\n 'v-img__img--contain': !props.cover,\n }))\n\n const __image = () => {\n if (!normalisedSrc.value.src || state.value === 'idle') return null\n\n const img = (\n <img\n class={['v-img__img', containClasses.value]}\n src={ normalisedSrc.value.src }\n srcset={ normalisedSrc.value.srcset }\n alt={ props.alt }\n sizes={ props.sizes }\n ref={ image }\n onLoad={ onLoad }\n onError={ onError }\n />\n )\n\n const sources = slots.sources?.()\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n {\n withDirectives(\n sources\n ? <picture class=\"v-img__picture\">{ sources }{ img }</picture>\n : img,\n [[vShow, state.value === 'loaded']]\n )\n }\n </MaybeTransition>\n )\n }\n\n const __preloadImage = () => (\n <MaybeTransition transition={ props.transition }>\n { normalisedSrc.value.lazySrc && state.value !== 'loaded' && (\n <img\n class={['v-img__img', 'v-img__img--preload', containClasses.value]}\n src={ normalisedSrc.value.lazySrc }\n alt={ props.alt }\n />\n )}\n </MaybeTransition>\n )\n\n const __placeholder = () => {\n if (!slots.placeholder) return null\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n { (state.value === 'loading' || (state.value === 'error' && !slots.error)) &&\n <div class=\"v-img__placeholder\">{ slots.placeholder() }</div>\n }\n </MaybeTransition>\n )\n }\n\n const __error = () => {\n if (!slots.error) return null\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n { state.value === 'error' &&\n <div class=\"v-img__error\">{ slots.error() }</div>\n }\n </MaybeTransition>\n )\n }\n\n const __gradient = () => {\n if (!props.gradient) return null\n\n return <div class=\"v-img__gradient\" style={{ backgroundImage: `linear-gradient(${props.gradient})` }} />\n }\n\n const isBooted = ref(false)\n {\n const stop = watch(aspectRatio, val => {\n if (val) {\n // Doesn't work with nextTick, idk why\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n isBooted.value = true\n })\n })\n stop()\n }\n })\n }\n\n useRender(() => (\n <VResponsive\n class={[\n 'v-img',\n { 'v-img--booting': !isBooted.value },\n ]}\n style={{ width: convertToUnit(props.width === 'auto' ? naturalWidth.value : props.width) }}\n aspectRatio={ aspectRatio.value }\n aria-label={ props.alt }\n role={ props.alt ? 'img' : undefined }\n v-intersect={[{\n handler: init,\n options: props.options,\n }, null, ['once']]}\n >{{\n additional: () => (\n <>\n <__image />\n <__preloadImage />\n <__gradient />\n <__placeholder />\n <__error />\n </>\n ),\n default: slots.default,\n }}</VResponsive>\n ))\n\n return {\n currentSrc,\n image,\n state,\n naturalWidth,\n naturalHeight,\n }\n },\n})\n\nexport type VImg = InstanceType<typeof VImg>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VImg.mjs","names":["VResponsive","intersect","makeTransitionProps","MaybeTransition","computed","nextTick","onBeforeMount","ref","vShow","watch","withDirectives","convertToUnit","genericComponent","SUPPORTS_INTERSECTION","useRender","VImg","name","directives","props","aspectRatio","String","Number","alt","cover","Boolean","eager","gradient","lazySrc","options","type","Object","default","root","undefined","rootMargin","threshold","sizes","src","srcset","width","emits","loadstart","value","load","error","setup","_ref","emit","slots","currentSrc","image","state","naturalWidth","naturalHeight","normalisedSrc","aspect","init","val","oldVal","pollForSize","isIntersecting","lazyImg","Image","complete","onError","onLoad","getSrc","img","timer","timeout","arguments","length","poll","clearTimeout","imgHeight","imgWidth","window","setTimeout","endsWith","startsWith","containClasses","__image","_createVNode","sources","transition","__preloadImage","__placeholder","placeholder","__error","__gradient","backgroundImage","isBooted","stop","requestAnimationFrame","_withDirectives","additional","_Fragment","_resolveDirective","handler","once"],"sources":["../../../src/components/VImg/VImg.tsx"],"sourcesContent":["import './VImg.sass'\n\n// Components\nimport { VResponsive } from '@/components/VResponsive'\n\n// Directives\nimport intersect from '@/directives/intersect'\n\n// Composables\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport {\n computed,\n nextTick,\n onBeforeMount,\n ref,\n vShow,\n watch,\n withDirectives,\n} from 'vue'\nimport {\n convertToUnit,\n genericComponent,\n SUPPORTS_INTERSECTION,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// not intended for public use, this is passed in by vuetify-loader\nexport interface srcObject {\n src?: string\n srcset?: string\n lazySrc?: string\n aspect: number\n}\n\nexport type VImgSlots = {\n default: []\n placeholder: []\n error: []\n sources: []\n}\n\nexport const VImg = genericComponent<VImgSlots>()({\n name: 'VImg',\n\n directives: { intersect },\n\n props: {\n aspectRatio: [String, Number],\n alt: String,\n cover: Boolean,\n eager: Boolean,\n gradient: String,\n lazySrc: String,\n options: {\n type: Object as PropType<IntersectionObserverInit>,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n sizes: String,\n src: {\n type: [String, Object] as PropType<string | srcObject>,\n default: '',\n },\n srcset: String,\n width: [String, Number],\n\n ...makeTransitionProps(),\n },\n\n emits: {\n loadstart: (value: string | undefined) => true,\n load: (value: string | undefined) => true,\n error: (value: string | undefined) => true,\n },\n\n setup (props, { emit, slots }) {\n const currentSrc = ref('') // Set from srcset\n const image = ref<HTMLImageElement>()\n const state = ref<'idle' | 'loading' | 'loaded' | 'error'>(props.eager ? 'loading' : 'idle')\n const naturalWidth = ref<number>()\n const naturalHeight = ref<number>()\n\n const normalisedSrc = computed<srcObject>(() => {\n return props.src && typeof props.src === 'object'\n ? {\n src: props.src.src,\n srcset: props.srcset || props.src.srcset,\n lazySrc: props.lazySrc || props.src.lazySrc,\n aspect: Number(props.aspectRatio || props.src.aspect || 0),\n } : {\n src: props.src,\n srcset: props.srcset,\n lazySrc: props.lazySrc,\n aspect: Number(props.aspectRatio || 0),\n }\n })\n const aspectRatio = computed(() => {\n return normalisedSrc.value.aspect || naturalWidth.value! / naturalHeight.value! || 0\n })\n\n watch(() => props.src, () => {\n init(state.value !== 'idle')\n })\n watch(aspectRatio, (val, oldVal) => {\n if (!val && oldVal && image.value) {\n pollForSize(image.value)\n }\n })\n\n // TODO: getSrc when window width changes\n\n onBeforeMount(() => init())\n\n function init (isIntersecting?: boolean) {\n if (props.eager && isIntersecting) return\n if (\n SUPPORTS_INTERSECTION &&\n !isIntersecting &&\n !props.eager\n ) return\n\n state.value = 'loading'\n\n if (normalisedSrc.value.lazySrc) {\n const lazyImg = new Image()\n lazyImg.src = normalisedSrc.value.lazySrc\n pollForSize(lazyImg, null)\n }\n\n if (!normalisedSrc.value.src) return\n\n nextTick(() => {\n emit('loadstart', image.value?.currentSrc || normalisedSrc.value.src)\n\n if (image.value?.complete) {\n if (!image.value.naturalWidth) {\n onError()\n }\n\n if (state.value === 'error') return\n\n if (!aspectRatio.value) pollForSize(image.value, null)\n onLoad()\n } else {\n if (!aspectRatio.value) pollForSize(image.value!)\n getSrc()\n }\n })\n }\n\n function onLoad () {\n getSrc()\n state.value = 'loaded'\n emit('load', image.value?.currentSrc || normalisedSrc.value.src)\n }\n\n function onError () {\n state.value = 'error'\n emit('error', image.value?.currentSrc || normalisedSrc.value.src)\n }\n\n function getSrc () {\n const img = image.value\n if (img) currentSrc.value = img.currentSrc || img.src\n }\n\n let timer = -1\n function pollForSize (img: HTMLImageElement, timeout: number | null = 100) {\n const poll = () => {\n clearTimeout(timer)\n const { naturalHeight: imgHeight, naturalWidth: imgWidth } = img\n\n if (imgHeight || imgWidth) {\n naturalWidth.value = imgWidth\n naturalHeight.value = imgHeight\n } else if (!img.complete && state.value === 'loading' && timeout != null) {\n timer = window.setTimeout(poll, timeout)\n } else if (img.currentSrc.endsWith('.svg') || img.currentSrc.startsWith('data:image/svg+xml')) {\n naturalWidth.value = 1\n naturalHeight.value = 1\n }\n }\n\n poll()\n }\n\n const containClasses = computed(() => ({\n 'v-img__img--cover': props.cover,\n 'v-img__img--contain': !props.cover,\n }))\n\n const __image = () => {\n if (!normalisedSrc.value.src || state.value === 'idle') return null\n\n const img = (\n <img\n class={['v-img__img', containClasses.value]}\n src={ normalisedSrc.value.src }\n srcset={ normalisedSrc.value.srcset }\n alt={ props.alt }\n sizes={ props.sizes }\n ref={ image }\n onLoad={ onLoad }\n onError={ onError }\n />\n )\n\n const sources = slots.sources?.()\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n {\n withDirectives(\n sources\n ? <picture class=\"v-img__picture\">{ sources }{ img }</picture>\n : img,\n [[vShow, state.value === 'loaded']]\n )\n }\n </MaybeTransition>\n )\n }\n\n const __preloadImage = () => (\n <MaybeTransition transition={ props.transition }>\n { normalisedSrc.value.lazySrc && state.value !== 'loaded' && (\n <img\n class={['v-img__img', 'v-img__img--preload', containClasses.value]}\n src={ normalisedSrc.value.lazySrc }\n alt={ props.alt }\n />\n )}\n </MaybeTransition>\n )\n\n const __placeholder = () => {\n if (!slots.placeholder) return null\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n { (state.value === 'loading' || (state.value === 'error' && !slots.error)) &&\n <div class=\"v-img__placeholder\">{ slots.placeholder() }</div>\n }\n </MaybeTransition>\n )\n }\n\n const __error = () => {\n if (!slots.error) return null\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n { state.value === 'error' &&\n <div class=\"v-img__error\">{ slots.error() }</div>\n }\n </MaybeTransition>\n )\n }\n\n const __gradient = () => {\n if (!props.gradient) return null\n\n return <div class=\"v-img__gradient\" style={{ backgroundImage: `linear-gradient(${props.gradient})` }} />\n }\n\n const isBooted = ref(false)\n {\n const stop = watch(aspectRatio, val => {\n if (val) {\n // Doesn't work with nextTick, idk why\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n isBooted.value = true\n })\n })\n stop()\n }\n })\n }\n\n useRender(() => (\n <VResponsive\n class={[\n 'v-img',\n { 'v-img--booting': !isBooted.value },\n ]}\n style={{ width: convertToUnit(props.width === 'auto' ? naturalWidth.value : props.width) }}\n aspectRatio={ aspectRatio.value }\n aria-label={ props.alt }\n role={ props.alt ? 'img' : undefined }\n v-intersect={[{\n handler: init,\n options: props.options,\n }, null, ['once']]}\n >{{\n additional: () => (\n <>\n <__image />\n <__preloadImage />\n <__gradient />\n <__placeholder />\n <__error />\n </>\n ),\n default: slots.default,\n }}</VResponsive>\n ))\n\n return {\n currentSrc,\n image,\n state,\n naturalWidth,\n naturalHeight,\n }\n },\n})\n\nexport type VImg = InstanceType<typeof VImg>\n"],"mappings":"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"}
@@ -17,7 +17,7 @@ declare const VImg: {
17
17
  $data: {};
18
18
  $props: Partial<{
19
19
  transition: string | boolean | (vue.TransitionProps & {
20
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
20
+ component?: vue.Component | undefined;
21
21
  });
22
22
  eager: boolean;
23
23
  options: IntersectionObserverInit;
@@ -25,7 +25,7 @@ declare const VImg: {
25
25
  src: string | srcObject;
26
26
  }> & Omit<{
27
27
  transition: string | boolean | (vue.TransitionProps & {
28
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
28
+ component?: vue.Component | undefined;
29
29
  });
30
30
  eager: boolean;
31
31
  options: IntersectionObserverInit;
@@ -64,9 +64,9 @@ declare const VImg: {
64
64
  "v-slot:error"?: false | (() => vue.VNodeChild) | undefined;
65
65
  "v-slot:sources"?: false | (() => vue.VNodeChild) | undefined;
66
66
  } & {
67
- onError?: ((event: string | undefined) => any) | undefined;
68
- onLoad?: ((event: string | undefined) => any) | undefined;
69
- onLoadstart?: ((event: string | undefined) => any) | undefined;
67
+ onError?: ((value: string | undefined) => any) | undefined;
68
+ onLoad?: ((value: string | undefined) => any) | undefined;
69
+ onLoadstart?: ((value: string | undefined) => any) | undefined;
70
70
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "transition" | "eager" | "options" | "cover" | "src">;
71
71
  $attrs: {
72
72
  [x: string]: unknown;
@@ -79,11 +79,11 @@ declare const VImg: {
79
79
  }>;
80
80
  $root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
81
81
  $parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
82
- $emit: ((event: "error", event: string | undefined) => void) & ((event: "load", event: string | undefined) => void) & ((event: "loadstart", event: string | undefined) => void);
82
+ $emit: ((event: "error", value: string | undefined) => void) & ((event: "load", value: string | undefined) => void) & ((event: "loadstart", value: string | undefined) => void);
83
83
  $el: any;
84
84
  $options: vue.ComponentOptionsBase<{
85
85
  transition: string | boolean | (vue.TransitionProps & {
86
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
86
+ component?: vue.Component | undefined;
87
87
  });
88
88
  eager: boolean;
89
89
  options: IntersectionObserverInit;
@@ -122,9 +122,9 @@ declare const VImg: {
122
122
  "v-slot:error"?: false | (() => vue.VNodeChild) | undefined;
123
123
  "v-slot:sources"?: false | (() => vue.VNodeChild) | undefined;
124
124
  } & {
125
- onError?: ((event: string | undefined) => any) | undefined;
126
- onLoad?: ((event: string | undefined) => any) | undefined;
127
- onLoadstart?: ((event: string | undefined) => any) | undefined;
125
+ onError?: ((value: string | undefined) => any) | undefined;
126
+ onLoad?: ((value: string | undefined) => any) | undefined;
127
+ onLoadstart?: ((value: string | undefined) => any) | undefined;
128
128
  }, {
129
129
  currentSrc: vue.Ref<string>;
130
130
  image: vue.Ref<HTMLImageElement | undefined>;
@@ -132,12 +132,12 @@ declare const VImg: {
132
132
  naturalWidth: vue.Ref<number | undefined>;
133
133
  naturalHeight: vue.Ref<number | undefined>;
134
134
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
135
- loadstart: (event: string | undefined) => true;
136
- load: (event: string | undefined) => true;
137
- error: (event: string | undefined) => true;
135
+ loadstart: (value: string | undefined) => true;
136
+ load: (value: string | undefined) => true;
137
+ error: (value: string | undefined) => true;
138
138
  }, string, {
139
139
  transition: string | boolean | (vue.TransitionProps & {
140
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
140
+ component?: vue.Component | undefined;
141
141
  });
142
142
  eager: boolean;
143
143
  options: IntersectionObserverInit;
@@ -165,7 +165,7 @@ declare const VImg: {
165
165
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: vue.WatchOptions<boolean> | undefined): vue.WatchStopHandle;
166
166
  } & {
167
167
  transition: string | boolean | (vue.TransitionProps & {
168
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
168
+ component?: vue.Component | undefined;
169
169
  });
170
170
  eager: boolean;
171
171
  options: IntersectionObserverInit;
@@ -204,9 +204,9 @@ declare const VImg: {
204
204
  "v-slot:error"?: false | (() => vue.VNodeChild) | undefined;
205
205
  "v-slot:sources"?: false | (() => vue.VNodeChild) | undefined;
206
206
  } & {
207
- onError?: ((event: string | undefined) => any) | undefined;
208
- onLoad?: ((event: string | undefined) => any) | undefined;
209
- onLoadstart?: ((event: string | undefined) => any) | undefined;
207
+ onError?: ((value: string | undefined) => any) | undefined;
208
+ onLoad?: ((value: string | undefined) => any) | undefined;
209
+ onLoadstart?: ((value: string | undefined) => any) | undefined;
210
210
  } & vue.ShallowUnwrapRef<{
211
211
  currentSrc: vue.Ref<string>;
212
212
  image: vue.Ref<HTMLImageElement | undefined>;
@@ -219,7 +219,7 @@ declare const VImg: {
219
219
  __isSuspense?: undefined;
220
220
  } & vue.ComponentOptionsBase<{
221
221
  transition: string | boolean | (vue.TransitionProps & {
222
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
222
+ component?: vue.Component | undefined;
223
223
  });
224
224
  eager: boolean;
225
225
  options: IntersectionObserverInit;
@@ -258,9 +258,9 @@ declare const VImg: {
258
258
  "v-slot:error"?: false | (() => vue.VNodeChild) | undefined;
259
259
  "v-slot:sources"?: false | (() => vue.VNodeChild) | undefined;
260
260
  } & {
261
- onError?: ((event: string | undefined) => any) | undefined;
262
- onLoad?: ((event: string | undefined) => any) | undefined;
263
- onLoadstart?: ((event: string | undefined) => any) | undefined;
261
+ onError?: ((value: string | undefined) => any) | undefined;
262
+ onLoad?: ((value: string | undefined) => any) | undefined;
263
+ onLoadstart?: ((value: string | undefined) => any) | undefined;
264
264
  }, {
265
265
  currentSrc: vue.Ref<string>;
266
266
  image: vue.Ref<HTMLImageElement | undefined>;
@@ -268,12 +268,12 @@ declare const VImg: {
268
268
  naturalWidth: vue.Ref<number | undefined>;
269
269
  naturalHeight: vue.Ref<number | undefined>;
270
270
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
271
- loadstart: (event: string | undefined) => true;
272
- load: (event: string | undefined) => true;
273
- error: (event: string | undefined) => true;
271
+ loadstart: (value: string | undefined) => true;
272
+ load: (value: string | undefined) => true;
273
+ error: (value: string | undefined) => true;
274
274
  }, string, {
275
275
  transition: string | boolean | (vue.TransitionProps & {
276
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
276
+ component?: vue.Component | undefined;
277
277
  });
278
278
  eager: boolean;
279
279
  options: IntersectionObserverInit;
@@ -282,7 +282,7 @@ declare const VImg: {
282
282
  }, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
283
283
  transition: {
284
284
  type: PropType<string | boolean | (vue.TransitionProps & {
285
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
285
+ component?: vue.Component | undefined;
286
286
  })>;
287
287
  default: string;
288
288
  validator: (val: unknown) => boolean;
@@ -311,7 +311,7 @@ declare const VImg: {
311
311
  }, vue.ExtractPropTypes<{
312
312
  transition: {
313
313
  type: PropType<string | boolean | (vue.TransitionProps & {
314
- component?: vue.Component<any, any, any, vue.ComputedOptions, vue.MethodOptions> | undefined;
314
+ component?: vue.Component | undefined;
315
315
  })>;
316
316
  default: string;
317
317
  validator: (val: unknown) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"InputIcon.mjs","names":["VIcon","useLocale","useInputIcon","props","t","InputIcon","name","localeKey","prepend","prependInner","append","appendInner","clear","listener","label","undefined"],"sources":["../../../src/components/VInput/InputIcon.tsx"],"sourcesContent":["import { VIcon } from '@/components/VIcon'\nimport { useLocale } from '@/composables/locale'\nimport type { IconValue } from '@/composables/icons'\n\ntype names = 'clear' | 'prepend' | 'append' | 'appendInner' | 'prependInner'\n\ntype EventProp<T = (...args: any[]) => any> = T | T[]\ntype InputIconProps<T extends names> = {\n label: string | undefined\n} & {\n [K in `${T}Icon`]: IconValue | undefined\n} & {\n [K in `onClick:${T}`]: EventProp | undefined\n}\n\ntype Listeners<T extends {}, U = keyof T> = U extends `onClick:${infer V extends names}` ? V : never\n\nexport function useInputIcon<T extends {}, K extends names = Listeners<T>> (props: T & InputIconProps<K>) {\n const { t } = useLocale()\n\n function InputIcon ({ name }: { name: Extract<names, K> }) {\n const localeKey = {\n prepend: 'prependAction',\n prependInner: 'prependAction',\n append: 'appendAction',\n appendInner: 'appendAction',\n clear: 'clear',\n }[name]\n const listener = props[`onClick:${name}`]\n const label = listener && localeKey\n ? t(`$vuetify.input.${localeKey}`, props.label ?? '')\n : undefined\n\n return (\n <VIcon\n icon={ props[`${name}Icon`] }\n aria-label={ label }\n onClick={ listener }\n />\n )\n }\n\n return { InputIcon }\n}\n"],"mappings":";SAASA,KAAK;AAAA,SACLC,SAAS;AAgBlB,OAAO,SAASC,YAAY,CAAgDC,KAA4B,EAAE;EACxG,MAAM;IAAEC;EAAE,CAAC,GAAGH,SAAS,EAAE;EAEzB,SAASI,SAAS,OAAyC;IAAA,IAAvC;MAAEC;IAAkC,CAAC;IACvD,MAAMC,SAAS,GAAG;MAChBC,OAAO,EAAE,eAAe;MACxBC,YAAY,EAAE,eAAe;MAC7BC,MAAM,EAAE,cAAc;MACtBC,WAAW,EAAE,cAAc;MAC3BC,KAAK,EAAE;IACT,CAAC,CAACN,IAAI,CAAC;IACP,MAAMO,QAAQ,GAAGV,KAAK,CAAE,WAAUG,IAAK,EAAC,CAAC;IACzC,MAAMQ,KAAK,GAAGD,QAAQ,IAAIN,SAAS,GAC/BH,CAAC,CAAE,kBAAiBG,SAAU,EAAC,EAAEJ,KAAK,CAACW,KAAK,IAAI,EAAE,CAAC,GACnDC,SAAS;IAEb;MAAA,QAEWZ,KAAK,CAAE,GAAEG,IAAK,MAAK,CAAC;MAAA,cACdQ,KAAK;MAAA,WACRD;IAAQ;EAGxB;EAEA,OAAO;IAAER;EAAU,CAAC;AACtB"}
1
+ {"version":3,"file":"InputIcon.mjs","names":["VIcon","useLocale","useInputIcon","props","t","InputIcon","_ref","name","localeKey","prepend","prependInner","append","appendInner","clear","listener","label","undefined","_createVNode"],"sources":["../../../src/components/VInput/InputIcon.tsx"],"sourcesContent":["import { VIcon } from '@/components/VIcon'\nimport { useLocale } from '@/composables/locale'\nimport type { IconValue } from '@/composables/icons'\n\ntype names = 'clear' | 'prepend' | 'append' | 'appendInner' | 'prependInner'\n\ntype EventProp<T = (...args: any[]) => any> = T | T[]\ntype InputIconProps<T extends names> = {\n label: string | undefined\n} & {\n [K in `${T}Icon`]: IconValue | undefined\n} & {\n [K in `onClick:${T}`]: EventProp | undefined\n}\n\ntype Listeners<T extends {}, U = keyof T> = U extends `onClick:${infer V extends names}` ? V : never\n\nexport function useInputIcon<T extends {}, K extends names = Listeners<T>> (props: T & InputIconProps<K>) {\n const { t } = useLocale()\n\n function InputIcon ({ name }: { name: Extract<names, K> }) {\n const localeKey = {\n prepend: 'prependAction',\n prependInner: 'prependAction',\n append: 'appendAction',\n appendInner: 'appendAction',\n clear: 'clear',\n }[name]\n const listener = props[`onClick:${name}`]\n const label = listener && localeKey\n ? t(`$vuetify.input.${localeKey}`, props.label ?? '')\n : undefined\n\n return (\n <VIcon\n icon={ props[`${name}Icon`] }\n aria-label={ label }\n onClick={ listener }\n />\n )\n }\n\n return { InputIcon }\n}\n"],"mappings":";SAASA,KAAK;AAAA,SACLC,SAAS;AAgBlB,OAAO,SAASC,YAAYA,CAAgDC,KAA4B,EAAE;EACxG,MAAM;IAAEC;EAAE,CAAC,GAAGH,SAAS,EAAE;EAEzB,SAASI,SAASA,CAAAC,IAAA,EAAyC;IAAA,IAAvC;MAAEC;IAAkC,CAAC,GAAAD,IAAA;IACvD,MAAME,SAAS,GAAG;MAChBC,OAAO,EAAE,eAAe;MACxBC,YAAY,EAAE,eAAe;MAC7BC,MAAM,EAAE,cAAc;MACtBC,WAAW,EAAE,cAAc;MAC3BC,KAAK,EAAE;IACT,CAAC,CAACN,IAAI,CAAC;IACP,MAAMO,QAAQ,GAAGX,KAAK,CAAE,WAAUI,IAAK,EAAC,CAAC;IACzC,MAAMQ,KAAK,GAAGD,QAAQ,IAAIN,SAAS,GAC/BJ,CAAC,CAAE,kBAAiBI,SAAU,EAAC,EAAEL,KAAK,CAACY,KAAK,IAAI,EAAE,CAAC,GACnDC,SAAS;IAEb,OAAAC,YAAA,CAAAjB,KAAA;MAAA,QAEWG,KAAK,CAAE,GAAEI,IAAK,MAAK,CAAC;MAAA,cACdQ,KAAK;MAAA,WACRD;IAAQ;EAGxB;EAEA,OAAO;IAAET;EAAU,CAAC;AACtB"}
@@ -24,8 +24,8 @@ export const makeVInputProps = propsFactory({
24
24
  default: 'horizontal',
25
25
  validator: v => ['horizontal', 'vertical'].includes(v)
26
26
  },
27
- 'onClick:prepend': EventProp,
28
- 'onClick:append': EventProp,
27
+ 'onClick:prepend': EventProp(),
28
+ 'onClick:append': EventProp(),
29
29
  ...makeDensityProps(),
30
30
  ...makeValidationProps()
31
31
  }, 'v-input');
@@ -1 +1 @@
1
- {"version":3,"file":"VInput.mjs","names":["VMessages","IconValue","makeDensityProps","useDensity","makeValidationProps","useValidation","computed","EventProp","genericComponent","getUid","isOn","pick","propsFactory","useRender","useInputIcon","makeVInputProps","id","String","appendIcon","prependIcon","hideDetails","Boolean","messages","type","Array","default","direction","validator","v","includes","VInput","name","props","emits","val","setup","attrs","slots","emit","densityClasses","InputIcon","uid","messagesId","value","errorMessages","isDirty","isDisabled","isReadonly","isPristine","isValid","isValidating","reset","resetValidation","validate","validationClasses","slotProps","hasPrepend","prepend","hasAppend","append","hasMessages","length","hasDetails","details","message","filterInputProps","keys","Object","filter","k"],"sources":["../../../src/components/VInput/VInput.tsx"],"sourcesContent":["// Styles\nimport './VInput.sass'\n\n// Components\nimport { VMessages } from '@/components/VMessages'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { computed } from 'vue'\nimport { EventProp, genericComponent, getUid, isOn, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\n\nexport interface VInputSlot {\n id: ComputedRef<string>\n messagesId: ComputedRef<string>\n isDirty: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n isReadonly: ComputedRef<boolean>\n isPristine: Ref<boolean>\n isValid: ComputedRef<boolean | null>\n isValidating: Ref<boolean>\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n messages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n 'onClick:prepend': EventProp,\n 'onClick:append': EventProp,\n\n ...makeDensityProps(),\n ...makeValidationProps(),\n}, 'v-input')\n\nexport type VInputSlots = MakeSlots<{\n default: [VInputSlot]\n prepend: [VInputSlot]\n append: [VInputSlot]\n details: [VInputSlot]\n}>\n\nexport const VInput = genericComponent<VInputSlots>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const { InputIcon } = useInputIcon(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n const messagesId = computed(() => `${id.value}-messages`)\n\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props, 'v-input', id)\n\n const slotProps = computed<VInputSlot>(() => ({\n id,\n messagesId,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n }))\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n const hasMessages = !!(\n props.messages?.length ||\n errorMessages.value.length\n )\n const hasDetails = !props.hideDetails || (\n props.hideDetails === 'auto' &&\n (hasMessages || !!slots.details)\n )\n\n return (\n <div class={[\n 'v-input',\n `v-input--${props.direction}`,\n densityClasses.value,\n validationClasses.value,\n ]}\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-input__prepend\">\n { slots.prepend?.(slotProps.value) }\n\n { props.prependIcon && (\n <InputIcon\n key=\"prepend-icon\"\n name=\"prepend\"\n />\n )}\n </div>\n )}\n\n { slots.default && (\n <div class=\"v-input__control\">\n { slots.default?.(slotProps.value) }\n </div>\n )}\n\n { hasAppend && (\n <div key=\"append\" class=\"v-input__append\">\n { props.appendIcon && (\n <InputIcon\n key=\"append-icon\"\n name=\"append\"\n />\n )}\n\n { slots.append?.(slotProps.value) }\n </div>\n )}\n\n { hasDetails && (\n <div class=\"v-input__details\">\n <VMessages\n id={ messagesId.value }\n active={ hasMessages }\n messages={ errorMessages.value.length > 0\n ? errorMessages.value\n : props.messages\n }\n v-slots={{ message: slots.message }}\n />\n\n { slots.details?.(slotProps.value) }\n </div>\n )}\n </div>\n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n }\n },\n})\n\nexport type VInput = InstanceType<typeof VInput>\n\nexport function filterInputProps (props: Record<string, unknown>) {\n const keys = Object.keys(VInput.props).filter(k => !isOn(k))\n return pick(props, keys)\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"VInput.mjs","names":["VMessages","IconValue","makeDensityProps","useDensity","makeValidationProps","useValidation","computed","EventProp","genericComponent","getUid","isOn","pick","propsFactory","useRender","useInputIcon","makeVInputProps","id","String","appendIcon","prependIcon","hideDetails","Boolean","messages","type","Array","default","direction","validator","v","includes","VInput","name","props","emits","val","setup","_ref","attrs","slots","emit","densityClasses","InputIcon","uid","messagesId","value","errorMessages","isDirty","isDisabled","isReadonly","isPristine","isValid","isValidating","reset","resetValidation","validate","validationClasses","slotProps","hasPrepend","prepend","hasAppend","append","hasMessages","length","hasDetails","details","_createVNode","message","filterInputProps","keys","Object","filter","k"],"sources":["../../../src/components/VInput/VInput.tsx"],"sourcesContent":["// Styles\nimport './VInput.sass'\n\n// Components\nimport { VMessages } from '@/components/VMessages'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { computed } from 'vue'\nimport { EventProp, genericComponent, getUid, isOn, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport { useInputIcon } from '@/components/VInput/InputIcon'\n\nexport interface VInputSlot {\n id: ComputedRef<string>\n messagesId: ComputedRef<string>\n isDirty: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n isReadonly: ComputedRef<boolean>\n isPristine: Ref<boolean>\n isValid: ComputedRef<boolean | null>\n isValidating: Ref<boolean>\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n messages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n 'onClick:prepend': EventProp<[MouseEvent]>(),\n 'onClick:append': EventProp<[MouseEvent]>(),\n\n ...makeDensityProps(),\n ...makeValidationProps(),\n}, 'v-input')\n\nexport type VInputSlots = MakeSlots<{\n default: [VInputSlot]\n prepend: [VInputSlot]\n append: [VInputSlot]\n details: [VInputSlot]\n}>\n\nexport const VInput = genericComponent<VInputSlots>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const { InputIcon } = useInputIcon(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n const messagesId = computed(() => `${id.value}-messages`)\n\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props, 'v-input', id)\n\n const slotProps = computed<VInputSlot>(() => ({\n id,\n messagesId,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n }))\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n const hasMessages = !!(\n props.messages?.length ||\n errorMessages.value.length\n )\n const hasDetails = !props.hideDetails || (\n props.hideDetails === 'auto' &&\n (hasMessages || !!slots.details)\n )\n\n return (\n <div class={[\n 'v-input',\n `v-input--${props.direction}`,\n densityClasses.value,\n validationClasses.value,\n ]}\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-input__prepend\">\n { slots.prepend?.(slotProps.value) }\n\n { props.prependIcon && (\n <InputIcon\n key=\"prepend-icon\"\n name=\"prepend\"\n />\n )}\n </div>\n )}\n\n { slots.default && (\n <div class=\"v-input__control\">\n { slots.default?.(slotProps.value) }\n </div>\n )}\n\n { hasAppend && (\n <div key=\"append\" class=\"v-input__append\">\n { props.appendIcon && (\n <InputIcon\n key=\"append-icon\"\n name=\"append\"\n />\n )}\n\n { slots.append?.(slotProps.value) }\n </div>\n )}\n\n { hasDetails && (\n <div class=\"v-input__details\">\n <VMessages\n id={ messagesId.value }\n active={ hasMessages }\n messages={ errorMessages.value.length > 0\n ? errorMessages.value\n : props.messages\n }\n v-slots={{ message: slots.message }}\n />\n\n { slots.details?.(slotProps.value) }\n </div>\n )}\n </div>\n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n }\n },\n})\n\nexport type VInput = InstanceType<typeof VInput>\n\nexport function filterInputProps (props: Record<string, unknown>) {\n const keys = Object.keys(VInput.props).filter(k => !isOn(k))\n return pick(props, keys)\n}\n"],"mappings":"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"}
@@ -5,8 +5,8 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
5
5
  filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): [yes: Partial<Pick<T, U>>, no: Omit<T, U>];
6
6
  }
7
7
 
8
- type EventProp<T = (...args: any[]) => any> = T | T[];
9
- declare const EventProp: PropType<EventProp<(...args: any[]) => any>>;
8
+ type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
9
+ declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
10
10
 
11
11
  type Density = null | 'default' | 'comfortable' | 'compact';
12
12
 
@@ -62,8 +62,8 @@ declare const VInput: {
62
62
  modelValue?: any;
63
63
  prependIcon?: IconValue | undefined;
64
64
  appendIcon?: IconValue | undefined;
65
- 'onClick:append'?: EventProp<(...args: any[]) => any> | undefined;
66
- 'onClick:prepend'?: EventProp<(...args: any[]) => any> | undefined;
65
+ 'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
66
+ 'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
67
67
  validateOn?: "input" | "blur" | "submit" | undefined;
68
68
  validationValue?: any;
69
69
  hideDetails?: boolean | "auto" | undefined;
@@ -125,8 +125,8 @@ declare const VInput: {
125
125
  modelValue?: any;
126
126
  prependIcon?: IconValue | undefined;
127
127
  appendIcon?: IconValue | undefined;
128
- 'onClick:append'?: EventProp<(...args: any[]) => any> | undefined;
129
- 'onClick:prepend'?: EventProp<(...args: any[]) => any> | undefined;
128
+ 'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
129
+ 'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
130
130
  validateOn?: "input" | "blur" | "submit" | undefined;
131
131
  validationValue?: any;
132
132
  hideDetails?: boolean | "auto" | undefined;
@@ -211,8 +211,8 @@ declare const VInput: {
211
211
  modelValue?: any;
212
212
  prependIcon?: IconValue | undefined;
213
213
  appendIcon?: IconValue | undefined;
214
- 'onClick:append'?: EventProp<(...args: any[]) => any> | undefined;
215
- 'onClick:prepend'?: EventProp<(...args: any[]) => any> | undefined;
214
+ 'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
215
+ 'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
216
216
  validateOn?: "input" | "blur" | "submit" | undefined;
217
217
  validationValue?: any;
218
218
  hideDetails?: boolean | "auto" | undefined;
@@ -268,8 +268,8 @@ declare const VInput: {
268
268
  modelValue?: any;
269
269
  prependIcon?: IconValue | undefined;
270
270
  appendIcon?: IconValue | undefined;
271
- 'onClick:append'?: EventProp<(...args: any[]) => any> | undefined;
272
- 'onClick:prepend'?: EventProp<(...args: any[]) => any> | undefined;
271
+ 'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
272
+ 'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
273
273
  validateOn?: "input" | "blur" | "submit" | undefined;
274
274
  validationValue?: any;
275
275
  hideDetails?: boolean | "auto" | undefined;
@@ -356,8 +356,8 @@ declare const VInput: {
356
356
  default: string;
357
357
  validator: (v: any) => boolean;
358
358
  };
359
- 'onClick:prepend': PropType<EventProp<(...args: any[]) => any>>;
360
- 'onClick:append': PropType<EventProp<(...args: any[]) => any>>;
359
+ 'onClick:prepend': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
360
+ 'onClick:append': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
361
361
  }, vue.ExtractPropTypes<{
362
362
  focused: BooleanConstructor;
363
363
  disabled: BooleanConstructor;
@@ -398,8 +398,8 @@ declare const VInput: {
398
398
  default: string;
399
399
  validator: (v: any) => boolean;
400
400
  };
401
- 'onClick:prepend': PropType<EventProp<(...args: any[]) => any>>;
402
- 'onClick:append': PropType<EventProp<(...args: any[]) => any>>;
401
+ 'onClick:prepend': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
402
+ 'onClick:append': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
403
403
  }>>;
404
404
  type VInput = InstanceType<typeof VInput>;
405
405
 
@@ -1 +1 @@
1
- {"version":3,"file":"VItem.mjs","names":["makeGroupItemProps","useGroupItem","VItemGroupSymbol","genericComponent","VItem","name","props","emits","val","setup","slots","isSelected","select","toggle","selectedClass","value","disabled","default"],"sources":["../../../src/components/VItemGroup/VItem.tsx"],"sourcesContent":["// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { VItemGroupSymbol } from './VItemGroup'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VItem = genericComponent<{ default: [GroupItemProvide] }>()({\n name: 'VItem',\n\n props: makeGroupItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, select, toggle, selectedClass, value, disabled } = useGroupItem(props, VItemGroupSymbol)\n return () => slots.default?.({\n isSelected: isSelected.value,\n selectedClass: selectedClass.value,\n select,\n toggle,\n value: value.value,\n disabled: disabled.value,\n })\n },\n})\n\nexport type VItem = InstanceType<typeof VItem>\n"],"mappings":"AAAA;AAAA,SACSA,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,gBAAgB,4BAEzB;AAAA,SACSC,gBAAgB,gCAEzB;AAGA,OAAO,MAAMC,KAAK,GAAGD,gBAAgB,EAAmC,CAAC;EACvEE,IAAI,EAAE,OAAO;EAEbC,KAAK,EAAEN,kBAAkB,EAAE;EAE3BO,KAAK,EAAE;IACL,gBAAgB,EAAGC,GAAuB,IAAK;EACjD,CAAC;EAEDC,KAAK,CAAEH,KAAK,QAAa;IAAA,IAAX;MAAEI;IAAM,CAAC;IACrB,MAAM;MAAEC,UAAU;MAAEC,MAAM;MAAEC,MAAM;MAAEC,aAAa;MAAEC,KAAK;MAAEC;IAAS,CAAC,GAAGf,YAAY,CAACK,KAAK,EAAEJ,gBAAgB,CAAC;IAC5G,OAAO,MAAMQ,KAAK,CAACO,OAAO,GAAG;MAC3BN,UAAU,EAAEA,UAAU,CAACI,KAAK;MAC5BD,aAAa,EAAEA,aAAa,CAACC,KAAK;MAClCH,MAAM;MACNC,MAAM;MACNE,KAAK,EAAEA,KAAK,CAACA,KAAK;MAClBC,QAAQ,EAAEA,QAAQ,CAACD;IACrB,CAAC,CAAC;EACJ;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VItem.mjs","names":["makeGroupItemProps","useGroupItem","VItemGroupSymbol","genericComponent","VItem","name","props","emits","val","setup","_ref","slots","isSelected","select","toggle","selectedClass","value","disabled","default"],"sources":["../../../src/components/VItemGroup/VItem.tsx"],"sourcesContent":["// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { VItemGroupSymbol } from './VItemGroup'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VItem = genericComponent<{ default: [GroupItemProvide] }>()({\n name: 'VItem',\n\n props: makeGroupItemProps(),\n\n emits: {\n 'group:selected': (val: { value: boolean }) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, select, toggle, selectedClass, value, disabled } = useGroupItem(props, VItemGroupSymbol)\n return () => slots.default?.({\n isSelected: isSelected.value,\n selectedClass: selectedClass.value,\n select,\n toggle,\n value: value.value,\n disabled: disabled.value,\n })\n },\n})\n\nexport type VItem = InstanceType<typeof VItem>\n"],"mappings":"AAAA;AAAA,SACSA,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,gBAAgB,4BAEzB;AAAA,SACSC,gBAAgB,gCAEzB;AAGA,OAAO,MAAMC,KAAK,GAAGD,gBAAgB,EAAmC,CAAC;EACvEE,IAAI,EAAE,OAAO;EAEbC,KAAK,EAAEN,kBAAkB,EAAE;EAE3BO,KAAK,EAAE;IACL,gBAAgB,EAAGC,GAAuB,IAAK;EACjD,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,UAAU;MAAEC,MAAM;MAAEC,MAAM;MAAEC,aAAa;MAAEC,KAAK;MAAEC;IAAS,CAAC,GAAGhB,YAAY,CAACK,KAAK,EAAEJ,gBAAgB,CAAC;IAC5G,OAAO,MAAMS,KAAK,CAACO,OAAO,GAAG;MAC3BN,UAAU,EAAEA,UAAU,CAACI,KAAK;MAC5BD,aAAa,EAAEA,aAAa,CAACC,KAAK;MAClCH,MAAM;MACNC,MAAM;MACNE,KAAK,EAAEA,KAAK,CAACA,KAAK;MAClBC,QAAQ,EAAEA,QAAQ,CAACD;IACrB,CAAC,CAAC;EACJ;AACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"VItemGroup.mjs","names":["makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","genericComponent","VItemGroupSymbol","Symbol","for","VItemGroup","name","props","selectedClass","emits","value","setup","slots","themeClasses","isSelected","select","next","prev","selected","default"],"sources":["../../../src/components/VItemGroup/VItemGroup.tsx"],"sourcesContent":["// Styles\nimport './VItemGroup.sass'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\nexport const VItemGroupSymbol = Symbol.for('vuetify:v-item-group')\n\nexport const VItemGroup = genericComponent()({\n name: 'VItemGroup',\n\n props: {\n ...makeGroupProps({\n selectedClass: 'v-item--selected',\n }),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VItemGroupSymbol)\n\n return () => (\n <props.tag\n class={[\n 'v-item-group',\n themeClasses.value,\n ]}\n >\n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n })}\n </props.tag>\n )\n },\n})\n\nexport type VItemGroup = InstanceType<typeof VItemGroup>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AAAA,SACSC,gBAAgB;AAEzB,OAAO,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAElE,OAAO,MAAMC,UAAU,GAAGJ,gBAAgB,EAAE,CAAC;EAC3CK,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAE;IACL,GAAGX,cAAc,CAAC;MAChBY,aAAa,EAAE;IACjB,CAAC,CAAC;IACF,GAAGV,YAAY,EAAE;IACjB,GAAGC,cAAc;EACnB,CAAC;EAEDU,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAK,CAAEJ,KAAK,QAAa;IAAA,IAAX;MAAEK;IAAM,CAAC;IACrB,MAAM;MAAEC;IAAa,CAAC,GAAGb,YAAY,CAACO,KAAK,CAAC;IAC5C,MAAM;MAAEO,UAAU;MAAEC,MAAM;MAAEC,IAAI;MAAEC,IAAI;MAAEC;IAAS,CAAC,GAAGrB,QAAQ,CAACU,KAAK,EAAEL,gBAAgB,CAAC;IAEtF,OAAO;MAAA,SAEI,CACL,cAAc,EACdW,YAAY,CAACH,KAAK;IACnB;MAAA,gBAECE,KAAK,CAACO,OAAO,GAAG;QAChBL,UAAU;QACVC,MAAM;QACNC,IAAI;QACJC,IAAI;QACJC,QAAQ,EAAEA,QAAQ,CAACR;MACrB,CAAC,CAAC;IAAA,EAEL;EACH;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VItemGroup.mjs","names":["makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","genericComponent","VItemGroupSymbol","Symbol","for","VItemGroup","name","props","selectedClass","emits","value","setup","_ref","slots","themeClasses","isSelected","select","next","prev","selected","_createVNode","tag","default"],"sources":["../../../src/components/VItemGroup/VItemGroup.tsx"],"sourcesContent":["// Styles\nimport './VItemGroup.sass'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\nexport const VItemGroupSymbol = Symbol.for('vuetify:v-item-group')\n\nexport const VItemGroup = genericComponent()({\n name: 'VItemGroup',\n\n props: {\n ...makeGroupProps({\n selectedClass: 'v-item--selected',\n }),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VItemGroupSymbol)\n\n return () => (\n <props.tag\n class={[\n 'v-item-group',\n themeClasses.value,\n ]}\n >\n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n })}\n </props.tag>\n )\n },\n})\n\nexport type VItemGroup = InstanceType<typeof VItemGroup>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AAAA,SACSC,gBAAgB;AAEzB,OAAO,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAElE,OAAO,MAAMC,UAAU,GAAGJ,gBAAgB,EAAE,CAAC;EAC3CK,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAE;IACL,GAAGX,cAAc,CAAC;MAChBY,aAAa,EAAE;IACjB,CAAC,CAAC;IACF,GAAGV,YAAY,EAAE;IACjB,GAAGC,cAAc;EACnB,CAAC;EAEDU,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAKA,CAAEJ,KAAK,EAAAK,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAa,CAAC,GAAGd,YAAY,CAACO,KAAK,CAAC;IAC5C,MAAM;MAAEQ,UAAU;MAAEC,MAAM;MAAEC,IAAI;MAAEC,IAAI;MAAEC;IAAS,CAAC,GAAGtB,QAAQ,CAACU,KAAK,EAAEL,gBAAgB,CAAC;IAEtF,OAAO,MAAAkB,YAAA,CAAAb,KAAA,CAAAc,GAAA;MAAA,SAEI,CACL,cAAc,EACdP,YAAY,CAACJ,KAAK;IACnB;MAAAY,OAAA,EAAAA,CAAA,MAECT,KAAK,CAACS,OAAO,GAAG;QAChBP,UAAU;QACVC,MAAM;QACNC,IAAI;QACJC,IAAI;QACJC,QAAQ,EAAEA,QAAQ,CAACT;MACrB,CAAC,CAAC;IAAA,EAEL;EACH;AACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"VLabel.mjs","names":["makeThemeProps","genericComponent","useRender","VLabel","name","props","text","String","clickable","Boolean","setup","slots","default"],"sources":["../../../src/components/VLabel/VLabel.tsx"],"sourcesContent":["// Styles\nimport './VLabel.sass'\n\n// Composables\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\nexport const VLabel = genericComponent()({\n name: 'VLabel',\n\n props: {\n text: String,\n clickable: Boolean,\n\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n useRender(() => (\n <label\n class={[\n 'v-label',\n {\n 'v-label--clickable': props.clickable,\n },\n ]}\n >\n { props.text }\n\n { slots.default?.() }\n </label>\n ))\n\n return {}\n },\n})\n\nexport type VLabel = InstanceType<typeof VLabel>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,cAAc,uCAEvB;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,MAAM,GAAGF,gBAAgB,EAAE,CAAC;EACvCG,IAAI,EAAE,QAAQ;EAEdC,KAAK,EAAE;IACLC,IAAI,EAAEC,MAAM;IACZC,SAAS,EAAEC,OAAO;IAElB,GAAGT,cAAc;EACnB,CAAC;EAEDU,KAAK,CAAEL,KAAK,QAAa;IAAA,IAAX;MAAEM;IAAM,CAAC;IACrBT,SAAS,CAAC;MAAA,SAEC,CACL,SAAS,EACT;QACE,oBAAoB,EAAEG,KAAK,CAACG;MAC9B,CAAC;IACF,IAECH,KAAK,CAACC,IAAI,EAEVK,KAAK,CAACC,OAAO,IAAI,EAEtB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VLabel.mjs","names":["makeThemeProps","genericComponent","useRender","VLabel","name","props","text","String","clickable","Boolean","setup","_ref","slots","_createVNode","default"],"sources":["../../../src/components/VLabel/VLabel.tsx"],"sourcesContent":["// Styles\nimport './VLabel.sass'\n\n// Composables\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\nexport const VLabel = genericComponent()({\n name: 'VLabel',\n\n props: {\n text: String,\n clickable: Boolean,\n\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n useRender(() => (\n <label\n class={[\n 'v-label',\n {\n 'v-label--clickable': props.clickable,\n },\n ]}\n >\n { props.text }\n\n { slots.default?.() }\n </label>\n ))\n\n return {}\n },\n})\n\nexport type VLabel = InstanceType<typeof VLabel>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,cAAc,uCAEvB;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,MAAM,GAAGF,gBAAgB,EAAE,CAAC;EACvCG,IAAI,EAAE,QAAQ;EAEdC,KAAK,EAAE;IACLC,IAAI,EAAEC,MAAM;IACZC,SAAS,EAAEC,OAAO;IAElB,GAAGT,cAAc;EACnB,CAAC;EAEDU,KAAKA,CAAEL,KAAK,EAAAM,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBT,SAAS,CAAC,MAAAW,YAAA;MAAA,SAEC,CACL,SAAS,EACT;QACE,oBAAoB,EAAER,KAAK,CAACG;MAC9B,CAAC;IACF,IAECH,KAAK,CAACC,IAAI,EAEVM,KAAK,CAACE,OAAO,IAAI,EAEtB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"VLayout.mjs","names":["createLayout","makeLayoutProps","genericComponent","useRender","VLayout","name","props","setup","slots","layoutClasses","layoutStyles","getLayoutItem","items","layoutRef","value","default"],"sources":["../../../src/components/VLayout/VLayout.tsx"],"sourcesContent":["// Styles\nimport './VLayout.sass'\n\n// Composables\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\nexport const VLayout = genericComponent()({\n name: 'VLayout',\n\n props: makeLayoutProps(),\n\n setup (props, { slots }) {\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n\n useRender(() => (\n <div ref={ layoutRef } class={ layoutClasses.value } style={ layoutStyles.value }>\n { slots.default?.() }\n </div>\n ))\n\n return {\n getLayoutItem,\n items,\n }\n },\n})\n\nexport type VLayout = InstanceType<typeof VLayout>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY,EAAEC,eAAe,wCAEtC;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,OAAO,GAAGF,gBAAgB,EAAE,CAAC;EACxCG,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAEL,eAAe,EAAE;EAExBM,KAAK,CAAED,KAAK,QAAa;IAAA,IAAX;MAAEE;IAAM,CAAC;IACrB,MAAM;MAAEC,aAAa;MAAEC,YAAY;MAAEC,aAAa;MAAEC,KAAK;MAAEC;IAAU,CAAC,GAAGb,YAAY,CAACM,KAAK,CAAC;IAE5FH,SAAS,CAAC;MAAA,OACGU,SAAS;MAAA,SAAWJ,aAAa,CAACK,KAAK;MAAA,SAAWJ,YAAY,CAACI;IAAK,IAC3EN,KAAK,CAACO,OAAO,IAAI,EAEtB,CAAC;IAEF,OAAO;MACLJ,aAAa;MACbC;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VLayout.mjs","names":["createLayout","makeLayoutProps","genericComponent","useRender","VLayout","name","props","setup","_ref","slots","layoutClasses","layoutStyles","getLayoutItem","items","layoutRef","_createVNode","value","default"],"sources":["../../../src/components/VLayout/VLayout.tsx"],"sourcesContent":["// Styles\nimport './VLayout.sass'\n\n// Composables\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\nexport const VLayout = genericComponent()({\n name: 'VLayout',\n\n props: makeLayoutProps(),\n\n setup (props, { slots }) {\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n\n useRender(() => (\n <div ref={ layoutRef } class={ layoutClasses.value } style={ layoutStyles.value }>\n { slots.default?.() }\n </div>\n ))\n\n return {\n getLayoutItem,\n items,\n }\n },\n})\n\nexport type VLayout = InstanceType<typeof VLayout>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY,EAAEC,eAAe,wCAEtC;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,OAAO,GAAGF,gBAAgB,EAAE,CAAC;EACxCG,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAEL,eAAe,EAAE;EAExBM,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,aAAa;MAAEC,YAAY;MAAEC,aAAa;MAAEC,KAAK;MAAEC;IAAU,CAAC,GAAGd,YAAY,CAACM,KAAK,CAAC;IAE5FH,SAAS,CAAC,MAAAY,YAAA;MAAA,OACGD,SAAS;MAAA,SAAWJ,aAAa,CAACM,KAAK;MAAA,SAAWL,YAAY,CAACK;IAAK,IAC3EP,KAAK,CAACQ,OAAO,IAAI,EAEtB,CAAC;IAEF,OAAO;MACLL,aAAa;MACbC;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"VLayoutItem.mjs","names":["makeLayoutItemProps","useLayoutItem","computed","toRef","genericComponent","VLayoutItem","name","props","position","type","String","required","size","Number","default","modelValue","Boolean","setup","slots","layoutItemStyles","id","order","parseInt","elementSize","layoutSize","active","absolute","value"],"sources":["../../../src/components/VLayout/VLayoutItem.tsx"],"sourcesContent":["// Styles\nimport './VLayoutItem.sass'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VLayoutItem = genericComponent()({\n name: 'VLayoutItem',\n\n props: {\n position: {\n type: String as PropType<'top' | 'right' | 'bottom' | 'left'>,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 300,\n },\n modelValue: Boolean,\n ...makeLayoutItemProps(),\n },\n\n setup (props, { slots }) {\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'position'),\n elementSize: toRef(props, 'size'),\n layoutSize: toRef(props, 'size'),\n active: toRef(props, 'modelValue'),\n absolute: toRef(props, 'absolute'),\n })\n\n return () => (\n <div\n class={[\n 'v-layout-item',\n ]}\n style={ layoutItemStyles.value }\n >\n { slots.default?.() }\n </div>\n )\n },\n})\n\nexport type VLayoutItem = InstanceType<typeof VLayoutItem>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,mBAAmB,EAAEC,aAAa,wCAE3C;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,gCAEzB;AAGA,OAAO,MAAMC,WAAW,GAAGD,gBAAgB,EAAE,CAAC;EAC5CE,IAAI,EAAE,aAAa;EAEnBC,KAAK,EAAE;IACLC,QAAQ,EAAE;MACRC,IAAI,EAAEC,MAAuD;MAC7DC,QAAQ,EAAE;IACZ,CAAC;IACDC,IAAI,EAAE;MACJH,IAAI,EAAE,CAACI,MAAM,EAAEH,MAAM,CAAC;MACtBI,OAAO,EAAE;IACX,CAAC;IACDC,UAAU,EAAEC,OAAO;IACnB,GAAGhB,mBAAmB;EACxB,CAAC;EAEDiB,KAAK,CAAEV,KAAK,QAAa;IAAA,IAAX;MAAEW;IAAM,CAAC;IACrB,MAAM;MAAEC;IAAiB,CAAC,GAAGlB,aAAa,CAAC;MACzCmB,EAAE,EAAEb,KAAK,CAACD,IAAI;MACde,KAAK,EAAEnB,QAAQ,CAAC,MAAMoB,QAAQ,CAACf,KAAK,CAACc,KAAK,EAAE,EAAE,CAAC,CAAC;MAChDb,QAAQ,EAAEL,KAAK,CAACI,KAAK,EAAE,UAAU,CAAC;MAClCgB,WAAW,EAAEpB,KAAK,CAACI,KAAK,EAAE,MAAM,CAAC;MACjCiB,UAAU,EAAErB,KAAK,CAACI,KAAK,EAAE,MAAM,CAAC;MAChCkB,MAAM,EAAEtB,KAAK,CAACI,KAAK,EAAE,YAAY,CAAC;MAClCmB,QAAQ,EAAEvB,KAAK,CAACI,KAAK,EAAE,UAAU;IACnC,CAAC,CAAC;IAEF,OAAO;MAAA,SAEI,CACL,eAAe,CAChB;MAAA,SACOY,gBAAgB,CAACQ;IAAK,IAE5BT,KAAK,CAACJ,OAAO,IAAI,EAEtB;EACH;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VLayoutItem.mjs","names":["makeLayoutItemProps","useLayoutItem","computed","toRef","genericComponent","VLayoutItem","name","props","position","type","String","required","size","Number","default","modelValue","Boolean","setup","_ref","slots","layoutItemStyles","id","order","parseInt","elementSize","layoutSize","active","absolute","_createVNode","value"],"sources":["../../../src/components/VLayout/VLayoutItem.tsx"],"sourcesContent":["// Styles\nimport './VLayoutItem.sass'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VLayoutItem = genericComponent()({\n name: 'VLayoutItem',\n\n props: {\n position: {\n type: String as PropType<'top' | 'right' | 'bottom' | 'left'>,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 300,\n },\n modelValue: Boolean,\n ...makeLayoutItemProps(),\n },\n\n setup (props, { slots }) {\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'position'),\n elementSize: toRef(props, 'size'),\n layoutSize: toRef(props, 'size'),\n active: toRef(props, 'modelValue'),\n absolute: toRef(props, 'absolute'),\n })\n\n return () => (\n <div\n class={[\n 'v-layout-item',\n ]}\n style={ layoutItemStyles.value }\n >\n { slots.default?.() }\n </div>\n )\n },\n})\n\nexport type VLayoutItem = InstanceType<typeof VLayoutItem>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,mBAAmB,EAAEC,aAAa,wCAE3C;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,gCAEzB;AAGA,OAAO,MAAMC,WAAW,GAAGD,gBAAgB,EAAE,CAAC;EAC5CE,IAAI,EAAE,aAAa;EAEnBC,KAAK,EAAE;IACLC,QAAQ,EAAE;MACRC,IAAI,EAAEC,MAAuD;MAC7DC,QAAQ,EAAE;IACZ,CAAC;IACDC,IAAI,EAAE;MACJH,IAAI,EAAE,CAACI,MAAM,EAAEH,MAAM,CAAC;MACtBI,OAAO,EAAE;IACX,CAAC;IACDC,UAAU,EAAEC,OAAO;IACnB,GAAGhB,mBAAmB;EACxB,CAAC;EAEDiB,KAAKA,CAAEV,KAAK,EAAAW,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAiB,CAAC,GAAGnB,aAAa,CAAC;MACzCoB,EAAE,EAAEd,KAAK,CAACD,IAAI;MACdgB,KAAK,EAAEpB,QAAQ,CAAC,MAAMqB,QAAQ,CAAChB,KAAK,CAACe,KAAK,EAAE,EAAE,CAAC,CAAC;MAChDd,QAAQ,EAAEL,KAAK,CAACI,KAAK,EAAE,UAAU,CAAC;MAClCiB,WAAW,EAAErB,KAAK,CAACI,KAAK,EAAE,MAAM,CAAC;MACjCkB,UAAU,EAAEtB,KAAK,CAACI,KAAK,EAAE,MAAM,CAAC;MAChCmB,MAAM,EAAEvB,KAAK,CAACI,KAAK,EAAE,YAAY,CAAC;MAClCoB,QAAQ,EAAExB,KAAK,CAACI,KAAK,EAAE,UAAU;IACnC,CAAC,CAAC;IAEF,OAAO,MAAAqB,YAAA;MAAA,SAEI,CACL,eAAe,CAChB;MAAA,SACOR,gBAAgB,CAACS;IAAK,IAE5BV,KAAK,CAACL,OAAO,IAAI,EAEtB;EACH;AACF,CAAC,CAAC"}
@@ -175,10 +175,10 @@ declare const VLayout: {
175
175
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
176
176
  fullHeight: boolean;
177
177
  }, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
178
- overlaps: vue.Prop<string[], string[]>;
178
+ overlaps: vue.Prop<string[]>;
179
179
  fullHeight: BooleanConstructor;
180
180
  }, vue.ExtractPropTypes<{
181
- overlaps: vue.Prop<string[], string[]>;
181
+ overlaps: vue.Prop<string[]>;
182
182
  fullHeight: BooleanConstructor;
183
183
  }>>;
184
184
  type VLayout = InstanceType<typeof VLayout>;
@@ -1 +1 @@
1
- {"version":3,"file":"VLazy.mjs","names":["makeDimensionProps","useDimension","makeTagProps","makeTransitionProps","MaybeTransition","useProxiedModel","intersect","genericComponent","useRender","VLazy","name","directives","props","modelValue","Boolean","options","type","Object","default","root","undefined","rootMargin","threshold","transition","emits","value","setup","slots","dimensionStyles","isActive","onIntersect","isIntersecting","handler"],"sources":["../../../src/components/VLazy/VLazy.tsx"],"sourcesContent":["// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport intersect from '@/directives/intersect'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VLazy = genericComponent()({\n name: 'VLazy',\n\n directives: { intersect },\n\n props: {\n modelValue: Boolean,\n options: {\n type: Object as PropType<IntersectionObserverInit>,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n ...makeTransitionProps({ transition: 'fade-transition' }),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n\n function onIntersect (isIntersecting: boolean) {\n if (isActive.value) return\n\n isActive.value = isIntersecting\n }\n\n useRender(() => (\n <props.tag\n class=\"v-lazy\"\n v-intersect={[\n {\n handler: onIntersect,\n options: props.options,\n },\n null,\n isActive.value ? [] : ['once'],\n ]}\n style={ dimensionStyles.value }\n >\n { isActive.value && (\n <MaybeTransition transition={ props.transition } appear>\n { slots.default?.() }\n </MaybeTransition>\n )}\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VLazy = InstanceType<typeof VLazy>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,YAAY;AAAA,SACZC,mBAAmB,EAAEC,eAAe;AAAA,SACpCC,eAAe,8CAExB;AAAA,OACOC,SAAS,8CAEhB;AAAA,SACSC,gBAAgB,EAAEC,SAAS,gCAEpC;AAGA,OAAO,MAAMC,KAAK,GAAGF,gBAAgB,EAAE,CAAC;EACtCG,IAAI,EAAE,OAAO;EAEbC,UAAU,EAAE;IAAEL;EAAU,CAAC;EAEzBM,KAAK,EAAE;IACLC,UAAU,EAAEC,OAAO;IACnBC,OAAO,EAAE;MACPC,IAAI,EAAEC,MAA4C;MAClD;MACA;MACAC,OAAO,EAAE,OAAO;QACdC,IAAI,EAAEC,SAAS;QACfC,UAAU,EAAED,SAAS;QACrBE,SAAS,EAAEF;MACb,CAAC;IACH,CAAC;IAED,GAAGpB,kBAAkB,EAAE;IACvB,GAAGE,YAAY,EAAE;IACjB,GAAGC,mBAAmB,CAAC;MAAEoB,UAAU,EAAE;IAAkB,CAAC;EAC1D,CAAC;EAEDC,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAc,IAAK;EAC3C,CAAC;EAEDC,KAAK,CAAEd,KAAK,QAAa;IAAA,IAAX;MAAEe;IAAM,CAAC;IACrB,MAAM;MAAEC;IAAgB,CAAC,GAAG3B,YAAY,CAACW,KAAK,CAAC;IAE/C,MAAMiB,QAAQ,GAAGxB,eAAe,CAACO,KAAK,EAAE,YAAY,CAAC;IAErD,SAASkB,WAAW,CAAEC,cAAuB,EAAE;MAC7C,IAAIF,QAAQ,CAACJ,KAAK,EAAE;MAEpBI,QAAQ,CAACJ,KAAK,GAAGM,cAAc;IACjC;IAEAvB,SAAS,CAAC;MAAA,SAEA,QAAQ;MAAA,SASNoB,eAAe,CAACH;IAAK;MAAA,gBAE3BI,QAAQ,CAACJ,KAAK;QAAA,cACgBb,KAAK,CAACW,UAAU;QAAA;MAAA;QAAA,gBAC1CI,KAAK,CAACT,OAAO,IAAI;MAAA,EAEtB;IAAA,sCAbC;MACEc,OAAO,EAAEF,WAAW;MACpBf,OAAO,EAAEH,KAAK,CAACG;IACjB,CAAC,EACD,IAAI,GAWT,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VLazy.mjs","names":["makeDimensionProps","useDimension","makeTagProps","makeTransitionProps","MaybeTransition","useProxiedModel","intersect","genericComponent","useRender","VLazy","name","directives","props","modelValue","Boolean","options","type","Object","default","root","undefined","rootMargin","threshold","transition","emits","value","setup","_ref","slots","dimensionStyles","isActive","onIntersect","isIntersecting","_withDirectives","_createVNode","tag","_resolveDirective","handler"],"sources":["../../../src/components/VLazy/VLazy.tsx"],"sourcesContent":["// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport intersect from '@/directives/intersect'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VLazy = genericComponent()({\n name: 'VLazy',\n\n directives: { intersect },\n\n props: {\n modelValue: Boolean,\n options: {\n type: Object as PropType<IntersectionObserverInit>,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n ...makeTransitionProps({ transition: 'fade-transition' }),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n\n function onIntersect (isIntersecting: boolean) {\n if (isActive.value) return\n\n isActive.value = isIntersecting\n }\n\n useRender(() => (\n <props.tag\n class=\"v-lazy\"\n v-intersect={[\n {\n handler: onIntersect,\n options: props.options,\n },\n null,\n isActive.value ? [] : ['once'],\n ]}\n style={ dimensionStyles.value }\n >\n { isActive.value && (\n <MaybeTransition transition={ props.transition } appear>\n { slots.default?.() }\n </MaybeTransition>\n )}\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VLazy = InstanceType<typeof VLazy>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,YAAY;AAAA,SACZC,mBAAmB,EAAEC,eAAe;AAAA,SACpCC,eAAe,8CAExB;AAAA,OACOC,SAAS,8CAEhB;AAAA,SACSC,gBAAgB,EAAEC,SAAS,gCAEpC;AAGA,OAAO,MAAMC,KAAK,GAAGF,gBAAgB,EAAE,CAAC;EACtCG,IAAI,EAAE,OAAO;EAEbC,UAAU,EAAE;IAAEL;EAAU,CAAC;EAEzBM,KAAK,EAAE;IACLC,UAAU,EAAEC,OAAO;IACnBC,OAAO,EAAE;MACPC,IAAI,EAAEC,MAA4C;MAClD;MACA;MACAC,OAAO,EAAEA,CAAA,MAAO;QACdC,IAAI,EAAEC,SAAS;QACfC,UAAU,EAAED,SAAS;QACrBE,SAAS,EAAEF;MACb,CAAC;IACH,CAAC;IAED,GAAGpB,kBAAkB,EAAE;IACvB,GAAGE,YAAY,EAAE;IACjB,GAAGC,mBAAmB,CAAC;MAAEoB,UAAU,EAAE;IAAkB,CAAC;EAC1D,CAAC;EAEDC,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAc,IAAK;EAC3C,CAAC;EAEDC,KAAKA,CAAEd,KAAK,EAAAe,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAgB,CAAC,GAAG5B,YAAY,CAACW,KAAK,CAAC;IAE/C,MAAMkB,QAAQ,GAAGzB,eAAe,CAACO,KAAK,EAAE,YAAY,CAAC;IAErD,SAASmB,WAAWA,CAAEC,cAAuB,EAAE;MAC7C,IAAIF,QAAQ,CAACL,KAAK,EAAE;MAEpBK,QAAQ,CAACL,KAAK,GAAGO,cAAc;IACjC;IAEAxB,SAAS,CAAC,MAAAyB,eAAA,CAAAC,YAAA,CAAAtB,KAAA,CAAAuB,GAAA;MAAA,SAEA,QAAQ;MAAA,SASNN,eAAe,CAACJ;IAAK;MAAAP,OAAA,EAAAA,CAAA,MAE3BY,QAAQ,CAACL,KAAK,IAAAS,YAAA,CAAA9B,eAAA;QAAA,cACgBQ,KAAK,CAACW,UAAU;QAAA;MAAA;QAAAL,OAAA,EAAAA,CAAA,MAC1CU,KAAK,CAACV,OAAO,IAAI;MAAA,EAEtB;IAAA,MAAAkB,iBAAA,eAbC;MACEC,OAAO,EAAEN,WAAW;MACpBhB,OAAO,EAAEH,KAAK,CAACG;IACjB,CAAC,EACD,IAAI,GAWT,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}