@vuetify/nightly 3.0.0-beta.3 → 3.0.0-beta.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 (441) hide show
  1. package/CHANGELOG.md +43 -2
  2. package/dist/_component-variables.sass +61 -0
  3. package/dist/json/attributes.json +261 -205
  4. package/dist/json/importMap.json +175 -219
  5. package/dist/json/tags.json +74 -104
  6. package/dist/json/web-types.json +880 -835
  7. package/dist/vuetify.css +597 -407
  8. package/dist/vuetify.d.ts +6770 -2144
  9. package/dist/vuetify.esm.js +9075 -8454
  10. package/dist/vuetify.esm.js.map +1 -1
  11. package/dist/vuetify.js +9074 -8453
  12. package/dist/vuetify.js.map +1 -1
  13. package/dist/vuetify.min.css +2 -2
  14. package/dist/vuetify.min.js +1078 -1040
  15. package/dist/vuetify.min.js.map +1 -1
  16. package/lib/blueprints/index.mjs +4 -0
  17. package/lib/blueprints/index.mjs.map +1 -0
  18. package/lib/blueprints/md1.mjs +63 -0
  19. package/lib/blueprints/md1.mjs.map +1 -0
  20. package/lib/blueprints/md2.mjs +60 -0
  21. package/lib/blueprints/md2.mjs.map +1 -0
  22. package/lib/blueprints/md3.mjs +74 -0
  23. package/lib/blueprints/md3.mjs.map +1 -0
  24. package/lib/components/VAlert/VAlert.css +5 -5
  25. package/lib/components/VAlert/VAlert.mjs +8 -2
  26. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  27. package/lib/components/VAlert/VAlert.sass +0 -2
  28. package/lib/components/VApp/VApp.css +2 -5
  29. package/lib/components/VApp/VApp.mjs +3 -4
  30. package/lib/components/VApp/VApp.mjs.map +1 -1
  31. package/lib/components/VApp/VApp.sass +11 -12
  32. package/lib/components/VApp/variables.scss +6 -0
  33. package/lib/components/VAppBar/VAppBar.mjs +4 -3
  34. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  35. package/lib/components/VAppBar/VAppBar.sass +0 -1
  36. package/lib/components/VAppBar/VAppBarNavIcon.mjs +7 -12
  37. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  38. package/lib/components/VAppBar/VAppBarTitle.mjs +4 -3
  39. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  40. package/lib/components/VAppBar/_variables.scss +2 -0
  41. package/lib/components/VAutocomplete/VAutocomplete.mjs +54 -21
  42. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  43. package/lib/components/VAutocomplete/VAutocomplete.sass +0 -2
  44. package/lib/components/VAvatar/VAvatar.css +1 -1
  45. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  46. package/lib/components/VAvatar/VAvatar.sass +1 -2
  47. package/lib/components/VAvatar/_mixins.scss +0 -1
  48. package/lib/components/VBadge/VBadge.mjs +8 -7
  49. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  50. package/lib/components/VBadge/VBadge.sass +0 -1
  51. package/lib/components/VBadge/_variables.scss +2 -2
  52. package/lib/components/VBanner/VBanner.css +7 -7
  53. package/lib/components/VBanner/VBanner.mjs +24 -17
  54. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  55. package/lib/components/VBanner/VBanner.sass +6 -8
  56. package/lib/components/VBanner/VBannerActions.mjs +1 -1
  57. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  58. package/lib/components/VBanner/index.mjs +0 -2
  59. package/lib/components/VBanner/index.mjs.map +1 -1
  60. package/lib/components/VBottomNavigation/VBottomNavigation.css +4 -11
  61. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +4 -3
  62. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  63. package/lib/components/VBottomNavigation/VBottomNavigation.sass +5 -13
  64. package/lib/components/VBottomNavigation/_variables.scss +7 -8
  65. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +13 -6
  66. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +30 -19
  67. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  68. package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +8 -4
  69. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +5 -8
  70. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  71. package/lib/components/VBreadcrumbs/_variables.scss +2 -1
  72. package/lib/components/VBtn/VBtn.css +72 -15
  73. package/lib/components/VBtn/VBtn.mjs +70 -27
  74. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  75. package/lib/components/VBtn/VBtn.sass +70 -13
  76. package/lib/components/VBtn/_variables.scss +4 -1
  77. package/lib/components/VBtnGroup/VBtnGroup.sass +0 -1
  78. package/lib/components/VBtnGroup/_variables.scss +2 -0
  79. package/lib/components/VBtnToggle/VBtnToggle.sass +0 -1
  80. package/lib/components/VBtnToggle/_variables.scss +1 -0
  81. package/lib/components/VCard/VCard.css +86 -69
  82. package/lib/components/VCard/VCard.mjs +52 -66
  83. package/lib/components/VCard/VCard.mjs.map +1 -1
  84. package/lib/components/VCard/VCard.sass +74 -62
  85. package/lib/components/VCard/VCardActions.mjs +1 -1
  86. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  87. package/lib/components/VCard/VCardItem.mjs +88 -0
  88. package/lib/components/VCard/VCardItem.mjs.map +1 -0
  89. package/lib/components/VCard/_variables.scss +40 -24
  90. package/lib/components/VCard/index.mjs +1 -5
  91. package/lib/components/VCard/index.mjs.map +1 -1
  92. package/lib/components/VCarousel/VCarousel.mjs +5 -4
  93. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  94. package/lib/components/VCarousel/VCarousel.sass +0 -1
  95. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  96. package/lib/components/VCarousel/_variables.scss +1 -0
  97. package/lib/components/VCheckbox/VCheckbox.mjs +13 -46
  98. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  99. package/lib/components/VCheckbox/VCheckbox.sass +0 -1
  100. package/lib/components/VCheckbox/VCheckboxBtn.mjs +67 -0
  101. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -0
  102. package/lib/components/VCheckbox/index.mjs +1 -0
  103. package/lib/components/VCheckbox/index.mjs.map +1 -1
  104. package/lib/components/VChip/VChip.css +142 -65
  105. package/lib/components/VChip/VChip.mjs +77 -38
  106. package/lib/components/VChip/VChip.mjs.map +1 -1
  107. package/lib/components/VChip/VChip.sass +6 -1
  108. package/lib/components/VChip/_mixins.scss +26 -6
  109. package/lib/components/VChip/_variables.scss +1 -5
  110. package/lib/components/VChipGroup/VChipGroup.mjs +5 -4
  111. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  112. package/lib/components/VChipGroup/VChipGroup.sass +1 -1
  113. package/lib/components/VChipGroup/_variables.scss +1 -1
  114. package/lib/components/VCode/VCode.sass +1 -2
  115. package/lib/components/VCode/_variables.scss +1 -1
  116. package/lib/components/VColorPicker/VColorPicker.mjs +16 -10
  117. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  118. package/lib/components/VColorPicker/VColorPicker.sass +0 -1
  119. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -4
  120. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  121. package/lib/components/VColorPicker/VColorPickerCanvas.sass +0 -1
  122. package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -3
  123. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  124. package/lib/components/VColorPicker/VColorPickerEdit.sass +0 -1
  125. package/lib/components/VColorPicker/VColorPickerPreview.mjs +4 -3
  126. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  127. package/lib/components/VColorPicker/VColorPickerPreview.sass +0 -1
  128. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +6 -5
  129. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  130. package/lib/components/VColorPicker/VColorPickerSwatches.sass +0 -1
  131. package/lib/components/VColorPicker/_variables.scss +17 -10
  132. package/lib/components/VCombobox/VCombobox.mjs +52 -36
  133. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  134. package/lib/components/VCombobox/VCombobox.sass +0 -2
  135. package/lib/components/VCounter/VCounter.mjs +16 -16
  136. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  137. package/lib/components/VCounter/VCounter.sass +1 -2
  138. package/lib/components/VCounter/_variables.scss +2 -1
  139. package/lib/components/VDialog/VDialog.css +2 -5
  140. package/lib/components/VDialog/VDialog.mjs +25 -25
  141. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  142. package/lib/components/VDialog/VDialog.sass +1 -5
  143. package/lib/components/VDialog/_variables.scss +0 -1
  144. package/lib/components/VDivider/VDivider.mjs +16 -17
  145. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  146. package/lib/components/VDivider/VDivider.sass +0 -1
  147. package/lib/components/VDivider/_variables.scss +3 -1
  148. package/lib/components/VExpansionPanel/VExpansionPanel.css +1 -0
  149. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +9 -4
  150. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  151. package/lib/components/VExpansionPanel/VExpansionPanel.sass +1 -1
  152. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +7 -7
  153. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  154. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  155. package/lib/components/VExpansionPanel/_variables.scss +15 -10
  156. package/lib/components/VField/VField.css +11 -11
  157. package/lib/components/VField/VField.mjs +19 -12
  158. package/lib/components/VField/VField.mjs.map +1 -1
  159. package/lib/components/VField/VField.sass +8 -10
  160. package/lib/components/VField/VFieldLabel.mjs +8 -9
  161. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  162. package/lib/components/VField/_variables.scss +3 -3
  163. package/lib/components/VFileInput/VFileInput.css +3 -3
  164. package/lib/components/VFileInput/VFileInput.mjs +12 -7
  165. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  166. package/lib/components/VFileInput/VFileInput.sass +3 -4
  167. package/lib/components/VFooter/VFooter.mjs +4 -3
  168. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  169. package/lib/components/VFooter/VFooter.sass +0 -1
  170. package/lib/components/VFooter/_variables.scss +2 -1
  171. package/lib/components/VForm/VForm.mjs +3 -3
  172. package/lib/components/VForm/VForm.mjs.map +1 -1
  173. package/lib/components/VGrid/VCol.mjs.map +1 -1
  174. package/lib/components/VGrid/VContainer.mjs +4 -3
  175. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  176. package/lib/components/VGrid/VRow.mjs.map +1 -1
  177. package/lib/components/VIcon/VIcon.css +0 -8
  178. package/lib/components/VIcon/VIcon.mjs +20 -21
  179. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  180. package/lib/components/VIcon/VIcon.sass +0 -9
  181. package/lib/components/VIcon/_variables.scss +2 -5
  182. package/lib/components/VIcon/index.mjs.map +1 -1
  183. package/lib/components/VImg/VImg.sass +0 -1
  184. package/lib/components/VInput/VInput.mjs +13 -9
  185. package/lib/components/VInput/VInput.mjs.map +1 -1
  186. package/lib/components/VInput/VInput.sass +0 -1
  187. package/lib/components/VItemGroup/VItem.mjs +3 -0
  188. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  189. package/lib/components/VItemGroup/VItemGroup.sass +0 -1
  190. package/lib/components/VKbd/VKbd.sass +0 -1
  191. package/lib/components/VKbd/_variables.scss +1 -1
  192. package/lib/components/VLabel/VLabel.mjs +4 -3
  193. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  194. package/lib/components/VLabel/VLabel.sass +0 -1
  195. package/lib/components/VLabel/_variables.scss +1 -0
  196. package/lib/components/VLazy/VLazy.mjs +5 -3
  197. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  198. package/lib/components/VList/VList.css +2 -2
  199. package/lib/components/VList/VList.mjs +16 -18
  200. package/lib/components/VList/VList.mjs.map +1 -1
  201. package/lib/components/VList/VList.sass +1 -2
  202. package/lib/components/VList/VListChildren.mjs +7 -6
  203. package/lib/components/VList/VListChildren.mjs.map +1 -1
  204. package/lib/components/VList/VListGroup.mjs +45 -31
  205. package/lib/components/VList/VListGroup.mjs.map +1 -1
  206. package/lib/components/VList/VListItem.css +84 -58
  207. package/lib/components/VList/VListItem.mjs +78 -45
  208. package/lib/components/VList/VListItem.mjs.map +1 -1
  209. package/lib/components/VList/VListItem.sass +68 -40
  210. package/lib/components/VList/VListItemAction.mjs +8 -9
  211. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  212. package/lib/components/VList/VListItemMedia.mjs +4 -3
  213. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  214. package/lib/components/VList/VListSubheader.mjs +4 -3
  215. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  216. package/lib/components/VList/_variables.scss +11 -5
  217. package/lib/components/VList/index.mjs +2 -5
  218. package/lib/components/VList/index.mjs.map +1 -1
  219. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -3
  220. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  221. package/lib/components/VMain/VMain.mjs +4 -3
  222. package/lib/components/VMain/VMain.mjs.map +1 -1
  223. package/lib/components/VMain/VMain.sass +0 -1
  224. package/lib/components/VMain/_variables.scss +1 -1
  225. package/lib/components/VMenu/VMenu.mjs +5 -5
  226. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  227. package/lib/components/VMenu/VMenu.sass +0 -1
  228. package/lib/components/VMessages/VMessages.mjs +5 -3
  229. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  230. package/lib/components/VMessages/VMessages.sass +0 -1
  231. package/lib/components/VMessages/_variables.scss +1 -1
  232. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +10 -4
  233. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  234. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +0 -1
  235. package/lib/components/VNavigationDrawer/_variables.scss +2 -1
  236. package/lib/components/VNavigationDrawer/touch.mjs +5 -2
  237. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  238. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  239. package/lib/components/VOverlay/VOverlay.mjs +10 -8
  240. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  241. package/lib/components/VOverlay/VOverlay.sass +0 -1
  242. package/lib/components/VOverlay/locationStrategies.mjs +267 -78
  243. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  244. package/lib/components/VOverlay/useActivator.mjs +4 -3
  245. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  246. package/lib/components/VOverlay/util/point.mjs +3 -3
  247. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  248. package/lib/components/VPagination/VPagination.mjs +41 -23
  249. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  250. package/lib/components/VPagination/VPagination.sass +0 -1
  251. package/lib/components/VParallax/VParallax.mjs +5 -5
  252. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  253. package/lib/components/VProgressCircular/VProgressCircular.mjs +6 -5
  254. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  255. package/lib/components/VProgressCircular/VProgressCircular.sass +0 -1
  256. package/lib/components/VProgressCircular/_variables.scss +2 -0
  257. package/lib/components/VProgressLinear/VProgressLinear.mjs +5 -3
  258. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  259. package/lib/components/VProgressLinear/VProgressLinear.sass +0 -1
  260. package/lib/components/VProgressLinear/_variables.scss +1 -0
  261. package/lib/components/VRadioGroup/VRadioGroup.mjs +6 -3
  262. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  263. package/lib/components/VRadioGroup/VRadioGroup.sass +5 -3
  264. package/lib/components/VRadioGroup/_variables.scss +3 -4
  265. package/lib/components/VRangeSlider/VRangeSlider.mjs +12 -13
  266. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  267. package/lib/components/VRating/VRating.mjs +6 -5
  268. package/lib/components/VRating/VRating.mjs.map +1 -1
  269. package/lib/components/VRating/VRating.sass +2 -1
  270. package/lib/components/VResponsive/VResponsive.mjs +7 -6
  271. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  272. package/lib/components/VSelect/VSelect.mjs +61 -22
  273. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  274. package/lib/components/VSelect/VSelect.sass +0 -2
  275. package/lib/components/VSelectionControl/VSelectionControl.css +1 -0
  276. package/lib/components/VSelectionControl/VSelectionControl.mjs +12 -10
  277. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  278. package/lib/components/VSelectionControl/VSelectionControl.sass +1 -1
  279. package/lib/components/VSelectionControl/_variables.scss +1 -0
  280. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  281. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  282. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +1 -6
  283. package/lib/components/VSelectionControlGroup/_variables.scss +1 -4
  284. package/lib/components/VSheet/VSheet.mjs +3 -3
  285. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  286. package/lib/components/VSheet/VSheet.sass +0 -1
  287. package/lib/components/VSheet/_variables.scss +3 -2
  288. package/lib/components/VSlideGroup/VSlideGroup.mjs +47 -49
  289. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  290. package/lib/components/VSlideGroup/VSlideGroup.sass +0 -1
  291. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +7 -3
  292. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  293. package/lib/components/VSlideGroup/_variables.scss +0 -5
  294. package/lib/components/VSlideGroup/index.mjs +2 -2
  295. package/lib/components/VSlideGroup/index.mjs.map +1 -1
  296. package/lib/components/VSlider/VSlider.mjs +7 -9
  297. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  298. package/lib/components/VSlider/VSlider.sass +0 -2
  299. package/lib/components/VSlider/VSliderThumb.mjs +6 -5
  300. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  301. package/lib/components/VSlider/VSliderThumb.sass +0 -2
  302. package/lib/components/VSlider/VSliderTrack.mjs +11 -10
  303. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  304. package/lib/components/VSlider/VSliderTrack.sass +0 -2
  305. package/lib/components/VSlider/slider.mjs +4 -4
  306. package/lib/components/VSlider/slider.mjs.map +1 -1
  307. package/lib/components/VSnackbar/VSnackbar.css +5 -5
  308. package/lib/components/VSnackbar/VSnackbar.mjs +49 -49
  309. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  310. package/lib/components/VSnackbar/VSnackbar.sass +0 -1
  311. package/lib/components/VSnackbar/_variables.scss +2 -0
  312. package/lib/components/VSwitch/VSwitch.css +7 -0
  313. package/lib/components/VSwitch/VSwitch.mjs +8 -2
  314. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  315. package/lib/components/VSwitch/VSwitch.sass +6 -1
  316. package/lib/components/VSwitch/_variables.scss +1 -0
  317. package/lib/components/VSystemBar/VSystemBar.mjs +5 -13
  318. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  319. package/lib/components/VSystemBar/VSystemBar.sass +0 -1
  320. package/lib/components/VSystemBar/_variables.scss +2 -1
  321. package/lib/components/VTable/VTable.css +1 -0
  322. package/lib/components/VTable/VTable.mjs +9 -8
  323. package/lib/components/VTable/VTable.mjs.map +1 -1
  324. package/lib/components/VTable/VTable.sass +1 -1
  325. package/lib/components/VTable/_variables.scss +2 -0
  326. package/lib/components/VTabs/VTab.css +3 -1
  327. package/lib/components/VTabs/VTab.mjs +4 -4
  328. package/lib/components/VTabs/VTab.mjs.map +1 -1
  329. package/lib/components/VTabs/VTab.sass +4 -2
  330. package/lib/components/VTabs/VTabs.mjs +15 -12
  331. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  332. package/lib/components/VTabs/VTabs.sass +0 -1
  333. package/lib/components/VTabs/_variables.scss +2 -0
  334. package/lib/components/VTextField/VTextField.mjs +25 -13
  335. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  336. package/lib/components/VTextField/VTextField.sass +0 -1
  337. package/lib/components/VTextField/_variables.scss +1 -1
  338. package/lib/components/VTextarea/VTextarea.mjs +22 -12
  339. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  340. package/lib/components/VTextarea/VTextarea.sass +0 -2
  341. package/lib/components/VTextarea/_variables.scss +1 -0
  342. package/lib/components/VTimeline/VTimeline.mjs +24 -25
  343. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  344. package/lib/components/VTimeline/VTimeline.sass +3 -3
  345. package/lib/components/VTimeline/VTimelineDivider.mjs +41 -38
  346. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  347. package/lib/components/VTimeline/VTimelineItem.mjs +10 -11
  348. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  349. package/lib/components/VTimeline/_variables.scss +11 -6
  350. package/lib/components/VToolbar/VToolbar.css +15 -6
  351. package/lib/components/VToolbar/VToolbar.mjs +9 -9
  352. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  353. package/lib/components/VToolbar/VToolbar.sass +15 -7
  354. package/lib/components/VToolbar/VToolbarItems.mjs +12 -8
  355. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  356. package/lib/components/VToolbar/_variables.scss +6 -2
  357. package/lib/components/VTooltip/VTooltip.mjs +41 -39
  358. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  359. package/lib/components/VTooltip/VTooltip.sass +0 -1
  360. package/lib/components/VTooltip/_variables.scss +1 -0
  361. package/lib/components/VWindow/VWindow.mjs +4 -4
  362. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  363. package/lib/components/VWindow/VWindow.sass +0 -2
  364. package/lib/components/VWindow/VWindowItem.mjs +21 -11
  365. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  366. package/lib/components/VWindow/_variables.scss +1 -0
  367. package/lib/components/index.d.ts +7316 -2666
  368. package/lib/components/transitions/dialog-transition.mjs +3 -0
  369. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  370. package/lib/components/transitions/index.mjs +0 -5
  371. package/lib/components/transitions/index.mjs.map +1 -1
  372. package/lib/composables/border.mjs +5 -6
  373. package/lib/composables/border.mjs.map +1 -1
  374. package/lib/composables/display.mjs +13 -11
  375. package/lib/composables/display.mjs.map +1 -1
  376. package/lib/composables/form.mjs +6 -6
  377. package/lib/composables/form.mjs.map +1 -1
  378. package/lib/composables/group.mjs.map +1 -1
  379. package/lib/composables/items.mjs +2 -2
  380. package/lib/composables/items.mjs.map +1 -1
  381. package/lib/composables/location.mjs +4 -8
  382. package/lib/composables/location.mjs.map +1 -1
  383. package/lib/composables/proxiedModel.mjs +2 -1
  384. package/lib/composables/proxiedModel.mjs.map +1 -1
  385. package/lib/composables/size.mjs +2 -2
  386. package/lib/composables/size.mjs.map +1 -1
  387. package/lib/composables/ssrBoot.mjs +3 -2
  388. package/lib/composables/ssrBoot.mjs.map +1 -1
  389. package/lib/composables/stack.mjs +7 -7
  390. package/lib/composables/stack.mjs.map +1 -1
  391. package/lib/composables/theme.mjs +15 -6
  392. package/lib/composables/theme.mjs.map +1 -1
  393. package/lib/composables/validation.mjs +15 -8
  394. package/lib/composables/validation.mjs.map +1 -1
  395. package/lib/composables/variant.mjs +7 -5
  396. package/lib/composables/variant.mjs.map +1 -1
  397. package/lib/directives/ripple/VRipple.sass +0 -1
  398. package/lib/entry-bundler.mjs +1 -1
  399. package/lib/framework.mjs +29 -7
  400. package/lib/framework.mjs.map +1 -1
  401. package/lib/index.d.ts +68 -70
  402. package/lib/styles/generic/_transitions.scss +13 -77
  403. package/lib/styles/main.css +44 -58
  404. package/lib/styles/tools/_variant.sass +6 -6
  405. package/lib/util/anchor.mjs +34 -28
  406. package/lib/util/anchor.mjs.map +1 -1
  407. package/lib/util/animation.mjs +2 -2
  408. package/lib/util/animation.mjs.map +1 -1
  409. package/lib/util/box.mjs +12 -0
  410. package/lib/util/box.mjs.map +1 -1
  411. package/lib/util/getCurrentInstance.mjs +19 -0
  412. package/lib/util/getCurrentInstance.mjs.map +1 -1
  413. package/lib/util/helpers.mjs +21 -5
  414. package/lib/util/helpers.mjs.map +1 -1
  415. package/package.json +16 -10
  416. package/lib/components/VBanner/VBannerAvatar.mjs +0 -20
  417. package/lib/components/VBanner/VBannerAvatar.mjs.map +0 -1
  418. package/lib/components/VBanner/VBannerIcon.mjs +0 -20
  419. package/lib/components/VBanner/VBannerIcon.mjs.map +0 -1
  420. package/lib/components/VBreadcrumbs/shared.mjs +0 -2
  421. package/lib/components/VBreadcrumbs/shared.mjs.map +0 -1
  422. package/lib/components/VCard/VCardAvatar.mjs +0 -3
  423. package/lib/components/VCard/VCardAvatar.mjs.map +0 -1
  424. package/lib/components/VCard/VCardContent.mjs +0 -3
  425. package/lib/components/VCard/VCardContent.mjs.map +0 -1
  426. package/lib/components/VCard/VCardHeader.mjs +0 -3
  427. package/lib/components/VCard/VCardHeader.mjs.map +0 -1
  428. package/lib/components/VCard/VCardHeaderText.mjs +0 -3
  429. package/lib/components/VCard/VCardHeaderText.mjs.map +0 -1
  430. package/lib/components/VCard/VCardImg.mjs +0 -3
  431. package/lib/components/VCard/VCardImg.mjs.map +0 -1
  432. package/lib/components/VList/VListItemAvatar.mjs +0 -23
  433. package/lib/components/VList/VListItemAvatar.mjs.map +0 -1
  434. package/lib/components/VList/VListItemHeader.mjs +0 -3
  435. package/lib/components/VList/VListItemHeader.mjs.map +0 -1
  436. package/lib/components/VList/VListItemIcon.mjs +0 -23
  437. package/lib/components/VList/VListItemIcon.mjs.map +0 -1
  438. package/lib/components/VTimeline/shared.mjs +0 -2
  439. package/lib/components/VTimeline/shared.mjs.map +0 -1
  440. package/lib/presets/default/index.mjs +0 -71
  441. package/lib/presets/default/index.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["VList","VListSubheader","VListImg","VListItem","VListItemAction","VListItemAvatar","VListItemHeader","VListItemIcon","VListItemMedia","VListItemSubtitle","VListItemTitle","VListGroup"],"sources":["../../../src/components/VList/index.ts"],"sourcesContent":["export { VList } from './VList'\nexport { VListSubheader } from './VListSubheader'\nexport { VListImg } from './VListImg'\nexport { VListItem } from './VListItem'\nexport { VListItemAction } from './VListItemAction'\nexport { VListItemAvatar } from './VListItemAvatar'\nexport { VListItemHeader } from './VListItemHeader'\nexport { VListItemIcon } from './VListItemIcon'\nexport { VListItemMedia } from './VListItemMedia'\nexport { VListItemSubtitle } from './VListItemSubtitle'\nexport { VListItemTitle } from './VListItemTitle'\nexport { VListGroup } from './VListGroup'\n"],"mappings":"SAASA,K;SACAC,c;SACAC,Q;SACAC,S;SACAC,e;SACAC,e;SACAC,e;SACAC,a;SACAC,c;SACAC,iB;SACAC,c;SACAC,U"}
1
+ {"version":3,"file":"index.mjs","names":["VList","VListGroup","VListImg","VListItem","VListItemAction","VListItemMedia","VListItemSubtitle","VListItemTitle","VListSubheader"],"sources":["../../../src/components/VList/index.ts"],"sourcesContent":["export { VList } from './VList'\nexport { VListGroup } from './VListGroup'\nexport { VListImg } from './VListImg'\nexport { VListItem } from './VListItem'\nexport { VListItemAction } from './VListItemAction'\nexport { VListItemMedia } from './VListItemMedia'\nexport { VListItemSubtitle } from './VListItemSubtitle'\nexport { VListItemTitle } from './VListItemTitle'\nexport { VListSubheader } from './VListSubheader'\n"],"mappings":"SAASA,K;SACAC,U;SACAC,Q;SACAC,S;SACAC,e;SACAC,c;SACAC,iB;SACAC,c;SACAC,c"}
@@ -1,10 +1,11 @@
1
1
  import { createVNode as _createVNode } from "vue";
2
+ // Styles
2
3
  import "./VLocaleProvider.css"; // Composables
3
4
 
4
5
  import { provideLocale } from "../../composables/locale.mjs";
5
6
  import { provideRtl } from "../../composables/rtl.mjs"; // Utilities
6
7
 
7
- import { defineComponent } from "../../util/index.mjs";
8
+ import { defineComponent, useRender } from "../../util/index.mjs";
8
9
  export const VLocaleProvider = defineComponent({
9
10
  name: 'VLocaleProvider',
10
11
  props: {
@@ -25,13 +26,14 @@ export const VLocaleProvider = defineComponent({
25
26
  const {
26
27
  rtlClasses
27
28
  } = provideRtl(props, localeInstance);
28
- return () => {
29
+ useRender(() => {
29
30
  var _slots$default;
30
31
 
31
32
  return _createVNode("div", {
32
33
  "class": ['v-locale-provider', rtlClasses.value]
33
34
  }, [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]);
34
- };
35
+ });
36
+ return {};
35
37
  }
36
38
 
37
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VLocaleProvider.mjs","names":["provideLocale","provideRtl","defineComponent","VLocaleProvider","name","props","locale","String","fallbackLocale","messages","Object","rtl","type","Boolean","default","undefined","setup","slots","localeInstance","rtlClasses","value"],"sources":["../../../src/components/VLocaleProvider/VLocaleProvider.tsx"],"sourcesContent":["import './VLocaleProvider.sass'\n\n// Composables\nimport { provideLocale } from '@/composables/locale'\nimport { provideRtl } from '@/composables/rtl'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VLocaleProvider = defineComponent({\n name: 'VLocaleProvider',\n\n props: {\n locale: String,\n fallbackLocale: String,\n messages: Object,\n rtl: {\n type: Boolean,\n default: undefined,\n },\n },\n\n setup (props, { slots }) {\n const localeInstance = provideLocale(props)\n const { rtlClasses } = provideRtl(props, localeInstance)\n\n return () => (\n <div\n class={[\n 'v-locale-provider',\n rtlClasses.value,\n ]}\n >\n { slots.default?.() }\n </div>\n )\n },\n})\n"],"mappings":";AAAA,+B,CAEA;;SACSA,a;SACAC,U,qCAET;;SACSC,e;AAET,OAAO,MAAMC,eAAe,GAAGD,eAAe,CAAC;EAC7CE,IAAI,EAAE,iBADuC;EAG7CC,KAAK,EAAE;IACLC,MAAM,EAAEC,MADH;IAELC,cAAc,EAAED,MAFX;IAGLE,QAAQ,EAAEC,MAHL;IAILC,GAAG,EAAE;MACHC,IAAI,EAAEC,OADH;MAEHC,OAAO,EAAEC;IAFN;EAJA,CAHsC;;EAa7CC,KAAK,CAAEX,KAAF,QAAoB;IAAA,IAAX;MAAEY;IAAF,CAAW;IACvB,MAAMC,cAAc,GAAGlB,aAAa,CAACK,KAAD,CAApC;IACA,MAAM;MAAEc;IAAF,IAAiBlB,UAAU,CAACI,KAAD,EAAQa,cAAR,CAAjC;IAEA,OAAO;MAAA;;MAAA;QAAA,SAEI,CACL,mBADK,EAELC,UAAU,CAACC,KAFN;MAFJ,sBAODH,KAAK,CAACH,OAPL,qBAOD,oBAAAG,KAAK,CAPJ;IAAA,CAAP;EAUD;;AA3B4C,CAAD,CAAvC"}
1
+ {"version":3,"file":"VLocaleProvider.mjs","names":["provideLocale","provideRtl","defineComponent","useRender","VLocaleProvider","name","props","locale","String","fallbackLocale","messages","Object","rtl","type","Boolean","default","undefined","setup","slots","localeInstance","rtlClasses","value"],"sources":["../../../src/components/VLocaleProvider/VLocaleProvider.tsx"],"sourcesContent":["// Styles\nimport './VLocaleProvider.sass'\n\n// Composables\nimport { provideLocale } from '@/composables/locale'\nimport { provideRtl } from '@/composables/rtl'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\n\nexport const VLocaleProvider = defineComponent({\n name: 'VLocaleProvider',\n\n props: {\n locale: String,\n fallbackLocale: String,\n messages: Object,\n rtl: {\n type: Boolean,\n default: undefined,\n },\n },\n\n setup (props, { slots }) {\n const localeInstance = provideLocale(props)\n const { rtlClasses } = provideRtl(props, localeInstance)\n\n useRender(() => (\n <div\n class={[\n 'v-locale-provider',\n rtlClasses.value,\n ]}\n >\n { slots.default?.() }\n </div>\n ))\n\n return {}\n },\n})\n"],"mappings":";AAAA;AACA,+B,CAEA;;SACSA,a;SACAC,U,qCAET;;SACSC,e,EAAiBC,S;AAE1B,OAAO,MAAMC,eAAe,GAAGF,eAAe,CAAC;EAC7CG,IAAI,EAAE,iBADuC;EAG7CC,KAAK,EAAE;IACLC,MAAM,EAAEC,MADH;IAELC,cAAc,EAAED,MAFX;IAGLE,QAAQ,EAAEC,MAHL;IAILC,GAAG,EAAE;MACHC,IAAI,EAAEC,OADH;MAEHC,OAAO,EAAEC;IAFN;EAJA,CAHsC;;EAa7CC,KAAK,CAAEX,KAAF,QAAoB;IAAA,IAAX;MAAEY;IAAF,CAAW;IACvB,MAAMC,cAAc,GAAGnB,aAAa,CAACM,KAAD,CAApC;IACA,MAAM;MAAEc;IAAF,IAAiBnB,UAAU,CAACK,KAAD,EAAQa,cAAR,CAAjC;IAEAhB,SAAS,CAAC;MAAA;;MAAA;QAAA,SAEC,CACL,mBADK,EAELiB,UAAU,CAACC,KAFN;MAFD,sBAOJH,KAAK,CAACH,OAPF,qBAOJ,oBAAAG,KAAK,CAPD;IAAA,CAAD,CAAT;IAWA,OAAO,EAAP;EACD;;AA7B4C,CAAD,CAAvC"}
@@ -6,7 +6,7 @@ import { makeTagProps } from "../../composables/tag.mjs";
6
6
  import { useLayout } from "../../composables/layout.mjs";
7
7
  import { useSsrBoot } from "../../composables/ssrBoot.mjs"; // Utilities
8
8
 
9
- import { defineComponent } from "../../util/index.mjs";
9
+ import { defineComponent, useRender } from "../../util/index.mjs";
10
10
  export const VMain = defineComponent({
11
11
  name: 'VMain',
12
12
  props: makeTagProps({
@@ -23,7 +23,7 @@ export const VMain = defineComponent({
23
23
  const {
24
24
  ssrBootStyles
25
25
  } = useSsrBoot();
26
- return () => {
26
+ useRender(() => {
27
27
  var _slots$default;
28
28
 
29
29
  return _createVNode(props.tag, {
@@ -34,7 +34,8 @@ export const VMain = defineComponent({
34
34
  "class": "v-main__wrap"
35
35
  }, [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)])]
36
36
  });
37
- };
37
+ });
38
+ return {};
38
39
  }
39
40
 
40
41
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VMain.mjs","names":["makeTagProps","useLayout","useSsrBoot","defineComponent","VMain","name","props","tag","setup","slots","mainStyles","ssrBootStyles","value","default"],"sources":["../../../src/components/VMain/VMain.tsx"],"sourcesContent":["// Styles\nimport './VMain.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { useLayout } from '@/composables/layout'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VMain = defineComponent({\n name: 'VMain',\n\n props: makeTagProps({ tag: 'main' }),\n\n setup (props, { slots }) {\n const { mainStyles } = useLayout()\n const { ssrBootStyles } = useSsrBoot()\n\n return () => (\n <props.tag\n class=\"v-main\"\n style={[\n mainStyles.value,\n ssrBootStyles.value,\n ]}\n >\n <div class=\"v-main__wrap\">\n { slots.default?.() }\n </div>\n </props.tag>\n )\n },\n})\n"],"mappings":";AAAA;AACA,qB,CAEA;;SACSA,Y;SACAC,S;SACAC,U,yCAET;;SACSC,e;AAET,OAAO,MAAMC,KAAK,GAAGD,eAAe,CAAC;EACnCE,IAAI,EAAE,OAD6B;EAGnCC,KAAK,EAAEN,YAAY,CAAC;IAAEO,GAAG,EAAE;EAAP,CAAD,CAHgB;;EAKnCC,KAAK,CAAEF,KAAF,QAAoB;IAAA,IAAX;MAAEG;IAAF,CAAW;IACvB,MAAM;MAAEC;IAAF,IAAiBT,SAAS,EAAhC;IACA,MAAM;MAAEU;IAAF,IAAoBT,UAAU,EAApC;IAEA,OAAO;MAAA;;MAAA;QAAA,SAEG,QAFH;QAAA,SAGI,CACLQ,UAAU,CAACE,KADN,EAELD,aAAa,CAACC,KAFT;MAHJ;QAAA;UAAA,SAQQ;QARR,sBASCH,KAAK,CAACI,OATP,qBASC,oBAAAJ,KAAK,CATN;MAAA;IAAA,CAAP;EAaD;;AAtBkC,CAAD,CAA7B"}
1
+ {"version":3,"file":"VMain.mjs","names":["makeTagProps","useLayout","useSsrBoot","defineComponent","useRender","VMain","name","props","tag","setup","slots","mainStyles","ssrBootStyles","value","default"],"sources":["../../../src/components/VMain/VMain.tsx"],"sourcesContent":["// Styles\nimport './VMain.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { useLayout } from '@/composables/layout'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\n\nexport const VMain = defineComponent({\n name: 'VMain',\n\n props: makeTagProps({ tag: 'main' }),\n\n setup (props, { slots }) {\n const { mainStyles } = useLayout()\n const { ssrBootStyles } = useSsrBoot()\n\n useRender(() => (\n <props.tag\n class=\"v-main\"\n style={[\n mainStyles.value,\n ssrBootStyles.value,\n ]}\n >\n <div class=\"v-main__wrap\">\n { slots.default?.() }\n </div>\n </props.tag>\n ))\n\n return {}\n },\n})\n"],"mappings":";AAAA;AACA,qB,CAEA;;SACSA,Y;SACAC,S;SACAC,U,yCAET;;SACSC,e,EAAiBC,S;AAE1B,OAAO,MAAMC,KAAK,GAAGF,eAAe,CAAC;EACnCG,IAAI,EAAE,OAD6B;EAGnCC,KAAK,EAAEP,YAAY,CAAC;IAAEQ,GAAG,EAAE;EAAP,CAAD,CAHgB;;EAKnCC,KAAK,CAAEF,KAAF,QAAoB;IAAA,IAAX;MAAEG;IAAF,CAAW;IACvB,MAAM;MAAEC;IAAF,IAAiBV,SAAS,EAAhC;IACA,MAAM;MAAEW;IAAF,IAAoBV,UAAU,EAApC;IAEAE,SAAS,CAAC;MAAA;;MAAA;QAAA,SAEA,QAFA;QAAA,SAGC,CACLO,UAAU,CAACE,KADN,EAELD,aAAa,CAACC,KAFT;MAHD;QAAA;UAAA,SAQK;QARL,sBASFH,KAAK,CAACI,OATJ,qBASF,oBAAAJ,KAAK,CATH;MAAA;IAAA,CAAD,CAAT;IAcA,OAAO,EAAP;EACD;;AAxBkC,CAAD,CAA7B"}
@@ -1,4 +1,3 @@
1
- @forward './variables'
2
1
  @use './variables' as *
3
2
 
4
3
  @mixin firefox()
@@ -1,4 +1,4 @@
1
1
  @use '../../styles/settings';
2
2
 
3
- // Defaults
3
+ // VMain
4
4
  $main-transition: 0.2s settings.$standard-easing !default;
@@ -2,18 +2,18 @@ import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirectiv
2
2
  // Styles
3
3
  import "./VMenu.css"; // Components
4
4
 
5
- import { VOverlay } from "../VOverlay/index.mjs";
6
- import { VDialogTransition } from "../transitions/index.mjs"; // Composables
5
+ import { VDialogTransition } from "../transitions/index.mjs";
6
+ import { VOverlay } from "../VOverlay/index.mjs"; // Composables
7
7
 
8
8
  import { makeTransitionProps } from "../../composables/transition.mjs";
9
- import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Utilities
9
+ import { useForwardRef } from "../../composables/forwardRef.mjs";
10
+ import { useProxiedModel } from "../../composables/proxiedModel.mjs";
11
+ import { useScopeId } from "../../composables/scopeId.mjs"; // Utilities
10
12
 
11
13
  import { computed, inject, provide, ref, watch } from 'vue';
12
14
  import { genericComponent, getUid, useRender } from "../../util/index.mjs";
13
15
  import { VMenuSymbol } from "./shared.mjs"; // Types
14
16
 
15
- import { useForwardRef } from "../../composables/forwardRef.mjs";
16
- import { useScopeId } from "../../composables/scopeId.mjs";
17
17
  export const VMenu = genericComponent()({
18
18
  name: 'VMenu',
19
19
  inheritAttrs: false,
@@ -1 +1 @@
1
- {"version":3,"file":"VMenu.mjs","names":["VOverlay","VDialogTransition","makeTransitionProps","useProxiedModel","computed","inject","provide","ref","watch","genericComponent","getUid","useRender","VMenuSymbol","useForwardRef","useScopeId","VMenu","name","inheritAttrs","props","modelValue","Boolean","id","String","transition","component","emits","value","setup","attrs","slots","isActive","scopeId","uid","overlay","parent","openChildren","register","unregister","closeParents","setTimeout","val","onClickOutside","default","activator"],"sources":["../../../src/components/VMenu/VMenu.tsx"],"sourcesContent":["// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\nimport { VDialogTransition } from '@/components/transitions'\n\n// Composables\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, ref, watch } from 'vue'\nimport { genericComponent, getUid, useRender } from '@/util'\nimport { VMenuSymbol } from './shared'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useScopeId } from '@/composables/scopeId'\n\nexport const VMenu = genericComponent<new () => {\n $slots: OverlaySlots\n}>()({\n name: 'VMenu',\n\n inheritAttrs: false,\n\n props: {\n // TODO\n // disableKeys: Boolean,\n modelValue: Boolean,\n id: String,\n\n ...makeTransitionProps({\n transition: { component: VDialogTransition },\n } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-menu-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const parent = inject(VMenuSymbol, null)\n let openChildren = 0\n provide(VMenuSymbol, {\n register () {\n ++openChildren\n },\n unregister () {\n --openChildren\n },\n closeParents () {\n setTimeout(() => {\n if (!openChildren) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n watch(isActive, val => {\n val ? parent?.register() : parent?.unregister()\n })\n\n function onClickOutside () {\n parent?.closeParents()\n }\n\n useRender(() => (\n <VOverlay\n ref={ overlay }\n v-model={ isActive.value }\n class={[\n 'v-menu',\n ]}\n transition={ props.transition }\n absolute\n closeOnContentClick\n locationStrategy=\"connected\"\n scrollStrategy=\"reposition\"\n scrim={ false }\n openDelay=\"300\"\n closeDelay=\"250\"\n activatorProps={{\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n }}\n onClick:outside={ onClickOutside }\n { ...scopeId }\n { ...attrs }\n v-slots={{\n default: slots.default,\n activator: slots.activator,\n }}\n />\n ))\n\n return useForwardRef({ id }, overlay)\n },\n})\n\nexport type VMenu = InstanceType<typeof VMenu>\n"],"mappings":";AAAA;AACA,qB,CAEA;;SACSA,Q;SACAC,iB,oCAET;;SACSC,mB;SACAC,e,8CAET;;AACA,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,OAA3B,EAAoCC,GAApC,EAAyCC,KAAzC,QAAsD,KAAtD;SACSC,gB,EAAkBC,M,EAAQC,S;SAC1BC,W,wBAET;;SAESC,a;SACAC,U;AAET,OAAO,MAAMC,KAAK,GAAGN,gBAAgB,GAEhC;EACHO,IAAI,EAAE,OADH;EAGHC,YAAY,EAAE,KAHX;EAKHC,KAAK,EAAE;IACL;IACA;IACAC,UAAU,EAAEC,OAHP;IAILC,EAAE,EAAEC,MAJC;IAML,GAAGpB,mBAAmB,CAAC;MACrBqB,UAAU,EAAE;QAAEC,SAAS,EAAEvB;MAAb;IADS,CAAD;EANjB,CALJ;EAgBHwB,KAAK,EAAE;IACL,qBAAsBC,KAAD,IAAoB;EADpC,CAhBJ;;EAoBHC,KAAK,CAAET,KAAF,QAA2B;IAAA,IAAlB;MAAEU,KAAF;MAASC;IAAT,CAAkB;IAC9B,MAAMC,QAAQ,GAAG3B,eAAe,CAACe,KAAD,EAAQ,YAAR,CAAhC;IACA,MAAM;MAAEa;IAAF,IAAcjB,UAAU,EAA9B;IAEA,MAAMkB,GAAG,GAAGtB,MAAM,EAAlB;IACA,MAAMW,EAAE,GAAGjB,QAAQ,CAAC,MAAMc,KAAK,CAACG,EAAN,IAAa,UAASW,GAAI,EAAjC,CAAnB;IAEA,MAAMC,OAAO,GAAG1B,GAAG,EAAnB;IAEA,MAAM2B,MAAM,GAAG7B,MAAM,CAACO,WAAD,EAAc,IAAd,CAArB;IACA,IAAIuB,YAAY,GAAG,CAAnB;IACA7B,OAAO,CAACM,WAAD,EAAc;MACnBwB,QAAQ,GAAI;QACV,EAAED,YAAF;MACD,CAHkB;;MAInBE,UAAU,GAAI;QACZ,EAAEF,YAAF;MACD,CANkB;;MAOnBG,YAAY,GAAI;QACdC,UAAU,CAAC,MAAM;UACf,IAAI,CAACJ,YAAL,EAAmB;YACjBL,QAAQ,CAACJ,KAAT,GAAiB,KAAjB;YACAQ,MAAM,QAAN,YAAAA,MAAM,CAAEI,YAAR;UACD;QACF,CALS,EAKP,EALO,CAAV;MAMD;;IAdkB,CAAd,CAAP;IAiBA9B,KAAK,CAACsB,QAAD,EAAWU,GAAG,IAAI;MACrBA,GAAG,GAAGN,MAAH,oBAAGA,MAAM,CAAEE,QAAR,EAAH,GAAwBF,MAAxB,oBAAwBA,MAAM,CAAEG,UAAR,EAA3B;IACD,CAFI,CAAL;;IAIA,SAASI,cAAT,GAA2B;MACzBP,MAAM,QAAN,YAAAA,MAAM,CAAEI,YAAR;IACD;;IAED3B,SAAS,CAAC;MAAA,OAEAsB,OAFA;MAAA,cAGIH,QAAQ,CAACJ,KAHb;MAAA,iCAGII,QAAQ,CAACJ,KAHb;MAAA,SAIC,CACL,QADK,CAJD;MAAA,cAOOR,KAAK,CAACK,UAPb;MAAA;MAAA;MAAA,oBAUW,WAVX;MAAA,kBAWS,YAXT;MAAA,SAYE,KAZF;MAAA,aAaI,KAbJ;MAAA,cAcK,KAdL;MAAA,kBAeU;QACd,iBAAiB,MADH;QAEd,iBAAiBD,MAAM,CAACQ,QAAQ,CAACJ,KAAV,CAFT;QAGd,aAAaL,EAAE,CAACK;MAHF,CAfV;MAAA,mBAoBYe;IApBZ,GAqBDV,OArBC,EAsBDH,KAtBC,GAuBG;MACPc,OAAO,EAAEb,KAAK,CAACa,OADR;MAEPC,SAAS,EAAEd,KAAK,CAACc;IAFV,CAvBH,CAAD,CAAT;IA8BA,OAAO9B,aAAa,CAAC;MAAEQ;IAAF,CAAD,EAASY,OAAT,CAApB;EACD;;AAvFE,CAFgC,CAA9B"}
1
+ {"version":3,"file":"VMenu.mjs","names":["VDialogTransition","VOverlay","makeTransitionProps","useForwardRef","useProxiedModel","useScopeId","computed","inject","provide","ref","watch","genericComponent","getUid","useRender","VMenuSymbol","VMenu","name","inheritAttrs","props","modelValue","Boolean","id","String","transition","component","emits","value","setup","attrs","slots","isActive","scopeId","uid","overlay","parent","openChildren","register","unregister","closeParents","setTimeout","val","onClickOutside","default","activator"],"sources":["../../../src/components/VMenu/VMenu.tsx"],"sourcesContent":["// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { computed, inject, provide, ref, watch } from 'vue'\nimport { genericComponent, getUid, useRender } from '@/util'\nimport { VMenuSymbol } from './shared'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const VMenu = genericComponent<new () => {\n $slots: OverlaySlots\n}>()({\n name: 'VMenu',\n\n inheritAttrs: false,\n\n props: {\n // TODO\n // disableKeys: Boolean,\n modelValue: Boolean,\n id: String,\n\n ...makeTransitionProps({\n transition: { component: VDialogTransition },\n } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-menu-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const parent = inject(VMenuSymbol, null)\n let openChildren = 0\n provide(VMenuSymbol, {\n register () {\n ++openChildren\n },\n unregister () {\n --openChildren\n },\n closeParents () {\n setTimeout(() => {\n if (!openChildren) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n watch(isActive, val => {\n val ? parent?.register() : parent?.unregister()\n })\n\n function onClickOutside () {\n parent?.closeParents()\n }\n\n useRender(() => (\n <VOverlay\n ref={ overlay }\n v-model={ isActive.value }\n class={[\n 'v-menu',\n ]}\n transition={ props.transition }\n absolute\n closeOnContentClick\n locationStrategy=\"connected\"\n scrollStrategy=\"reposition\"\n scrim={ false }\n openDelay=\"300\"\n closeDelay=\"250\"\n activatorProps={{\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n }}\n onClick:outside={ onClickOutside }\n { ...scopeId }\n { ...attrs }\n v-slots={{\n default: slots.default,\n activator: slots.activator,\n }}\n />\n ))\n\n return useForwardRef({ id }, overlay)\n },\n})\n\nexport type VMenu = InstanceType<typeof VMenu>\n"],"mappings":";AAAA;AACA,qB,CAEA;;SACSA,iB;SACAC,Q,iCAET;;SACSC,mB;SACAC,a;SACAC,e;SACAC,U,yCAET;;AACA,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,OAA3B,EAAoCC,GAApC,EAAyCC,KAAzC,QAAsD,KAAtD;SACSC,gB,EAAkBC,M,EAAQC,S;SAC1BC,W,wBAET;;AAGA,OAAO,MAAMC,KAAK,GAAGJ,gBAAgB,GAEhC;EACHK,IAAI,EAAE,OADH;EAGHC,YAAY,EAAE,KAHX;EAKHC,KAAK,EAAE;IACL;IACA;IACAC,UAAU,EAAEC,OAHP;IAILC,EAAE,EAAEC,MAJC;IAML,GAAGpB,mBAAmB,CAAC;MACrBqB,UAAU,EAAE;QAAEC,SAAS,EAAExB;MAAb;IADS,CAAD;EANjB,CALJ;EAgBHyB,KAAK,EAAE;IACL,qBAAsBC,KAAD,IAAoB;EADpC,CAhBJ;;EAoBHC,KAAK,CAAET,KAAF,QAA2B;IAAA,IAAlB;MAAEU,KAAF;MAASC;IAAT,CAAkB;IAC9B,MAAMC,QAAQ,GAAG1B,eAAe,CAACc,KAAD,EAAQ,YAAR,CAAhC;IACA,MAAM;MAAEa;IAAF,IAAc1B,UAAU,EAA9B;IAEA,MAAM2B,GAAG,GAAGpB,MAAM,EAAlB;IACA,MAAMS,EAAE,GAAGf,QAAQ,CAAC,MAAMY,KAAK,CAACG,EAAN,IAAa,UAASW,GAAI,EAAjC,CAAnB;IAEA,MAAMC,OAAO,GAAGxB,GAAG,EAAnB;IAEA,MAAMyB,MAAM,GAAG3B,MAAM,CAACO,WAAD,EAAc,IAAd,CAArB;IACA,IAAIqB,YAAY,GAAG,CAAnB;IACA3B,OAAO,CAACM,WAAD,EAAc;MACnBsB,QAAQ,GAAI;QACV,EAAED,YAAF;MACD,CAHkB;;MAInBE,UAAU,GAAI;QACZ,EAAEF,YAAF;MACD,CANkB;;MAOnBG,YAAY,GAAI;QACdC,UAAU,CAAC,MAAM;UACf,IAAI,CAACJ,YAAL,EAAmB;YACjBL,QAAQ,CAACJ,KAAT,GAAiB,KAAjB;YACAQ,MAAM,QAAN,YAAAA,MAAM,CAAEI,YAAR;UACD;QACF,CALS,EAKP,EALO,CAAV;MAMD;;IAdkB,CAAd,CAAP;IAiBA5B,KAAK,CAACoB,QAAD,EAAWU,GAAG,IAAI;MACrBA,GAAG,GAAGN,MAAH,oBAAGA,MAAM,CAAEE,QAAR,EAAH,GAAwBF,MAAxB,oBAAwBA,MAAM,CAAEG,UAAR,EAA3B;IACD,CAFI,CAAL;;IAIA,SAASI,cAAT,GAA2B;MACzBP,MAAM,QAAN,YAAAA,MAAM,CAAEI,YAAR;IACD;;IAEDzB,SAAS,CAAC;MAAA,OAEAoB,OAFA;MAAA,cAGIH,QAAQ,CAACJ,KAHb;MAAA,iCAGII,QAAQ,CAACJ,KAHb;MAAA,SAIC,CACL,QADK,CAJD;MAAA,cAOOR,KAAK,CAACK,UAPb;MAAA;MAAA;MAAA,oBAUW,WAVX;MAAA,kBAWS,YAXT;MAAA,SAYE,KAZF;MAAA,aAaI,KAbJ;MAAA,cAcK,KAdL;MAAA,kBAeU;QACd,iBAAiB,MADH;QAEd,iBAAiBD,MAAM,CAACQ,QAAQ,CAACJ,KAAV,CAFT;QAGd,aAAaL,EAAE,CAACK;MAHF,CAfV;MAAA,mBAoBYe;IApBZ,GAqBDV,OArBC,EAsBDH,KAtBC,GAuBG;MACPc,OAAO,EAAEb,KAAK,CAACa,OADR;MAEPC,SAAS,EAAEd,KAAK,CAACc;IAFV,CAvBH,CAAD,CAAT;IA8BA,OAAOxC,aAAa,CAAC;MAAEkB;IAAF,CAAD,EAASY,OAAT,CAApB;EACD;;AAvFE,CAFgC,CAA9B"}
@@ -1,4 +1,3 @@
1
- @forward './variables'
2
1
  @use '../../styles/tools'
3
2
  @use './variables' as *
4
3
 
@@ -7,8 +7,9 @@ import { VSlideYTransition } from "../transitions/index.mjs"; // Composables
7
7
  import { makeTransitionProps, MaybeTransition } from "../../composables/transition.mjs";
8
8
  import { useTextColor } from "../../composables/color.mjs"; // Utilities
9
9
 
10
- import { defineComponent, wrapInArray } from "../../util/index.mjs";
11
10
  import { computed } from 'vue';
11
+ import { defineComponent, useRender, wrapInArray } from "../../util/index.mjs"; // Types
12
+
12
13
  export const VMessages = defineComponent({
13
14
  name: 'VMessages',
14
15
  props: {
@@ -36,7 +37,7 @@ export const VMessages = defineComponent({
36
37
  textColorClasses,
37
38
  textColorStyles
38
39
  } = useTextColor(computed(() => props.color));
39
- return () => _createVNode(MaybeTransition, {
40
+ useRender(() => _createVNode(MaybeTransition, {
40
41
  "transition": props.transition,
41
42
  "tag": "div",
42
43
  "class": ['v-messages', textColorClasses.value],
@@ -48,7 +49,8 @@ export const VMessages = defineComponent({
48
49
  }, [slots.message ? slots.message({
49
50
  message
50
51
  }) : message]))]
51
- });
52
+ }));
53
+ return {};
52
54
  }
53
55
 
54
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VMessages.mjs","names":["VSlideYTransition","makeTransitionProps","MaybeTransition","useTextColor","defineComponent","wrapInArray","computed","VMessages","name","props","active","Boolean","color","String","messages","type","Array","default","transition","component","leaveAbsolute","group","setup","slots","textColorClasses","textColorStyles","value","map","message","i"],"sources":["../../../src/components/VMessages/VMessages.tsx"],"sourcesContent":["// Styles\nimport './VMessages.sass'\n\n// Components\nimport { VSlideYTransition } from '@/components/transitions'\n\n// Composables\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { defineComponent, wrapInArray } from '@/util'\nimport { computed } from 'vue'\nimport type { PropType } from 'vue'\n\nexport const VMessages = defineComponent({\n name: 'VMessages',\n\n props: {\n active: Boolean,\n color: String,\n messages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n\n ...makeTransitionProps({\n transition: {\n component: VSlideYTransition,\n leaveAbsolute: true,\n group: true,\n },\n }),\n },\n\n setup (props, { slots }) {\n const messages = computed(() => wrapInArray(props.messages))\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => props.color))\n\n return () => (\n <MaybeTransition\n transition={ props.transition }\n tag=\"div\"\n class={[\n 'v-messages',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { props.active && (\n messages.value.map((message, i) => (\n <div\n class=\"v-messages__message\"\n key={ `${i}-${messages.value}` }\n >\n { slots.message ? slots.message({ message }) : message }\n </div>\n ))\n ) }\n </MaybeTransition>\n )\n },\n})\n"],"mappings":";AAAA;AACA,yB,CAEA;;SACSA,iB,oCAET;;SACSC,mB,EAAqBC,e;SACrBC,Y,uCAET;;SACSC,e,EAAiBC,W;AAC1B,SAASC,QAAT,QAAyB,KAAzB;AAGA,OAAO,MAAMC,SAAS,GAAGH,eAAe,CAAC;EACvCI,IAAI,EAAE,WADiC;EAGvCC,KAAK,EAAE;IACLC,MAAM,EAAEC,OADH;IAELC,KAAK,EAAEC,MAFF;IAGLC,QAAQ,EAAE;MACRC,IAAI,EAAE,CAACC,KAAD,EAAQH,MAAR,CADE;MAERI,OAAO,EAAE,MAAO;IAFR,CAHL;IAQL,GAAGhB,mBAAmB,CAAC;MACrBiB,UAAU,EAAE;QACVC,SAAS,EAAEnB,iBADD;QAEVoB,aAAa,EAAE,IAFL;QAGVC,KAAK,EAAE;MAHG;IADS,CAAD;EARjB,CAHgC;;EAoBvCC,KAAK,CAAEb,KAAF,QAAoB;IAAA,IAAX;MAAEc;IAAF,CAAW;IACvB,MAAMT,QAAQ,GAAGR,QAAQ,CAAC,MAAMD,WAAW,CAACI,KAAK,CAACK,QAAP,CAAlB,CAAzB;IACA,MAAM;MAAEU,gBAAF;MAAoBC;IAApB,IAAwCtB,YAAY,CAACG,QAAQ,CAAC,MAAMG,KAAK,CAACG,KAAb,CAAT,CAA1D;IAEA,OAAO;MAAA,cAEUH,KAAK,CAACS,UAFhB;MAAA,OAGC,KAHD;MAAA,SAII,CACL,YADK,EAELM,gBAAgB,CAACE,KAFZ,CAJJ;MAAA,SAQKD,eAAe,CAACC;IARrB;MAAA,gBAUDjB,KAAK,CAACC,MAAN,IACAI,QAAQ,CAACY,KAAT,CAAeC,GAAf,CAAmB,CAACC,OAAD,EAAUC,CAAV;QAAA,SAET,qBAFS;QAAA,OAGR,GAAEA,CAAE,IAAGf,QAAQ,CAACY,KAAM;MAHd,IAKbH,KAAK,CAACK,OAAN,GAAgBL,KAAK,CAACK,OAAN,CAAc;QAAEA;MAAF,CAAd,CAAhB,GAA6CA,OALhC,EAAnB,CAXC;IAAA,EAAP;EAsBD;;AA9CsC,CAAD,CAAjC"}
1
+ {"version":3,"file":"VMessages.mjs","names":["VSlideYTransition","makeTransitionProps","MaybeTransition","useTextColor","computed","defineComponent","useRender","wrapInArray","VMessages","name","props","active","Boolean","color","String","messages","type","Array","default","transition","component","leaveAbsolute","group","setup","slots","textColorClasses","textColorStyles","value","map","message","i"],"sources":["../../../src/components/VMessages/VMessages.tsx"],"sourcesContent":["// Styles\nimport './VMessages.sass'\n\n// Components\nimport { VSlideYTransition } from '@/components/transitions'\n\n// Composables\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed } from 'vue'\nimport { defineComponent, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VMessages = defineComponent({\n name: 'VMessages',\n\n props: {\n active: Boolean,\n color: String,\n messages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n\n ...makeTransitionProps({\n transition: {\n component: VSlideYTransition,\n leaveAbsolute: true,\n group: true,\n },\n }),\n },\n\n setup (props, { slots }) {\n const messages = computed(() => wrapInArray(props.messages))\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => props.color))\n\n useRender(() => (\n <MaybeTransition\n transition={ props.transition }\n tag=\"div\"\n class={[\n 'v-messages',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { props.active && (\n messages.value.map((message, i) => (\n <div\n class=\"v-messages__message\"\n key={ `${i}-${messages.value}` }\n >\n { slots.message ? slots.message({ message }) : message }\n </div>\n ))\n ) }\n </MaybeTransition>\n ))\n\n return {}\n },\n})\n"],"mappings":";AAAA;AACA,yB,CAEA;;SACSA,iB,oCAET;;SACSC,mB,EAAqBC,e;SACrBC,Y,uCAET;;AACA,SAASC,QAAT,QAAyB,KAAzB;SACSC,e,EAAiBC,S,EAAWC,W,gCAErC;;AAGA,OAAO,MAAMC,SAAS,GAAGH,eAAe,CAAC;EACvCI,IAAI,EAAE,WADiC;EAGvCC,KAAK,EAAE;IACLC,MAAM,EAAEC,OADH;IAELC,KAAK,EAAEC,MAFF;IAGLC,QAAQ,EAAE;MACRC,IAAI,EAAE,CAACC,KAAD,EAAQH,MAAR,CADE;MAERI,OAAO,EAAE,MAAO;IAFR,CAHL;IAQL,GAAGjB,mBAAmB,CAAC;MACrBkB,UAAU,EAAE;QACVC,SAAS,EAAEpB,iBADD;QAEVqB,aAAa,EAAE,IAFL;QAGVC,KAAK,EAAE;MAHG;IADS,CAAD;EARjB,CAHgC;;EAoBvCC,KAAK,CAAEb,KAAF,QAAoB;IAAA,IAAX;MAAEc;IAAF,CAAW;IACvB,MAAMT,QAAQ,GAAGX,QAAQ,CAAC,MAAMG,WAAW,CAACG,KAAK,CAACK,QAAP,CAAlB,CAAzB;IACA,MAAM;MAAEU,gBAAF;MAAoBC;IAApB,IAAwCvB,YAAY,CAACC,QAAQ,CAAC,MAAMM,KAAK,CAACG,KAAb,CAAT,CAA1D;IAEAP,SAAS,CAAC;MAAA,cAEOI,KAAK,CAACS,UAFb;MAAA,OAGF,KAHE;MAAA,SAIC,CACL,YADK,EAELM,gBAAgB,CAACE,KAFZ,CAJD;MAAA,SAQED,eAAe,CAACC;IARlB;MAAA,gBAUJjB,KAAK,CAACC,MAAN,IACAI,QAAQ,CAACY,KAAT,CAAeC,GAAf,CAAmB,CAACC,OAAD,EAAUC,CAAV;QAAA,SAET,qBAFS;QAAA,OAGR,GAAEA,CAAE,IAAGf,QAAQ,CAACY,KAAM;MAHd,IAKbH,KAAK,CAACK,OAAN,GAAgBL,KAAK,CAACK,OAAN,CAAc;QAAEA;MAAF,CAAd,CAAhB,GAA6CA,OALhC,EAAnB,CAXI;IAAA,EAAD,CAAT;IAuBA,OAAO,EAAP;EACD;;AAhDsC,CAAD,CAAjC"}
@@ -1,4 +1,3 @@
1
- @forward './variables'
2
1
  @use '../../styles/settings'
3
2
  @use './variables' as *
4
3
 
@@ -1,4 +1,4 @@
1
- // Defaults
1
+ // VMessages
2
2
  $messages-color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity)) !default;
3
3
  $messages-font-size: 12px !default;
4
4
  $messages-line-height: $messages-font-size !default;
@@ -12,10 +12,11 @@ import { useBackgroundColor } from "../../composables/color.mjs";
12
12
  import { useDisplay } from "../../composables/display.mjs";
13
13
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
14
14
  import { useRouter } from "../../composables/router.mjs";
15
+ import { useSsrBoot } from "../../composables/ssrBoot.mjs";
15
16
  import { useTouch } from "./touch.mjs"; // Utilities
16
17
 
17
18
  import { computed, onBeforeMount, ref, toRef, Transition, watch } from 'vue';
18
- import { convertToUnit, defineComponent } from "../../util/index.mjs"; // Types
19
+ import { convertToUnit, defineComponent, useRender } from "../../util/index.mjs"; // Types
19
20
 
20
21
  export const VNavigationDrawer = defineComponent({
21
22
  name: 'VNavigationDrawer',
@@ -87,6 +88,9 @@ export const VNavigationDrawer = defineComponent({
87
88
  const router = useRouter();
88
89
  const isActive = useProxiedModel(props, 'modelValue', null, v => !!v);
89
90
  const isHovering = ref(false);
91
+ const {
92
+ ssrBootStyles
93
+ } = useSsrBoot();
90
94
  const width = computed(() => {
91
95
  return props.rail && props.expandOnHover && isHovering.value ? Number(props.width) : Number(props.rail ? props.railWidth : props.width);
92
96
  });
@@ -149,7 +153,7 @@ export const VNavigationDrawer = defineComponent({
149
153
  } : undefined),
150
154
  ...layoutItemScrimStyles.value
151
155
  }));
152
- return () => {
156
+ useRender(() => {
153
157
  var _slots$image, _slots$prepend, _slots$default, _slots$append;
154
158
 
155
159
  const hasImage = slots.image || props.image;
@@ -168,9 +172,10 @@ export const VNavigationDrawer = defineComponent({
168
172
  'v-navigation-drawer--temporary': isTemporary.value,
169
173
  'v-navigation-drawer--active': isActive.value
170
174
  }, themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value],
171
- "style": [backgroundColorStyles.value, layoutItemStyles.value, dragStyles.value]
175
+ "style": [backgroundColorStyles.value, layoutItemStyles.value, dragStyles.value, ssrBootStyles.value]
172
176
  }, attrs), {
173
177
  default: () => [hasImage && _createVNode("div", {
178
+ "key": "image",
174
179
  "class": "v-navigation-drawer__img"
175
180
  }, [slots.image ? (_slots$image = slots.image) == null ? void 0 : _slots$image.call(slots, {
176
181
  image: props.image
@@ -193,7 +198,8 @@ export const VNavigationDrawer = defineComponent({
193
198
  "onClick": () => isActive.value = false
194
199
  }, null)]
195
200
  })]);
196
- };
201
+ });
202
+ return {};
197
203
  }
198
204
 
199
205
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VNavigationDrawer.mjs","names":["makeBorderProps","useBorder","makeElevationProps","useElevation","makeLayoutItemProps","useLayoutItem","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","useBackgroundColor","useDisplay","useProxiedModel","useRouter","useTouch","computed","onBeforeMount","ref","toRef","Transition","watch","convertToUnit","defineComponent","VNavigationDrawer","name","props","color","String","disableResizeWatcher","Boolean","disableRouteWatcher","expandOnHover","floating","modelValue","type","default","permanent","rail","railWidth","Number","image","temporary","touchless","width","location","validator","value","includes","tag","emits","val","setup","attrs","slots","themeClasses","borderClasses","backgroundColorClasses","backgroundColorStyles","elevationClasses","mobile","roundedClasses","router","isActive","v","isHovering","isTemporary","currentRoute","rootEl","isDragging","dragProgress","dragStyles","position","layoutSize","size","layoutItemStyles","layoutRect","layoutItemScrimStyles","id","order","parseInt","elementSize","active","disableTransitions","absolute","scrimStyles","opacity","transition","undefined","left","right","top","bottom","hasImage","prepend","append"],"sources":["../../../src/components/VNavigationDrawer/VNavigationDrawer.tsx"],"sourcesContent":["// Styles\nimport './VNavigationDrawer.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useDisplay } from '@/composables/display'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRouter } from '@/composables/router'\nimport { useTouch } from './touch'\n\n// Utilities\nimport { computed, onBeforeMount, ref, toRef, Transition, watch } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VNavigationDrawer = defineComponent({\n name: 'VNavigationDrawer',\n\n props: {\n color: String,\n disableResizeWatcher: Boolean,\n disableRouteWatcher: Boolean,\n expandOnHover: Boolean,\n floating: Boolean,\n modelValue: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n permanent: Boolean,\n rail: Boolean,\n railWidth: {\n type: [Number, String],\n default: 72,\n },\n image: String,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256,\n },\n location: {\n type: String as PropType<'left' | 'right' | 'bottom'>,\n default: 'left',\n validator: (value: any) => ['left', 'right', 'bottom'].includes(value),\n },\n\n ...makeBorderProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { elevationClasses } = useElevation(props)\n const { mobile } = useDisplay()\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const isHovering = ref(false)\n const width = computed(() => {\n return (props.rail && props.expandOnHover && isHovering.value)\n ? Number(props.width)\n : Number(props.rail ? props.railWidth : props.width)\n })\n const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary))\n\n if (!props.disableResizeWatcher) {\n watch(isTemporary, val => !props.permanent && (isActive.value = !val))\n }\n\n if (!props.disableRouteWatcher && router) {\n watch(router.currentRoute, () => isTemporary.value && (isActive.value = false))\n }\n\n watch(() => props.permanent, val => {\n if (val) isActive.value = true\n })\n\n onBeforeMount(() => {\n if (props.modelValue != null || isTemporary.value) return\n\n isActive.value = props.permanent || !mobile.value\n })\n\n const rootEl = ref<HTMLElement>()\n\n const { isDragging, dragProgress, dragStyles } = useTouch({\n isActive,\n isTemporary,\n width,\n touchless: toRef(props, 'touchless'),\n position: toRef(props, 'location'),\n })\n\n const layoutSize = computed(() => {\n const size = isTemporary.value ? 0\n : props.rail && props.expandOnHover ? Number(props.railWidth)\n : width.value\n\n return isDragging.value ? size * dragProgress.value : size\n })\n const { layoutItemStyles, layoutRect, layoutItemScrimStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize,\n elementSize: width,\n active: computed(() => isActive.value || isDragging.value),\n disableTransitions: computed(() => isDragging.value),\n absolute: toRef(props, 'absolute'),\n })\n\n const scrimStyles = computed(() => ({\n ...isDragging.value ? {\n opacity: dragProgress.value * 0.2,\n transition: 'none',\n } : undefined,\n ...layoutRect.value ? {\n left: convertToUnit(layoutRect.value.left),\n right: convertToUnit(layoutRect.value.right),\n top: convertToUnit(layoutRect.value.top),\n bottom: convertToUnit(layoutRect.value.bottom),\n } : undefined,\n ...layoutItemScrimStyles.value,\n }))\n\n return () => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ () => (isHovering.value = true) }\n onMouseleave={ () => (isHovering.value = false) }\n class={[\n 'v-navigation-drawer',\n {\n 'v-navigation-drawer--bottom': props.location === 'bottom',\n 'v-navigation-drawer--end': props.location === 'right',\n 'v-navigation-drawer--expand-on-hover': props.expandOnHover,\n 'v-navigation-drawer--floating': props.floating,\n 'v-navigation-drawer--is-hovering': isHovering.value,\n 'v-navigation-drawer--rail': props.rail,\n 'v-navigation-drawer--start': props.location === 'left',\n 'v-navigation-drawer--temporary': isTemporary.value,\n 'v-navigation-drawer--active': isActive.value,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n dragStyles.value,\n ]}\n { ...attrs }\n >\n { hasImage && (\n <div class=\"v-navigation-drawer__img\">\n { slots.image\n ? slots.image?.({ image: props.image })\n : (<img src={ props.image } alt=\"\" />)\n }\n </div>\n )}\n\n { slots.prepend && (\n <div class=\"v-navigation-drawer__prepend\">\n { slots.prepend?.() }\n </div>\n )}\n\n <div class=\"v-navigation-drawer__content\">\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-navigation-drawer__append\">\n { slots.append?.() }\n </div>\n )}\n </props.tag>\n\n <Transition name=\"fade-transition\">\n { isTemporary.value && (isDragging.value || isActive.value) && (\n <div\n class=\"v-navigation-drawer__scrim\"\n style={ scrimStyles.value }\n onClick={ () => isActive.value = false }\n />\n )}\n </Transition>\n </>\n )\n }\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VNavigationDrawer.mjs","names":["makeBorderProps","useBorder","makeElevationProps","useElevation","makeLayoutItemProps","useLayoutItem","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","useBackgroundColor","useDisplay","useProxiedModel","useRouter","useSsrBoot","useTouch","computed","onBeforeMount","ref","toRef","Transition","watch","convertToUnit","defineComponent","useRender","VNavigationDrawer","name","props","color","String","disableResizeWatcher","Boolean","disableRouteWatcher","expandOnHover","floating","modelValue","type","default","permanent","rail","railWidth","Number","image","temporary","touchless","width","location","validator","value","includes","tag","emits","val","setup","attrs","slots","themeClasses","borderClasses","backgroundColorClasses","backgroundColorStyles","elevationClasses","mobile","roundedClasses","router","isActive","v","isHovering","ssrBootStyles","isTemporary","currentRoute","rootEl","isDragging","dragProgress","dragStyles","position","layoutSize","size","layoutItemStyles","layoutRect","layoutItemScrimStyles","id","order","parseInt","elementSize","active","disableTransitions","absolute","scrimStyles","opacity","transition","undefined","left","right","top","bottom","hasImage","prepend","append"],"sources":["../../../src/components/VNavigationDrawer/VNavigationDrawer.tsx"],"sourcesContent":["// Styles\nimport './VNavigationDrawer.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useDisplay } from '@/composables/display'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRouter } from '@/composables/router'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { useTouch } from './touch'\n\n// Utilities\nimport { computed, onBeforeMount, ref, toRef, Transition, watch } from 'vue'\nimport { convertToUnit, defineComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VNavigationDrawer = defineComponent({\n name: 'VNavigationDrawer',\n\n props: {\n color: String,\n disableResizeWatcher: Boolean,\n disableRouteWatcher: Boolean,\n expandOnHover: Boolean,\n floating: Boolean,\n modelValue: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n permanent: Boolean,\n rail: Boolean,\n railWidth: {\n type: [Number, String],\n default: 72,\n },\n image: String,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256,\n },\n location: {\n type: String as PropType<'left' | 'right' | 'bottom'>,\n default: 'left',\n validator: (value: any) => ['left', 'right', 'bottom'].includes(value),\n },\n\n ...makeBorderProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { elevationClasses } = useElevation(props)\n const { mobile } = useDisplay()\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const isHovering = ref(false)\n const { ssrBootStyles } = useSsrBoot()\n const width = computed(() => {\n return (props.rail && props.expandOnHover && isHovering.value)\n ? Number(props.width)\n : Number(props.rail ? props.railWidth : props.width)\n })\n const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary))\n\n if (!props.disableResizeWatcher) {\n watch(isTemporary, val => !props.permanent && (isActive.value = !val))\n }\n\n if (!props.disableRouteWatcher && router) {\n watch(router.currentRoute, () => isTemporary.value && (isActive.value = false))\n }\n\n watch(() => props.permanent, val => {\n if (val) isActive.value = true\n })\n\n onBeforeMount(() => {\n if (props.modelValue != null || isTemporary.value) return\n\n isActive.value = props.permanent || !mobile.value\n })\n\n const rootEl = ref<HTMLElement>()\n\n const { isDragging, dragProgress, dragStyles } = useTouch({\n isActive,\n isTemporary,\n width,\n touchless: toRef(props, 'touchless'),\n position: toRef(props, 'location'),\n })\n\n const layoutSize = computed(() => {\n const size = isTemporary.value ? 0\n : props.rail && props.expandOnHover ? Number(props.railWidth)\n : width.value\n\n return isDragging.value ? size * dragProgress.value : size\n })\n const { layoutItemStyles, layoutRect, layoutItemScrimStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize,\n elementSize: width,\n active: computed(() => isActive.value || isDragging.value),\n disableTransitions: computed(() => isDragging.value),\n absolute: toRef(props, 'absolute'),\n })\n\n const scrimStyles = computed(() => ({\n ...isDragging.value ? {\n opacity: dragProgress.value * 0.2,\n transition: 'none',\n } : undefined,\n ...layoutRect.value ? {\n left: convertToUnit(layoutRect.value.left),\n right: convertToUnit(layoutRect.value.right),\n top: convertToUnit(layoutRect.value.top),\n bottom: convertToUnit(layoutRect.value.bottom),\n } : undefined,\n ...layoutItemScrimStyles.value,\n }))\n\n useRender(() => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ () => (isHovering.value = true) }\n onMouseleave={ () => (isHovering.value = false) }\n class={[\n 'v-navigation-drawer',\n {\n 'v-navigation-drawer--bottom': props.location === 'bottom',\n 'v-navigation-drawer--end': props.location === 'right',\n 'v-navigation-drawer--expand-on-hover': props.expandOnHover,\n 'v-navigation-drawer--floating': props.floating,\n 'v-navigation-drawer--is-hovering': isHovering.value,\n 'v-navigation-drawer--rail': props.rail,\n 'v-navigation-drawer--start': props.location === 'left',\n 'v-navigation-drawer--temporary': isTemporary.value,\n 'v-navigation-drawer--active': isActive.value,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n dragStyles.value,\n ssrBootStyles.value,\n ]}\n { ...attrs }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-navigation-drawer__img\">\n { slots.image\n ? slots.image?.({ image: props.image })\n : (<img src={ props.image } alt=\"\" />)\n }\n </div>\n )}\n\n { slots.prepend && (\n <div class=\"v-navigation-drawer__prepend\">\n { slots.prepend?.() }\n </div>\n )}\n\n <div class=\"v-navigation-drawer__content\">\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-navigation-drawer__append\">\n { slots.append?.() }\n </div>\n )}\n </props.tag>\n\n <Transition name=\"fade-transition\">\n { isTemporary.value && (isDragging.value || isActive.value) && (\n <div\n class=\"v-navigation-drawer__scrim\"\n style={ scrimStyles.value }\n onClick={ () => isActive.value = false }\n />\n )}\n </Transition>\n </>\n )\n })\n\n return {}\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n"],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- @forward './variables'
2
1
  @use '../../styles/tools'
3
2
  @use './variables' as *
4
3
 
@@ -1,7 +1,7 @@
1
1
  @use 'sass:map';
2
2
  @use '../../styles/settings';
3
3
 
4
- // Defaults
4
+ // VNavigationDrawer
5
5
  $navigation-drawer-background: rgb(var(--v-theme-surface)) !default;
6
6
  $navigation-drawer-border-color: settings.$border-color-root !default;
7
7
  $navigation-drawer-border-radius: map.get(settings.$rounded, '0') !default;
@@ -25,6 +25,7 @@ $navigation-drawer-transition-property: box-shadow, transform, visibility, width
25
25
  $navigation-drawer-transition-timing-function: settings.$standard-easing !default;
26
26
  $navigation-drawer-will-change: transform !default;
27
27
 
28
+ // Lists
28
29
  $navigation-drawer-border: (
29
30
  $navigation-drawer-border-color,
30
31
  $navigation-drawer-border-style,
@@ -1,5 +1,8 @@
1
- import { useVelocity } from "../../composables/touch.mjs";
2
- import { computed, onBeforeUnmount, onMounted, ref } from 'vue';
1
+ // Composables
2
+ import { useVelocity } from "../../composables/touch.mjs"; // Utilities
3
+
4
+ import { computed, onBeforeUnmount, onMounted, ref } from 'vue'; // Types
5
+
3
6
  export function useTouch(_ref) {
4
7
  let {
5
8
  isActive,
@@ -1 +1 @@
1
- {"version":3,"file":"touch.mjs","names":["useVelocity","computed","onBeforeUnmount","onMounted","ref","useTouch","isActive","isTemporary","width","touchless","position","window","addEventListener","onTouchstart","passive","onTouchmove","onTouchend","removeEventListener","isHorizontal","value","addMovement","endTouch","getVelocity","maybeDragging","isDragging","dragProgress","offset","start","getOffset","pos","active","document","documentElement","clientWidth","clientHeight","oops","getProgress","limit","progress","Math","max","min","e","touchX","changedTouches","clientX","touchY","clientY","touchZone","inTouchZone","inElement","cancelable","dx","abs","dy","thresholdMet","preventDefault","velocity","identifier","vx","x","vy","y","direction","left","right","bottom","dragStyles","transform","transition","undefined","Error"],"sources":["../../../src/components/VNavigationDrawer/touch.ts"],"sourcesContent":["import { useVelocity } from '@/composables/touch'\nimport { computed, onBeforeUnmount, onMounted, ref } from 'vue'\nimport type { Ref } from 'vue'\n\nexport function useTouch ({ isActive, isTemporary, width, touchless, position }: {\n isActive: Ref<boolean>\n isTemporary: Ref<boolean>\n width: Ref<number>\n touchless: Ref<boolean>\n position: Ref<'left' | 'right' | 'bottom'>\n}) {\n onMounted(() => {\n window.addEventListener('touchstart', onTouchstart, { passive: true })\n window.addEventListener('touchmove', onTouchmove, { passive: false })\n window.addEventListener('touchend', onTouchend, { passive: true })\n })\n\n onBeforeUnmount(() => {\n window.removeEventListener('touchstart', onTouchstart)\n window.removeEventListener('touchmove', onTouchmove)\n window.removeEventListener('touchend', onTouchend)\n })\n\n const isHorizontal = computed(() => position.value !== 'bottom')\n\n const { addMovement, endTouch, getVelocity } = useVelocity()\n let maybeDragging = false\n const isDragging = ref(false)\n const dragProgress = ref(0)\n const offset = ref(0)\n let start: [number, number] | undefined\n\n function getOffset (pos: number, active: boolean): number {\n return (\n position.value === 'left' ? pos\n : position.value === 'right' ? document.documentElement.clientWidth - pos\n : position.value === 'bottom' ? document.documentElement.clientHeight - pos\n : oops()\n ) - (active ? width.value : 0)\n }\n\n function getProgress (pos: number, limit = true): number {\n const progress = (\n position.value === 'left' ? (pos - offset.value) / width.value\n : position.value === 'right' ? (document.documentElement.clientWidth - pos - offset.value) / width.value\n : position.value === 'bottom' ? (document.documentElement.clientHeight - pos - offset.value) / width.value\n : oops()\n )\n return limit ? Math.max(0, Math.min(1, progress)) : progress\n }\n\n function onTouchstart (e: TouchEvent) {\n if (touchless.value) return\n\n const touchX = e.changedTouches[0].clientX\n const touchY = e.changedTouches[0].clientY\n\n const touchZone = 25\n const inTouchZone: boolean =\n position.value === 'left' ? touchX < touchZone\n : position.value === 'right' ? touchX > document.documentElement.clientWidth - touchZone\n : position.value === 'bottom' ? touchY > document.documentElement.clientHeight - touchZone\n : oops()\n\n const inElement: boolean = isActive.value && (\n position.value === 'left' ? touchX < width.value\n : position.value === 'right' ? touchX > document.documentElement.clientWidth - width.value\n : position.value === 'bottom' ? touchY > document.documentElement.clientHeight - width.value\n : oops()\n )\n\n if (\n inTouchZone ||\n inElement ||\n (isActive.value && isTemporary.value)\n ) {\n maybeDragging = true\n start = [touchX, touchY]\n\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, isActive.value)\n dragProgress.value = getProgress(isHorizontal.value ? touchX : touchY)\n\n endTouch(e)\n addMovement(e)\n }\n }\n\n function onTouchmove (e: TouchEvent) {\n const touchX = e.changedTouches[0].clientX\n const touchY = e.changedTouches[0].clientY\n\n if (maybeDragging) {\n if (!e.cancelable) {\n maybeDragging = false\n return\n }\n\n const dx = Math.abs(touchX - start![0])\n const dy = Math.abs(touchY - start![1])\n\n const thresholdMet = isHorizontal.value\n ? dx > dy && dx > 3\n : dy > dx && dy > 3\n\n if (thresholdMet) {\n isDragging.value = true\n maybeDragging = false\n } else if ((isHorizontal.value ? dy : dx) > 3) {\n maybeDragging = false\n }\n }\n\n if (!isDragging.value) return\n\n e.preventDefault()\n addMovement(e)\n\n const progress = getProgress(isHorizontal.value ? touchX : touchY, false)\n dragProgress.value = Math.max(0, Math.min(1, progress))\n\n if (progress > 1) {\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, true)\n } else if (progress < 0) {\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, false)\n }\n }\n\n function onTouchend (e: TouchEvent) {\n maybeDragging = false\n\n if (!isDragging.value) return\n\n addMovement(e)\n\n isDragging.value = false\n\n const velocity = getVelocity(e.changedTouches[0].identifier)\n const vx = Math.abs(velocity.x)\n const vy = Math.abs(velocity.y)\n const thresholdMet = isHorizontal.value\n ? vx > vy && vx > 400\n : vy > vx && vy > 3\n\n if (thresholdMet) {\n isActive.value = velocity.direction === ({\n left: 'right',\n right: 'left',\n bottom: 'up',\n }[position.value] || oops())\n } else {\n isActive.value = dragProgress.value > 0.5\n }\n }\n\n const dragStyles = computed(() => {\n return isDragging.value ? {\n transform:\n position.value === 'left' ? `translateX(calc(-100% + ${dragProgress.value * width.value}px))`\n : position.value === 'right' ? `translateX(calc(100% - ${dragProgress.value * width.value}px))`\n : position.value === 'bottom' ? `translateY(calc(100% - ${dragProgress.value * width.value}px))`\n : oops(),\n transition: 'none',\n } : undefined\n })\n\n return {\n isDragging,\n dragProgress,\n dragStyles,\n }\n}\n\nfunction oops (): never {\n throw new Error()\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"touch.mjs","names":["useVelocity","computed","onBeforeUnmount","onMounted","ref","useTouch","isActive","isTemporary","width","touchless","position","window","addEventListener","onTouchstart","passive","onTouchmove","onTouchend","removeEventListener","isHorizontal","value","addMovement","endTouch","getVelocity","maybeDragging","isDragging","dragProgress","offset","start","getOffset","pos","active","document","documentElement","clientWidth","clientHeight","oops","getProgress","limit","progress","Math","max","min","e","touchX","changedTouches","clientX","touchY","clientY","touchZone","inTouchZone","inElement","cancelable","dx","abs","dy","thresholdMet","preventDefault","velocity","identifier","vx","x","vy","y","direction","left","right","bottom","dragStyles","transform","transition","undefined","Error"],"sources":["../../../src/components/VNavigationDrawer/touch.ts"],"sourcesContent":["// Composables\nimport { useVelocity } from '@/composables/touch'\n\n// Utilities\nimport { computed, onBeforeUnmount, onMounted, ref } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport function useTouch ({ isActive, isTemporary, width, touchless, position }: {\n isActive: Ref<boolean>\n isTemporary: Ref<boolean>\n width: Ref<number>\n touchless: Ref<boolean>\n position: Ref<'left' | 'right' | 'bottom'>\n}) {\n onMounted(() => {\n window.addEventListener('touchstart', onTouchstart, { passive: true })\n window.addEventListener('touchmove', onTouchmove, { passive: false })\n window.addEventListener('touchend', onTouchend, { passive: true })\n })\n\n onBeforeUnmount(() => {\n window.removeEventListener('touchstart', onTouchstart)\n window.removeEventListener('touchmove', onTouchmove)\n window.removeEventListener('touchend', onTouchend)\n })\n\n const isHorizontal = computed(() => position.value !== 'bottom')\n\n const { addMovement, endTouch, getVelocity } = useVelocity()\n let maybeDragging = false\n const isDragging = ref(false)\n const dragProgress = ref(0)\n const offset = ref(0)\n let start: [number, number] | undefined\n\n function getOffset (pos: number, active: boolean): number {\n return (\n position.value === 'left' ? pos\n : position.value === 'right' ? document.documentElement.clientWidth - pos\n : position.value === 'bottom' ? document.documentElement.clientHeight - pos\n : oops()\n ) - (active ? width.value : 0)\n }\n\n function getProgress (pos: number, limit = true): number {\n const progress = (\n position.value === 'left' ? (pos - offset.value) / width.value\n : position.value === 'right' ? (document.documentElement.clientWidth - pos - offset.value) / width.value\n : position.value === 'bottom' ? (document.documentElement.clientHeight - pos - offset.value) / width.value\n : oops()\n )\n return limit ? Math.max(0, Math.min(1, progress)) : progress\n }\n\n function onTouchstart (e: TouchEvent) {\n if (touchless.value) return\n\n const touchX = e.changedTouches[0].clientX\n const touchY = e.changedTouches[0].clientY\n\n const touchZone = 25\n const inTouchZone: boolean =\n position.value === 'left' ? touchX < touchZone\n : position.value === 'right' ? touchX > document.documentElement.clientWidth - touchZone\n : position.value === 'bottom' ? touchY > document.documentElement.clientHeight - touchZone\n : oops()\n\n const inElement: boolean = isActive.value && (\n position.value === 'left' ? touchX < width.value\n : position.value === 'right' ? touchX > document.documentElement.clientWidth - width.value\n : position.value === 'bottom' ? touchY > document.documentElement.clientHeight - width.value\n : oops()\n )\n\n if (\n inTouchZone ||\n inElement ||\n (isActive.value && isTemporary.value)\n ) {\n maybeDragging = true\n start = [touchX, touchY]\n\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, isActive.value)\n dragProgress.value = getProgress(isHorizontal.value ? touchX : touchY)\n\n endTouch(e)\n addMovement(e)\n }\n }\n\n function onTouchmove (e: TouchEvent) {\n const touchX = e.changedTouches[0].clientX\n const touchY = e.changedTouches[0].clientY\n\n if (maybeDragging) {\n if (!e.cancelable) {\n maybeDragging = false\n return\n }\n\n const dx = Math.abs(touchX - start![0])\n const dy = Math.abs(touchY - start![1])\n\n const thresholdMet = isHorizontal.value\n ? dx > dy && dx > 3\n : dy > dx && dy > 3\n\n if (thresholdMet) {\n isDragging.value = true\n maybeDragging = false\n } else if ((isHorizontal.value ? dy : dx) > 3) {\n maybeDragging = false\n }\n }\n\n if (!isDragging.value) return\n\n e.preventDefault()\n addMovement(e)\n\n const progress = getProgress(isHorizontal.value ? touchX : touchY, false)\n dragProgress.value = Math.max(0, Math.min(1, progress))\n\n if (progress > 1) {\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, true)\n } else if (progress < 0) {\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, false)\n }\n }\n\n function onTouchend (e: TouchEvent) {\n maybeDragging = false\n\n if (!isDragging.value) return\n\n addMovement(e)\n\n isDragging.value = false\n\n const velocity = getVelocity(e.changedTouches[0].identifier)\n const vx = Math.abs(velocity.x)\n const vy = Math.abs(velocity.y)\n const thresholdMet = isHorizontal.value\n ? vx > vy && vx > 400\n : vy > vx && vy > 3\n\n if (thresholdMet) {\n isActive.value = velocity.direction === ({\n left: 'right',\n right: 'left',\n bottom: 'up',\n }[position.value] || oops())\n } else {\n isActive.value = dragProgress.value > 0.5\n }\n }\n\n const dragStyles = computed(() => {\n return isDragging.value ? {\n transform:\n position.value === 'left' ? `translateX(calc(-100% + ${dragProgress.value * width.value}px))`\n : position.value === 'right' ? `translateX(calc(100% - ${dragProgress.value * width.value}px))`\n : position.value === 'bottom' ? `translateY(calc(100% - ${dragProgress.value * width.value}px))`\n : oops(),\n transition: 'none',\n } : undefined\n })\n\n return {\n isDragging,\n dragProgress,\n dragStyles,\n }\n}\n\nfunction oops (): never {\n throw new Error()\n}\n"],"mappings":"AAAA;SACSA,W,uCAET;;AACA,SAASC,QAAT,EAAmBC,eAAnB,EAAoCC,SAApC,EAA+CC,GAA/C,QAA0D,KAA1D,C,CAEA;;AAGA,OAAO,SAASC,QAAT,OAMJ;EAAA,IANuB;IAAEC,QAAF;IAAYC,WAAZ;IAAyBC,KAAzB;IAAgCC,SAAhC;IAA2CC;EAA3C,CAMvB;EACDP,SAAS,CAAC,MAAM;IACdQ,MAAM,CAACC,gBAAP,CAAwB,YAAxB,EAAsCC,YAAtC,EAAoD;MAAEC,OAAO,EAAE;IAAX,CAApD;IACAH,MAAM,CAACC,gBAAP,CAAwB,WAAxB,EAAqCG,WAArC,EAAkD;MAAED,OAAO,EAAE;IAAX,CAAlD;IACAH,MAAM,CAACC,gBAAP,CAAwB,UAAxB,EAAoCI,UAApC,EAAgD;MAAEF,OAAO,EAAE;IAAX,CAAhD;EACD,CAJQ,CAAT;EAMAZ,eAAe,CAAC,MAAM;IACpBS,MAAM,CAACM,mBAAP,CAA2B,YAA3B,EAAyCJ,YAAzC;IACAF,MAAM,CAACM,mBAAP,CAA2B,WAA3B,EAAwCF,WAAxC;IACAJ,MAAM,CAACM,mBAAP,CAA2B,UAA3B,EAAuCD,UAAvC;EACD,CAJc,CAAf;EAMA,MAAME,YAAY,GAAGjB,QAAQ,CAAC,MAAMS,QAAQ,CAACS,KAAT,KAAmB,QAA1B,CAA7B;EAEA,MAAM;IAAEC,WAAF;IAAeC,QAAf;IAAyBC;EAAzB,IAAyCtB,WAAW,EAA1D;EACA,IAAIuB,aAAa,GAAG,KAApB;EACA,MAAMC,UAAU,GAAGpB,GAAG,CAAC,KAAD,CAAtB;EACA,MAAMqB,YAAY,GAAGrB,GAAG,CAAC,CAAD,CAAxB;EACA,MAAMsB,MAAM,GAAGtB,GAAG,CAAC,CAAD,CAAlB;EACA,IAAIuB,KAAJ;;EAEA,SAASC,SAAT,CAAoBC,GAApB,EAAiCC,MAAjC,EAA0D;IACxD,OAAO,CACLpB,QAAQ,CAACS,KAAT,KAAmB,MAAnB,GAA4BU,GAA5B,GACEnB,QAAQ,CAACS,KAAT,KAAmB,OAAnB,GAA6BY,QAAQ,CAACC,eAAT,CAAyBC,WAAzB,GAAuCJ,GAApE,GACAnB,QAAQ,CAACS,KAAT,KAAmB,QAAnB,GAA8BY,QAAQ,CAACC,eAAT,CAAyBE,YAAzB,GAAwCL,GAAtE,GACAM,IAAI,EAJD,KAKFL,MAAM,GAAGtB,KAAK,CAACW,KAAT,GAAiB,CALrB,CAAP;EAMD;;EAED,SAASiB,WAAT,CAAsBP,GAAtB,EAAyD;IAAA,IAAtBQ,KAAsB,uEAAd,IAAc;IACvD,MAAMC,QAAQ,GACZ5B,QAAQ,CAACS,KAAT,KAAmB,MAAnB,GAA4B,CAACU,GAAG,GAAGH,MAAM,CAACP,KAAd,IAAuBX,KAAK,CAACW,KAAzD,GACET,QAAQ,CAACS,KAAT,KAAmB,OAAnB,GAA6B,CAACY,QAAQ,CAACC,eAAT,CAAyBC,WAAzB,GAAuCJ,GAAvC,GAA6CH,MAAM,CAACP,KAArD,IAA8DX,KAAK,CAACW,KAAjG,GACAT,QAAQ,CAACS,KAAT,KAAmB,QAAnB,GAA8B,CAACY,QAAQ,CAACC,eAAT,CAAyBE,YAAzB,GAAwCL,GAAxC,GAA8CH,MAAM,CAACP,KAAtD,IAA+DX,KAAK,CAACW,KAAnG,GACAgB,IAAI,EAJR;IAMA,OAAOE,KAAK,GAAGE,IAAI,CAACC,GAAL,CAAS,CAAT,EAAYD,IAAI,CAACE,GAAL,CAAS,CAAT,EAAYH,QAAZ,CAAZ,CAAH,GAAwCA,QAApD;EACD;;EAED,SAASzB,YAAT,CAAuB6B,CAAvB,EAAsC;IACpC,IAAIjC,SAAS,CAACU,KAAd,EAAqB;IAErB,MAAMwB,MAAM,GAAGD,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBC,OAAnC;IACA,MAAMC,MAAM,GAAGJ,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBG,OAAnC;IAEA,MAAMC,SAAS,GAAG,EAAlB;IACA,MAAMC,WAAoB,GACxBvC,QAAQ,CAACS,KAAT,KAAmB,MAAnB,GAA4BwB,MAAM,GAAGK,SAArC,GACEtC,QAAQ,CAACS,KAAT,KAAmB,OAAnB,GAA6BwB,MAAM,GAAGZ,QAAQ,CAACC,eAAT,CAAyBC,WAAzB,GAAuCe,SAA7E,GACAtC,QAAQ,CAACS,KAAT,KAAmB,QAAnB,GAA8B2B,MAAM,GAAGf,QAAQ,CAACC,eAAT,CAAyBE,YAAzB,GAAwCc,SAA/E,GACAb,IAAI,EAJR;IAMA,MAAMe,SAAkB,GAAG5C,QAAQ,CAACa,KAAT,KACzBT,QAAQ,CAACS,KAAT,KAAmB,MAAnB,GAA4BwB,MAAM,GAAGnC,KAAK,CAACW,KAA3C,GACET,QAAQ,CAACS,KAAT,KAAmB,OAAnB,GAA6BwB,MAAM,GAAGZ,QAAQ,CAACC,eAAT,CAAyBC,WAAzB,GAAuCzB,KAAK,CAACW,KAAnF,GACAT,QAAQ,CAACS,KAAT,KAAmB,QAAnB,GAA8B2B,MAAM,GAAGf,QAAQ,CAACC,eAAT,CAAyBE,YAAzB,GAAwC1B,KAAK,CAACW,KAArF,GACAgB,IAAI,EAJmB,CAA3B;;IAOA,IACEc,WAAW,IACXC,SADA,IAEC5C,QAAQ,CAACa,KAAT,IAAkBZ,WAAW,CAACY,KAHjC,EAIE;MACAI,aAAa,GAAG,IAAhB;MACAI,KAAK,GAAG,CAACgB,MAAD,EAASG,MAAT,CAAR;MAEApB,MAAM,CAACP,KAAP,GAAeS,SAAS,CAACV,YAAY,CAACC,KAAb,GAAqBwB,MAArB,GAA8BG,MAA/B,EAAuCxC,QAAQ,CAACa,KAAhD,CAAxB;MACAM,YAAY,CAACN,KAAb,GAAqBiB,WAAW,CAAClB,YAAY,CAACC,KAAb,GAAqBwB,MAArB,GAA8BG,MAA/B,CAAhC;MAEAzB,QAAQ,CAACqB,CAAD,CAAR;MACAtB,WAAW,CAACsB,CAAD,CAAX;IACD;EACF;;EAED,SAAS3B,WAAT,CAAsB2B,CAAtB,EAAqC;IACnC,MAAMC,MAAM,GAAGD,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBC,OAAnC;IACA,MAAMC,MAAM,GAAGJ,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBG,OAAnC;;IAEA,IAAIxB,aAAJ,EAAmB;MACjB,IAAI,CAACmB,CAAC,CAACS,UAAP,EAAmB;QACjB5B,aAAa,GAAG,KAAhB;QACA;MACD;;MAED,MAAM6B,EAAE,GAAGb,IAAI,CAACc,GAAL,CAASV,MAAM,GAAGhB,KAAK,CAAE,CAAF,CAAvB,CAAX;MACA,MAAM2B,EAAE,GAAGf,IAAI,CAACc,GAAL,CAASP,MAAM,GAAGnB,KAAK,CAAE,CAAF,CAAvB,CAAX;MAEA,MAAM4B,YAAY,GAAGrC,YAAY,CAACC,KAAb,GACjBiC,EAAE,GAAGE,EAAL,IAAWF,EAAE,GAAG,CADC,GAEjBE,EAAE,GAAGF,EAAL,IAAWE,EAAE,GAAG,CAFpB;;MAIA,IAAIC,YAAJ,EAAkB;QAChB/B,UAAU,CAACL,KAAX,GAAmB,IAAnB;QACAI,aAAa,GAAG,KAAhB;MACD,CAHD,MAGO,IAAI,CAACL,YAAY,CAACC,KAAb,GAAqBmC,EAArB,GAA0BF,EAA3B,IAAiC,CAArC,EAAwC;QAC7C7B,aAAa,GAAG,KAAhB;MACD;IACF;;IAED,IAAI,CAACC,UAAU,CAACL,KAAhB,EAAuB;IAEvBuB,CAAC,CAACc,cAAF;IACApC,WAAW,CAACsB,CAAD,CAAX;IAEA,MAAMJ,QAAQ,GAAGF,WAAW,CAAClB,YAAY,CAACC,KAAb,GAAqBwB,MAArB,GAA8BG,MAA/B,EAAuC,KAAvC,CAA5B;IACArB,YAAY,CAACN,KAAb,GAAqBoB,IAAI,CAACC,GAAL,CAAS,CAAT,EAAYD,IAAI,CAACE,GAAL,CAAS,CAAT,EAAYH,QAAZ,CAAZ,CAArB;;IAEA,IAAIA,QAAQ,GAAG,CAAf,EAAkB;MAChBZ,MAAM,CAACP,KAAP,GAAeS,SAAS,CAACV,YAAY,CAACC,KAAb,GAAqBwB,MAArB,GAA8BG,MAA/B,EAAuC,IAAvC,CAAxB;IACD,CAFD,MAEO,IAAIR,QAAQ,GAAG,CAAf,EAAkB;MACvBZ,MAAM,CAACP,KAAP,GAAeS,SAAS,CAACV,YAAY,CAACC,KAAb,GAAqBwB,MAArB,GAA8BG,MAA/B,EAAuC,KAAvC,CAAxB;IACD;EACF;;EAED,SAAS9B,UAAT,CAAqB0B,CAArB,EAAoC;IAClCnB,aAAa,GAAG,KAAhB;IAEA,IAAI,CAACC,UAAU,CAACL,KAAhB,EAAuB;IAEvBC,WAAW,CAACsB,CAAD,CAAX;IAEAlB,UAAU,CAACL,KAAX,GAAmB,KAAnB;IAEA,MAAMsC,QAAQ,GAAGnC,WAAW,CAACoB,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBc,UAArB,CAA5B;IACA,MAAMC,EAAE,GAAGpB,IAAI,CAACc,GAAL,CAASI,QAAQ,CAACG,CAAlB,CAAX;IACA,MAAMC,EAAE,GAAGtB,IAAI,CAACc,GAAL,CAASI,QAAQ,CAACK,CAAlB,CAAX;IACA,MAAMP,YAAY,GAAGrC,YAAY,CAACC,KAAb,GACjBwC,EAAE,GAAGE,EAAL,IAAWF,EAAE,GAAG,GADC,GAEjBE,EAAE,GAAGF,EAAL,IAAWE,EAAE,GAAG,CAFpB;;IAIA,IAAIN,YAAJ,EAAkB;MAChBjD,QAAQ,CAACa,KAAT,GAAiBsC,QAAQ,CAACM,SAAT,MAAwB;QACvCC,IAAI,EAAE,OADiC;QAEvCC,KAAK,EAAE,MAFgC;QAGvCC,MAAM,EAAE;MAH+B,EAIvCxD,QAAQ,CAACS,KAJ8B,KAIpBgB,IAAI,EAJR,CAAjB;IAKD,CAND,MAMO;MACL7B,QAAQ,CAACa,KAAT,GAAiBM,YAAY,CAACN,KAAb,GAAqB,GAAtC;IACD;EACF;;EAED,MAAMgD,UAAU,GAAGlE,QAAQ,CAAC,MAAM;IAChC,OAAOuB,UAAU,CAACL,KAAX,GAAmB;MACxBiD,SAAS,EACP1D,QAAQ,CAACS,KAAT,KAAmB,MAAnB,GAA6B,2BAA0BM,YAAY,CAACN,KAAb,GAAqBX,KAAK,CAACW,KAAM,MAAxF,GACET,QAAQ,CAACS,KAAT,KAAmB,OAAnB,GAA8B,0BAAyBM,YAAY,CAACN,KAAb,GAAqBX,KAAK,CAACW,KAAM,MAAxF,GACAT,QAAQ,CAACS,KAAT,KAAmB,QAAnB,GAA+B,0BAAyBM,YAAY,CAACN,KAAb,GAAqBX,KAAK,CAACW,KAAM,MAAzF,GACAgB,IAAI,EALgB;MAMxBkC,UAAU,EAAE;IANY,CAAnB,GAOHC,SAPJ;EAQD,CAT0B,CAA3B;EAWA,OAAO;IACL9C,UADK;IAELC,YAFK;IAGL0C;EAHK,CAAP;AAKD;;AAED,SAAShC,IAAT,GAAwB;EACtB,MAAM,IAAIoC,KAAJ,EAAN;AACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"VNoSsr.mjs","names":["useHydration","defineComponent","ref","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 { ref } from 'vue'\n\nexport const VNoSsr = defineComponent({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = ref(false)\n\n useHydration(() => (show.value = true))\n\n return () => show.value && slots.default?.()\n },\n\n})\n"],"mappings":"AAAA;SACSA,Y,2CAET;;SACSC,e;AACT,SAASC,GAAT,QAAoB,KAApB;AAEA,OAAO,MAAMC,MAAM,GAAGF,eAAe,CAAC;EACpCG,IAAI,EAAE,QAD8B;;EAGpCC,KAAK,CAAEC,CAAF,QAAgB;IAAA,IAAX;MAAEC;IAAF,CAAW;IACnB,MAAMC,IAAI,GAAGN,GAAG,CAAC,KAAD,CAAhB;IAEAF,YAAY,CAAC,MAAOQ,IAAI,CAACC,KAAL,GAAa,IAArB,CAAZ;IAEA,OAAO;MAAA;;MAAA,OAAMD,IAAI,CAACC,KAAL,uBAAcF,KAAK,CAACG,OAApB,qBAAc,oBAAAH,KAAK,CAAnB,CAAN;IAAA,CAAP;EACD;;AATmC,CAAD,CAA9B"}
1
+ {"version":3,"file":"VNoSsr.mjs","names":["useHydration","defineComponent","ref","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 { ref } from 'vue'\n\nexport const VNoSsr = defineComponent({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = ref(false)\n\n useHydration(() => (show.value = true))\n\n return () => show.value && slots.default?.()\n },\n})\n"],"mappings":"AAAA;SACSA,Y,2CAET;;SACSC,e;AACT,SAASC,GAAT,QAAoB,KAApB;AAEA,OAAO,MAAMC,MAAM,GAAGF,eAAe,CAAC;EACpCG,IAAI,EAAE,QAD8B;;EAGpCC,KAAK,CAAEC,CAAF,QAAgB;IAAA,IAAX;MAAEC;IAAF,CAAW;IACnB,MAAMC,IAAI,GAAGN,GAAG,CAAC,KAAD,CAAhB;IAEAF,YAAY,CAAC,MAAOQ,IAAI,CAACC,KAAL,GAAa,IAArB,CAAZ;IAEA,OAAO;MAAA;;MAAA,OAAMD,IAAI,CAACC,KAAL,uBAAcF,KAAK,CAACG,OAApB,qBAAc,oBAAAH,KAAK,CAAnB,CAAN;IAAA,CAAP;EACD;;AATmC,CAAD,CAA9B"}
@@ -3,19 +3,19 @@ import { withDirectives as _withDirectives, resolveDirective as _resolveDirectiv
3
3
  import "./VOverlay.css"; // Composables
4
4
 
5
5
  import { makeActivatorProps, useActivator } from "./useActivator.mjs";
6
+ import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
7
+ import { makeLazyProps, useLazy } from "../../composables/lazy.mjs";
6
8
  import { makeLocationStrategyProps, useLocationStrategies } from "./locationStrategies.mjs";
7
9
  import { makeScrollStrategyProps, useScrollStrategies } from "./scrollStrategies.mjs";
8
10
  import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
9
11
  import { makeTransitionProps, MaybeTransition } from "../../composables/transition.mjs";
10
12
  import { useBackButton, useRouter } from "../../composables/router.mjs";
11
- import { useToggleScope } from "../../composables/toggleScope.mjs";
12
13
  import { useBackgroundColor } from "../../composables/color.mjs";
13
14
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
14
15
  import { useRtl } from "../../composables/rtl.mjs";
16
+ import { useStack } from "../../composables/stack.mjs";
15
17
  import { useTeleport } from "../../composables/teleport.mjs";
16
- import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
17
- import { makeLazyProps, useLazy } from "../../composables/lazy.mjs";
18
- import { useStack } from "../../composables/stack.mjs"; // Directives
18
+ import { useToggleScope } from "../../composables/toggleScope.mjs"; // Directives
19
19
 
20
20
  import { ClickOutside } from "../../directives/click-outside/index.mjs"; // Utilities
21
21
 
@@ -69,11 +69,11 @@ export const VOverlay = genericComponent()({
69
69
  },
70
70
  ...makeActivatorProps(),
71
71
  ...makeDimensionProps(),
72
+ ...makeLazyProps(),
72
73
  ...makeLocationStrategyProps(),
73
74
  ...makeScrollStrategyProps(),
74
75
  ...makeThemeProps(),
75
- ...makeTransitionProps(),
76
- ...makeLazyProps()
76
+ ...makeTransitionProps()
77
77
  },
78
78
  emits: {
79
79
  'click:outside': e => true,
@@ -101,7 +101,8 @@ export const VOverlay = genericComponent()({
101
101
  themeClasses
102
102
  } = provideTheme(props);
103
103
  const {
104
- rtlClasses
104
+ rtlClasses,
105
+ isRtl
105
106
  } = useRtl();
106
107
  const {
107
108
  hasContent,
@@ -135,6 +136,7 @@ export const VOverlay = genericComponent()({
135
136
  contentStyles,
136
137
  updateLocation
137
138
  } = useLocationStrategies(props, {
139
+ isRtl,
138
140
  contentEl,
139
141
  activatorEl,
140
142
  isActive
@@ -262,9 +264,9 @@ export const VOverlay = genericComponent()({
262
264
  })]);
263
265
  });
264
266
  return {
267
+ activatorEl,
265
268
  animateClick,
266
269
  contentEl,
267
- activatorEl,
268
270
  isTop,
269
271
  updateLocation
270
272
  };