vuetify 3.2.2 → 3.2.3

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 (299) hide show
  1. package/dist/json/attributes.json +538 -242
  2. package/dist/json/importMap.json +8 -8
  3. package/dist/json/tags.json +77 -2
  4. package/dist/json/web-types.json +1284 -558
  5. package/dist/vuetify-labs.css +123 -119
  6. package/dist/vuetify-labs.d.ts +2222 -11380
  7. package/dist/vuetify-labs.esm.js +2230 -2144
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +2230 -2144
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +39 -35
  12. package/dist/vuetify.d.ts +1225 -11178
  13. package/dist/vuetify.esm.js +1691 -1591
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +1691 -1591
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +597 -597
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.ts +1 -3
  21. package/lib/blueprints/md1.d.ts +1 -3
  22. package/lib/blueprints/md2.d.ts +1 -3
  23. package/lib/blueprints/md3.d.ts +1 -3
  24. package/lib/components/VAlert/VAlert.mjs +47 -46
  25. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  26. package/lib/components/VAlert/index.d.ts +2 -2
  27. package/lib/components/VApp/VApp.mjs +9 -8
  28. package/lib/components/VApp/VApp.mjs.map +1 -1
  29. package/lib/components/VAppBar/VAppBar.mjs +21 -20
  30. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  31. package/lib/components/VAppBar/VAppBarNavIcon.mjs +8 -5
  32. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  33. package/lib/components/VAppBar/index.d.ts +4 -4
  34. package/lib/components/VAutocomplete/VAutocomplete.css +0 -4
  35. package/lib/components/VAutocomplete/VAutocomplete.mjs +28 -33
  36. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  37. package/lib/components/VAutocomplete/VAutocomplete.sass +0 -5
  38. package/lib/components/VAutocomplete/index.d.ts +67 -1174
  39. package/lib/components/VBadge/VBadge.mjs +33 -32
  40. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  41. package/lib/components/VBanner/VBanner.mjs +21 -20
  42. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  43. package/lib/components/VBanner/VBannerActions.mjs +7 -6
  44. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  45. package/lib/components/VBanner/index.d.ts +2 -2
  46. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +35 -34
  47. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  48. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +24 -23
  49. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  50. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +6 -5
  51. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  52. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +15 -14
  53. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  54. package/lib/components/VBreadcrumbs/index.d.ts +1 -0
  55. package/lib/components/VBtnToggle/VBtnToggle.mjs +6 -5
  56. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  57. package/lib/components/VCard/VCard.mjs +38 -37
  58. package/lib/components/VCard/VCard.mjs.map +1 -1
  59. package/lib/components/VCard/VCardItem.mjs +12 -11
  60. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  61. package/lib/components/VCard/index.d.ts +4 -4
  62. package/lib/components/VCarousel/VCarousel.mjs +28 -27
  63. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  64. package/lib/components/VCarousel/VCarouselItem.mjs +18 -16
  65. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  66. package/lib/components/VCarousel/index.d.ts +170 -20
  67. package/lib/components/VCheckbox/VCheckbox.mjs +6 -5
  68. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  69. package/lib/components/VCheckbox/index.d.ts +24 -12
  70. package/lib/components/VChip/VChip.css +8 -0
  71. package/lib/components/VChip/VChip.mjs +60 -57
  72. package/lib/components/VChip/VChip.mjs.map +1 -1
  73. package/lib/components/VChip/VChip.sass +10 -0
  74. package/lib/components/VChip/index.d.ts +8 -8
  75. package/lib/components/VChipGroup/VChipGroup.mjs +19 -18
  76. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  77. package/lib/components/VColorPicker/VColorPicker.mjs +44 -39
  78. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  79. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +21 -20
  80. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  81. package/lib/components/VColorPicker/VColorPickerEdit.mjs +17 -16
  82. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  83. package/lib/components/VColorPicker/VColorPickerPreview.mjs +10 -9
  84. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  85. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +12 -11
  86. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  87. package/lib/components/VColorPicker/index.d.ts +4 -4
  88. package/lib/components/VColorPicker/util/index.mjs +2 -2
  89. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  90. package/lib/components/VCombobox/VCombobox.mjs +32 -36
  91. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  92. package/lib/components/VCombobox/index.d.ts +67 -1171
  93. package/lib/components/VCounter/VCounter.mjs +16 -15
  94. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  95. package/lib/components/VCounter/index.d.ts +25 -1774
  96. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +9 -8
  97. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  98. package/lib/components/VDialog/VDialog.mjs +18 -17
  99. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  100. package/lib/components/VDialog/index.d.ts +130 -1120
  101. package/lib/components/VDivider/VDivider.mjs +11 -10
  102. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  103. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +15 -15
  104. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  105. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +6 -5
  106. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  107. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +3 -5
  108. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  109. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +15 -14
  110. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  111. package/lib/components/VExpansionPanel/index.d.ts +15 -15
  112. package/lib/components/VField/VField.mjs +6 -2
  113. package/lib/components/VField/VField.mjs.map +1 -1
  114. package/lib/components/VField/VFieldLabel.mjs +6 -5
  115. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  116. package/lib/components/VFileInput/VFileInput.mjs +35 -34
  117. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  118. package/lib/components/VFileInput/index.d.ts +3 -3
  119. package/lib/components/VFooter/VFooter.mjs +19 -18
  120. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  121. package/lib/components/VForm/VForm.mjs +6 -5
  122. package/lib/components/VForm/VForm.mjs.map +1 -1
  123. package/lib/components/VForm/index.d.ts +3 -3
  124. package/lib/components/VGrid/VCol.mjs +26 -25
  125. package/lib/components/VGrid/VCol.mjs.map +1 -1
  126. package/lib/components/VGrid/VContainer.mjs +16 -11
  127. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  128. package/lib/components/VGrid/VRow.mjs +26 -25
  129. package/lib/components/VGrid/VRow.mjs.map +1 -1
  130. package/lib/components/VHover/VHover.mjs +10 -9
  131. package/lib/components/VHover/VHover.mjs.map +1 -1
  132. package/lib/components/VImg/VImg.mjs +29 -28
  133. package/lib/components/VImg/VImg.mjs.map +1 -1
  134. package/lib/components/VItemGroup/VItemGroup.mjs +10 -9
  135. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  136. package/lib/components/VLabel/VLabel.mjs +8 -7
  137. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  138. package/lib/components/VLayout/VLayout.mjs +6 -5
  139. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  140. package/lib/components/VLayout/VLayoutItem.mjs +15 -14
  141. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  142. package/lib/components/VLazy/VLazy.mjs +21 -20
  143. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  144. package/lib/components/VList/VList.mjs +33 -32
  145. package/lib/components/VList/VList.mjs.map +1 -1
  146. package/lib/components/VList/VListChildren.mjs +5 -4
  147. package/lib/components/VList/VListChildren.mjs.map +1 -1
  148. package/lib/components/VList/VListGroup.mjs +2 -4
  149. package/lib/components/VList/VListGroup.mjs.map +1 -1
  150. package/lib/components/VList/VListItem.mjs +42 -41
  151. package/lib/components/VList/VListItem.mjs.map +1 -1
  152. package/lib/components/VList/VListItemAction.mjs +8 -7
  153. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  154. package/lib/components/VList/VListItemMedia.mjs +8 -7
  155. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  156. package/lib/components/VList/VListSubheader.mjs +10 -9
  157. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  158. package/lib/components/VList/index.d.ts +30 -30
  159. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +12 -11
  160. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  161. package/lib/components/VMain/VMain.mjs +9 -8
  162. package/lib/components/VMain/VMain.mjs.map +1 -1
  163. package/lib/components/VMenu/VMenu.mjs +18 -17
  164. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  165. package/lib/components/VMenu/index.d.ts +40 -1030
  166. package/lib/components/VMessages/VMessages.mjs +18 -17
  167. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  168. package/lib/components/VMessages/index.d.ts +25 -1774
  169. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +48 -47
  170. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  171. package/lib/components/VNavigationDrawer/sticky.mjs +9 -3
  172. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  173. package/lib/components/VOverlay/locationStrategies.mjs +5 -3
  174. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  175. package/lib/components/VPagination/VPagination.mjs +82 -81
  176. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  177. package/lib/components/VPagination/index.d.ts +8 -8
  178. package/lib/components/VParallax/VParallax.mjs +9 -8
  179. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  180. package/lib/components/VProgressCircular/VProgressCircular.mjs +25 -24
  181. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  182. package/lib/components/VProgressLinear/VProgressLinear.mjs +44 -42
  183. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  184. package/lib/components/VProgressLinear/index.d.ts +8 -8
  185. package/lib/components/VRadio/VRadio.mjs +8 -7
  186. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  187. package/lib/components/VRadio/index.d.ts +18 -12
  188. package/lib/components/VRadioGroup/VRadioGroup.mjs +22 -21
  189. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  190. package/lib/components/VRadioGroup/index.d.ts +16 -10
  191. package/lib/components/VRangeSlider/VRangeSlider.mjs +18 -13
  192. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  193. package/lib/components/VRating/VRating.mjs +44 -43
  194. package/lib/components/VRating/VRating.mjs.map +1 -1
  195. package/lib/components/VRating/index.d.ts +8 -8
  196. package/lib/components/VResponsive/VResponsive.mjs +8 -7
  197. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  198. package/lib/components/VSelect/VSelect.mjs +20 -19
  199. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  200. package/lib/components/VSelect/index.d.ts +64 -2506
  201. package/lib/components/VSelectionControl/index.d.ts +42 -36
  202. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +10 -10
  203. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  204. package/lib/components/VSelectionControlGroup/index.d.ts +28 -28
  205. package/lib/components/VSheet/VSheet.mjs +1 -3
  206. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  207. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +1 -3
  208. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  209. package/lib/components/VSlider/VSlider.mjs +18 -13
  210. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  211. package/lib/components/VSlider/VSliderThumb.mjs +26 -25
  212. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  213. package/lib/components/VSlider/VSliderTrack.mjs +13 -12
  214. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  215. package/lib/components/VSnackbar/VSnackbar.mjs +20 -19
  216. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  217. package/lib/components/VSwitch/VSwitch.mjs +13 -12
  218. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  219. package/lib/components/VSwitch/index.d.ts +18 -12
  220. package/lib/components/VSystemBar/VSystemBar.mjs +13 -12
  221. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  222. package/lib/components/VTable/VTable.mjs +12 -11
  223. package/lib/components/VTable/VTable.mjs.map +1 -1
  224. package/lib/components/VTabs/VTab.mjs +15 -14
  225. package/lib/components/VTabs/VTab.mjs.map +1 -1
  226. package/lib/components/VTabs/VTabs.mjs +28 -27
  227. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  228. package/lib/components/VTabs/index.d.ts +12 -12
  229. package/lib/components/VTextField/index.d.ts +3 -3
  230. package/lib/components/VTextarea/VTextarea.mjs +26 -25
  231. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  232. package/lib/components/VTextarea/index.d.ts +3 -3
  233. package/lib/components/VThemeProvider/VThemeProvider.mjs +8 -7
  234. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  235. package/lib/components/VTimeline/VTimeline.mjs +46 -41
  236. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  237. package/lib/components/VTimeline/VTimelineDivider.mjs +14 -13
  238. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  239. package/lib/components/VTimeline/VTimelineItem.mjs +21 -20
  240. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  241. package/lib/components/VToolbar/VToolbar.mjs +6 -2
  242. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  243. package/lib/components/VToolbar/VToolbarItems.mjs +8 -7
  244. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  245. package/lib/components/VToolbar/index.d.ts +11 -11
  246. package/lib/components/VTooltip/VTooltip.mjs +20 -19
  247. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  248. package/lib/components/VValidation/VValidation.mjs +1 -3
  249. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  250. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +11 -10
  251. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  252. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +6 -5
  253. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  254. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  255. package/lib/components/VWindow/VWindowItem.mjs +15 -14
  256. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  257. package/lib/components/VWindow/index.d.ts +9 -9
  258. package/lib/components/index.d.ts +1301 -11252
  259. package/lib/components/transitions/createTransition.mjs +16 -15
  260. package/lib/components/transitions/createTransition.mjs.map +1 -1
  261. package/lib/components/transitions/dialog-transition.mjs +5 -4
  262. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  263. package/lib/components/transitions/index.d.ts +143 -143
  264. package/lib/composables/forwardRefs.mjs.map +1 -1
  265. package/lib/composables/theme.mjs +3 -3
  266. package/lib/composables/theme.mjs.map +1 -1
  267. package/lib/directives/click-outside/index.mjs +1 -1
  268. package/lib/directives/click-outside/index.mjs.map +1 -1
  269. package/lib/entry-bundler.mjs +1 -1
  270. package/lib/framework.mjs +1 -1
  271. package/lib/index.d.ts +3 -5
  272. package/lib/labs/VDataTable/VDataTable.mjs +53 -59
  273. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  274. package/lib/labs/VDataTable/VDataTableFooter.mjs +64 -63
  275. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  276. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +8 -7
  277. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  278. package/lib/labs/VDataTable/VDataTableHeaders.mjs +16 -15
  279. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  280. package/lib/labs/VDataTable/VDataTableRow.mjs +7 -6
  281. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  282. package/lib/labs/VDataTable/VDataTableRows.mjs +20 -19
  283. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  284. package/lib/labs/VDataTable/VDataTableServer.mjs +53 -64
  285. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  286. package/lib/labs/VDataTable/VDataTableVirtual.mjs +65 -72
  287. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  288. package/lib/labs/VDataTable/index.d.ts +991 -206
  289. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +54 -48
  290. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  291. package/lib/labs/VInfiniteScroll/index.d.ts +16 -1
  292. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +18 -17
  293. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  294. package/lib/labs/VSkeletonLoader/index.d.ts +9 -9
  295. package/lib/labs/components.d.ts +1011 -211
  296. package/lib/labs/date/date.mjs +7 -7
  297. package/lib/labs/date/date.mjs.map +1 -1
  298. package/lib/labs/date/index.d.ts +1 -3
  299. package/package.json +2 -2
@@ -1,25 +1,26 @@
1
1
  // Utilities
2
+ import { genericComponent, propsFactory } from "../../util/index.mjs";
2
3
  import { h, Transition, TransitionGroup } from 'vue';
3
- import { genericComponent } from "../../util/index.mjs"; // Types
4
+
5
+ // Types
6
+
7
+ export const makeTransitionProps = propsFactory({
8
+ disabled: Boolean,
9
+ group: Boolean,
10
+ hideOnLeave: Boolean,
11
+ leaveAbsolute: Boolean,
12
+ mode: String,
13
+ origin: String
14
+ }, 'transition');
4
15
  export function createCssTransition(name) {
5
16
  let origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'center center';
6
17
  let mode = arguments.length > 2 ? arguments[2] : undefined;
7
18
  return genericComponent()({
8
19
  name,
9
- props: {
10
- disabled: Boolean,
11
- group: Boolean,
12
- hideOnLeave: Boolean,
13
- leaveAbsolute: Boolean,
14
- mode: {
15
- type: String,
16
- default: mode
17
- },
18
- origin: {
19
- type: String,
20
- default: origin
21
- }
22
- },
20
+ props: makeTransitionProps({
21
+ mode,
22
+ origin
23
+ }),
23
24
  setup(props, _ref) {
24
25
  let {
25
26
  slots
@@ -1 +1 @@
1
- {"version":3,"file":"createTransition.mjs","names":["h","Transition","TransitionGroup","genericComponent","createCssTransition","name","origin","arguments","length","undefined","mode","props","disabled","Boolean","group","hideOnLeave","leaveAbsolute","type","String","default","setup","_ref","slots","functions","onBeforeEnter","el","style","transformOrigin","onLeave","offsetTop","offsetLeft","offsetWidth","offsetHeight","_transitionInitialStyles","position","top","left","width","height","setProperty","onAfterLeave","tag","css","createJavascriptTransition","_ref2"],"sources":["../../../src/components/transitions/createTransition.ts"],"sourcesContent":["// Utilities\nimport { h, Transition, TransitionGroup } from 'vue'\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { FunctionalComponent, PropType } from 'vue'\n\nexport function createCssTransition (\n name: string,\n origin = 'center center',\n mode?: string\n) {\n return genericComponent()({\n name,\n\n props: {\n disabled: Boolean,\n group: Boolean,\n hideOnLeave: Boolean,\n leaveAbsolute: Boolean,\n mode: {\n type: String,\n default: mode,\n },\n origin: {\n type: String,\n default: origin,\n },\n },\n\n setup (props, { slots }) {\n const functions = {\n onBeforeEnter (el: HTMLElement) {\n el.style.transformOrigin = props.origin\n },\n onLeave (el: HTMLElement) {\n if (props.leaveAbsolute) {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = `${offsetTop}px`\n el.style.left = `${offsetLeft}px`\n el.style.width = `${offsetWidth}px`\n el.style.height = `${offsetHeight}px`\n }\n\n if (props.hideOnLeave) {\n el.style.setProperty('display', 'none', 'important')\n }\n },\n onAfterLeave (el: HTMLElement) {\n if (props.leaveAbsolute && el?._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n },\n }\n\n return () => {\n const tag = props.group ? TransitionGroup : Transition\n\n return h(tag as FunctionalComponent, {\n name: props.disabled ? '' : name,\n css: !props.disabled,\n ...(props.group ? undefined : { mode: props.mode }),\n ...(props.disabled ? {} : functions),\n }, slots.default)\n }\n },\n })\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record<string, any>,\n mode = 'in-out'\n) {\n return genericComponent()({\n name,\n\n props: {\n mode: {\n type: String as PropType<'in-out' | 'out-in' | 'default'>,\n default: mode,\n },\n disabled: Boolean,\n },\n\n setup (props, { slots }) {\n return () => {\n return h(Transition, {\n name: props.disabled ? '' : name,\n css: !props.disabled,\n // mode: props.mode, // TODO: vuejs/vue-next#3104\n ...(props.disabled ? {} : functions),\n }, slots.default)\n }\n },\n })\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"createTransition.mjs","names":["genericComponent","propsFactory","h","Transition","TransitionGroup","makeTransitionProps","disabled","Boolean","group","hideOnLeave","leaveAbsolute","mode","String","origin","createCssTransition","name","arguments","length","undefined","props","setup","_ref","slots","functions","onBeforeEnter","el","style","transformOrigin","onLeave","offsetTop","offsetLeft","offsetWidth","offsetHeight","_transitionInitialStyles","position","top","left","width","height","setProperty","onAfterLeave","tag","css","default","createJavascriptTransition","type","_ref2"],"sources":["../../../src/components/transitions/createTransition.ts"],"sourcesContent":["// Utilities\nimport { genericComponent, propsFactory } from '@/util'\nimport { h, Transition, TransitionGroup } from 'vue'\n\n// Types\nimport type { FunctionalComponent, PropType } from 'vue'\n\nexport const makeTransitionProps = propsFactory({\n disabled: Boolean,\n group: Boolean,\n hideOnLeave: Boolean,\n leaveAbsolute: Boolean,\n mode: String,\n origin: String,\n}, 'transition')\n\nexport function createCssTransition (\n name: string,\n origin = 'center center',\n mode?: string\n) {\n return genericComponent()({\n name,\n\n props: makeTransitionProps({\n mode,\n origin,\n }),\n\n setup (props, { slots }) {\n const functions = {\n onBeforeEnter (el: HTMLElement) {\n el.style.transformOrigin = props.origin\n },\n onLeave (el: HTMLElement) {\n if (props.leaveAbsolute) {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = `${offsetTop}px`\n el.style.left = `${offsetLeft}px`\n el.style.width = `${offsetWidth}px`\n el.style.height = `${offsetHeight}px`\n }\n\n if (props.hideOnLeave) {\n el.style.setProperty('display', 'none', 'important')\n }\n },\n onAfterLeave (el: HTMLElement) {\n if (props.leaveAbsolute && el?._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n },\n }\n\n return () => {\n const tag = props.group ? TransitionGroup : Transition\n\n return h(tag as FunctionalComponent, {\n name: props.disabled ? '' : name,\n css: !props.disabled,\n ...(props.group ? undefined : { mode: props.mode }),\n ...(props.disabled ? {} : functions),\n }, slots.default)\n }\n },\n })\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record<string, any>,\n mode = 'in-out'\n) {\n return genericComponent()({\n name,\n\n props: {\n mode: {\n type: String as PropType<'in-out' | 'out-in' | 'default'>,\n default: mode,\n },\n disabled: Boolean,\n },\n\n setup (props, { slots }) {\n return () => {\n return h(Transition, {\n name: props.disabled ? '' : name,\n css: !props.disabled,\n // mode: props.mode, // TODO: vuejs/vue-next#3104\n ...(props.disabled ? {} : functions),\n }, slots.default)\n }\n },\n })\n}\n"],"mappings":"AAAA;AAAA,SACSA,gBAAgB,EAAEC,YAAY;AACvC,SAASC,CAAC,EAAEC,UAAU,EAAEC,eAAe,QAAQ,KAAK;;AAEpD;;AAGA,OAAO,MAAMC,mBAAmB,GAAGJ,YAAY,CAAC;EAC9CK,QAAQ,EAAEC,OAAO;EACjBC,KAAK,EAAED,OAAO;EACdE,WAAW,EAAEF,OAAO;EACpBG,aAAa,EAAEH,OAAO;EACtBI,IAAI,EAAEC,MAAM;EACZC,MAAM,EAAED;AACV,CAAC,EAAE,YAAY,CAAC;AAEhB,OAAO,SAASE,mBAAmBA,CACjCC,IAAY,EAGZ;EAAA,IAFAF,MAAM,GAAAG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,eAAe;EAAA,IACxBL,IAAa,GAAAK,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;EAEb,OAAOlB,gBAAgB,EAAE,CAAC;IACxBe,IAAI;IAEJI,KAAK,EAAEd,mBAAmB,CAAC;MACzBM,IAAI;MACJE;IACF,CAAC,CAAC;IAEFO,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;MAAA,IAAX;QAAEC;MAAM,CAAC,GAAAD,IAAA;MACrB,MAAME,SAAS,GAAG;QAChBC,aAAaA,CAAEC,EAAe,EAAE;UAC9BA,EAAE,CAACC,KAAK,CAACC,eAAe,GAAGR,KAAK,CAACN,MAAM;QACzC,CAAC;QACDe,OAAOA,CAAEH,EAAe,EAAE;UACxB,IAAIN,KAAK,CAACT,aAAa,EAAE;YACvB,MAAM;cAAEmB,SAAS;cAAEC,UAAU;cAAEC,WAAW;cAAEC;YAAa,CAAC,GAAGP,EAAE;YAC/DA,EAAE,CAACQ,wBAAwB,GAAG;cAC5BC,QAAQ,EAAET,EAAE,CAACC,KAAK,CAACQ,QAAQ;cAC3BC,GAAG,EAAEV,EAAE,CAACC,KAAK,CAACS,GAAG;cACjBC,IAAI,EAAEX,EAAE,CAACC,KAAK,CAACU,IAAI;cACnBC,KAAK,EAAEZ,EAAE,CAACC,KAAK,CAACW,KAAK;cACrBC,MAAM,EAAEb,EAAE,CAACC,KAAK,CAACY;YACnB,CAAC;YACDb,EAAE,CAACC,KAAK,CAACQ,QAAQ,GAAG,UAAU;YAC9BT,EAAE,CAACC,KAAK,CAACS,GAAG,GAAI,GAAEN,SAAU,IAAG;YAC/BJ,EAAE,CAACC,KAAK,CAACU,IAAI,GAAI,GAAEN,UAAW,IAAG;YACjCL,EAAE,CAACC,KAAK,CAACW,KAAK,GAAI,GAAEN,WAAY,IAAG;YACnCN,EAAE,CAACC,KAAK,CAACY,MAAM,GAAI,GAAEN,YAAa,IAAG;UACvC;UAEA,IAAIb,KAAK,CAACV,WAAW,EAAE;YACrBgB,EAAE,CAACC,KAAK,CAACa,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC;UACtD;QACF,CAAC;QACDC,YAAYA,CAAEf,EAAe,EAAE;UAC7B,IAAIN,KAAK,CAACT,aAAa,IAAIe,EAAE,EAAEQ,wBAAwB,EAAE;YACvD,MAAM;cAAEC,QAAQ;cAAEC,GAAG;cAAEC,IAAI;cAAEC,KAAK;cAAEC;YAAO,CAAC,GAAGb,EAAE,CAACQ,wBAAwB;YAC1E,OAAOR,EAAE,CAACQ,wBAAwB;YAClCR,EAAE,CAACC,KAAK,CAACQ,QAAQ,GAAGA,QAAQ,IAAI,EAAE;YAClCT,EAAE,CAACC,KAAK,CAACS,GAAG,GAAGA,GAAG,IAAI,EAAE;YACxBV,EAAE,CAACC,KAAK,CAACU,IAAI,GAAGA,IAAI,IAAI,EAAE;YAC1BX,EAAE,CAACC,KAAK,CAACW,KAAK,GAAGA,KAAK,IAAI,EAAE;YAC5BZ,EAAE,CAACC,KAAK,CAACY,MAAM,GAAGA,MAAM,IAAI,EAAE;UAChC;QACF;MACF,CAAC;MAED,OAAO,MAAM;QACX,MAAMG,GAAG,GAAGtB,KAAK,CAACX,KAAK,GAAGJ,eAAe,GAAGD,UAAU;QAEtD,OAAOD,CAAC,CAACuC,GAAG,EAAyB;UACnC1B,IAAI,EAAEI,KAAK,CAACb,QAAQ,GAAG,EAAE,GAAGS,IAAI;UAChC2B,GAAG,EAAE,CAACvB,KAAK,CAACb,QAAQ;UACpB,IAAIa,KAAK,CAACX,KAAK,GAAGU,SAAS,GAAG;YAAEP,IAAI,EAAEQ,KAAK,CAACR;UAAK,CAAC,CAAC;UACnD,IAAIQ,KAAK,CAACb,QAAQ,GAAG,CAAC,CAAC,GAAGiB,SAAS;QACrC,CAAC,EAAED,KAAK,CAACqB,OAAO,CAAC;MACnB,CAAC;IACH;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,0BAA0BA,CACxC7B,IAAY,EACZQ,SAA8B,EAE9B;EAAA,IADAZ,IAAI,GAAAK,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,QAAQ;EAEf,OAAOhB,gBAAgB,EAAE,CAAC;IACxBe,IAAI;IAEJI,KAAK,EAAE;MACLR,IAAI,EAAE;QACJkC,IAAI,EAAEjC,MAAmD;QACzD+B,OAAO,EAAEhC;MACX,CAAC;MACDL,QAAQ,EAAEC;IACZ,CAAC;IAEDa,KAAKA,CAAED,KAAK,EAAA2B,KAAA,EAAa;MAAA,IAAX;QAAExB;MAAM,CAAC,GAAAwB,KAAA;MACrB,OAAO,MAAM;QACX,OAAO5C,CAAC,CAACC,UAAU,EAAE;UACnBY,IAAI,EAAEI,KAAK,CAACb,QAAQ,GAAG,EAAE,GAAGS,IAAI;UAChC2B,GAAG,EAAE,CAACvB,KAAK,CAACb,QAAQ;UACpB;UACA,IAAIa,KAAK,CAACb,QAAQ,GAAG,CAAC,CAAC,GAAGiB,SAAS;QACrC,CAAC,EAAED,KAAK,CAACqB,OAAO,CAAC;MACnB,CAAC;IACH;EACF,CAAC,CAAC;AACJ"}
@@ -3,12 +3,13 @@ import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirectiv
3
3
  import { Transition } from 'vue';
4
4
 
5
5
  // Utilities
6
- import { acceleratedEasing, animate, deceleratedEasing, genericComponent, nullifyTransforms, standardEasing } from "../../util/index.mjs"; // Types
6
+ import { acceleratedEasing, animate, deceleratedEasing, genericComponent, nullifyTransforms, propsFactory, standardEasing } from "../../util/index.mjs"; // Types
7
+ export const makeVDialogTransitionProps = propsFactory({
8
+ target: Object
9
+ }, 'v-dialog-transition');
7
10
  export const VDialogTransition = genericComponent()({
8
11
  name: 'VDialogTransition',
9
- props: {
10
- target: Object
11
- },
12
+ props: makeVDialogTransitionProps(),
12
13
  setup(props, _ref) {
13
14
  let {
14
15
  slots
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-transition.mjs","names":["Transition","acceleratedEasing","animate","deceleratedEasing","genericComponent","nullifyTransforms","standardEasing","VDialogTransition","name","props","target","Object","setup","_ref","slots","functions","onBeforeEnter","el","style","pointerEvents","visibility","onEnter","done","Promise","resolve","requestAnimationFrame","x","y","sx","sy","speed","getDimensions","animation","transform","opacity","duration","easing","getChildren","forEach","offset","finished","then","onAfterEnter","removeProperty","onBeforeLeave","onLeave","onAfterLeave","_createVNode","_mergeProps","els","querySelector","children","targetBox","getBoundingClientRect","elBox","originX","originY","getComputedStyle","transformOrigin","split","map","v","parseFloat","anchorSide","anchorOffset","getPropertyValue","offsetX","left","width","offsetY","top","height","tsx","tsy","maxs","Math","max","asa","window","innerWidth","innerHeight","min"],"sources":["../../../src/components/transitions/dialog-transition.tsx"],"sourcesContent":["// Components\nimport { Transition } from 'vue'\n\n// Utilities\nimport {\n acceleratedEasing,\n animate,\n deceleratedEasing,\n genericComponent,\n nullifyTransforms,\n standardEasing,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VDialogTransition = genericComponent()({\n name: 'VDialogTransition',\n\n props: {\n target: Object as PropType<HTMLElement>,\n },\n\n setup (props, { slots }) {\n const functions = {\n onBeforeEnter (el: Element) {\n (el as HTMLElement).style.pointerEvents = 'none'\n ;(el as HTMLElement).style.visibility = 'hidden'\n },\n async onEnter (el: Element, done: () => void) {\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n ;(el as HTMLElement).style.visibility = ''\n\n const { x, y, sx, sy, speed } = getDimensions(props.target!, el as HTMLElement)\n\n const animation = animate(el, [\n { transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`, opacity: 0 },\n {},\n ], {\n duration: 225 * speed,\n easing: deceleratedEasing,\n })\n getChildren(el)?.forEach(el => {\n animate(el, [\n { opacity: 0 },\n { opacity: 0, offset: 0.33 },\n {},\n ], {\n duration: 225 * 2 * speed,\n easing: standardEasing,\n })\n })\n animation.finished.then(() => done())\n },\n onAfterEnter (el: Element) {\n (el as HTMLElement).style.removeProperty('pointer-events')\n },\n onBeforeLeave (el: Element) {\n (el as HTMLElement).style.pointerEvents = 'none'\n },\n async onLeave (el: Element, done: () => void) {\n await new Promise(resolve => requestAnimationFrame(resolve))\n\n const { x, y, sx, sy, speed } = getDimensions(props.target!, el as HTMLElement)\n\n const animation = animate(el, [\n {},\n { transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`, opacity: 0 },\n ], {\n duration: 125 * speed,\n easing: acceleratedEasing,\n })\n animation.finished.then(() => done())\n getChildren(el)?.forEach(el => {\n animate(el, [\n {},\n { opacity: 0, offset: 0.2 },\n { opacity: 0 },\n ], {\n duration: 125 * 2 * speed,\n easing: standardEasing,\n })\n })\n },\n onAfterLeave (el: Element) {\n (el as HTMLElement).style.removeProperty('pointer-events')\n },\n }\n\n return () => {\n return props.target\n ? (\n <Transition\n name=\"dialog-transition\"\n { ...functions }\n css={ false }\n v-slots={ slots }\n />\n )\n : <Transition name=\"dialog-transition\" v-slots={ slots } />\n }\n },\n})\n\n/** Animatable children (card, sheet, list) */\nfunction getChildren (el: Element) {\n const els = el.querySelector(':scope > .v-card, :scope > .v-sheet, :scope > .v-list')?.children\n return els && [...els]\n}\n\nfunction getDimensions (target: HTMLElement, el: HTMLElement) {\n const targetBox = target.getBoundingClientRect()\n const elBox = nullifyTransforms(el)\n const [originX, originY] = getComputedStyle(el).transformOrigin.split(' ').map(v => parseFloat(v))\n\n const [anchorSide, anchorOffset] = getComputedStyle(el).getPropertyValue('--v-overlay-anchor-origin').split(' ')\n\n let offsetX = targetBox.left + targetBox.width / 2\n if (anchorSide === 'left' || anchorOffset === 'left') {\n offsetX -= targetBox.width / 2\n } else if (anchorSide === 'right' || anchorOffset === 'right') {\n offsetX += targetBox.width / 2\n }\n\n let offsetY = targetBox.top + targetBox.height / 2\n if (anchorSide === 'top' || anchorOffset === 'top') {\n offsetY -= targetBox.height / 2\n } else if (anchorSide === 'bottom' || anchorOffset === 'bottom') {\n offsetY += targetBox.height / 2\n }\n\n const tsx = targetBox.width / elBox.width\n const tsy = targetBox.height / elBox.height\n const maxs = Math.max(1, tsx, tsy)\n const sx = tsx / maxs || 0\n const sy = tsy / maxs || 0\n\n // Animate elements larger than 12% of the screen area up to 1.5x slower\n const asa = (elBox.width * elBox.height) / (window.innerWidth * window.innerHeight)\n const speed = asa > 0.12\n ? Math.min(1.5, (asa - 0.12) * 10 + 1)\n : 1\n\n return {\n x: offsetX - (originX + elBox.left),\n y: offsetY - (originY + elBox.top),\n sx,\n sy,\n speed,\n }\n}\n\nexport type VDialogTransition = InstanceType<typeof VDialogTransition>\n"],"mappings":"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"}
1
+ {"version":3,"file":"dialog-transition.mjs","names":["Transition","acceleratedEasing","animate","deceleratedEasing","genericComponent","nullifyTransforms","propsFactory","standardEasing","makeVDialogTransitionProps","target","Object","VDialogTransition","name","props","setup","_ref","slots","functions","onBeforeEnter","el","style","pointerEvents","visibility","onEnter","done","Promise","resolve","requestAnimationFrame","x","y","sx","sy","speed","getDimensions","animation","transform","opacity","duration","easing","getChildren","forEach","offset","finished","then","onAfterEnter","removeProperty","onBeforeLeave","onLeave","onAfterLeave","_createVNode","_mergeProps","els","querySelector","children","targetBox","getBoundingClientRect","elBox","originX","originY","getComputedStyle","transformOrigin","split","map","v","parseFloat","anchorSide","anchorOffset","getPropertyValue","offsetX","left","width","offsetY","top","height","tsx","tsy","maxs","Math","max","asa","window","innerWidth","innerHeight","min"],"sources":["../../../src/components/transitions/dialog-transition.tsx"],"sourcesContent":["// Components\nimport { Transition } from 'vue'\n\n// Utilities\nimport {\n acceleratedEasing,\n animate,\n deceleratedEasing,\n genericComponent,\n nullifyTransforms,\n propsFactory,\n standardEasing,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVDialogTransitionProps = propsFactory({\n target: Object as PropType<HTMLElement>,\n}, 'v-dialog-transition')\n\nexport const VDialogTransition = genericComponent()({\n name: 'VDialogTransition',\n\n props: makeVDialogTransitionProps(),\n\n setup (props, { slots }) {\n const functions = {\n onBeforeEnter (el: Element) {\n (el as HTMLElement).style.pointerEvents = 'none'\n ;(el as HTMLElement).style.visibility = 'hidden'\n },\n async onEnter (el: Element, done: () => void) {\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n ;(el as HTMLElement).style.visibility = ''\n\n const { x, y, sx, sy, speed } = getDimensions(props.target!, el as HTMLElement)\n\n const animation = animate(el, [\n { transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`, opacity: 0 },\n {},\n ], {\n duration: 225 * speed,\n easing: deceleratedEasing,\n })\n getChildren(el)?.forEach(el => {\n animate(el, [\n { opacity: 0 },\n { opacity: 0, offset: 0.33 },\n {},\n ], {\n duration: 225 * 2 * speed,\n easing: standardEasing,\n })\n })\n animation.finished.then(() => done())\n },\n onAfterEnter (el: Element) {\n (el as HTMLElement).style.removeProperty('pointer-events')\n },\n onBeforeLeave (el: Element) {\n (el as HTMLElement).style.pointerEvents = 'none'\n },\n async onLeave (el: Element, done: () => void) {\n await new Promise(resolve => requestAnimationFrame(resolve))\n\n const { x, y, sx, sy, speed } = getDimensions(props.target!, el as HTMLElement)\n\n const animation = animate(el, [\n {},\n { transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`, opacity: 0 },\n ], {\n duration: 125 * speed,\n easing: acceleratedEasing,\n })\n animation.finished.then(() => done())\n getChildren(el)?.forEach(el => {\n animate(el, [\n {},\n { opacity: 0, offset: 0.2 },\n { opacity: 0 },\n ], {\n duration: 125 * 2 * speed,\n easing: standardEasing,\n })\n })\n },\n onAfterLeave (el: Element) {\n (el as HTMLElement).style.removeProperty('pointer-events')\n },\n }\n\n return () => {\n return props.target\n ? (\n <Transition\n name=\"dialog-transition\"\n { ...functions }\n css={ false }\n v-slots={ slots }\n />\n )\n : <Transition name=\"dialog-transition\" v-slots={ slots } />\n }\n },\n})\n\n/** Animatable children (card, sheet, list) */\nfunction getChildren (el: Element) {\n const els = el.querySelector(':scope > .v-card, :scope > .v-sheet, :scope > .v-list')?.children\n return els && [...els]\n}\n\nfunction getDimensions (target: HTMLElement, el: HTMLElement) {\n const targetBox = target.getBoundingClientRect()\n const elBox = nullifyTransforms(el)\n const [originX, originY] = getComputedStyle(el).transformOrigin.split(' ').map(v => parseFloat(v))\n\n const [anchorSide, anchorOffset] = getComputedStyle(el).getPropertyValue('--v-overlay-anchor-origin').split(' ')\n\n let offsetX = targetBox.left + targetBox.width / 2\n if (anchorSide === 'left' || anchorOffset === 'left') {\n offsetX -= targetBox.width / 2\n } else if (anchorSide === 'right' || anchorOffset === 'right') {\n offsetX += targetBox.width / 2\n }\n\n let offsetY = targetBox.top + targetBox.height / 2\n if (anchorSide === 'top' || anchorOffset === 'top') {\n offsetY -= targetBox.height / 2\n } else if (anchorSide === 'bottom' || anchorOffset === 'bottom') {\n offsetY += targetBox.height / 2\n }\n\n const tsx = targetBox.width / elBox.width\n const tsy = targetBox.height / elBox.height\n const maxs = Math.max(1, tsx, tsy)\n const sx = tsx / maxs || 0\n const sy = tsy / maxs || 0\n\n // Animate elements larger than 12% of the screen area up to 1.5x slower\n const asa = (elBox.width * elBox.height) / (window.innerWidth * window.innerHeight)\n const speed = asa > 0.12\n ? Math.min(1.5, (asa - 0.12) * 10 + 1)\n : 1\n\n return {\n x: offsetX - (originX + elBox.left),\n y: offsetY - (originY + elBox.top),\n sx,\n sy,\n speed,\n }\n}\n\nexport type VDialogTransition = InstanceType<typeof VDialogTransition>\n"],"mappings":"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"}