vuetify 3.1.4 → 3.1.6

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 (474) hide show
  1. package/dist/json/attributes.json +2734 -2738
  2. package/dist/json/importMap.json +32 -32
  3. package/dist/json/tags.json +0 -1
  4. package/dist/json/web-types.json +9073 -6416
  5. package/dist/vuetify-labs.css +3119 -6004
  6. package/dist/vuetify-labs.d.ts +12865 -20825
  7. package/dist/vuetify-labs.esm.js +1674 -1914
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +1673 -1913
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +54 -2948
  12. package/dist/vuetify.d.ts +12215 -20183
  13. package/dist/vuetify.esm.js +1495 -1736
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +1494 -1735
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +1134 -1353
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.ts +9 -9
  21. package/lib/blueprints/md1.d.ts +9 -9
  22. package/lib/blueprints/md2.d.ts +9 -9
  23. package/lib/blueprints/md3.d.ts +9 -9
  24. package/lib/blueprints/md3.mjs.map +1 -1
  25. package/lib/components/VAlert/VAlert.mjs +5 -6
  26. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  27. package/lib/components/VAlert/index.d.ts +135 -157
  28. package/lib/components/VApp/VApp.mjs +9 -12
  29. package/lib/components/VApp/VApp.mjs.map +1 -1
  30. package/lib/components/VApp/index.d.ts +27 -13
  31. package/lib/components/VAppBar/VAppBar.mjs +9 -5
  32. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  33. package/lib/components/VAppBar/VAppBarNavIcon.mjs +2 -2
  34. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  35. package/lib/components/VAppBar/VAppBarTitle.mjs +2 -2
  36. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  37. package/lib/components/VAppBar/index.d.ts +169 -350
  38. package/lib/components/VAutocomplete/VAutocomplete.mjs +100 -104
  39. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  40. package/lib/components/VAutocomplete/index.d.ts +494 -636
  41. package/lib/components/VAvatar/VAvatar.mjs +19 -22
  42. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  43. package/lib/components/VAvatar/index.d.ts +46 -66
  44. package/lib/components/VBadge/VBadge.mjs +7 -5
  45. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  46. package/lib/components/VBadge/index.d.ts +74 -100
  47. package/lib/components/VBanner/VBanner.mjs +3 -4
  48. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  49. package/lib/components/VBanner/VBannerActions.mjs +5 -8
  50. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  51. package/lib/components/VBanner/index.d.ts +134 -98
  52. package/lib/components/VBottomNavigation/VBottomNavigation.css +2 -1
  53. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +8 -4
  54. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  55. package/lib/components/VBottomNavigation/VBottomNavigation.sass +2 -1
  56. package/lib/components/VBottomNavigation/_variables.scss +1 -1
  57. package/lib/components/VBottomNavigation/index.d.ts +67 -131
  58. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +9 -16
  59. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  60. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +5 -8
  61. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  62. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +4 -8
  63. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  64. package/lib/components/VBreadcrumbs/index.d.ts +87 -61
  65. package/lib/components/VBtn/VBtn.mjs +14 -17
  66. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  67. package/lib/components/VBtn/index.d.ts +118 -179
  68. package/lib/components/VBtnGroup/VBtnGroup.mjs +5 -2
  69. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  70. package/lib/components/VBtnGroup/index.d.ts +42 -57
  71. package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -2
  72. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  73. package/lib/components/VBtnToggle/index.d.ts +60 -247
  74. package/lib/components/VCalendar/mixins/mouse.mjs +2 -3
  75. package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
  76. package/lib/components/VCard/VCard.mjs +5 -6
  77. package/lib/components/VCard/VCard.mjs.map +1 -1
  78. package/lib/components/VCard/VCardActions.mjs +5 -8
  79. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  80. package/lib/components/VCard/VCardItem.mjs +7 -8
  81. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  82. package/lib/components/VCard/index.d.ts +286 -186
  83. package/lib/components/VCarousel/VCarousel.mjs +2 -2
  84. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  85. package/lib/components/VCarousel/VCarouselItem.mjs +2 -2
  86. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  87. package/lib/components/VCarousel/index.d.ts +238 -61
  88. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  89. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  90. package/lib/components/VCheckbox/VCheckboxBtn.mjs +2 -2
  91. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  92. package/lib/components/VCheckbox/index.d.ts +277 -254
  93. package/lib/components/VChip/VChip.mjs +15 -14
  94. package/lib/components/VChip/VChip.mjs.map +1 -1
  95. package/lib/components/VChip/index.d.ts +118 -168
  96. package/lib/components/VChipGroup/VChipGroup.css +1 -0
  97. package/lib/components/VChipGroup/VChipGroup.mjs +15 -18
  98. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  99. package/lib/components/VChipGroup/VChipGroup.sass +1 -0
  100. package/lib/components/VChipGroup/index.d.ts +49 -68
  101. package/lib/components/VCode/index.d.ts +21 -9
  102. package/lib/components/VColorPicker/VColorPicker.mjs +9 -1
  103. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  104. package/lib/components/VColorPicker/VColorPickerCanvas.css +2 -1
  105. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +40 -27
  106. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  107. package/lib/components/VColorPicker/VColorPickerCanvas.sass +2 -1
  108. package/lib/components/VColorPicker/VColorPickerEdit.mjs +16 -20
  109. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  110. package/lib/components/VColorPicker/VColorPickerPreview.mjs +43 -46
  111. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  112. package/lib/components/VColorPicker/index.d.ts +1 -1
  113. package/lib/components/VColorPicker/util/index.mjs +3 -7
  114. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  115. package/lib/components/VCombobox/VCombobox.mjs +104 -113
  116. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  117. package/lib/components/VCombobox/index.d.ts +496 -638
  118. package/lib/components/VCounter/VCounter.mjs +2 -2
  119. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  120. package/lib/components/VCounter/index.d.ts +139 -197
  121. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +4 -9
  122. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  123. package/lib/components/VDefaultsProvider/index.d.ts +33 -14
  124. package/lib/components/VDialog/VDialog.mjs +6 -9
  125. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  126. package/lib/components/VDialog/index.d.ts +430 -1610
  127. package/lib/components/VDivider/VDivider.mjs +2 -2
  128. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  129. package/lib/components/VDivider/index.d.ts +35 -15
  130. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +4 -5
  131. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  132. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +11 -14
  133. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  134. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +19 -22
  135. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  136. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +2 -2
  137. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  138. package/lib/components/VExpansionPanel/index.d.ts +180 -158
  139. package/lib/components/VField/VField.mjs +3 -6
  140. package/lib/components/VField/VField.mjs.map +1 -1
  141. package/lib/components/VField/VFieldLabel.mjs +2 -2
  142. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  143. package/lib/components/VField/index.d.ts +46 -34
  144. package/lib/components/VFileInput/VFileInput.mjs +16 -18
  145. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  146. package/lib/components/VFileInput/index.d.ts +330 -355
  147. package/lib/components/VFooter/VFooter.mjs +2 -2
  148. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  149. package/lib/components/VFooter/index.d.ts +46 -66
  150. package/lib/components/VForm/VForm.mjs +10 -14
  151. package/lib/components/VForm/VForm.mjs.map +1 -1
  152. package/lib/components/VForm/index.d.ts +29 -23
  153. package/lib/components/VGrid/VCol.mjs +5 -8
  154. package/lib/components/VGrid/VCol.mjs.map +1 -1
  155. package/lib/components/VGrid/VContainer.mjs +2 -2
  156. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  157. package/lib/components/VGrid/VGrid.css +0 -125
  158. package/lib/components/VGrid/VRow.mjs +5 -8
  159. package/lib/components/VGrid/VRow.mjs.map +1 -1
  160. package/lib/components/VGrid/index.d.ts +112 -121
  161. package/lib/components/VHover/VHover.mjs +9 -12
  162. package/lib/components/VHover/VHover.mjs.map +1 -1
  163. package/lib/components/VHover/index.d.ts +53 -15
  164. package/lib/components/VIcon/VIcon.mjs +22 -26
  165. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  166. package/lib/components/VIcon/index.d.ts +68 -56
  167. package/lib/components/VImg/VImg.mjs +7 -11
  168. package/lib/components/VImg/VImg.mjs.map +1 -1
  169. package/lib/components/VImg/index.d.ts +67 -58
  170. package/lib/components/VInput/VInput.mjs +5 -6
  171. package/lib/components/VInput/VInput.mjs.map +1 -1
  172. package/lib/components/VInput/index.d.ts +94 -283
  173. package/lib/components/VItemGroup/VItem.mjs +8 -11
  174. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  175. package/lib/components/VItemGroup/VItemGroup.mjs +13 -16
  176. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  177. package/lib/components/VItemGroup/index.d.ts +76 -149
  178. package/lib/components/VKbd/index.d.ts +21 -9
  179. package/lib/components/VLabel/VLabel.mjs +7 -10
  180. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  181. package/lib/components/VLabel/index.d.ts +29 -9
  182. package/lib/components/VLayout/VLayout.mjs +9 -12
  183. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  184. package/lib/components/VLayout/VLayoutItem.mjs +6 -9
  185. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  186. package/lib/components/VLayout/index.d.ts +60 -43
  187. package/lib/components/VLazy/VLazy.mjs +12 -15
  188. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  189. package/lib/components/VLazy/index.d.ts +48 -71
  190. package/lib/components/VList/VList.mjs +4 -8
  191. package/lib/components/VList/VList.mjs.map +1 -1
  192. package/lib/components/VList/VListChildren.mjs +59 -77
  193. package/lib/components/VList/VListChildren.mjs.map +1 -1
  194. package/lib/components/VList/VListGroup.mjs +33 -39
  195. package/lib/components/VList/VListGroup.mjs.map +1 -1
  196. package/lib/components/VList/VListItem.css +2 -2
  197. package/lib/components/VList/VListItem.mjs +10 -18
  198. package/lib/components/VList/VListItem.mjs.map +1 -1
  199. package/lib/components/VList/VListItem.sass +0 -2
  200. package/lib/components/VList/VListItemAction.mjs +2 -2
  201. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  202. package/lib/components/VList/VListItemMedia.mjs +2 -2
  203. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  204. package/lib/components/VList/VListSubheader.mjs +3 -4
  205. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  206. package/lib/components/VList/index.d.ts +418 -686
  207. package/lib/components/VList/list.mjs +1 -1
  208. package/lib/components/VList/list.mjs.map +1 -1
  209. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -8
  210. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  211. package/lib/components/VLocaleProvider/index.d.ts +28 -16
  212. package/lib/components/VMain/VMain.mjs +12 -15
  213. package/lib/components/VMain/VMain.mjs.map +1 -1
  214. package/lib/components/VMain/index.d.ts +23 -17
  215. package/lib/components/VMenu/VMenu.mjs +10 -10
  216. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  217. package/lib/components/VMenu/index.d.ts +428 -1641
  218. package/lib/components/VMessages/VMessages.mjs +2 -2
  219. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  220. package/lib/components/VMessages/index.d.ts +144 -204
  221. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +6 -7
  222. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  223. package/lib/components/VNavigationDrawer/index.d.ts +92 -124
  224. package/lib/components/VNoSsr/VNoSsr.mjs +1 -4
  225. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  226. package/lib/components/VNoSsr/index.d.ts +20 -4
  227. package/lib/components/VOtpInput/VOtpInput.mjs +5 -6
  228. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
  229. package/lib/components/VOverlay/VOverlay.mjs +44 -47
  230. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  231. package/lib/components/VOverlay/index.d.ts +150 -468
  232. package/lib/components/VOverlay/locationStrategies.mjs +3 -6
  233. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  234. package/lib/components/VOverlay/scrollStrategies.mjs +8 -13
  235. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  236. package/lib/components/VOverlay/useActivator.mjs +4 -7
  237. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  238. package/lib/components/VPagination/VPagination.mjs +4 -5
  239. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  240. package/lib/components/VPagination/index.d.ts +107 -207
  241. package/lib/components/VParallax/VParallax.mjs +12 -15
  242. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  243. package/lib/components/VParallax/index.d.ts +39 -9
  244. package/lib/components/VProgressCircular/VProgressCircular.mjs +2 -2
  245. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  246. package/lib/components/VProgressCircular/index.d.ts +41 -58
  247. package/lib/components/VProgressLinear/VProgressLinear.mjs +2 -2
  248. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  249. package/lib/components/VProgressLinear/index.d.ts +91 -95
  250. package/lib/components/VRadio/VRadio.mjs +2 -2
  251. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  252. package/lib/components/VRadio/index.d.ts +108 -85
  253. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  254. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  255. package/lib/components/VRadioGroup/index.d.ts +164 -147
  256. package/lib/components/VRangeSlider/VRangeSlider.mjs +21 -31
  257. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  258. package/lib/components/VRangeSlider/index.d.ts +154 -210
  259. package/lib/components/VRating/VRating.mjs +28 -34
  260. package/lib/components/VRating/VRating.mjs.map +1 -1
  261. package/lib/components/VRating/index.d.ts +77 -311
  262. package/lib/components/VResponsive/VResponsive.mjs +11 -14
  263. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  264. package/lib/components/VResponsive/index.d.ts +44 -20
  265. package/lib/components/VSelect/VSelect.mjs +100 -102
  266. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  267. package/lib/components/VSelect/index.d.ts +729 -673
  268. package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -4
  269. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  270. package/lib/components/VSelectionControl/index.d.ts +31 -19
  271. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +8 -11
  272. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  273. package/lib/components/VSelectionControlGroup/index.d.ts +58 -70
  274. package/lib/components/VSheet/VSheet.mjs +23 -13
  275. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  276. package/lib/components/VSheet/index.d.ts +52 -56
  277. package/lib/components/VSlideGroup/VSlideGroup.mjs +51 -60
  278. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  279. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +6 -9
  280. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  281. package/lib/components/VSlideGroup/index.d.ts +144 -366
  282. package/lib/components/VSlider/VSlider.mjs +8 -14
  283. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  284. package/lib/components/VSlider/VSliderThumb.css +0 -1
  285. package/lib/components/VSlider/VSliderThumb.mjs +4 -5
  286. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  287. package/lib/components/VSlider/VSliderTrack.mjs +4 -5
  288. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  289. package/lib/components/VSlider/index.d.ts +151 -207
  290. package/lib/components/VSlider/slider.mjs +3 -6
  291. package/lib/components/VSlider/slider.mjs.map +1 -1
  292. package/lib/components/VSnackbar/VSnackbar.mjs +1 -1
  293. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  294. package/lib/components/VSnackbar/index.d.ts +358 -1519
  295. package/lib/components/VSwitch/VSwitch.mjs +3 -4
  296. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  297. package/lib/components/VSwitch/index.d.ts +180 -151
  298. package/lib/components/VSystemBar/VSystemBar.css +5 -1
  299. package/lib/components/VSystemBar/VSystemBar.mjs +8 -4
  300. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  301. package/lib/components/VSystemBar/VSystemBar.sass +5 -1
  302. package/lib/components/VSystemBar/_variables.scss +4 -1
  303. package/lib/components/VSystemBar/index.d.ts +43 -51
  304. package/lib/components/VTable/VTable.mjs +19 -22
  305. package/lib/components/VTable/VTable.mjs.map +1 -1
  306. package/lib/components/VTable/index.d.ts +54 -30
  307. package/lib/components/VTabs/VTab.mjs +3 -4
  308. package/lib/components/VTabs/VTab.mjs.map +1 -1
  309. package/lib/components/VTabs/VTabs.mjs +2 -2
  310. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  311. package/lib/components/VTabs/index.d.ts +122 -150
  312. package/lib/components/VTextField/VTextField.mjs +16 -19
  313. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  314. package/lib/components/VTextField/index.d.ts +331 -1489
  315. package/lib/components/VTextarea/VTextarea.mjs +17 -19
  316. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  317. package/lib/components/VTextarea/index.d.ts +320 -334
  318. package/lib/components/VThemeProvider/VThemeProvider.mjs +4 -5
  319. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  320. package/lib/components/VThemeProvider/index.d.ts +27 -13
  321. package/lib/components/VTimeline/VTimeline.mjs +2 -2
  322. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  323. package/lib/components/VTimeline/VTimelineDivider.mjs +20 -23
  324. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  325. package/lib/components/VTimeline/VTimelineItem.mjs +33 -34
  326. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  327. package/lib/components/VTimeline/index.d.ts +123 -135
  328. package/lib/components/VToolbar/VToolbar.css +1 -0
  329. package/lib/components/VToolbar/VToolbar.mjs +7 -9
  330. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  331. package/lib/components/VToolbar/VToolbar.sass +1 -0
  332. package/lib/components/VToolbar/VToolbarItems.mjs +5 -8
  333. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  334. package/lib/components/VToolbar/VToolbarTitle.mjs +1 -2
  335. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  336. package/lib/components/VToolbar/index.d.ts +146 -351
  337. package/lib/components/VTooltip/VTooltip.mjs +1 -2
  338. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  339. package/lib/components/VTooltip/index.d.ts +361 -1619
  340. package/lib/components/VValidation/VValidation.mjs +3 -6
  341. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  342. package/lib/components/VValidation/index.d.ts +48 -46
  343. package/lib/components/VWindow/VWindow.mjs +19 -22
  344. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  345. package/lib/components/VWindow/VWindowItem.mjs +10 -14
  346. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  347. package/lib/components/VWindow/index.d.ts +152 -284
  348. package/lib/components/index.d.ts +13684 -21652
  349. package/lib/components/transitions/createTransition.mjs +4 -4
  350. package/lib/components/transitions/createTransition.mjs.map +1 -1
  351. package/lib/components/transitions/dialog-transition.mjs +8 -8
  352. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  353. package/lib/components/transitions/index.d.ts +477 -342
  354. package/lib/composables/defaults.mjs +6 -4
  355. package/lib/composables/defaults.mjs.map +1 -1
  356. package/lib/composables/delay.mjs +1 -1
  357. package/lib/composables/delay.mjs.map +1 -1
  358. package/lib/composables/filter.mjs +11 -12
  359. package/lib/composables/filter.mjs.map +1 -1
  360. package/lib/composables/group.mjs +2 -2
  361. package/lib/composables/group.mjs.map +1 -1
  362. package/lib/composables/icons.mjs +4 -6
  363. package/lib/composables/icons.mjs.map +1 -1
  364. package/lib/composables/intersectionObserver.mjs +1 -1
  365. package/lib/composables/intersectionObserver.mjs.map +1 -1
  366. package/lib/composables/layout.mjs +2 -5
  367. package/lib/composables/layout.mjs.map +1 -1
  368. package/lib/composables/loader.mjs +2 -3
  369. package/lib/composables/loader.mjs.map +1 -1
  370. package/lib/composables/locale.mjs +2 -2
  371. package/lib/composables/locale.mjs.map +1 -1
  372. package/lib/composables/mutationObserver.mjs +8 -8
  373. package/lib/composables/mutationObserver.mjs.map +1 -1
  374. package/lib/composables/nested/nested.mjs +2 -2
  375. package/lib/composables/nested/nested.mjs.map +1 -1
  376. package/lib/composables/nested/selectStrategies.mjs +8 -2
  377. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  378. package/lib/composables/proxiedModel.mjs +8 -9
  379. package/lib/composables/proxiedModel.mjs.map +1 -1
  380. package/lib/composables/resizeObserver.mjs +1 -1
  381. package/lib/composables/resizeObserver.mjs.map +1 -1
  382. package/lib/composables/router.mjs +12 -21
  383. package/lib/composables/router.mjs.map +1 -1
  384. package/lib/composables/scroll.mjs +2 -4
  385. package/lib/composables/scroll.mjs.map +1 -1
  386. package/lib/composables/selectLink.mjs +1 -4
  387. package/lib/composables/selectLink.mjs.map +1 -1
  388. package/lib/composables/stack.mjs +6 -8
  389. package/lib/composables/stack.mjs.map +1 -1
  390. package/lib/composables/teleport.mjs +1 -1
  391. package/lib/composables/teleport.mjs.map +1 -1
  392. package/lib/composables/theme.mjs +23 -16
  393. package/lib/composables/theme.mjs.map +1 -1
  394. package/lib/composables/toggleScope.mjs +3 -6
  395. package/lib/composables/toggleScope.mjs.map +1 -1
  396. package/lib/composables/touch.mjs +1 -2
  397. package/lib/composables/touch.mjs.map +1 -1
  398. package/lib/composables/validation.mjs +7 -7
  399. package/lib/composables/validation.mjs.map +1 -1
  400. package/lib/directives/click-outside/index.mjs +2 -3
  401. package/lib/directives/click-outside/index.mjs.map +1 -1
  402. package/lib/directives/index.d.ts +1 -1
  403. package/lib/directives/intersect/index.mjs +2 -4
  404. package/lib/directives/intersect/index.mjs.map +1 -1
  405. package/lib/directives/mutate/index.mjs +7 -8
  406. package/lib/directives/mutate/index.mjs.map +1 -1
  407. package/lib/directives/resize/index.mjs +3 -5
  408. package/lib/directives/resize/index.mjs.map +1 -1
  409. package/lib/directives/ripple/index.mjs +8 -13
  410. package/lib/directives/ripple/index.mjs.map +1 -1
  411. package/lib/directives/scroll/index.mjs +1 -2
  412. package/lib/directives/scroll/index.mjs.map +1 -1
  413. package/lib/directives/touch/index.mjs +9 -14
  414. package/lib/directives/touch/index.mjs.map +1 -1
  415. package/lib/entry-bundler.mjs +1 -1
  416. package/lib/framework.mjs +2 -3
  417. package/lib/framework.mjs.map +1 -1
  418. package/lib/iconsets/fa-svg.d.ts +2 -2
  419. package/lib/iconsets/fa.d.ts +2 -2
  420. package/lib/iconsets/fa4.d.ts +2 -2
  421. package/lib/iconsets/md.d.ts +2 -2
  422. package/lib/iconsets/mdi-svg.d.ts +2 -2
  423. package/lib/iconsets/mdi.d.ts +2 -2
  424. package/lib/index.d.ts +18 -18
  425. package/lib/labs/VDataTable/VDataTable.mjs +11 -14
  426. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  427. package/lib/labs/VDataTable/VDataTableColumn.mjs +1 -2
  428. package/lib/labs/VDataTable/VDataTableColumn.mjs.map +1 -1
  429. package/lib/labs/VDataTable/VDataTableFooter.css +9 -0
  430. package/lib/labs/VDataTable/VDataTableFooter.mjs +80 -45
  431. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  432. package/lib/labs/VDataTable/VDataTableFooter.sass +7 -0
  433. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +6 -8
  434. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  435. package/lib/labs/VDataTable/VDataTableHeaders.mjs +3 -4
  436. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  437. package/lib/labs/VDataTable/VDataTableRow.mjs +2 -4
  438. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  439. package/lib/labs/VDataTable/VDataTableRows.mjs +45 -49
  440. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  441. package/lib/labs/VDataTable/VDataTableServer.mjs +17 -20
  442. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  443. package/lib/labs/VDataTable/VDataTableVirtual.mjs +2 -2
  444. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  445. package/lib/labs/VDataTable/composables/headers.mjs +3 -4
  446. package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
  447. package/lib/labs/VDataTable/composables/paginate.mjs +1 -6
  448. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  449. package/lib/labs/VDataTable/composables/sort.mjs +1 -1
  450. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  451. package/lib/labs/VDataTable/index.d.ts +583 -575
  452. package/lib/labs/VVirtualScroll/VVirtualScroll.mjs +14 -18
  453. package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  454. package/lib/labs/VVirtualScroll/VVirtualScrollItem.mjs +7 -13
  455. package/lib/labs/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  456. package/lib/labs/VVirtualScroll/index.d.ts +18 -18
  457. package/lib/labs/components.d.ts +601 -593
  458. package/lib/locale/adapters/vue-i18n.d.ts +1 -1
  459. package/lib/locale/adapters/vuetify.mjs +3 -3
  460. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  461. package/lib/styles/main.css +40 -2816
  462. package/lib/util/colorUtils.mjs +4 -5
  463. package/lib/util/colorUtils.mjs.map +1 -1
  464. package/lib/util/console.mjs +1 -1
  465. package/lib/util/console.mjs.map +1 -1
  466. package/lib/util/createSimpleFunctional.mjs +5 -8
  467. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  468. package/lib/util/defineComponent.mjs +6 -8
  469. package/lib/util/defineComponent.mjs.map +1 -1
  470. package/lib/util/getCurrentInstance.mjs +1 -1
  471. package/lib/util/getCurrentInstance.mjs.map +1 -1
  472. package/lib/util/helpers.mjs +2 -3
  473. package/lib/util/helpers.mjs.map +1 -1
  474. package/package.json +19 -20
@@ -1,134 +1,102 @@
1
1
  import * as vue from 'vue';
2
- import { PropType } from 'vue';
3
2
 
3
+ type VNavigationDrawerImageSlot = {
4
+ image: string;
5
+ };
4
6
  declare const VNavigationDrawer: vue.DefineComponent<{
5
- theme: StringConstructor;
6
- tag: Omit<{
7
- type: StringConstructor;
8
- default: string;
9
- }, "type" | "default"> & {
10
- type: PropType<string>;
11
- default: string;
12
- };
13
- rounded: {
14
- type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
15
- default: undefined;
16
- };
17
- name: {
18
- type: StringConstructor;
19
- };
20
- order: {
21
- type: (StringConstructor | NumberConstructor)[];
22
- default: number;
23
- };
24
- absolute: BooleanConstructor;
25
- elevation: {
26
- type: (StringConstructor | NumberConstructor)[];
27
- validator(v: any): boolean;
28
- };
29
- border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
30
- color: StringConstructor;
31
- disableResizeWatcher: BooleanConstructor;
32
- disableRouteWatcher: BooleanConstructor;
33
- expandOnHover: BooleanConstructor;
34
- floating: BooleanConstructor;
35
- modelValue: {
36
- type: PropType<boolean | null>;
37
- default: null;
38
- };
39
- permanent: BooleanConstructor;
40
- rail: {
41
- type: PropType<boolean | null>;
42
- default: null;
43
- };
44
- railWidth: {
45
- type: (StringConstructor | NumberConstructor)[];
46
- default: number;
47
- };
48
- scrim: {
49
- type: (StringConstructor | BooleanConstructor)[];
50
- default: boolean;
51
- };
52
- image: StringConstructor;
53
- temporary: BooleanConstructor;
54
- touchless: BooleanConstructor;
55
- width: {
56
- type: (StringConstructor | NumberConstructor)[];
57
- default: number;
58
- };
59
- location: {
60
- type: PropType<"end" | "start" | "left" | "top" | "bottom" | "right">;
61
- default: string;
62
- validator: (value: any) => boolean;
63
- };
64
- sticky: BooleanConstructor;
7
+ absolute: boolean;
8
+ location: "end" | "start" | "left" | "top" | "bottom" | "right";
9
+ width: string | number;
10
+ order: string | number;
11
+ temporary: boolean;
12
+ tag: string;
13
+ sticky: boolean;
14
+ floating: boolean;
15
+ modelValue: boolean | null;
16
+ scrim: string | boolean;
17
+ touchless: boolean;
18
+ disableResizeWatcher: boolean;
19
+ disableRouteWatcher: boolean;
20
+ expandOnHover: boolean;
21
+ permanent: boolean;
22
+ rail: boolean | null;
23
+ railWidth: string | number;
24
+ } & {
25
+ name?: string | undefined;
26
+ border?: string | number | boolean | undefined;
27
+ color?: string | undefined;
28
+ image?: string | undefined;
29
+ elevation?: string | number | undefined;
30
+ theme?: string | undefined;
31
+ rounded?: string | number | boolean | undefined;
32
+ } & {
33
+ $children?: {} | vue.VNodeChild | {
34
+ default?: (() => vue.VNodeChild) | undefined;
35
+ prepend?: (() => vue.VNodeChild) | undefined;
36
+ append?: (() => vue.VNodeChild) | undefined;
37
+ image?: ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
38
+ };
39
+ 'v-slots'?: {
40
+ default?: false | (() => vue.VNodeChild) | undefined;
41
+ prepend?: false | (() => vue.VNodeChild) | undefined;
42
+ append?: false | (() => vue.VNodeChild) | undefined;
43
+ image?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
44
+ } | undefined;
45
+ } & {
46
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
47
+ "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
48
+ "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
49
+ "v-slot:image"?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
65
50
  }, {
66
51
  isStuck: vue.Ref<boolean | "top" | "bottom">;
67
52
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
68
53
  'update:modelValue': (val: boolean) => true;
69
54
  'update:rail': (val: boolean) => true;
70
- }, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
71
- theme: StringConstructor;
72
- tag: Omit<{
73
- type: StringConstructor;
74
- default: string;
75
- }, "type" | "default"> & {
76
- type: PropType<string>;
77
- default: string;
78
- };
79
- rounded: {
80
- type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
81
- default: undefined;
82
- };
83
- name: {
84
- type: StringConstructor;
85
- };
86
- order: {
87
- type: (StringConstructor | NumberConstructor)[];
88
- default: number;
89
- };
90
- absolute: BooleanConstructor;
91
- elevation: {
92
- type: (StringConstructor | NumberConstructor)[];
93
- validator(v: any): boolean;
94
- };
95
- border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
96
- color: StringConstructor;
97
- disableResizeWatcher: BooleanConstructor;
98
- disableRouteWatcher: BooleanConstructor;
99
- expandOnHover: BooleanConstructor;
100
- floating: BooleanConstructor;
101
- modelValue: {
102
- type: PropType<boolean | null>;
103
- default: null;
104
- };
105
- permanent: BooleanConstructor;
106
- rail: {
107
- type: PropType<boolean | null>;
108
- default: null;
109
- };
110
- railWidth: {
111
- type: (StringConstructor | NumberConstructor)[];
112
- default: number;
113
- };
114
- scrim: {
115
- type: (StringConstructor | BooleanConstructor)[];
116
- default: boolean;
117
- };
118
- image: StringConstructor;
119
- temporary: BooleanConstructor;
120
- touchless: BooleanConstructor;
121
- width: {
122
- type: (StringConstructor | NumberConstructor)[];
123
- default: number;
124
- };
125
- location: {
126
- type: PropType<"end" | "start" | "left" | "top" | "bottom" | "right">;
127
- default: string;
128
- validator: (value: any) => boolean;
129
- };
130
- sticky: BooleanConstructor;
131
- }>> & {
55
+ }, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {
56
+ absolute: boolean;
57
+ location: "end" | "start" | "left" | "top" | "bottom" | "right";
58
+ width: string | number;
59
+ order: string | number;
60
+ temporary: boolean;
61
+ tag: string;
62
+ sticky: boolean;
63
+ floating: boolean;
64
+ modelValue: boolean | null;
65
+ scrim: string | boolean;
66
+ touchless: boolean;
67
+ disableResizeWatcher: boolean;
68
+ disableRouteWatcher: boolean;
69
+ expandOnHover: boolean;
70
+ permanent: boolean;
71
+ rail: boolean | null;
72
+ railWidth: string | number;
73
+ } & {
74
+ name?: string | undefined;
75
+ border?: string | number | boolean | undefined;
76
+ color?: string | undefined;
77
+ image?: string | undefined;
78
+ elevation?: string | number | undefined;
79
+ theme?: string | undefined;
80
+ rounded?: string | number | boolean | undefined;
81
+ } & {
82
+ $children?: {} | vue.VNodeChild | {
83
+ default?: (() => vue.VNodeChild) | undefined;
84
+ prepend?: (() => vue.VNodeChild) | undefined;
85
+ append?: (() => vue.VNodeChild) | undefined;
86
+ image?: ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
87
+ };
88
+ 'v-slots'?: {
89
+ default?: false | (() => vue.VNodeChild) | undefined;
90
+ prepend?: false | (() => vue.VNodeChild) | undefined;
91
+ append?: false | (() => vue.VNodeChild) | undefined;
92
+ image?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
93
+ } | undefined;
94
+ } & {
95
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
96
+ "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
97
+ "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
98
+ "v-slot:image"?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
99
+ } & {
132
100
  "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
133
101
  "onUpdate:rail"?: ((val: boolean) => any) | undefined;
134
102
  }, {
@@ -151,6 +119,6 @@ declare const VNavigationDrawer: vue.DefineComponent<{
151
119
  rail: boolean | null;
152
120
  railWidth: string | number;
153
121
  }>;
154
- declare type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>;
122
+ type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>;
155
123
 
156
124
  export { VNavigationDrawer };
@@ -8,10 +8,7 @@ export const VNoSsr = defineComponent({
8
8
  slots
9
9
  } = _ref;
10
10
  const show = useHydration();
11
- return () => {
12
- var _slots$default;
13
- return show.value && ((_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots));
14
- };
11
+ return () => show.value && slots.default?.();
15
12
  }
16
13
  });
17
14
  //# sourceMappingURL=VNoSsr.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"VNoSsr.mjs","names":["useHydration","defineComponent","VNoSsr","name","setup","_","slots","show","value","default"],"sources":["../../../src/components/VNoSsr/VNoSsr.tsx"],"sourcesContent":["// Composables\nimport { useHydration } from '@/composables/hydration'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VNoSsr = defineComponent({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = useHydration()\n\n return () => show.value && slots.default?.()\n },\n})\n\nexport type VNoSsr = InstanceType<typeof VNoSsr>\n"],"mappings":"AAAA;AAAA,SACSA,YAAY,2CAErB;AAAA,SACSC,eAAe;AAExB,OAAO,MAAMC,MAAM,GAAGD,eAAe,CAAC;EACpCE,IAAI,EAAE,QAAQ;EAEdC,KAAK,CAAEC,CAAC,QAAa;IAAA,IAAX;MAAEC;IAAM,CAAC;IACjB,MAAMC,IAAI,GAAGP,YAAY,EAAE;IAE3B,OAAO;MAAA;MAAA,OAAMO,IAAI,CAACC,KAAK,uBAAIF,KAAK,CAACG,OAAO,qBAAb,oBAAAH,KAAK,CAAY;IAAA;EAC9C;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VNoSsr.mjs","names":["useHydration","defineComponent","VNoSsr","name","setup","_","slots","show","value","default"],"sources":["../../../src/components/VNoSsr/VNoSsr.tsx"],"sourcesContent":["// Composables\nimport { useHydration } from '@/composables/hydration'\n\n// Utilities\nimport { defineComponent } from '@/util'\nimport type { GenericSlot } from '@/util'\n\nexport const VNoSsr = defineComponent<GenericSlot>({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = useHydration()\n\n return () => show.value && slots.default?.()\n },\n})\n\nexport type VNoSsr = InstanceType<typeof VNoSsr>\n"],"mappings":"AAAA;AAAA,SACSA,YAAY,2CAErB;AAAA,SACSC,eAAe;AAGxB,OAAO,MAAMC,MAAM,GAAGD,eAAe,CAAc;EACjDE,IAAI,EAAE,QAAQ;EAEdC,KAAK,CAAEC,CAAC,QAAa;IAAA,IAAX;MAAEC;IAAM,CAAC;IACjB,MAAMC,IAAI,GAAGP,YAAY,EAAE;IAE3B,OAAO,MAAMO,IAAI,CAACC,KAAK,IAAIF,KAAK,CAACG,OAAO,IAAI;EAC9C;AACF,CAAC,CAAC"}
@@ -1,8 +1,24 @@
1
1
  import * as vue from 'vue';
2
2
 
3
- declare const VNoSsr: vue.DefineComponent<{}, () => false | vue.VNode<vue.RendererNode, vue.RendererElement, {
4
- [key: string]: any;
5
- }>[] | undefined, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{}>>, {}>;
6
- declare type VNoSsr = InstanceType<typeof VNoSsr>;
3
+ declare const VNoSsr: vue.DefineComponent<{
4
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
5
+ default?: (() => vue.VNodeChild) | undefined;
6
+ };
7
+ 'v-slots'?: {
8
+ default?: false | (() => vue.VNodeChild) | undefined;
9
+ } | undefined;
10
+ } & {
11
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
12
+ }, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<{
13
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
14
+ default?: (() => vue.VNodeChild) | undefined;
15
+ };
16
+ 'v-slots'?: {
17
+ default?: false | (() => vue.VNodeChild) | undefined;
18
+ } | undefined;
19
+ } & {
20
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
21
+ }>, {}>;
22
+ type VNoSsr = InstanceType<typeof VNoSsr>;
7
23
 
8
24
  export { VNoSsr };
@@ -52,16 +52,15 @@ export default baseMixins.extend().extend({
52
52
  isFocused: 'updateValue',
53
53
  value(val) {
54
54
  this.lazyValue = val;
55
- this.otp = (val == null ? void 0 : val.split('')) || [];
55
+ this.otp = val?.split('') || [];
56
56
  }
57
57
  },
58
58
  created() {
59
- var _this$internalValue;
60
59
  /* istanbul ignore next */
61
60
  if (this.$attrs.hasOwnProperty('browser-autocomplete')) {
62
61
  breaking('browser-autocomplete', 'autocomplete', this);
63
62
  }
64
- this.otp = ((_this$internalValue = this.internalValue) == null ? void 0 : _this$internalValue.split('')) || [];
63
+ this.otp = this.internalValue?.split('') || [];
65
64
  },
66
65
  mounted() {
67
66
  requestAnimationFrame(() => this.isBooted = true);
@@ -165,8 +164,8 @@ export default baseMixins.extend().extend({
165
164
  this.onFocus(undefined, otpIdx);
166
165
  },
167
166
  onFocus(e, otpIdx) {
168
- e == null ? void 0 : e.preventDefault();
169
- e == null ? void 0 : e.stopPropagation();
167
+ e?.preventDefault();
168
+ e?.stopPropagation();
170
169
  const elements = this.$refs.input;
171
170
  const ref = this.$refs.input && elements[otpIdx || 0];
172
171
  if (!ref) return;
@@ -184,7 +183,7 @@ export default baseMixins.extend().extend({
184
183
  const maxCursor = +this.length - 1;
185
184
  const target = e.target;
186
185
  const value = target.value;
187
- const inputDataArray = (value == null ? void 0 : value.split('')) || [];
186
+ const inputDataArray = value?.split('') || [];
188
187
  const newOtp = [...this.otp];
189
188
  for (let i = 0; i < inputDataArray.length; i++) {
190
189
  const appIdx = index + i;
@@ -1 +1 @@
1
- {"version":3,"file":"VOtpInput.mjs","names":["VInput","VTextField","ripple","convertToUnit","keyCodes","breaking","mixins","baseMixins","extend","name","directives","inheritAttrs","props","length","type","Number","String","default","plain","Boolean","data","initialValue","isBooted","otp","computed","outlined","classes","options","call","watch","isFocused","value","val","lazyValue","split","created","$attrs","hasOwnProperty","internalValue","mounted","requestAnimationFrame","methods","focus","e","otpIdx","onFocus","genInputSlot","$createElement","setBackgroundColor","backgroundColor","staticClass","style","height","on","click","onClick","mousedown","onMouseDown","mouseup","onMouseUp","genDefaultSlot","genControl","genFieldset","genTextFieldSlot","genContent","Array","from","_","i","setTextColor","validationState","class","attrs","genLegend","span","domProps","innerHTML","width","genInput","listeners","Object","assign","listeners$","change","min","attrs$","autocomplete","disabled","isDisabled","readonly","isReadonly","id","computedId","blur","onBlur","input","onInput","keydown","onKeyDown","keyup","onKeyUp","ref","refInFor","$nextTick","$emit","$refs","undefined","preventDefault","stopPropagation","elements","document","activeElement","select","index","maxCursor","target","inputDataArray","newOtp","appIdx","toString","splice","join","onCompleted","clearFocus","changeFocus","keyCode","enter","hasMouseDown","updateValue","hasColor","event","eventKey","key","includes","rsp","render","h","themeClasses"],"sources":["../../../src/components/VOtpInput/VOtpInput.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Styles\nimport '../VTextField/VTextField.sass'\nimport './VOtpInput.sass'\n\n// Extensions\nimport VInput from '../VInput'\nimport VTextField from '../VTextField/VTextField'\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { convertToUnit, keyCodes } from '../../util/helpers'\nimport { breaking } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n VInput,\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n input: HTMLInputElement[]\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-otp-input',\n\n directives: {\n ripple,\n },\n\n inheritAttrs: false,\n\n props: {\n length: {\n type: [Number, String],\n default: 6,\n },\n type: {\n type: String,\n default: 'text',\n },\n plain: Boolean,\n },\n\n data: () => ({\n initialValue: null,\n isBooted: false,\n otp: [] as string[],\n }),\n\n computed: {\n outlined (): Boolean {\n return !this.plain\n },\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n ...VTextField.options.computed.classes.call(this),\n 'v-otp-input--plain': this.plain,\n }\n },\n },\n\n watch: {\n isFocused: 'updateValue',\n value (val) {\n this.lazyValue = val\n this.otp = val?.split('') || []\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('browser-autocomplete')) {\n breaking('browser-autocomplete', 'autocomplete', this)\n }\n\n this.otp = this.internalValue?.split('') || []\n },\n\n mounted () {\n requestAnimationFrame(() => (this.isBooted = true))\n },\n\n methods: {\n /** @public */\n focus (e: Event, otpIdx: number) {\n this.onFocus(e, otpIdx || 0)\n },\n genInputSlot (otpIdx: number) {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor, {\n staticClass: 'v-input__slot',\n style: { height: convertToUnit(this.height) },\n on: {\n click: () => this.onClick(otpIdx),\n mousedown: (e: Event) => this.onMouseDown(e, otpIdx),\n mouseup: (e: Event) => this.onMouseUp(e, otpIdx),\n },\n }), [this.genDefaultSlot(otpIdx)])\n },\n genControl (otpIdx: number) {\n return this.$createElement('div', {\n staticClass: 'v-input__control',\n }, [\n this.genInputSlot(otpIdx),\n ])\n },\n genDefaultSlot (otpIdx: number) {\n return [\n this.genFieldset(),\n this.genTextFieldSlot(otpIdx),\n ]\n },\n genContent () {\n return Array.from({ length: +this.length }, (_, i) => {\n return this.$createElement('div', this.setTextColor(this.validationState, {\n staticClass: 'v-input',\n class: this.classes,\n }), [this.genControl(i)])\n })\n },\n genFieldset () {\n return this.$createElement('fieldset', {\n attrs: {\n 'aria-hidden': true,\n },\n }, [this.genLegend()])\n },\n genLegend () {\n const span = this.$createElement('span', {\n domProps: { innerHTML: '&#8203;' },\n })\n\n return this.$createElement('legend', {\n style: {\n width: '0px',\n },\n }, [span])\n },\n genInput (otpIdx: number) {\n const listeners = Object.assign({}, this.listeners$)\n delete listeners.change // Change should not be bound externally\n\n return this.$createElement('input', {\n style: {},\n domProps: {\n value: this.otp[otpIdx],\n min: this.type === 'number' ? 0 : null,\n },\n attrs: {\n ...this.attrs$,\n autocomplete: 'one-time-code',\n disabled: this.isDisabled,\n readonly: this.isReadonly,\n type: this.type,\n id: `${this.computedId}--${otpIdx}`,\n class: `otp-field-box--${otpIdx}`,\n },\n on: Object.assign(listeners, {\n blur: this.onBlur,\n input: (e: Event) => this.onInput(e, otpIdx),\n focus: (e: Event) => this.onFocus(e, otpIdx),\n keydown: this.onKeyDown,\n keyup: (e: KeyboardEvent) => this.onKeyUp(e, otpIdx),\n }),\n ref: 'input',\n refInFor: true,\n })\n },\n genTextFieldSlot (otpIdx: number): VNode {\n return this.$createElement('div', {\n staticClass: 'v-text-field__slot',\n }, [\n this.genInput(otpIdx),\n ])\n },\n onBlur (e?: Event) {\n this.isFocused = false\n e && this.$nextTick(() => this.$emit('blur', e))\n },\n onClick (otpIdx: number) {\n if (this.isFocused || this.isDisabled || !this.$refs.input[otpIdx]) return\n\n this.onFocus(undefined, otpIdx)\n },\n onFocus (e?: Event, otpIdx?: number) {\n e?.preventDefault()\n e?.stopPropagation()\n const elements = this.$refs.input as HTMLInputElement[]\n const ref = this.$refs.input && elements[otpIdx || 0]\n if (!ref) return\n\n if (document.activeElement !== ref) {\n ref.focus()\n return ref.select()\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n ref.select()\n e && this.$emit('focus', e)\n }\n },\n onInput (e: Event, index: number) {\n const maxCursor = +this.length - 1\n\n const target = e.target as HTMLInputElement\n const value = target.value\n const inputDataArray = value?.split('') || []\n\n const newOtp: string[] = [...this.otp]\n for (let i = 0; i < inputDataArray.length; i++) {\n const appIdx = index + i\n if (appIdx > maxCursor) break\n newOtp[appIdx] = inputDataArray[i].toString()\n }\n if (!inputDataArray.length) {\n newOtp.splice(index, 1)\n }\n\n this.otp = newOtp\n this.internalValue = this.otp.join('')\n\n if (index + inputDataArray.length >= +this.length) {\n this.onCompleted()\n this.clearFocus(index)\n } else if (inputDataArray.length) {\n this.changeFocus(index + inputDataArray.length)\n }\n },\n clearFocus (index: number) {\n const input = this.$refs.input[index] as HTMLInputElement\n input.blur()\n },\n onKeyDown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.enter) {\n this.$emit('change', this.internalValue)\n }\n\n this.$emit('keydown', e)\n },\n onMouseDown (e: Event, otpIdx: number) {\n // Prevent input from being blurred\n if (e.target !== this.$refs.input[otpIdx]) {\n e.preventDefault()\n e.stopPropagation()\n }\n\n VInput.options.methods.onMouseDown.call(this, e)\n },\n onMouseUp (e: Event, otpIdx: number) {\n if (this.hasMouseDown) this.focus(e, otpIdx)\n\n VInput.options.methods.onMouseUp.call(this, e)\n },\n changeFocus (index: number) {\n this.onFocus(undefined, index || 0)\n },\n updateValue (val: boolean) {\n // Sets validationState from validatable\n this.hasColor = val\n\n if (val) {\n this.initialValue = this.lazyValue\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('change', this.lazyValue)\n }\n },\n onKeyUp (event: KeyboardEvent, index: number) {\n event.preventDefault()\n const eventKey = event.key\n if (['Tab', 'Shift', 'Meta', 'Control', 'Alt'].includes(eventKey)) {\n return\n }\n if (['Delete'].includes(eventKey)) {\n return\n }\n if (eventKey === 'ArrowLeft' || (eventKey === 'Backspace' && !this.otp[index])) {\n return index > 0 && this.changeFocus(index - 1)\n }\n if (eventKey === 'ArrowRight') {\n return index + 1 < +this.length && this.changeFocus(index + 1)\n }\n },\n onCompleted () {\n const rsp = this.otp.join('')\n if (rsp.length === +this.length) {\n this.$emit('finish', rsp)\n }\n },\n },\n render (h): VNode {\n return h('div', {\n staticClass: 'v-otp-input',\n class: this.themeClasses,\n }, this.genContent())\n },\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"VOtpInput.mjs","names":["VInput","VTextField","ripple","convertToUnit","keyCodes","breaking","mixins","baseMixins","extend","name","directives","inheritAttrs","props","length","type","Number","String","default","plain","Boolean","data","initialValue","isBooted","otp","computed","outlined","classes","options","call","watch","isFocused","value","val","lazyValue","split","created","$attrs","hasOwnProperty","internalValue","mounted","requestAnimationFrame","methods","focus","e","otpIdx","onFocus","genInputSlot","$createElement","setBackgroundColor","backgroundColor","staticClass","style","height","on","click","onClick","mousedown","onMouseDown","mouseup","onMouseUp","genDefaultSlot","genControl","genFieldset","genTextFieldSlot","genContent","Array","from","_","i","setTextColor","validationState","class","attrs","genLegend","span","domProps","innerHTML","width","genInput","listeners","Object","assign","listeners$","change","min","attrs$","autocomplete","disabled","isDisabled","readonly","isReadonly","id","computedId","blur","onBlur","input","onInput","keydown","onKeyDown","keyup","onKeyUp","ref","refInFor","$nextTick","$emit","$refs","undefined","preventDefault","stopPropagation","elements","document","activeElement","select","index","maxCursor","target","inputDataArray","newOtp","appIdx","toString","splice","join","onCompleted","clearFocus","changeFocus","keyCode","enter","hasMouseDown","updateValue","hasColor","event","eventKey","key","includes","rsp","render","h","themeClasses"],"sources":["../../../src/components/VOtpInput/VOtpInput.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Styles\nimport '../VTextField/VTextField.sass'\nimport './VOtpInput.sass'\n\n// Extensions\nimport VInput from '../VInput'\nimport VTextField from '../VTextField/VTextField'\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { convertToUnit, keyCodes } from '../../util/helpers'\nimport { breaking } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n VInput,\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n input: HTMLInputElement[]\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-otp-input',\n\n directives: {\n ripple,\n },\n\n inheritAttrs: false,\n\n props: {\n length: {\n type: [Number, String],\n default: 6,\n },\n type: {\n type: String,\n default: 'text',\n },\n plain: Boolean,\n },\n\n data: () => ({\n initialValue: null,\n isBooted: false,\n otp: [] as string[],\n }),\n\n computed: {\n outlined (): Boolean {\n return !this.plain\n },\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n ...VTextField.options.computed.classes.call(this),\n 'v-otp-input--plain': this.plain,\n }\n },\n },\n\n watch: {\n isFocused: 'updateValue',\n value (val) {\n this.lazyValue = val\n this.otp = val?.split('') || []\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('browser-autocomplete')) {\n breaking('browser-autocomplete', 'autocomplete', this)\n }\n\n this.otp = this.internalValue?.split('') || []\n },\n\n mounted () {\n requestAnimationFrame(() => (this.isBooted = true))\n },\n\n methods: {\n /** @public */\n focus (e: Event, otpIdx: number) {\n this.onFocus(e, otpIdx || 0)\n },\n genInputSlot (otpIdx: number) {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor, {\n staticClass: 'v-input__slot',\n style: { height: convertToUnit(this.height) },\n on: {\n click: () => this.onClick(otpIdx),\n mousedown: (e: Event) => this.onMouseDown(e, otpIdx),\n mouseup: (e: Event) => this.onMouseUp(e, otpIdx),\n },\n }), [this.genDefaultSlot(otpIdx)])\n },\n genControl (otpIdx: number) {\n return this.$createElement('div', {\n staticClass: 'v-input__control',\n }, [\n this.genInputSlot(otpIdx),\n ])\n },\n genDefaultSlot (otpIdx: number) {\n return [\n this.genFieldset(),\n this.genTextFieldSlot(otpIdx),\n ]\n },\n genContent () {\n return Array.from({ length: +this.length }, (_, i) => {\n return this.$createElement('div', this.setTextColor(this.validationState, {\n staticClass: 'v-input',\n class: this.classes,\n }), [this.genControl(i)])\n })\n },\n genFieldset () {\n return this.$createElement('fieldset', {\n attrs: {\n 'aria-hidden': true,\n },\n }, [this.genLegend()])\n },\n genLegend () {\n const span = this.$createElement('span', {\n domProps: { innerHTML: '&#8203;' },\n })\n\n return this.$createElement('legend', {\n style: {\n width: '0px',\n },\n }, [span])\n },\n genInput (otpIdx: number) {\n const listeners = Object.assign({}, this.listeners$)\n delete listeners.change // Change should not be bound externally\n\n return this.$createElement('input', {\n style: {},\n domProps: {\n value: this.otp[otpIdx],\n min: this.type === 'number' ? 0 : null,\n },\n attrs: {\n ...this.attrs$,\n autocomplete: 'one-time-code',\n disabled: this.isDisabled,\n readonly: this.isReadonly,\n type: this.type,\n id: `${this.computedId}--${otpIdx}`,\n class: `otp-field-box--${otpIdx}`,\n },\n on: Object.assign(listeners, {\n blur: this.onBlur,\n input: (e: Event) => this.onInput(e, otpIdx),\n focus: (e: Event) => this.onFocus(e, otpIdx),\n keydown: this.onKeyDown,\n keyup: (e: KeyboardEvent) => this.onKeyUp(e, otpIdx),\n }),\n ref: 'input',\n refInFor: true,\n })\n },\n genTextFieldSlot (otpIdx: number): VNode {\n return this.$createElement('div', {\n staticClass: 'v-text-field__slot',\n }, [\n this.genInput(otpIdx),\n ])\n },\n onBlur (e?: Event) {\n this.isFocused = false\n e && this.$nextTick(() => this.$emit('blur', e))\n },\n onClick (otpIdx: number) {\n if (this.isFocused || this.isDisabled || !this.$refs.input[otpIdx]) return\n\n this.onFocus(undefined, otpIdx)\n },\n onFocus (e?: Event, otpIdx?: number) {\n e?.preventDefault()\n e?.stopPropagation()\n const elements = this.$refs.input as HTMLInputElement[]\n const ref = this.$refs.input && elements[otpIdx || 0]\n if (!ref) return\n\n if (document.activeElement !== ref) {\n ref.focus()\n return ref.select()\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n ref.select()\n e && this.$emit('focus', e)\n }\n },\n onInput (e: Event, index: number) {\n const maxCursor = +this.length - 1\n\n const target = e.target as HTMLInputElement\n const value = target.value\n const inputDataArray = value?.split('') || []\n\n const newOtp: string[] = [...this.otp]\n for (let i = 0; i < inputDataArray.length; i++) {\n const appIdx = index + i\n if (appIdx > maxCursor) break\n newOtp[appIdx] = inputDataArray[i].toString()\n }\n if (!inputDataArray.length) {\n newOtp.splice(index, 1)\n }\n\n this.otp = newOtp\n this.internalValue = this.otp.join('')\n\n if (index + inputDataArray.length >= +this.length) {\n this.onCompleted()\n this.clearFocus(index)\n } else if (inputDataArray.length) {\n this.changeFocus(index + inputDataArray.length)\n }\n },\n clearFocus (index: number) {\n const input = this.$refs.input[index] as HTMLInputElement\n input.blur()\n },\n onKeyDown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.enter) {\n this.$emit('change', this.internalValue)\n }\n\n this.$emit('keydown', e)\n },\n onMouseDown (e: Event, otpIdx: number) {\n // Prevent input from being blurred\n if (e.target !== this.$refs.input[otpIdx]) {\n e.preventDefault()\n e.stopPropagation()\n }\n\n VInput.options.methods.onMouseDown.call(this, e)\n },\n onMouseUp (e: Event, otpIdx: number) {\n if (this.hasMouseDown) this.focus(e, otpIdx)\n\n VInput.options.methods.onMouseUp.call(this, e)\n },\n changeFocus (index: number) {\n this.onFocus(undefined, index || 0)\n },\n updateValue (val: boolean) {\n // Sets validationState from validatable\n this.hasColor = val\n\n if (val) {\n this.initialValue = this.lazyValue\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('change', this.lazyValue)\n }\n },\n onKeyUp (event: KeyboardEvent, index: number) {\n event.preventDefault()\n const eventKey = event.key\n if (['Tab', 'Shift', 'Meta', 'Control', 'Alt'].includes(eventKey)) {\n return\n }\n if (['Delete'].includes(eventKey)) {\n return\n }\n if (eventKey === 'ArrowLeft' || (eventKey === 'Backspace' && !this.otp[index])) {\n return index > 0 && this.changeFocus(index - 1)\n }\n if (eventKey === 'ArrowRight') {\n return index + 1 < +this.length && this.changeFocus(index + 1)\n }\n },\n onCompleted () {\n const rsp = this.otp.join('')\n if (rsp.length === +this.length) {\n this.$emit('finish', rsp)\n }\n },\n },\n render (h): VNode {\n return h('div', {\n staticClass: 'v-otp-input',\n class: this.themeClasses,\n }, this.genContent())\n },\n})\n"],"mappings":"AAAA;AACA;;AAEA;AACA;AACA;;AAEA;AAAA,OACOA,MAAM;AAAA,OACNC,UAAU,sCACjB;AAAA,OACOC,MAAM,2CAEb;AAAA,SACSC,aAAa,EAAEC,QAAQ;AAAA,SACvBC,QAAQ,kCAEjB;AAAA,OACOC,MAAM;AAGb,MAAMC,UAAU,GAAGD,MAAM,CACvBN,MAAM,CACP;AAQD;AACA,eAAeO,UAAU,CAACC,MAAM,EAAW,CAACA,MAAM,CAAC;EACjDC,IAAI,EAAE,aAAa;EAEnBC,UAAU,EAAE;IACVR;EACF,CAAC;EAEDS,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACLC,MAAM,EAAE;MACNC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;MACtBC,OAAO,EAAE;IACX,CAAC;IACDH,IAAI,EAAE;MACJA,IAAI,EAAEE,MAAM;MACZC,OAAO,EAAE;IACX,CAAC;IACDC,KAAK,EAAEC;EACT,CAAC;EAEDC,IAAI,EAAE,OAAO;IACXC,YAAY,EAAE,IAAI;IAClBC,QAAQ,EAAE,KAAK;IACfC,GAAG,EAAE;EACP,CAAC,CAAC;EAEFC,QAAQ,EAAE;IACRC,QAAQ,GAAa;MACnB,OAAO,CAAC,IAAI,CAACP,KAAK;IACpB,CAAC;IACDQ,OAAO,GAAY;MACjB,OAAO;QACL,GAAG1B,MAAM,CAAC2B,OAAO,CAACH,QAAQ,CAACE,OAAO,CAACE,IAAI,CAAC,IAAI,CAAC;QAC7C,GAAG3B,UAAU,CAAC0B,OAAO,CAACH,QAAQ,CAACE,OAAO,CAACE,IAAI,CAAC,IAAI,CAAC;QACjD,oBAAoB,EAAE,IAAI,CAACV;MAC7B,CAAC;IACH;EACF,CAAC;EAEDW,KAAK,EAAE;IACLC,SAAS,EAAE,aAAa;IACxBC,KAAK,CAAEC,GAAG,EAAE;MACV,IAAI,CAACC,SAAS,GAAGD,GAAG;MACpB,IAAI,CAACT,GAAG,GAAGS,GAAG,EAAEE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE;IACjC;EACF,CAAC;EAEDC,OAAO,GAAI;IACT;IACA,IAAI,IAAI,CAACC,MAAM,CAACC,cAAc,CAAC,sBAAsB,CAAC,EAAE;MACtDhC,QAAQ,CAAC,sBAAsB,EAAE,cAAc,EAAE,IAAI,CAAC;IACxD;IAEA,IAAI,CAACkB,GAAG,GAAG,IAAI,CAACe,aAAa,EAAEJ,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE;EAChD,CAAC;EAEDK,OAAO,GAAI;IACTC,qBAAqB,CAAC,MAAO,IAAI,CAAClB,QAAQ,GAAG,IAAK,CAAC;EACrD,CAAC;EAEDmB,OAAO,EAAE;IACP;IACAC,KAAK,CAAEC,CAAQ,EAAEC,MAAc,EAAE;MAC/B,IAAI,CAACC,OAAO,CAACF,CAAC,EAAEC,MAAM,IAAI,CAAC,CAAC;IAC9B,CAAC;IACDE,YAAY,CAAEF,MAAc,EAAE;MAC5B,OAAO,IAAI,CAACG,cAAc,CAAC,KAAK,EAAE,IAAI,CAACC,kBAAkB,CAAC,IAAI,CAACC,eAAe,EAAE;QAC9EC,WAAW,EAAE,eAAe;QAC5BC,KAAK,EAAE;UAAEC,MAAM,EAAEjD,aAAa,CAAC,IAAI,CAACiD,MAAM;QAAE,CAAC;QAC7CC,EAAE,EAAE;UACFC,KAAK,EAAE,MAAM,IAAI,CAACC,OAAO,CAACX,MAAM,CAAC;UACjCY,SAAS,EAAGb,CAAQ,IAAK,IAAI,CAACc,WAAW,CAACd,CAAC,EAAEC,MAAM,CAAC;UACpDc,OAAO,EAAGf,CAAQ,IAAK,IAAI,CAACgB,SAAS,CAAChB,CAAC,EAAEC,MAAM;QACjD;MACF,CAAC,CAAC,EAAE,CAAC,IAAI,CAACgB,cAAc,CAAChB,MAAM,CAAC,CAAC,CAAC;IACpC,CAAC;IACDiB,UAAU,CAAEjB,MAAc,EAAE;MAC1B,OAAO,IAAI,CAACG,cAAc,CAAC,KAAK,EAAE;QAChCG,WAAW,EAAE;MACf,CAAC,EAAE,CACD,IAAI,CAACJ,YAAY,CAACF,MAAM,CAAC,CAC1B,CAAC;IACJ,CAAC;IACDgB,cAAc,CAAEhB,MAAc,EAAE;MAC9B,OAAO,CACL,IAAI,CAACkB,WAAW,EAAE,EAClB,IAAI,CAACC,gBAAgB,CAACnB,MAAM,CAAC,CAC9B;IACH,CAAC;IACDoB,UAAU,GAAI;MACZ,OAAOC,KAAK,CAACC,IAAI,CAAC;QAAErD,MAAM,EAAE,CAAC,IAAI,CAACA;MAAO,CAAC,EAAE,CAACsD,CAAC,EAAEC,CAAC,KAAK;QACpD,OAAO,IAAI,CAACrB,cAAc,CAAC,KAAK,EAAE,IAAI,CAACsB,YAAY,CAAC,IAAI,CAACC,eAAe,EAAE;UACxEpB,WAAW,EAAE,SAAS;UACtBqB,KAAK,EAAE,IAAI,CAAC7C;QACd,CAAC,CAAC,EAAE,CAAC,IAAI,CAACmC,UAAU,CAACO,CAAC,CAAC,CAAC,CAAC;MAC3B,CAAC,CAAC;IACJ,CAAC;IACDN,WAAW,GAAI;MACb,OAAO,IAAI,CAACf,cAAc,CAAC,UAAU,EAAE;QACrCyB,KAAK,EAAE;UACL,aAAa,EAAE;QACjB;MACF,CAAC,EAAE,CAAC,IAAI,CAACC,SAAS,EAAE,CAAC,CAAC;IACxB,CAAC;IACDA,SAAS,GAAI;MACX,MAAMC,IAAI,GAAG,IAAI,CAAC3B,cAAc,CAAC,MAAM,EAAE;QACvC4B,QAAQ,EAAE;UAAEC,SAAS,EAAE;QAAU;MACnC,CAAC,CAAC;MAEF,OAAO,IAAI,CAAC7B,cAAc,CAAC,QAAQ,EAAE;QACnCI,KAAK,EAAE;UACL0B,KAAK,EAAE;QACT;MACF,CAAC,EAAE,CAACH,IAAI,CAAC,CAAC;IACZ,CAAC;IACDI,QAAQ,CAAElC,MAAc,EAAE;MACxB,MAAMmC,SAAS,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAACC,UAAU,CAAC;MACpD,OAAOH,SAAS,CAACI,MAAM,EAAC;;MAExB,OAAO,IAAI,CAACpC,cAAc,CAAC,OAAO,EAAE;QAClCI,KAAK,EAAE,CAAC,CAAC;QACTwB,QAAQ,EAAE;UACR5C,KAAK,EAAE,IAAI,CAACR,GAAG,CAACqB,MAAM,CAAC;UACvBwC,GAAG,EAAE,IAAI,CAACtE,IAAI,KAAK,QAAQ,GAAG,CAAC,GAAG;QACpC,CAAC;QACD0D,KAAK,EAAE;UACL,GAAG,IAAI,CAACa,MAAM;UACdC,YAAY,EAAE,eAAe;UAC7BC,QAAQ,EAAE,IAAI,CAACC,UAAU;UACzBC,QAAQ,EAAE,IAAI,CAACC,UAAU;UACzB5E,IAAI,EAAE,IAAI,CAACA,IAAI;UACf6E,EAAE,EAAG,GAAE,IAAI,CAACC,UAAW,KAAIhD,MAAO,EAAC;UACnC2B,KAAK,EAAG,kBAAiB3B,MAAO;QAClC,CAAC;QACDS,EAAE,EAAE2B,MAAM,CAACC,MAAM,CAACF,SAAS,EAAE;UAC3Bc,IAAI,EAAE,IAAI,CAACC,MAAM;UACjBC,KAAK,EAAGpD,CAAQ,IAAK,IAAI,CAACqD,OAAO,CAACrD,CAAC,EAAEC,MAAM,CAAC;UAC5CF,KAAK,EAAGC,CAAQ,IAAK,IAAI,CAACE,OAAO,CAACF,CAAC,EAAEC,MAAM,CAAC;UAC5CqD,OAAO,EAAE,IAAI,CAACC,SAAS;UACvBC,KAAK,EAAGxD,CAAgB,IAAK,IAAI,CAACyD,OAAO,CAACzD,CAAC,EAAEC,MAAM;QACrD,CAAC,CAAC;QACFyD,GAAG,EAAE,OAAO;QACZC,QAAQ,EAAE;MACZ,CAAC,CAAC;IACJ,CAAC;IACDvC,gBAAgB,CAAEnB,MAAc,EAAS;MACvC,OAAO,IAAI,CAACG,cAAc,CAAC,KAAK,EAAE;QAChCG,WAAW,EAAE;MACf,CAAC,EAAE,CACD,IAAI,CAAC4B,QAAQ,CAAClC,MAAM,CAAC,CACtB,CAAC;IACJ,CAAC;IACDkD,MAAM,CAAEnD,CAAS,EAAE;MACjB,IAAI,CAACb,SAAS,GAAG,KAAK;MACtBa,CAAC,IAAI,IAAI,CAAC4D,SAAS,CAAC,MAAM,IAAI,CAACC,KAAK,CAAC,MAAM,EAAE7D,CAAC,CAAC,CAAC;IAClD,CAAC;IACDY,OAAO,CAAEX,MAAc,EAAE;MACvB,IAAI,IAAI,CAACd,SAAS,IAAI,IAAI,CAAC0D,UAAU,IAAI,CAAC,IAAI,CAACiB,KAAK,CAACV,KAAK,CAACnD,MAAM,CAAC,EAAE;MAEpE,IAAI,CAACC,OAAO,CAAC6D,SAAS,EAAE9D,MAAM,CAAC;IACjC,CAAC;IACDC,OAAO,CAAEF,CAAS,EAAEC,MAAe,EAAE;MACnCD,CAAC,EAAEgE,cAAc,EAAE;MACnBhE,CAAC,EAAEiE,eAAe,EAAE;MACpB,MAAMC,QAAQ,GAAG,IAAI,CAACJ,KAAK,CAACV,KAA2B;MACvD,MAAMM,GAAG,GAAG,IAAI,CAACI,KAAK,CAACV,KAAK,IAAIc,QAAQ,CAACjE,MAAM,IAAI,CAAC,CAAC;MACrD,IAAI,CAACyD,GAAG,EAAE;MAEV,IAAIS,QAAQ,CAACC,aAAa,KAAKV,GAAG,EAAE;QAClCA,GAAG,CAAC3D,KAAK,EAAE;QACX,OAAO2D,GAAG,CAACW,MAAM,EAAE;MACrB;MAEA,IAAI,CAAC,IAAI,CAAClF,SAAS,EAAE;QACnB,IAAI,CAACA,SAAS,GAAG,IAAI;QACrBuE,GAAG,CAACW,MAAM,EAAE;QACZrE,CAAC,IAAI,IAAI,CAAC6D,KAAK,CAAC,OAAO,EAAE7D,CAAC,CAAC;MAC7B;IACF,CAAC;IACDqD,OAAO,CAAErD,CAAQ,EAAEsE,KAAa,EAAE;MAChC,MAAMC,SAAS,GAAG,CAAC,IAAI,CAACrG,MAAM,GAAG,CAAC;MAElC,MAAMsG,MAAM,GAAGxE,CAAC,CAACwE,MAA0B;MAC3C,MAAMpF,KAAK,GAAGoF,MAAM,CAACpF,KAAK;MAC1B,MAAMqF,cAAc,GAAGrF,KAAK,EAAEG,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE;MAE7C,MAAMmF,MAAgB,GAAG,CAAC,GAAG,IAAI,CAAC9F,GAAG,CAAC;MACtC,KAAK,IAAI6C,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGgD,cAAc,CAACvG,MAAM,EAAEuD,CAAC,EAAE,EAAE;QAC9C,MAAMkD,MAAM,GAAGL,KAAK,GAAG7C,CAAC;QACxB,IAAIkD,MAAM,GAAGJ,SAAS,EAAE;QACxBG,MAAM,CAACC,MAAM,CAAC,GAAGF,cAAc,CAAChD,CAAC,CAAC,CAACmD,QAAQ,EAAE;MAC/C;MACA,IAAI,CAACH,cAAc,CAACvG,MAAM,EAAE;QAC1BwG,MAAM,CAACG,MAAM,CAACP,KAAK,EAAE,CAAC,CAAC;MACzB;MAEA,IAAI,CAAC1F,GAAG,GAAG8F,MAAM;MACjB,IAAI,CAAC/E,aAAa,GAAG,IAAI,CAACf,GAAG,CAACkG,IAAI,CAAC,EAAE,CAAC;MAEtC,IAAIR,KAAK,GAAGG,cAAc,CAACvG,MAAM,IAAI,CAAC,IAAI,CAACA,MAAM,EAAE;QACjD,IAAI,CAAC6G,WAAW,EAAE;QAClB,IAAI,CAACC,UAAU,CAACV,KAAK,CAAC;MACxB,CAAC,MAAM,IAAIG,cAAc,CAACvG,MAAM,EAAE;QAChC,IAAI,CAAC+G,WAAW,CAACX,KAAK,GAAGG,cAAc,CAACvG,MAAM,CAAC;MACjD;IACF,CAAC;IACD8G,UAAU,CAAEV,KAAa,EAAE;MACzB,MAAMlB,KAAK,GAAG,IAAI,CAACU,KAAK,CAACV,KAAK,CAACkB,KAAK,CAAqB;MACzDlB,KAAK,CAACF,IAAI,EAAE;IACd,CAAC;IACDK,SAAS,CAAEvD,CAAgB,EAAE;MAC3B,IAAIA,CAAC,CAACkF,OAAO,KAAKzH,QAAQ,CAAC0H,KAAK,EAAE;QAChC,IAAI,CAACtB,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAClE,aAAa,CAAC;MAC1C;MAEA,IAAI,CAACkE,KAAK,CAAC,SAAS,EAAE7D,CAAC,CAAC;IAC1B,CAAC;IACDc,WAAW,CAAEd,CAAQ,EAAEC,MAAc,EAAE;MACrC;MACA,IAAID,CAAC,CAACwE,MAAM,KAAK,IAAI,CAACV,KAAK,CAACV,KAAK,CAACnD,MAAM,CAAC,EAAE;QACzCD,CAAC,CAACgE,cAAc,EAAE;QAClBhE,CAAC,CAACiE,eAAe,EAAE;MACrB;MAEA5G,MAAM,CAAC2B,OAAO,CAACc,OAAO,CAACgB,WAAW,CAAC7B,IAAI,CAAC,IAAI,EAAEe,CAAC,CAAC;IAClD,CAAC;IACDgB,SAAS,CAAEhB,CAAQ,EAAEC,MAAc,EAAE;MACnC,IAAI,IAAI,CAACmF,YAAY,EAAE,IAAI,CAACrF,KAAK,CAACC,CAAC,EAAEC,MAAM,CAAC;MAE5C5C,MAAM,CAAC2B,OAAO,CAACc,OAAO,CAACkB,SAAS,CAAC/B,IAAI,CAAC,IAAI,EAAEe,CAAC,CAAC;IAChD,CAAC;IACDiF,WAAW,CAAEX,KAAa,EAAE;MAC1B,IAAI,CAACpE,OAAO,CAAC6D,SAAS,EAAEO,KAAK,IAAI,CAAC,CAAC;IACrC,CAAC;IACDe,WAAW,CAAEhG,GAAY,EAAE;MACzB;MACA,IAAI,CAACiG,QAAQ,GAAGjG,GAAG;MAEnB,IAAIA,GAAG,EAAE;QACP,IAAI,CAACX,YAAY,GAAG,IAAI,CAACY,SAAS;MACpC,CAAC,MAAM,IAAI,IAAI,CAACZ,YAAY,KAAK,IAAI,CAACY,SAAS,EAAE;QAC/C,IAAI,CAACuE,KAAK,CAAC,QAAQ,EAAE,IAAI,CAACvE,SAAS,CAAC;MACtC;IACF,CAAC;IACDmE,OAAO,CAAE8B,KAAoB,EAAEjB,KAAa,EAAE;MAC5CiB,KAAK,CAACvB,cAAc,EAAE;MACtB,MAAMwB,QAAQ,GAAGD,KAAK,CAACE,GAAG;MAC1B,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAACC,QAAQ,CAACF,QAAQ,CAAC,EAAE;QACjE;MACF;MACA,IAAI,CAAC,QAAQ,CAAC,CAACE,QAAQ,CAACF,QAAQ,CAAC,EAAE;QACjC;MACF;MACA,IAAIA,QAAQ,KAAK,WAAW,IAAKA,QAAQ,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC5G,GAAG,CAAC0F,KAAK,CAAE,EAAE;QAC9E,OAAOA,KAAK,GAAG,CAAC,IAAI,IAAI,CAACW,WAAW,CAACX,KAAK,GAAG,CAAC,CAAC;MACjD;MACA,IAAIkB,QAAQ,KAAK,YAAY,EAAE;QAC7B,OAAOlB,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,CAACpG,MAAM,IAAI,IAAI,CAAC+G,WAAW,CAACX,KAAK,GAAG,CAAC,CAAC;MAChE;IACF,CAAC;IACDS,WAAW,GAAI;MACb,MAAMY,GAAG,GAAG,IAAI,CAAC/G,GAAG,CAACkG,IAAI,CAAC,EAAE,CAAC;MAC7B,IAAIa,GAAG,CAACzH,MAAM,KAAK,CAAC,IAAI,CAACA,MAAM,EAAE;QAC/B,IAAI,CAAC2F,KAAK,CAAC,QAAQ,EAAE8B,GAAG,CAAC;MAC3B;IACF;EACF,CAAC;EACDC,MAAM,CAAEC,CAAC,EAAS;IAChB,OAAOA,CAAC,CAAC,KAAK,EAAE;MACdtF,WAAW,EAAE,aAAa;MAC1BqB,KAAK,EAAE,IAAI,CAACkE;IACd,CAAC,EAAE,IAAI,CAACzE,UAAU,EAAE,CAAC;EACvB;AACF,CAAC,CAAC"}
@@ -217,54 +217,51 @@ export const VOverlay = genericComponent()({
217
217
  easing: standardEasing
218
218
  });
219
219
  }
220
- useRender(() => {
221
- var _slots$activator, _slots$default;
222
- return _createVNode(_Fragment, null, [(_slots$activator = slots.activator) == null ? void 0 : _slots$activator.call(slots, {
223
- isActive: isActive.value,
224
- props: mergeProps({
225
- ref: activatorRef
226
- }, toHandlers(activatorEvents.value), props.activatorProps)
227
- }), isMounted.value && _createVNode(Teleport, {
228
- "disabled": !teleportTarget.value,
229
- "to": teleportTarget.value
220
+ useRender(() => _createVNode(_Fragment, null, [slots.activator?.({
221
+ isActive: isActive.value,
222
+ props: mergeProps({
223
+ ref: activatorRef
224
+ }, toHandlers(activatorEvents.value), props.activatorProps)
225
+ }), isMounted.value && _createVNode(Teleport, {
226
+ "disabled": !teleportTarget.value,
227
+ "to": teleportTarget.value
228
+ }, {
229
+ default: () => [hasContent.value && _createVNode("div", _mergeProps({
230
+ "class": ['v-overlay', {
231
+ 'v-overlay--absolute': props.absolute || props.contained,
232
+ 'v-overlay--active': isActive.value,
233
+ 'v-overlay--contained': props.contained
234
+ }, themeClasses.value, rtlClasses.value],
235
+ "style": [stackStyles.value, {
236
+ top: convertToUnit(top.value)
237
+ }],
238
+ "ref": root
239
+ }, scopeId, attrs), [_createVNode(Scrim, _mergeProps({
240
+ "color": scrimColor,
241
+ "modelValue": isActive.value && !!props.scrim
242
+ }, toHandlers(scrimEvents.value)), null), _createVNode(MaybeTransition, {
243
+ "appear": true,
244
+ "persisted": true,
245
+ "transition": props.transition,
246
+ "target": activatorEl.value,
247
+ "onAfterLeave": () => {
248
+ onAfterLeave();
249
+ emit('afterLeave');
250
+ }
230
251
  }, {
231
- default: () => [hasContent.value && _createVNode("div", _mergeProps({
232
- "class": ['v-overlay', {
233
- 'v-overlay--absolute': props.absolute || props.contained,
234
- 'v-overlay--active': isActive.value,
235
- 'v-overlay--contained': props.contained
236
- }, themeClasses.value, rtlClasses.value],
237
- "style": [stackStyles.value, {
238
- top: convertToUnit(top.value)
239
- }],
240
- "ref": root
241
- }, scopeId, attrs), [_createVNode(Scrim, _mergeProps({
242
- "color": scrimColor,
243
- "modelValue": isActive.value && !!props.scrim
244
- }, toHandlers(scrimEvents.value)), null), _createVNode(MaybeTransition, {
245
- "appear": true,
246
- "persisted": true,
247
- "transition": props.transition,
248
- "target": activatorEl.value,
249
- "onAfterLeave": () => {
250
- onAfterLeave();
251
- emit('afterLeave');
252
- }
253
- }, {
254
- default: () => [_withDirectives(_createVNode("div", _mergeProps({
255
- "ref": contentEl,
256
- "class": ['v-overlay__content', props.contentClass],
257
- "style": [dimensionStyles.value, contentStyles.value]
258
- }, toHandlers(contentEvents.value), props.contentProps), [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots, {
259
- isActive
260
- })]), [[_vShow, isActive.value], [_resolveDirective("click-outside"), {
261
- handler: onClickOutside,
262
- closeConditional,
263
- include: () => [activatorEl.value]
264
- }]])]
265
- })])]
266
- })]);
267
- });
252
+ default: () => [_withDirectives(_createVNode("div", _mergeProps({
253
+ "ref": contentEl,
254
+ "class": ['v-overlay__content', props.contentClass],
255
+ "style": [dimensionStyles.value, contentStyles.value]
256
+ }, toHandlers(contentEvents.value), props.contentProps), [slots.default?.({
257
+ isActive
258
+ })]), [[_vShow, isActive.value], [_resolveDirective("click-outside"), {
259
+ handler: onClickOutside,
260
+ closeConditional,
261
+ include: () => [activatorEl.value]
262
+ }]])]
263
+ })])]
264
+ })]));
268
265
  return {
269
266
  activatorEl,
270
267
  animateClick,
@@ -1 +1 @@
1
- {"version":3,"file":"VOverlay.mjs","names":["makeActivatorProps","useActivator","makeDimensionProps","useDimension","makeLazyProps","useLazy","makeLocationStrategyProps","useLocationStrategies","makeScrollStrategyProps","useScrollStrategies","makeThemeProps","provideTheme","makeTransitionProps","MaybeTransition","useBackButton","useRouter","useBackgroundColor","useProxiedModel","useHydration","useRtl","useScopeId","useStack","useTeleport","useToggleScope","ClickOutside","animate","convertToUnit","genericComponent","getScrollParent","IN_BROWSER","pick","propsFactory","standardEasing","useRender","computed","mergeProps","ref","Teleport","toHandlers","toRef","Transition","watch","Scrim","props","modelValue","color","rest","backgroundColorClasses","value","backgroundColorStyles","makeVOverlayProps","absolute","Boolean","attach","String","Object","closeOnBack","type","default","contained","contentClass","contentProps","disabled","noClickAnimation","persistent","scrim","zIndex","Number","VOverlay","name","directives","inheritAttrs","_disableGlobalStack","emits","e","afterLeave","setup","slots","attrs","emit","model","isActive","get","set","v","teleportTarget","themeClasses","rtlClasses","isRtl","hasContent","onAfterLeave","scrimColor","globalTop","localTop","stackStyles","activatorEl","activatorRef","activatorEvents","contentEvents","scrimEvents","isTop","dimensionStyles","isMounted","scopeId","root","contentEl","contentStyles","updateLocation","onClickOutside","animateClick","closeConditional","val","window","addEventListener","onKeydown","removeEventListener","immediate","key","router","next","top","scrollParent","document","scrollingElement","scrollTop","transformOrigin","transform","duration","easing","activator","activatorProps","transition","handler","include","filterVOverlayProps","keys"],"sources":["../../../src/components/VOverlay/VOverlay.tsx"],"sourcesContent":["// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useHydration } from '@/composables/hydration'\nimport { useRtl } from '@/composables/locale'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useStack } from '@/composables/stack'\nimport { useTeleport } from '@/composables/teleport'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Directives\nimport { ClickOutside } from '@/directives/click-outside'\n\n// Utilities\nimport {\n animate,\n convertToUnit,\n genericComponent,\n getScrollParent,\n IN_BROWSER,\n pick,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\nimport {\n computed,\n mergeProps,\n ref,\n Teleport,\n toHandlers,\n toRef,\n Transition,\n watch,\n} from 'vue'\n\n// Types\nimport type { BackgroundColorData } from '@/composables/color'\nimport type { MakeSlots, SlotsToProps } from '@/util'\nimport type { ExtractPropTypes, PropType, Ref } from 'vue'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n <Transition name=\"fade-transition\" appear>\n { props.modelValue && (\n <div\n class={[\n 'v-overlay__scrim',\n props.color.backgroundColorClasses.value,\n ]}\n style={ props.color.backgroundColorStyles.value }\n { ...rest }\n />\n )}\n </Transition>\n )\n}\n\nexport type OverlaySlots = MakeSlots<{\n default: [{ isActive: Ref<boolean> }]\n activator: [{ isActive: boolean, props: Record<string, any> }]\n}>\n\nexport const makeVOverlayProps = propsFactory({\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType<boolean | string | Element>,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [String, Boolean],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeDimensionProps(),\n ...makeLazyProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n}, 'v-overlay')\n\nexport const VOverlay = genericComponent<new () => {\n $props: SlotsToProps<OverlaySlots>\n}>()({\n name: 'VOverlay',\n\n directives: { ClickOutside },\n\n inheritAttrs: false,\n\n props: {\n _disableGlobalStack: Boolean,\n\n ...makeVOverlayProps(),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { teleportTarget } = useTeleport(computed(() => props.attach || props.contained))\n const { themeClasses } = provideTheme(props)\n const { rtlClasses, isRtl } = useRtl()\n const { hasContent, onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const { globalTop, localTop, stackStyles } = useStack(isActive, toRef(props, 'zIndex'), props._disableGlobalStack)\n const { activatorEl, activatorRef, activatorEvents, contentEvents, scrimEvents } = useActivator(props, { isActive, isTop: localTop })\n const { dimensionStyles } = useDimension(props)\n const isMounted = useHydration()\n const { scopeId } = useScopeId()\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const root = ref<HTMLElement>()\n const contentEl = ref<HTMLElement>()\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n isRtl,\n contentEl,\n activatorEl,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n activatorEl,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional () {\n return isActive.value && globalTop.value\n }\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && globalTop.value) {\n if (!props.persistent) {\n isActive.value = false\n } else animateClick()\n }\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (globalTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref<number>()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value && animate(contentEl.value, [\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n props: mergeProps({\n ref: activatorRef,\n }, toHandlers(activatorEvents.value), props.activatorProps),\n }) }\n\n { isMounted.value && (\n <Teleport\n disabled={ !teleportTarget.value }\n to={ teleportTarget.value }\n >\n { hasContent.value && (\n <div\n class={[\n 'v-overlay',\n {\n 'v-overlay--absolute': props.absolute || props.contained,\n 'v-overlay--active': isActive.value,\n 'v-overlay--contained': props.contained,\n },\n themeClasses.value,\n rtlClasses.value,\n ]}\n style={[stackStyles.value, { top: convertToUnit(top.value) }]}\n ref={ root }\n { ...scopeId }\n { ...attrs }\n >\n <Scrim\n color={ scrimColor }\n modelValue={ isActive.value && !!props.scrim }\n { ...toHandlers(scrimEvents.value) }\n />\n <MaybeTransition\n appear\n persisted\n transition={ props.transition }\n target={ activatorEl.value }\n onAfterLeave={() => { onAfterLeave(); emit('afterLeave') }}\n >\n <div\n ref={ contentEl }\n v-show={ isActive.value }\n v-click-outside={{ handler: onClickOutside, closeConditional, include: () => [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...toHandlers(contentEvents.value) }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n </div>\n </MaybeTransition>\n </div>\n )}\n </Teleport>\n )}\n </>\n ))\n\n return {\n activatorEl,\n animateClick,\n contentEl,\n globalTop,\n localTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType<typeof VOverlay>\n\nexport function filterVOverlayProps (props: Partial<ExtractPropTypes<ReturnType<typeof makeVOverlayProps>>>) {\n return pick(props, Object.keys(VOverlay.props) as any)\n}\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,aAAa,EAAEC,OAAO;AAAA,SACtBC,yBAAyB,EAAEC,qBAAqB;AAAA,SAChDC,uBAAuB,EAAEC,mBAAmB;AAAA,SAC5CC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,mBAAmB,EAAEC,eAAe;AAAA,SACpCC,aAAa,EAAEC,SAAS;AAAA,SACxBC,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,YAAY;AAAA,SACZC,MAAM;AAAA,SACNC,UAAU;AAAA,SACVC,QAAQ;AAAA,SACRC,WAAW;AAAA,SACXC,cAAc,6CAEvB;AAAA,SACSC,YAAY,oDAErB;AAAA,SAEEC,OAAO,EACPC,aAAa,EACbC,gBAAgB,EAChBC,eAAe,EACfC,UAAU,EACVC,IAAI,EACJC,YAAY,EACZC,cAAc,EACdC,SAAS;AAEX,SACEC,QAAQ,EACRC,UAAU,EACVC,GAAG,EACHC,QAAQ,EACRC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,KAAK,QACA,KAAK;;AAEZ;;AAUA,SAASC,KAAK,CAAEC,KAAiB,EAAE;EACjC,MAAM;IAAEC,UAAU;IAAEC,KAAK;IAAE,GAAGC;EAAK,CAAC,GAAGH,KAAK;EAC5C;IAAA,QACmB,iBAAiB;IAAA;EAAA;IAAA,gBAC9BA,KAAK,CAACC,UAAU;MAAA,SAEP,CACL,kBAAkB,EAClBD,KAAK,CAACE,KAAK,CAACE,sBAAsB,CAACC,KAAK,CACzC;MAAA,SACOL,KAAK,CAACE,KAAK,CAACI,qBAAqB,CAACD;IAAK,GAC1CF,IAAI,QAEZ;EAAA;AAGP;AAOA,OAAO,MAAMI,iBAAiB,GAAGnB,YAAY,CAAC;EAC5CoB,QAAQ,EAAEC,OAAO;EACjBC,MAAM,EAAE,CAACD,OAAO,EAAEE,MAAM,EAAEC,MAAM,CAAyC;EACzEC,WAAW,EAAE;IACXC,IAAI,EAAEL,OAAO;IACbM,OAAO,EAAE;EACX,CAAC;EACDC,SAAS,EAAEP,OAAO;EAClBQ,YAAY,EAAE,IAAI;EAClBC,YAAY,EAAE,IAAI;EAClBC,QAAQ,EAAEV,OAAO;EACjBW,gBAAgB,EAAEX,OAAO;EACzBR,UAAU,EAAEQ,OAAO;EACnBY,UAAU,EAAEZ,OAAO;EACnBa,KAAK,EAAE;IACLR,IAAI,EAAE,CAACH,MAAM,EAAEF,OAAO,CAAC;IACvBM,OAAO,EAAE;EACX,CAAC;EACDQ,MAAM,EAAE;IACNT,IAAI,EAAE,CAACU,MAAM,EAAEb,MAAM,CAAC;IACtBI,OAAO,EAAE;EACX,CAAC;EAED,GAAG1D,kBAAkB,EAAE;EACvB,GAAGE,kBAAkB,EAAE;EACvB,GAAGE,aAAa,EAAE;EAClB,GAAGE,yBAAyB,EAAE;EAC9B,GAAGE,uBAAuB,EAAE;EAC5B,GAAGE,cAAc,EAAE;EACnB,GAAGE,mBAAmB;AACxB,CAAC,EAAE,WAAW,CAAC;AAEf,OAAO,MAAMwD,QAAQ,GAAGzC,gBAAgB,EAEpC,CAAC;EACH0C,IAAI,EAAE,UAAU;EAEhBC,UAAU,EAAE;IAAE9C;EAAa,CAAC;EAE5B+C,YAAY,EAAE,KAAK;EAEnB5B,KAAK,EAAE;IACL6B,mBAAmB,EAAEpB,OAAO;IAE5B,GAAGF,iBAAiB;EACtB,CAAC;EAEDuB,KAAK,EAAE;IACL,eAAe,EAAGC,CAAa,IAAK,IAAI;IACxC,mBAAmB,EAAG1B,KAAc,IAAK,IAAI;IAC7C2B,UAAU,EAAE,MAAM;EACpB,CAAC;EAEDC,KAAK,CAAEjC,KAAK,QAA0B;IAAA,IAAxB;MAAEkC,KAAK;MAAEC,KAAK;MAAEC;IAAK,CAAC;IAClC,MAAMC,KAAK,GAAG/D,eAAe,CAAC0B,KAAK,EAAE,YAAY,CAAC;IAClD,MAAMsC,QAAQ,GAAG/C,QAAQ,CAAC;MACxBgD,GAAG,EAAE,MAAMF,KAAK,CAAChC,KAAK;MACtBmC,GAAG,EAAEC,CAAC,IAAI;QACR,IAAI,EAAEA,CAAC,IAAIzC,KAAK,CAACmB,QAAQ,CAAC,EAAEkB,KAAK,CAAChC,KAAK,GAAGoC,CAAC;MAC7C;IACF,CAAC,CAAC;IACF,MAAM;MAAEC;IAAe,CAAC,GAAG/D,WAAW,CAACY,QAAQ,CAAC,MAAMS,KAAK,CAACU,MAAM,IAAIV,KAAK,CAACgB,SAAS,CAAC,CAAC;IACvF,MAAM;MAAE2B;IAAa,CAAC,GAAG3E,YAAY,CAACgC,KAAK,CAAC;IAC5C,MAAM;MAAE4C,UAAU;MAAEC;IAAM,CAAC,GAAGrE,MAAM,EAAE;IACtC,MAAM;MAAEsE,UAAU;MAAEC;IAAa,CAAC,GAAGrF,OAAO,CAACsC,KAAK,EAAEsC,QAAQ,CAAC;IAC7D,MAAMU,UAAU,GAAG3E,kBAAkB,CAACkB,QAAQ,CAAC,MAAM;MACnD,OAAO,OAAOS,KAAK,CAACsB,KAAK,KAAK,QAAQ,GAAGtB,KAAK,CAACsB,KAAK,GAAG,IAAI;IAC7D,CAAC,CAAC,CAAC;IACH,MAAM;MAAE2B,SAAS;MAAEC,QAAQ;MAAEC;IAAY,CAAC,GAAGzE,QAAQ,CAAC4D,QAAQ,EAAE1C,KAAK,CAACI,KAAK,EAAE,QAAQ,CAAC,EAAEA,KAAK,CAAC6B,mBAAmB,CAAC;IAClH,MAAM;MAAEuB,WAAW;MAAEC,YAAY;MAAEC,eAAe;MAAEC,aAAa;MAAEC;IAAY,CAAC,GAAGlG,YAAY,CAAC0C,KAAK,EAAE;MAAEsC,QAAQ;MAAEmB,KAAK,EAAEP;IAAS,CAAC,CAAC;IACrI,MAAM;MAAEQ;IAAgB,CAAC,GAAGlG,YAAY,CAACwC,KAAK,CAAC;IAC/C,MAAM2D,SAAS,GAAGpF,YAAY,EAAE;IAChC,MAAM;MAAEqF;IAAQ,CAAC,GAAGnF,UAAU,EAAE;IAEhCqB,KAAK,CAAC,MAAME,KAAK,CAACmB,QAAQ,EAAEsB,CAAC,IAAI;MAC/B,IAAIA,CAAC,EAAEH,QAAQ,CAACjC,KAAK,GAAG,KAAK;IAC/B,CAAC,CAAC;IAEF,MAAMwD,IAAI,GAAGpE,GAAG,EAAe;IAC/B,MAAMqE,SAAS,GAAGrE,GAAG,EAAe;IACpC,MAAM;MAAEsE,aAAa;MAAEC;IAAe,CAAC,GAAGpG,qBAAqB,CAACoC,KAAK,EAAE;MACrE6C,KAAK;MACLiB,SAAS;MACTV,WAAW;MACXd;IACF,CAAC,CAAC;IACFxE,mBAAmB,CAACkC,KAAK,EAAE;MACzB6D,IAAI;MACJC,SAAS;MACTV,WAAW;MACXd,QAAQ;MACR0B;IACF,CAAC,CAAC;IAEF,SAASC,cAAc,CAAElC,CAAa,EAAE;MACtCK,IAAI,CAAC,eAAe,EAAEL,CAAC,CAAC;MAExB,IAAI,CAAC/B,KAAK,CAACqB,UAAU,EAAEiB,QAAQ,CAACjC,KAAK,GAAG,KAAK,MACxC6D,YAAY,EAAE;IACrB;IAEA,SAASC,gBAAgB,GAAI;MAC3B,OAAO7B,QAAQ,CAACjC,KAAK,IAAI4C,SAAS,CAAC5C,KAAK;IAC1C;IAEAnB,UAAU,IAAIY,KAAK,CAACwC,QAAQ,EAAE8B,GAAG,IAAI;MACnC,IAAIA,GAAG,EAAE;QACPC,MAAM,CAACC,gBAAgB,CAAC,SAAS,EAAEC,SAAS,CAAC;MAC/C,CAAC,MAAM;QACLF,MAAM,CAACG,mBAAmB,CAAC,SAAS,EAAED,SAAS,CAAC;MAClD;IACF,CAAC,EAAE;MAAEE,SAAS,EAAE;IAAK,CAAC,CAAC;IAEvB,SAASF,SAAS,CAAExC,CAAgB,EAAE;MACpC,IAAIA,CAAC,CAAC2C,GAAG,KAAK,QAAQ,IAAIzB,SAAS,CAAC5C,KAAK,EAAE;QACzC,IAAI,CAACL,KAAK,CAACqB,UAAU,EAAE;UACrBiB,QAAQ,CAACjC,KAAK,GAAG,KAAK;QACxB,CAAC,MAAM6D,YAAY,EAAE;MACvB;IACF;IAEA,MAAMS,MAAM,GAAGvG,SAAS,EAAE;IAC1BQ,cAAc,CAAC,MAAMoB,KAAK,CAACa,WAAW,EAAE,MAAM;MAC5C1C,aAAa,CAACwG,MAAM,EAAEC,IAAI,IAAI;QAC5B,IAAI3B,SAAS,CAAC5C,KAAK,IAAIiC,QAAQ,CAACjC,KAAK,EAAE;UACrCuE,IAAI,CAAC,KAAK,CAAC;UACX,IAAI,CAAC5E,KAAK,CAACqB,UAAU,EAAEiB,QAAQ,CAACjC,KAAK,GAAG,KAAK,MACxC6D,YAAY,EAAE;QACrB,CAAC,MAAM;UACLU,IAAI,EAAE;QACR;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAMC,GAAG,GAAGpF,GAAG,EAAU;IACzBK,KAAK,CAAC,MAAMwC,QAAQ,CAACjC,KAAK,KAAKL,KAAK,CAACQ,QAAQ,IAAIR,KAAK,CAACgB,SAAS,CAAC,IAAI0B,cAAc,CAACrC,KAAK,IAAI,IAAI,EAAE+D,GAAG,IAAI;MACxG,IAAIA,GAAG,EAAE;QACP,MAAMU,YAAY,GAAG7F,eAAe,CAAC4E,IAAI,CAACxD,KAAK,CAAC;QAChD,IAAIyE,YAAY,IAAIA,YAAY,KAAKC,QAAQ,CAACC,gBAAgB,EAAE;UAC9DH,GAAG,CAACxE,KAAK,GAAGyE,YAAY,CAACG,SAAS;QACpC;MACF;IACF,CAAC,CAAC;;IAEF;IACA,SAASf,YAAY,GAAI;MACvB,IAAIlE,KAAK,CAACoB,gBAAgB,EAAE;MAE5B0C,SAAS,CAACzD,KAAK,IAAIvB,OAAO,CAACgF,SAAS,CAACzD,KAAK,EAAE,CAC1C;QAAE6E,eAAe,EAAE;MAAS,CAAC,EAC7B;QAAEC,SAAS,EAAE;MAAc,CAAC,EAC5B;QAAED,eAAe,EAAE;MAAS,CAAC,CAC9B,EAAE;QACDE,QAAQ,EAAE,GAAG;QACbC,MAAM,EAAEhG;MACV,CAAC,CAAC;IACJ;IAEAC,SAAS,CAAC;MAAA;MAAA,0DAEJ4C,KAAK,CAACoD,SAAS,qBAAf,sBAAApD,KAAK,EAAa;QAClBI,QAAQ,EAAEA,QAAQ,CAACjC,KAAK;QACxBL,KAAK,EAAER,UAAU,CAAC;UAChBC,GAAG,EAAE4D;QACP,CAAC,EAAE1D,UAAU,CAAC2D,eAAe,CAACjD,KAAK,CAAC,EAAEL,KAAK,CAACuF,cAAc;MAC5D,CAAC,CAAC,EAEA5B,SAAS,CAACtD,KAAK;QAAA,YAEF,CAACqC,cAAc,CAACrC,KAAK;QAAA,MAC3BqC,cAAc,CAACrC;MAAK;QAAA,gBAEvByC,UAAU,CAACzC,KAAK;UAAA,SAEP,CACL,WAAW,EACX;YACE,qBAAqB,EAAEL,KAAK,CAACQ,QAAQ,IAAIR,KAAK,CAACgB,SAAS;YACxD,mBAAmB,EAAEsB,QAAQ,CAACjC,KAAK;YACnC,sBAAsB,EAAEL,KAAK,CAACgB;UAChC,CAAC,EACD2B,YAAY,CAACtC,KAAK,EAClBuC,UAAU,CAACvC,KAAK,CACjB;UAAA,SACM,CAAC8C,WAAW,CAAC9C,KAAK,EAAE;YAAEwE,GAAG,EAAE9F,aAAa,CAAC8F,GAAG,CAACxE,KAAK;UAAE,CAAC,CAAC;UAAA,OACvDwD;QAAI,GACLD,OAAO,EACPzB,KAAK;UAAA,SAGAa,UAAU;UAAA,cACLV,QAAQ,CAACjC,KAAK,IAAI,CAAC,CAACL,KAAK,CAACsB;QAAK,GACvC3B,UAAU,CAAC6D,WAAW,CAACnD,KAAK,CAAC;UAAA;UAAA;UAAA,cAKrBL,KAAK,CAACwF,UAAU;UAAA,UACpBpC,WAAW,CAAC/C,KAAK;UAAA,gBACZ,MAAM;YAAE0C,YAAY,EAAE;YAAEX,IAAI,CAAC,YAAY,CAAC;UAAC;QAAC;UAAA;YAAA,OAGlD0B,SAAS;YAAA,SAGR,CACL,oBAAoB,EACpB9D,KAAK,CAACiB,YAAY,CACnB;YAAA,SACM,CACLyC,eAAe,CAACrD,KAAK,EACrB0D,aAAa,CAAC1D,KAAK;UACpB,GACIV,UAAU,CAAC4D,aAAa,CAAClD,KAAK,CAAC,EAC/BL,KAAK,CAACkB,YAAY,sBAErBgB,KAAK,CAACnB,OAAO,qBAAb,oBAAAmB,KAAK,EAAW;YAAEI;UAAS,CAAC,CAAC,cAbtBA,QAAQ,CAACjC,KAAK,wCACN;YAAEoF,OAAO,EAAExB,cAAc;YAAEE,gBAAgB;YAAEuB,OAAO,EAAE,MAAM,CAACtC,WAAW,CAAC/C,KAAK;UAAE,CAAC;QAAA,IAgBzG;MAAA,EAEJ;IAAA,CAEJ,CAAC;IAEF,OAAO;MACL+C,WAAW;MACXc,YAAY;MACZJ,SAAS;MACTb,SAAS;MACTC,QAAQ;MACRc;IACF,CAAC;EACH;AACF,CAAC,CAAC;AAIF,OAAO,SAAS2B,mBAAmB,CAAE3F,KAAsE,EAAE;EAC3G,OAAOb,IAAI,CAACa,KAAK,EAAEY,MAAM,CAACgF,IAAI,CAACnE,QAAQ,CAACzB,KAAK,CAAC,CAAQ;AACxD"}
1
+ {"version":3,"file":"VOverlay.mjs","names":["makeActivatorProps","useActivator","makeDimensionProps","useDimension","makeLazyProps","useLazy","makeLocationStrategyProps","useLocationStrategies","makeScrollStrategyProps","useScrollStrategies","makeThemeProps","provideTheme","makeTransitionProps","MaybeTransition","useBackButton","useRouter","useBackgroundColor","useProxiedModel","useHydration","useRtl","useScopeId","useStack","useTeleport","useToggleScope","ClickOutside","animate","convertToUnit","genericComponent","getScrollParent","IN_BROWSER","pick","propsFactory","standardEasing","useRender","computed","mergeProps","ref","Teleport","toHandlers","toRef","Transition","watch","Scrim","props","modelValue","color","rest","backgroundColorClasses","value","backgroundColorStyles","makeVOverlayProps","absolute","Boolean","attach","String","Object","closeOnBack","type","default","contained","contentClass","contentProps","disabled","noClickAnimation","persistent","scrim","zIndex","Number","VOverlay","name","directives","inheritAttrs","_disableGlobalStack","emits","e","afterLeave","setup","slots","attrs","emit","model","isActive","get","set","v","teleportTarget","themeClasses","rtlClasses","isRtl","hasContent","onAfterLeave","scrimColor","globalTop","localTop","stackStyles","activatorEl","activatorRef","activatorEvents","contentEvents","scrimEvents","isTop","dimensionStyles","isMounted","scopeId","root","contentEl","contentStyles","updateLocation","onClickOutside","animateClick","closeConditional","val","window","addEventListener","onKeydown","removeEventListener","immediate","key","router","next","top","scrollParent","document","scrollingElement","scrollTop","transformOrigin","transform","duration","easing","activator","activatorProps","transition","handler","include","filterVOverlayProps","keys"],"sources":["../../../src/components/VOverlay/VOverlay.tsx"],"sourcesContent":["// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useHydration } from '@/composables/hydration'\nimport { useRtl } from '@/composables/locale'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useStack } from '@/composables/stack'\nimport { useTeleport } from '@/composables/teleport'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Directives\nimport { ClickOutside } from '@/directives/click-outside'\n\n// Utilities\nimport {\n animate,\n convertToUnit,\n genericComponent,\n getScrollParent,\n IN_BROWSER,\n pick,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\nimport {\n computed,\n mergeProps,\n ref,\n Teleport,\n toHandlers,\n toRef,\n Transition,\n watch,\n} from 'vue'\n\n// Types\nimport type { BackgroundColorData } from '@/composables/color'\nimport type { MakeSlots } from '@/util'\nimport type { ExtractPropTypes, PropType, Ref } from 'vue'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n <Transition name=\"fade-transition\" appear>\n { props.modelValue && (\n <div\n class={[\n 'v-overlay__scrim',\n props.color.backgroundColorClasses.value,\n ]}\n style={ props.color.backgroundColorStyles.value }\n { ...rest }\n />\n )}\n </Transition>\n )\n}\n\nexport type OverlaySlots = MakeSlots<{\n default: [{ isActive: Ref<boolean> }]\n activator: [{ isActive: boolean, props: Record<string, any> }]\n}>\n\nexport const makeVOverlayProps = propsFactory({\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType<boolean | string | Element>,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [String, Boolean],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeDimensionProps(),\n ...makeLazyProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n}, 'v-overlay')\n\nexport const VOverlay = genericComponent<OverlaySlots>()({\n name: 'VOverlay',\n\n directives: { ClickOutside },\n\n inheritAttrs: false,\n\n props: {\n _disableGlobalStack: Boolean,\n\n ...makeVOverlayProps(),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { teleportTarget } = useTeleport(computed(() => props.attach || props.contained))\n const { themeClasses } = provideTheme(props)\n const { rtlClasses, isRtl } = useRtl()\n const { hasContent, onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const { globalTop, localTop, stackStyles } = useStack(isActive, toRef(props, 'zIndex'), props._disableGlobalStack)\n const { activatorEl, activatorRef, activatorEvents, contentEvents, scrimEvents } = useActivator(props, { isActive, isTop: localTop })\n const { dimensionStyles } = useDimension(props)\n const isMounted = useHydration()\n const { scopeId } = useScopeId()\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const root = ref<HTMLElement>()\n const contentEl = ref<HTMLElement>()\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n isRtl,\n contentEl,\n activatorEl,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n activatorEl,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional () {\n return isActive.value && globalTop.value\n }\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && globalTop.value) {\n if (!props.persistent) {\n isActive.value = false\n } else animateClick()\n }\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (globalTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref<number>()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value && animate(contentEl.value, [\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n props: mergeProps({\n ref: activatorRef,\n }, toHandlers(activatorEvents.value), props.activatorProps),\n }) }\n\n { isMounted.value && (\n <Teleport\n disabled={ !teleportTarget.value }\n to={ teleportTarget.value }\n >\n { hasContent.value && (\n <div\n class={[\n 'v-overlay',\n {\n 'v-overlay--absolute': props.absolute || props.contained,\n 'v-overlay--active': isActive.value,\n 'v-overlay--contained': props.contained,\n },\n themeClasses.value,\n rtlClasses.value,\n ]}\n style={[stackStyles.value, { top: convertToUnit(top.value) }]}\n ref={ root }\n { ...scopeId }\n { ...attrs }\n >\n <Scrim\n color={ scrimColor }\n modelValue={ isActive.value && !!props.scrim }\n { ...toHandlers(scrimEvents.value) }\n />\n <MaybeTransition\n appear\n persisted\n transition={ props.transition }\n target={ activatorEl.value }\n onAfterLeave={() => { onAfterLeave(); emit('afterLeave') }}\n >\n <div\n ref={ contentEl }\n v-show={ isActive.value }\n v-click-outside={{ handler: onClickOutside, closeConditional, include: () => [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...toHandlers(contentEvents.value) }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n </div>\n </MaybeTransition>\n </div>\n )}\n </Teleport>\n )}\n </>\n ))\n\n return {\n activatorEl,\n animateClick,\n contentEl,\n globalTop,\n localTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType<typeof VOverlay>\n\nexport function filterVOverlayProps (props: Partial<ExtractPropTypes<ReturnType<typeof makeVOverlayProps>>>) {\n return pick(props, Object.keys(VOverlay.props) as any)\n}\n"],"mappings":"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"}