@vuetify/nightly 3.0.0-beta.4 → 3.0.0-beta.9

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 (433) hide show
  1. package/CHANGELOG.md +10 -24
  2. package/dist/json/attributes.json +187 -203
  3. package/dist/json/importMap.json +99 -147
  4. package/dist/json/tags.json +49 -102
  5. package/dist/json/web-types.json +761 -949
  6. package/dist/vuetify.css +13059 -13058
  7. package/dist/vuetify.d.ts +1663 -5104
  8. package/dist/vuetify.esm.js +8655 -7971
  9. package/dist/vuetify.esm.js.map +1 -1
  10. package/dist/vuetify.js +8654 -7969
  11. package/dist/vuetify.js.map +1 -1
  12. package/dist/vuetify.min.css +3 -3
  13. package/dist/vuetify.min.js +1115 -1077
  14. package/dist/vuetify.min.js.map +1 -1
  15. package/lib/blueprints/index.mjs +4 -0
  16. package/lib/blueprints/index.mjs.map +1 -0
  17. package/lib/blueprints/md1.mjs +63 -0
  18. package/lib/blueprints/md1.mjs.map +1 -0
  19. package/lib/blueprints/md2.mjs +60 -0
  20. package/lib/blueprints/md2.mjs.map +1 -0
  21. package/lib/blueprints/md3.mjs +74 -0
  22. package/lib/blueprints/md3.mjs.map +1 -0
  23. package/lib/components/VAlert/VAlert.css +0 -3
  24. package/lib/components/VAlert/VAlert.mjs +27 -11
  25. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  26. package/lib/components/VAlert/VAlert.sass +0 -3
  27. package/lib/components/VApp/VApp.css +2 -5
  28. package/lib/components/VApp/VApp.mjs +3 -4
  29. package/lib/components/VApp/VApp.mjs.map +1 -1
  30. package/lib/components/VApp/VApp.sass +11 -12
  31. package/lib/components/VApp/variables.scss +6 -0
  32. package/lib/components/VAppBar/VAppBar.mjs +4 -3
  33. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  34. package/lib/components/VAppBar/VAppBarNavIcon.mjs +7 -12
  35. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  36. package/lib/components/VAppBar/VAppBarTitle.mjs +4 -3
  37. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  38. package/lib/components/VAppBar/_variables.scss +2 -0
  39. package/lib/components/VAutocomplete/VAutocomplete.css +10 -0
  40. package/lib/components/VAutocomplete/VAutocomplete.mjs +11 -8
  41. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  42. package/lib/components/VAutocomplete/VAutocomplete.sass +10 -0
  43. package/lib/components/VAutocomplete/_variables.scss +1 -0
  44. package/lib/components/VAvatar/VAvatar.css +2 -0
  45. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  46. package/lib/components/VAvatar/VAvatar.sass +3 -0
  47. package/lib/components/VBadge/VBadge.mjs +8 -7
  48. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  49. package/lib/components/VBadge/_variables.scss +2 -2
  50. package/lib/components/VBanner/VBanner.css +7 -7
  51. package/lib/components/VBanner/VBanner.mjs +24 -17
  52. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  53. package/lib/components/VBanner/VBanner.sass +6 -7
  54. package/lib/components/VBanner/VBannerActions.mjs +1 -1
  55. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  56. package/lib/components/VBanner/index.mjs +0 -2
  57. package/lib/components/VBanner/index.mjs.map +1 -1
  58. package/lib/components/VBottomNavigation/VBottomNavigation.css +4 -11
  59. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +4 -3
  60. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  61. package/lib/components/VBottomNavigation/VBottomNavigation.sass +5 -12
  62. package/lib/components/VBottomNavigation/_variables.scss +7 -8
  63. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +13 -6
  64. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +30 -19
  65. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  66. package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +8 -3
  67. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +5 -8
  68. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  69. package/lib/components/VBreadcrumbs/_variables.scss +2 -1
  70. package/lib/components/VBtn/VBtn.css +77 -13
  71. package/lib/components/VBtn/VBtn.mjs +63 -29
  72. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  73. package/lib/components/VBtn/VBtn.sass +86 -14
  74. package/lib/components/VBtn/_variables.scss +8 -1
  75. package/lib/components/VBtnGroup/VBtnGroup.css +1 -0
  76. package/lib/components/VBtnGroup/_variables.scss +2 -0
  77. package/lib/components/VBtnToggle/_variables.scss +1 -0
  78. package/lib/components/VCard/VCard.css +81 -64
  79. package/lib/components/VCard/VCard.mjs +62 -71
  80. package/lib/components/VCard/VCard.mjs.map +1 -1
  81. package/lib/components/VCard/VCard.sass +74 -61
  82. package/lib/components/VCard/VCardActions.mjs +1 -1
  83. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  84. package/lib/components/VCard/VCardItem.mjs +88 -0
  85. package/lib/components/VCard/VCardItem.mjs.map +1 -0
  86. package/lib/components/VCard/_variables.scss +40 -24
  87. package/lib/components/VCard/index.mjs +1 -5
  88. package/lib/components/VCard/index.mjs.map +1 -1
  89. package/lib/components/VCarousel/VCarousel.mjs +5 -4
  90. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  91. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  92. package/lib/components/VCarousel/_variables.scss +1 -0
  93. package/lib/components/VChip/VChip.css +137 -60
  94. package/lib/components/VChip/VChip.mjs +76 -37
  95. package/lib/components/VChip/VChip.mjs.map +1 -1
  96. package/lib/components/VChip/VChip.sass +6 -0
  97. package/lib/components/VChip/_mixins.scss +26 -6
  98. package/lib/components/VChip/_variables.scss +1 -5
  99. package/lib/components/VChipGroup/VChipGroup.mjs +4 -3
  100. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  101. package/lib/components/VChipGroup/VChipGroup.sass +1 -1
  102. package/lib/components/VChipGroup/_variables.scss +1 -1
  103. package/lib/components/VColorPicker/VColorPicker.mjs +16 -10
  104. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  105. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -4
  106. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  107. package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -3
  108. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  109. package/lib/components/VColorPicker/VColorPickerPreview.mjs +4 -3
  110. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  111. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +6 -5
  112. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  113. package/lib/components/VColorPicker/_variables.scss +17 -10
  114. package/lib/components/VCombobox/VCombobox.css +10 -0
  115. package/lib/components/VCombobox/VCombobox.mjs +15 -17
  116. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  117. package/lib/components/VCombobox/VCombobox.sass +10 -0
  118. package/lib/components/VCombobox/_variables.scss +1 -0
  119. package/lib/components/VCounter/VCounter.mjs +16 -16
  120. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  121. package/lib/components/VCounter/VCounter.sass +1 -1
  122. package/lib/components/VCounter/_variables.scss +2 -1
  123. package/lib/components/VDialog/VDialog.css +2 -5
  124. package/lib/components/VDialog/VDialog.mjs +26 -26
  125. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  126. package/lib/components/VDialog/VDialog.sass +1 -4
  127. package/lib/components/VDialog/_variables.scss +0 -1
  128. package/lib/components/VDivider/VDivider.mjs +16 -17
  129. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  130. package/lib/components/VDivider/_variables.scss +3 -1
  131. package/lib/components/VExpansionPanel/VExpansionPanel.css +1 -0
  132. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +9 -4
  133. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  134. package/lib/components/VExpansionPanel/VExpansionPanel.sass +1 -0
  135. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +7 -7
  136. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  137. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  138. package/lib/components/VExpansionPanel/_variables.scss +15 -10
  139. package/lib/components/VField/VField.css +43 -24
  140. package/lib/components/VField/VField.mjs +18 -11
  141. package/lib/components/VField/VField.mjs.map +1 -1
  142. package/lib/components/VField/VField.sass +32 -18
  143. package/lib/components/VField/VFieldLabel.mjs +8 -9
  144. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  145. package/lib/components/VField/_variables.scss +3 -2
  146. package/lib/components/VFileInput/VFileInput.css +3 -3
  147. package/lib/components/VFileInput/VFileInput.mjs +14 -9
  148. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  149. package/lib/components/VFileInput/VFileInput.sass +3 -3
  150. package/lib/components/VFooter/VFooter.mjs +4 -3
  151. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  152. package/lib/components/VFooter/_variables.scss +2 -1
  153. package/lib/components/VForm/VForm.mjs +4 -4
  154. package/lib/components/VForm/VForm.mjs.map +1 -1
  155. package/lib/components/VGrid/VCol.mjs +2 -1
  156. package/lib/components/VGrid/VCol.mjs.map +1 -1
  157. package/lib/components/VGrid/VContainer.mjs +4 -3
  158. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  159. package/lib/components/VGrid/VRow.mjs +8 -3
  160. package/lib/components/VGrid/VRow.mjs.map +1 -1
  161. package/lib/components/VIcon/VIcon.css +0 -18
  162. package/lib/components/VIcon/VIcon.mjs +20 -21
  163. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  164. package/lib/components/VIcon/VIcon.sass +0 -18
  165. package/lib/components/VIcon/_variables.scss +2 -6
  166. package/lib/components/VIcon/index.mjs.map +1 -1
  167. package/lib/components/VImg/VImg.mjs +1 -0
  168. package/lib/components/VImg/VImg.mjs.map +1 -1
  169. package/lib/components/VInput/VInput.css +2 -1
  170. package/lib/components/VInput/VInput.mjs +10 -6
  171. package/lib/components/VInput/VInput.mjs.map +1 -1
  172. package/lib/components/VInput/VInput.sass +2 -1
  173. package/lib/components/VInput/_variables.scss +0 -1
  174. package/lib/components/VItemGroup/VItem.mjs +3 -0
  175. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  176. package/lib/components/VLabel/VLabel.mjs +4 -3
  177. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  178. package/lib/components/VLabel/_variables.scss +1 -0
  179. package/lib/components/VLayout/VLayout.css +0 -2
  180. package/lib/components/VLayout/VLayout.sass +0 -2
  181. package/lib/components/VLazy/VLazy.mjs +5 -3
  182. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  183. package/lib/components/VList/VList.css +6 -3
  184. package/lib/components/VList/VList.mjs +15 -17
  185. package/lib/components/VList/VList.mjs.map +1 -1
  186. package/lib/components/VList/VList.sass +6 -2
  187. package/lib/components/VList/VListChildren.mjs +25 -7
  188. package/lib/components/VList/VListChildren.mjs.map +1 -1
  189. package/lib/components/VList/VListGroup.mjs +47 -42
  190. package/lib/components/VList/VListGroup.mjs.map +1 -1
  191. package/lib/components/VList/VListItem.css +78 -52
  192. package/lib/components/VList/VListItem.mjs +94 -54
  193. package/lib/components/VList/VListItem.mjs.map +1 -1
  194. package/lib/components/VList/VListItem.sass +67 -38
  195. package/lib/components/VList/VListItemAction.mjs +8 -9
  196. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  197. package/lib/components/VList/VListItemMedia.mjs +4 -3
  198. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  199. package/lib/components/VList/VListSubheader.mjs +4 -3
  200. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  201. package/lib/components/VList/_variables.scss +12 -5
  202. package/lib/components/VList/index.mjs +2 -5
  203. package/lib/components/VList/index.mjs.map +1 -1
  204. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -3
  205. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  206. package/lib/components/VMain/VMain.css +21 -3
  207. package/lib/components/VMain/VMain.mjs +17 -11
  208. package/lib/components/VMain/VMain.mjs.map +1 -1
  209. package/lib/components/VMain/VMain.sass +18 -3
  210. package/lib/components/VMain/_variables.scss +1 -1
  211. package/lib/components/VMenu/VMenu.mjs +6 -6
  212. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  213. package/lib/components/VMessages/VMessages.mjs +5 -3
  214. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  215. package/lib/components/VMessages/_variables.scss +1 -1
  216. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +12 -17
  217. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +54 -19
  218. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  219. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +15 -20
  220. package/lib/components/VNavigationDrawer/_variables.scss +3 -2
  221. package/lib/components/VNavigationDrawer/sticky.mjs +72 -0
  222. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -0
  223. package/lib/components/VNavigationDrawer/touch.mjs +5 -2
  224. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  225. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  226. package/lib/components/VOverlay/VOverlay.mjs +18 -14
  227. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  228. package/lib/components/VOverlay/_variables.scss +1 -1
  229. package/lib/components/VOverlay/locationStrategies.mjs +267 -78
  230. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  231. package/lib/components/VOverlay/useActivator.mjs +5 -4
  232. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  233. package/lib/components/VOverlay/util/point.mjs +3 -3
  234. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  235. package/lib/components/VPagination/VPagination.mjs +42 -24
  236. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  237. package/lib/components/VParallax/VParallax.mjs +5 -5
  238. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  239. package/lib/components/VProgressCircular/VProgressCircular.mjs +6 -5
  240. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  241. package/lib/components/VProgressCircular/_variables.scss +2 -0
  242. package/lib/components/VProgressLinear/VProgressLinear.mjs +5 -3
  243. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  244. package/lib/components/VProgressLinear/_variables.scss +1 -0
  245. package/lib/components/VRadio/VRadio.mjs +8 -17
  246. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  247. package/lib/components/VRadioGroup/VRadioGroup.mjs +22 -5
  248. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  249. package/lib/components/VRadioGroup/VRadioGroup.sass +5 -3
  250. package/lib/components/VRadioGroup/_variables.scss +3 -4
  251. package/lib/components/VRangeSlider/VRangeSlider.mjs +12 -13
  252. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  253. package/lib/components/VRating/VRating.mjs +6 -5
  254. package/lib/components/VRating/VRating.mjs.map +1 -1
  255. package/lib/components/VRating/VRating.sass +2 -0
  256. package/lib/components/VResponsive/VResponsive.mjs +7 -6
  257. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  258. package/lib/components/VSelect/VSelect.css +10 -0
  259. package/lib/components/VSelect/VSelect.mjs +14 -11
  260. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  261. package/lib/components/VSelect/VSelect.sass +10 -0
  262. package/lib/components/VSelect/_variables.scss +1 -0
  263. package/lib/components/VSelectionControl/VSelectionControl.mjs +15 -9
  264. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  265. package/lib/components/VSelectionControl/_variables.scss +1 -0
  266. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
  267. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  268. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +1 -5
  269. package/lib/components/VSelectionControlGroup/_variables.scss +1 -4
  270. package/lib/components/VSheet/VSheet.mjs +3 -3
  271. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  272. package/lib/components/VSheet/_variables.scss +3 -2
  273. package/lib/components/VSlideGroup/VSlideGroup.mjs +47 -49
  274. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  275. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +7 -3
  276. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  277. package/lib/components/VSlideGroup/_variables.scss +0 -5
  278. package/lib/components/VSlideGroup/index.mjs +2 -2
  279. package/lib/components/VSlideGroup/index.mjs.map +1 -1
  280. package/lib/components/VSlider/VSlider.mjs +7 -9
  281. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  282. package/lib/components/VSlider/VSliderThumb.mjs +6 -5
  283. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  284. package/lib/components/VSlider/VSliderTrack.mjs +11 -10
  285. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  286. package/lib/components/VSlider/slider.mjs +4 -4
  287. package/lib/components/VSlider/slider.mjs.map +1 -1
  288. package/lib/components/VSnackbar/VSnackbar.css +1 -1
  289. package/lib/components/VSnackbar/VSnackbar.mjs +50 -50
  290. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  291. package/lib/components/VSnackbar/_variables.scss +3 -3
  292. package/lib/components/VSwitch/VSwitch.css +7 -0
  293. package/lib/components/VSwitch/VSwitch.sass +6 -0
  294. package/lib/components/VSwitch/_variables.scss +1 -0
  295. package/lib/components/VSystemBar/VSystemBar.mjs +5 -13
  296. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  297. package/lib/components/VSystemBar/_variables.scss +2 -1
  298. package/lib/components/VTable/VTable.css +1 -0
  299. package/lib/components/VTable/VTable.mjs +9 -8
  300. package/lib/components/VTable/VTable.mjs.map +1 -1
  301. package/lib/components/VTable/VTable.sass +1 -0
  302. package/lib/components/VTable/_variables.scss +2 -0
  303. package/lib/components/VTabs/VTab.css +3 -2
  304. package/lib/components/VTabs/VTab.mjs +4 -4
  305. package/lib/components/VTabs/VTab.mjs.map +1 -1
  306. package/lib/components/VTabs/VTab.sass +4 -2
  307. package/lib/components/VTabs/VTabs.mjs +15 -12
  308. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  309. package/lib/components/VTabs/_variables.scss +3 -1
  310. package/lib/components/VTextField/VTextField.css +2 -1
  311. package/lib/components/VTextField/VTextField.mjs +31 -23
  312. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  313. package/lib/components/VTextField/VTextField.sass +2 -1
  314. package/lib/components/VTextField/_variables.scss +1 -1
  315. package/lib/components/VTextarea/VTextarea.css +6 -2
  316. package/lib/components/VTextarea/VTextarea.mjs +39 -22
  317. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  318. package/lib/components/VTextarea/VTextarea.sass +9 -2
  319. package/lib/components/VTextarea/_variables.scss +1 -1
  320. package/lib/components/VTimeline/VTimeline.css +123 -112
  321. package/lib/components/VTimeline/VTimeline.mjs +24 -25
  322. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  323. package/lib/components/VTimeline/VTimeline.sass +132 -113
  324. package/lib/components/VTimeline/VTimelineDivider.mjs +44 -38
  325. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  326. package/lib/components/VTimeline/VTimelineItem.mjs +13 -12
  327. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  328. package/lib/components/VTimeline/_variables.scss +11 -6
  329. package/lib/components/VToolbar/VToolbar.css +17 -32
  330. package/lib/components/VToolbar/VToolbar.mjs +12 -13
  331. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  332. package/lib/components/VToolbar/VToolbar.sass +17 -18
  333. package/lib/components/VToolbar/VToolbarItems.mjs +12 -8
  334. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  335. package/lib/components/VToolbar/_variables.scss +7 -7
  336. package/lib/components/VTooltip/VTooltip.mjs +41 -39
  337. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  338. package/lib/components/VTooltip/_variables.scss +1 -0
  339. package/lib/components/VWindow/VWindow.mjs +4 -4
  340. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  341. package/lib/components/VWindow/VWindowItem.mjs +13 -9
  342. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  343. package/lib/components/VWindow/_variables.scss +1 -0
  344. package/lib/components/index.d.ts +1653 -5068
  345. package/lib/components/transitions/dialog-transition.mjs +3 -0
  346. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  347. package/lib/components/transitions/index.mjs +0 -5
  348. package/lib/components/transitions/index.mjs.map +1 -1
  349. package/lib/composables/border.mjs +5 -6
  350. package/lib/composables/border.mjs.map +1 -1
  351. package/lib/composables/color.mjs +19 -26
  352. package/lib/composables/color.mjs.map +1 -1
  353. package/lib/composables/defaults.mjs +1 -1
  354. package/lib/composables/defaults.mjs.map +1 -1
  355. package/lib/composables/form.mjs +29 -9
  356. package/lib/composables/form.mjs.map +1 -1
  357. package/lib/composables/{forwardRef.mjs → forwardRefs.mjs} +29 -3
  358. package/lib/composables/forwardRefs.mjs.map +1 -0
  359. package/lib/composables/group.mjs.map +1 -1
  360. package/lib/composables/index.mjs +3 -2
  361. package/lib/composables/index.mjs.map +1 -1
  362. package/lib/composables/layout.mjs +12 -12
  363. package/lib/composables/layout.mjs.map +1 -1
  364. package/lib/composables/location.mjs +4 -8
  365. package/lib/composables/location.mjs.map +1 -1
  366. package/lib/composables/proxiedModel.mjs +2 -1
  367. package/lib/composables/proxiedModel.mjs.map +1 -1
  368. package/lib/composables/rtl.mjs +2 -2
  369. package/lib/composables/rtl.mjs.map +1 -1
  370. package/lib/composables/size.mjs +18 -14
  371. package/lib/composables/size.mjs.map +1 -1
  372. package/lib/composables/stack.mjs +22 -12
  373. package/lib/composables/stack.mjs.map +1 -1
  374. package/lib/composables/theme.mjs +18 -10
  375. package/lib/composables/theme.mjs.map +1 -1
  376. package/lib/composables/validation.mjs +14 -4
  377. package/lib/composables/validation.mjs.map +1 -1
  378. package/lib/composables/variant.mjs +4 -2
  379. package/lib/composables/variant.mjs.map +1 -1
  380. package/lib/entry-bundler.mjs +1 -1
  381. package/lib/framework.mjs +7 -2
  382. package/lib/framework.mjs.map +1 -1
  383. package/lib/index.d.ts +39 -47
  384. package/lib/styles/generic/_colors.scss +17 -9
  385. package/lib/styles/generic/_transitions.scss +13 -77
  386. package/lib/styles/main.css +1170 -1420
  387. package/lib/styles/settings/_utilities.scss +16 -5
  388. package/lib/styles/utilities/_index.sass +0 -1
  389. package/lib/util/anchor.mjs +33 -29
  390. package/lib/util/anchor.mjs.map +1 -1
  391. package/lib/util/animation.mjs +2 -2
  392. package/lib/util/animation.mjs.map +1 -1
  393. package/lib/util/box.mjs +12 -0
  394. package/lib/util/box.mjs.map +1 -1
  395. package/lib/util/colorUtils.mjs +2 -2
  396. package/lib/util/colorUtils.mjs.map +1 -1
  397. package/lib/util/colors.mjs +1 -1
  398. package/lib/util/colors.mjs.map +1 -1
  399. package/lib/util/defineComponent.mjs +6 -3
  400. package/lib/util/defineComponent.mjs.map +1 -1
  401. package/lib/util/helpers.mjs +24 -1
  402. package/lib/util/helpers.mjs.map +1 -1
  403. package/lib/util/injectSelf.mjs +12 -0
  404. package/lib/util/injectSelf.mjs.map +1 -0
  405. package/package.json +10 -10
  406. package/lib/components/VBanner/VBannerAvatar.mjs +0 -20
  407. package/lib/components/VBanner/VBannerAvatar.mjs.map +0 -1
  408. package/lib/components/VBanner/VBannerIcon.mjs +0 -20
  409. package/lib/components/VBanner/VBannerIcon.mjs.map +0 -1
  410. package/lib/components/VBreadcrumbs/shared.mjs +0 -2
  411. package/lib/components/VBreadcrumbs/shared.mjs.map +0 -1
  412. package/lib/components/VCard/VCardAvatar.mjs +0 -3
  413. package/lib/components/VCard/VCardAvatar.mjs.map +0 -1
  414. package/lib/components/VCard/VCardContent.mjs +0 -3
  415. package/lib/components/VCard/VCardContent.mjs.map +0 -1
  416. package/lib/components/VCard/VCardHeader.mjs +0 -3
  417. package/lib/components/VCard/VCardHeader.mjs.map +0 -1
  418. package/lib/components/VCard/VCardHeaderText.mjs +0 -3
  419. package/lib/components/VCard/VCardHeaderText.mjs.map +0 -1
  420. package/lib/components/VCard/VCardImg.mjs +0 -3
  421. package/lib/components/VCard/VCardImg.mjs.map +0 -1
  422. package/lib/components/VList/VListItemAvatar.mjs +0 -23
  423. package/lib/components/VList/VListItemAvatar.mjs.map +0 -1
  424. package/lib/components/VList/VListItemHeader.mjs +0 -3
  425. package/lib/components/VList/VListItemHeader.mjs.map +0 -1
  426. package/lib/components/VList/VListItemIcon.mjs +0 -23
  427. package/lib/components/VList/VListItemIcon.mjs.map +0 -1
  428. package/lib/components/VTimeline/shared.mjs +0 -2
  429. package/lib/components/VTimeline/shared.mjs.map +0 -1
  430. package/lib/composables/forwardRef.mjs.map +0 -1
  431. package/lib/presets/default/index.mjs +0 -71
  432. package/lib/presets/default/index.mjs.map +0 -1
  433. package/lib/styles/utilities/_text.sass +0 -9
@@ -149,11 +149,10 @@ export function createLayout(props) {
149
149
  const mainStyles = computed(() => {
150
150
  const layer = layers.value[layers.value.length - 1].layer;
151
151
  return {
152
- position: 'relative',
153
- paddingLeft: convertToUnit(layer.left),
154
- paddingRight: convertToUnit(layer.right),
155
- paddingTop: convertToUnit(layer.top),
156
- paddingBottom: convertToUnit(layer.bottom),
152
+ '--v-layout-left': convertToUnit(layer.left),
153
+ '--v-layout-right': convertToUnit(layer.right),
154
+ '--v-layout-top': convertToUnit(layer.top),
155
+ '--v-layout-bottom': convertToUnit(layer.bottom),
157
156
  ...(transitionsEnabled.value ? undefined : {
158
157
  transition: 'none'
159
158
  })
@@ -232,16 +231,15 @@ export function createLayout(props) {
232
231
 
233
232
  return { ...styles,
234
233
  height: isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)` : elementSize.value ? `${elementSize.value}px` : undefined,
235
- marginLeft: isOppositeHorizontal ? undefined : `${item.left}px`,
236
- marginRight: isOppositeHorizontal ? `${item.right}px` : undefined,
237
- marginTop: position.value !== 'bottom' ? `${item.top}px` : undefined,
238
- marginBottom: position.value !== 'top' ? `${item.bottom}px` : undefined,
234
+ left: isOppositeHorizontal ? undefined : `${item.left}px`,
235
+ right: isOppositeHorizontal ? `${item.right}px` : undefined,
236
+ top: position.value !== 'bottom' ? `${item.top}px` : undefined,
237
+ bottom: position.value !== 'top' ? `${item.bottom}px` : undefined,
239
238
  width: !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)` : elementSize.value ? `${elementSize.value}px` : undefined
240
239
  };
241
240
  });
242
241
  const layoutItemScrimStyles = computed(() => ({
243
- zIndex: zIndex.value - 1,
244
- position: rootZIndex.value === ROOT_ZINDEX ? 'fixed' : 'absolute'
242
+ zIndex: zIndex.value - 1
245
243
  }));
246
244
  return {
247
245
  layoutItemStyles,
@@ -267,7 +265,9 @@ export function createLayout(props) {
267
265
  'v-layout--full-height': props.fullHeight
268
266
  }]);
269
267
  const layoutStyles = computed(() => ({
270
- zIndex: rootZIndex.value
268
+ zIndex: rootZIndex.value,
269
+ position: parentLayout ? 'relative' : undefined,
270
+ overflow: parentLayout ? 'hidden' : undefined
271
271
  }));
272
272
  return {
273
273
  layoutClasses,
@@ -1 +1 @@
1
- {"version":3,"file":"layout.mjs","names":["useResizeObserver","computed","inject","onActivated","onBeforeUnmount","onDeactivated","onMounted","provide","reactive","ref","convertToUnit","findChildrenWithProvide","getCurrentInstance","getUid","propsFactory","VuetifyLayoutKey","Symbol","for","VuetifyLayoutItemKey","ROOT_ZINDEX","makeLayoutProps","overlaps","type","Array","default","fullHeight","Boolean","makeLayoutItemProps","name","String","order","Number","absolute","useLayout","layout","Error","useLayoutItem","options","id","vm","isKeptAlive","value","layoutItemStyles","layoutItemScrimStyles","register","active","unregister","layoutRect","generateLayers","positions","layoutSizes","activeItems","previousLayer","top","left","right","bottom","layers","layer","position","get","amount","parseInt","push","createLayout","props","parentLayout","rootZIndex","registered","Map","priorities","disabledTransitions","resizeRef","contentRect","computedOverlaps","map","overlap","filter","item","includes","split","topPosition","bottomPosition","topAmount","bottomAmount","set","uniquePriorities","Set","values","p","sort","a","b","items","transitionsEnabled","from","some","mainStyles","length","paddingLeft","paddingRight","paddingTop","paddingBottom","undefined","transition","slice","index","size","getLayoutItem","find","rootVm","isMounted","layoutSize","elementSize","disableTransitions","instances","vnode","instanceIndex","indexOf","splice","findIndex","i","zIndex","isHorizontal","isOppositeHorizontal","isOppositeVertical","styles","transform","height","marginLeft","marginRight","marginTop","marginBottom","width","delete","v","layoutClasses","layoutStyles","layoutRef"],"sources":["../../src/composables/layout.ts"],"sourcesContent":["// Composables\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport {\n computed,\n inject,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n onMounted,\n provide,\n reactive,\n ref,\n} from 'vue'\nimport { convertToUnit, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, CSSProperties, InjectionKey, Prop, Ref } from 'vue'\n\ntype Position = 'top' | 'left' | 'right' | 'bottom'\n\ntype LayoutItem = {\n id: string\n top: number\n bottom: number\n left: number\n right: number\n size: number\n}\n\ninterface LayoutProvide {\n register: (\n vm: ComponentInternalInstance,\n options: {\n id: string\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n }\n ) => {\n layoutItemStyles: Ref<CSSProperties>\n layoutItemScrimStyles: Ref<CSSProperties>\n zIndex: Ref<number>\n }\n unregister: (id: string) => void\n mainStyles: Ref<CSSProperties>\n getLayoutItem: (id: string) => LayoutItem | undefined\n items: Ref<LayoutItem[]>\n layoutRect: Ref<DOMRectReadOnly | undefined>\n rootZIndex: Ref<number>\n}\n\nexport const VuetifyLayoutKey: InjectionKey<LayoutProvide> = Symbol.for('vuetify:layout')\nexport const VuetifyLayoutItemKey: InjectionKey<{ id: string }> = Symbol.for('vuetify:layout-item')\n\nconst ROOT_ZINDEX = 1000\n\nexport const makeLayoutProps = propsFactory({\n overlaps: {\n type: Array,\n default: () => ([]),\n } as Prop<string[]>,\n fullHeight: Boolean,\n}, 'layout')\n\n// Composables\nexport const makeLayoutItemProps = propsFactory({\n name: {\n type: String,\n },\n order: {\n type: [Number, String],\n default: 0,\n },\n absolute: Boolean,\n}, 'layout-item')\n\nexport function useLayout () {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n return layout\n}\n\nexport function useLayoutItem (options: {\n id: string | undefined\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n}) {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n const id = options.id ?? `layout-item-${getUid()}`\n\n const vm = getCurrentInstance('useLayoutItem')\n\n provide(VuetifyLayoutItemKey, { id })\n\n const isKeptAlive = ref(false)\n onDeactivated(() => isKeptAlive.value = true)\n onActivated(() => isKeptAlive.value = false)\n\n const {\n layoutItemStyles,\n layoutItemScrimStyles,\n } = layout.register(vm, {\n ...options,\n active: computed(() => isKeptAlive.value ? false : options.active.value),\n id,\n })\n\n onBeforeUnmount(() => layout.unregister(id))\n\n return { layoutItemStyles, layoutRect: layout.layoutRect, layoutItemScrimStyles }\n}\n\nconst generateLayers = (\n layout: string[],\n positions: Map<string, Ref<Position>>,\n layoutSizes: Map<string, Ref<number | string>>,\n activeItems: Map<string, Ref<boolean>>,\n) => {\n let previousLayer = { top: 0, left: 0, right: 0, bottom: 0 }\n const layers = [{ id: '', layer: { ...previousLayer } }]\n for (const id of layout) {\n const position = positions.get(id)\n const amount = layoutSizes.get(id)\n const active = activeItems.get(id)\n if (!position || !amount || !active) continue\n\n const layer = {\n ...previousLayer,\n [position.value]: parseInt(previousLayer[position.value], 10) + (active.value ? parseInt(amount.value, 10) : 0),\n }\n\n layers.push({\n id,\n layer,\n })\n\n previousLayer = layer\n }\n\n return layers\n}\n\nexport function createLayout (props: { overlaps?: string[], fullHeight?: boolean }) {\n const parentLayout = inject(VuetifyLayoutKey, null)\n const rootZIndex = computed(() => parentLayout ? parentLayout.rootZIndex.value - 100 : ROOT_ZINDEX)\n const registered = ref<string[]>([])\n const positions = reactive(new Map<string, Ref<Position>>())\n const layoutSizes = reactive(new Map<string, Ref<number | string>>())\n const priorities = reactive(new Map<string, Ref<number>>())\n const activeItems = reactive(new Map<string, Ref<boolean>>())\n const disabledTransitions = reactive(new Map<string, Ref<boolean>>())\n const { resizeRef, contentRect: layoutRect } = useResizeObserver()\n\n const computedOverlaps = computed(() => {\n const map = new Map<string, { position: Position, amount: number }>()\n const overlaps = props.overlaps ?? []\n for (const overlap of overlaps.filter(item => item.includes(':'))) {\n const [top, bottom] = overlap.split(':')\n if (!registered.value.includes(top) || !registered.value.includes(bottom)) continue\n\n const topPosition = positions.get(top)\n const bottomPosition = positions.get(bottom)\n const topAmount = layoutSizes.get(top)\n const bottomAmount = layoutSizes.get(bottom)\n\n if (!topPosition || !bottomPosition || !topAmount || !bottomAmount) continue\n\n map.set(bottom, { position: topPosition.value, amount: parseInt(topAmount.value, 10) })\n map.set(top, { position: bottomPosition.value, amount: -parseInt(bottomAmount.value, 10) })\n }\n\n return map\n })\n\n const layers = computed(() => {\n const uniquePriorities = [...new Set([...priorities.values()].map(p => p.value))].sort((a, b) => a - b)\n const layout = []\n for (const p of uniquePriorities) {\n const items = registered.value.filter(id => priorities.get(id)?.value === p)\n layout.push(...items)\n }\n return generateLayers(layout, positions, layoutSizes, activeItems)\n })\n\n const transitionsEnabled = computed(() => {\n return !Array.from(disabledTransitions.values()).some(ref => ref.value)\n })\n\n const mainStyles = computed<CSSProperties>(() => {\n const layer = layers.value[layers.value.length - 1].layer\n\n return {\n position: 'relative',\n paddingLeft: convertToUnit(layer.left),\n paddingRight: convertToUnit(layer.right),\n paddingTop: convertToUnit(layer.top),\n paddingBottom: convertToUnit(layer.bottom),\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n }\n })\n\n const items = computed(() => {\n return layers.value.slice(1).map(({ id }, index) => {\n const { layer } = layers.value[index]\n const size = layoutSizes.get(id)\n\n return {\n id,\n ...layer,\n size: Number(size!.value),\n }\n })\n })\n\n const getLayoutItem = (id: string) => {\n return items.value.find(item => item.id === id)\n }\n\n const rootVm = getCurrentInstance('createLayout')\n\n const isMounted = ref(false)\n onMounted(() => {\n isMounted.value = true\n })\n\n provide(VuetifyLayoutKey, {\n register: (\n vm: ComponentInternalInstance,\n {\n id,\n order,\n position,\n layoutSize,\n elementSize,\n active,\n disableTransitions,\n absolute,\n }\n ) => {\n priorities.set(id, order)\n positions.set(id, position)\n layoutSizes.set(id, layoutSize)\n activeItems.set(id, active)\n disableTransitions && disabledTransitions.set(id, disableTransitions)\n\n const instances = findChildrenWithProvide(VuetifyLayoutItemKey, rootVm?.vnode)\n const instanceIndex = instances.indexOf(vm)\n\n if (instanceIndex > -1) registered.value.splice(instanceIndex, 0, id)\n else registered.value.push(id)\n\n const index = computed(() => items.value.findIndex(i => i.id === id))\n const zIndex = computed(() => rootZIndex.value + (layers.value.length * 2) - (index.value * 2))\n\n const layoutItemStyles = computed<CSSProperties>(() => {\n const isHorizontal = position.value === 'left' || position.value === 'right'\n const isOppositeHorizontal = position.value === 'right'\n const isOppositeVertical = position.value === 'bottom'\n\n const styles = {\n [position.value]: 0,\n zIndex: zIndex.value,\n transform: `translate${isHorizontal ? 'X' : 'Y'}(${(active.value ? 0 : -110) * (isOppositeHorizontal || isOppositeVertical ? -1 : 1)}%)`,\n position: absolute.value || rootZIndex.value !== ROOT_ZINDEX ? 'absolute' : 'fixed',\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n } as const\n\n if (!isMounted.value) return styles\n\n if (index.value < 0) throw new Error(`Layout item \"${id}\" is missing`)\n\n const item = items.value[index.value]\n\n if (!item) throw new Error(`Could not find layout item \"${id}`)\n\n const overlap = computedOverlaps.value.get(id)\n if (overlap) {\n item[overlap.position] += overlap.amount\n }\n\n return {\n ...styles,\n height: isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)` : elementSize.value ? `${elementSize.value}px` : undefined,\n marginLeft: isOppositeHorizontal ? undefined : `${item.left}px`,\n marginRight: isOppositeHorizontal ? `${item.right}px` : undefined,\n marginTop: position.value !== 'bottom' ? `${item.top}px` : undefined,\n marginBottom: position.value !== 'top' ? `${item.bottom}px` : undefined,\n width: !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)` : elementSize.value ? `${elementSize.value}px` : undefined,\n }\n })\n\n const layoutItemScrimStyles = computed<CSSProperties>(() => ({\n zIndex: zIndex.value - 1,\n position: rootZIndex.value === ROOT_ZINDEX ? 'fixed' : 'absolute',\n }))\n\n return { layoutItemStyles, layoutItemScrimStyles, zIndex }\n },\n unregister: (id: string) => {\n priorities.delete(id)\n positions.delete(id)\n layoutSizes.delete(id)\n activeItems.delete(id)\n disabledTransitions.delete(id)\n registered.value = registered.value.filter(v => v !== id)\n },\n mainStyles,\n getLayoutItem,\n items,\n layoutRect,\n rootZIndex,\n })\n\n const layoutClasses = computed(() => [\n 'v-layout',\n { 'v-layout--full-height': props.fullHeight },\n ])\n\n const layoutStyles = computed(() => ({\n zIndex: rootZIndex.value,\n }))\n\n return {\n layoutClasses,\n layoutStyles,\n getLayoutItem,\n items,\n layoutRect,\n layoutRef: resizeRef,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"layout.mjs","names":["useResizeObserver","computed","inject","onActivated","onBeforeUnmount","onDeactivated","onMounted","provide","reactive","ref","convertToUnit","findChildrenWithProvide","getCurrentInstance","getUid","propsFactory","VuetifyLayoutKey","Symbol","for","VuetifyLayoutItemKey","ROOT_ZINDEX","makeLayoutProps","overlaps","type","Array","default","fullHeight","Boolean","makeLayoutItemProps","name","String","order","Number","absolute","useLayout","layout","Error","useLayoutItem","options","id","vm","isKeptAlive","value","layoutItemStyles","layoutItemScrimStyles","register","active","unregister","layoutRect","generateLayers","positions","layoutSizes","activeItems","previousLayer","top","left","right","bottom","layers","layer","position","get","amount","parseInt","push","createLayout","props","parentLayout","rootZIndex","registered","Map","priorities","disabledTransitions","resizeRef","contentRect","computedOverlaps","map","overlap","filter","item","includes","split","topPosition","bottomPosition","topAmount","bottomAmount","set","uniquePriorities","Set","values","p","sort","a","b","items","transitionsEnabled","from","some","mainStyles","length","undefined","transition","slice","index","size","getLayoutItem","find","rootVm","isMounted","layoutSize","elementSize","disableTransitions","instances","vnode","instanceIndex","indexOf","splice","findIndex","i","zIndex","isHorizontal","isOppositeHorizontal","isOppositeVertical","styles","transform","height","width","delete","v","layoutClasses","layoutStyles","overflow","layoutRef"],"sources":["../../src/composables/layout.ts"],"sourcesContent":["// Composables\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport {\n computed,\n inject,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n onMounted,\n provide,\n reactive,\n ref,\n} from 'vue'\nimport { convertToUnit, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, CSSProperties, InjectionKey, Prop, Ref } from 'vue'\n\ntype Position = 'top' | 'left' | 'right' | 'bottom'\n\ntype LayoutItem = {\n id: string\n top: number\n bottom: number\n left: number\n right: number\n size: number\n}\n\ninterface LayoutProvide {\n register: (\n vm: ComponentInternalInstance,\n options: {\n id: string\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n }\n ) => {\n layoutItemStyles: Ref<CSSProperties>\n layoutItemScrimStyles: Ref<CSSProperties>\n zIndex: Ref<number>\n }\n unregister: (id: string) => void\n mainStyles: Ref<CSSProperties>\n getLayoutItem: (id: string) => LayoutItem | undefined\n items: Ref<LayoutItem[]>\n layoutRect: Ref<DOMRectReadOnly | undefined>\n rootZIndex: Ref<number>\n}\n\nexport const VuetifyLayoutKey: InjectionKey<LayoutProvide> = Symbol.for('vuetify:layout')\nexport const VuetifyLayoutItemKey: InjectionKey<{ id: string }> = Symbol.for('vuetify:layout-item')\n\nconst ROOT_ZINDEX = 1000\n\nexport const makeLayoutProps = propsFactory({\n overlaps: {\n type: Array,\n default: () => ([]),\n } as Prop<string[]>,\n fullHeight: Boolean,\n}, 'layout')\n\n// Composables\nexport const makeLayoutItemProps = propsFactory({\n name: {\n type: String,\n },\n order: {\n type: [Number, String],\n default: 0,\n },\n absolute: Boolean,\n}, 'layout-item')\n\nexport function useLayout () {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n return layout\n}\n\nexport function useLayoutItem (options: {\n id: string | undefined\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n}) {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n const id = options.id ?? `layout-item-${getUid()}`\n\n const vm = getCurrentInstance('useLayoutItem')\n\n provide(VuetifyLayoutItemKey, { id })\n\n const isKeptAlive = ref(false)\n onDeactivated(() => isKeptAlive.value = true)\n onActivated(() => isKeptAlive.value = false)\n\n const {\n layoutItemStyles,\n layoutItemScrimStyles,\n } = layout.register(vm, {\n ...options,\n active: computed(() => isKeptAlive.value ? false : options.active.value),\n id,\n })\n\n onBeforeUnmount(() => layout.unregister(id))\n\n return { layoutItemStyles, layoutRect: layout.layoutRect, layoutItemScrimStyles }\n}\n\nconst generateLayers = (\n layout: string[],\n positions: Map<string, Ref<Position>>,\n layoutSizes: Map<string, Ref<number | string>>,\n activeItems: Map<string, Ref<boolean>>,\n) => {\n let previousLayer = { top: 0, left: 0, right: 0, bottom: 0 }\n const layers = [{ id: '', layer: { ...previousLayer } }]\n for (const id of layout) {\n const position = positions.get(id)\n const amount = layoutSizes.get(id)\n const active = activeItems.get(id)\n if (!position || !amount || !active) continue\n\n const layer = {\n ...previousLayer,\n [position.value]: parseInt(previousLayer[position.value], 10) + (active.value ? parseInt(amount.value, 10) : 0),\n }\n\n layers.push({\n id,\n layer,\n })\n\n previousLayer = layer\n }\n\n return layers\n}\n\nexport function createLayout (props: { overlaps?: string[], fullHeight?: boolean }) {\n const parentLayout = inject(VuetifyLayoutKey, null)\n const rootZIndex = computed(() => parentLayout ? parentLayout.rootZIndex.value - 100 : ROOT_ZINDEX)\n const registered = ref<string[]>([])\n const positions = reactive(new Map<string, Ref<Position>>())\n const layoutSizes = reactive(new Map<string, Ref<number | string>>())\n const priorities = reactive(new Map<string, Ref<number>>())\n const activeItems = reactive(new Map<string, Ref<boolean>>())\n const disabledTransitions = reactive(new Map<string, Ref<boolean>>())\n const { resizeRef, contentRect: layoutRect } = useResizeObserver()\n\n const computedOverlaps = computed(() => {\n const map = new Map<string, { position: Position, amount: number }>()\n const overlaps = props.overlaps ?? []\n for (const overlap of overlaps.filter(item => item.includes(':'))) {\n const [top, bottom] = overlap.split(':')\n if (!registered.value.includes(top) || !registered.value.includes(bottom)) continue\n\n const topPosition = positions.get(top)\n const bottomPosition = positions.get(bottom)\n const topAmount = layoutSizes.get(top)\n const bottomAmount = layoutSizes.get(bottom)\n\n if (!topPosition || !bottomPosition || !topAmount || !bottomAmount) continue\n\n map.set(bottom, { position: topPosition.value, amount: parseInt(topAmount.value, 10) })\n map.set(top, { position: bottomPosition.value, amount: -parseInt(bottomAmount.value, 10) })\n }\n\n return map\n })\n\n const layers = computed(() => {\n const uniquePriorities = [...new Set([...priorities.values()].map(p => p.value))].sort((a, b) => a - b)\n const layout = []\n for (const p of uniquePriorities) {\n const items = registered.value.filter(id => priorities.get(id)?.value === p)\n layout.push(...items)\n }\n return generateLayers(layout, positions, layoutSizes, activeItems)\n })\n\n const transitionsEnabled = computed(() => {\n return !Array.from(disabledTransitions.values()).some(ref => ref.value)\n })\n\n const mainStyles = computed<CSSProperties>(() => {\n const layer = layers.value[layers.value.length - 1].layer\n\n return {\n '--v-layout-left': convertToUnit(layer.left),\n '--v-layout-right': convertToUnit(layer.right),\n '--v-layout-top': convertToUnit(layer.top),\n '--v-layout-bottom': convertToUnit(layer.bottom),\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n }\n })\n\n const items = computed(() => {\n return layers.value.slice(1).map(({ id }, index) => {\n const { layer } = layers.value[index]\n const size = layoutSizes.get(id)\n\n return {\n id,\n ...layer,\n size: Number(size!.value),\n }\n })\n })\n\n const getLayoutItem = (id: string) => {\n return items.value.find(item => item.id === id)\n }\n\n const rootVm = getCurrentInstance('createLayout')\n\n const isMounted = ref(false)\n onMounted(() => {\n isMounted.value = true\n })\n\n provide(VuetifyLayoutKey, {\n register: (\n vm: ComponentInternalInstance,\n {\n id,\n order,\n position,\n layoutSize,\n elementSize,\n active,\n disableTransitions,\n absolute,\n }\n ) => {\n priorities.set(id, order)\n positions.set(id, position)\n layoutSizes.set(id, layoutSize)\n activeItems.set(id, active)\n disableTransitions && disabledTransitions.set(id, disableTransitions)\n\n const instances = findChildrenWithProvide(VuetifyLayoutItemKey, rootVm?.vnode)\n const instanceIndex = instances.indexOf(vm)\n\n if (instanceIndex > -1) registered.value.splice(instanceIndex, 0, id)\n else registered.value.push(id)\n\n const index = computed(() => items.value.findIndex(i => i.id === id))\n const zIndex = computed(() => rootZIndex.value + (layers.value.length * 2) - (index.value * 2))\n\n const layoutItemStyles = computed<CSSProperties>(() => {\n const isHorizontal = position.value === 'left' || position.value === 'right'\n const isOppositeHorizontal = position.value === 'right'\n const isOppositeVertical = position.value === 'bottom'\n\n const styles = {\n [position.value]: 0,\n zIndex: zIndex.value,\n transform: `translate${isHorizontal ? 'X' : 'Y'}(${(active.value ? 0 : -110) * (isOppositeHorizontal || isOppositeVertical ? -1 : 1)}%)`,\n position: absolute.value || rootZIndex.value !== ROOT_ZINDEX ? 'absolute' : 'fixed',\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n } as const\n\n if (!isMounted.value) return styles\n\n if (index.value < 0) throw new Error(`Layout item \"${id}\" is missing`)\n\n const item = items.value[index.value]\n\n if (!item) throw new Error(`Could not find layout item \"${id}`)\n\n const overlap = computedOverlaps.value.get(id)\n if (overlap) {\n item[overlap.position] += overlap.amount\n }\n\n return {\n ...styles,\n height:\n isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)`\n : elementSize.value ? `${elementSize.value}px`\n : undefined,\n left: isOppositeHorizontal ? undefined : `${item.left}px`,\n right: isOppositeHorizontal ? `${item.right}px` : undefined,\n top: position.value !== 'bottom' ? `${item.top}px` : undefined,\n bottom: position.value !== 'top' ? `${item.bottom}px` : undefined,\n width:\n !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)`\n : elementSize.value ? `${elementSize.value}px`\n : undefined,\n }\n })\n\n const layoutItemScrimStyles = computed<CSSProperties>(() => ({\n zIndex: zIndex.value - 1,\n }))\n\n return { layoutItemStyles, layoutItemScrimStyles, zIndex }\n },\n unregister: (id: string) => {\n priorities.delete(id)\n positions.delete(id)\n layoutSizes.delete(id)\n activeItems.delete(id)\n disabledTransitions.delete(id)\n registered.value = registered.value.filter(v => v !== id)\n },\n mainStyles,\n getLayoutItem,\n items,\n layoutRect,\n rootZIndex,\n })\n\n const layoutClasses = computed(() => [\n 'v-layout',\n { 'v-layout--full-height': props.fullHeight },\n ])\n\n const layoutStyles = computed(() => ({\n zIndex: rootZIndex.value,\n position: parentLayout ? 'relative' as const : undefined,\n overflow: parentLayout ? 'hidden' : undefined,\n }))\n\n return {\n layoutClasses,\n layoutStyles,\n getLayoutItem,\n items,\n layoutRect,\n layoutRef: resizeRef,\n }\n}\n"],"mappings":"AAAA;SACSA,iB,gCAET;;AACA,SACEC,QADF,EAEEC,MAFF,EAGEC,WAHF,EAIEC,eAJF,EAKEC,aALF,EAMEC,SANF,EAOEC,OAPF,EAQEC,QARF,EASEC,GATF,QAUO,KAVP;SAWSC,a,EAAeC,uB,EAAyBC,kB,EAAoBC,M,EAAQC,Y,6BAE7E;;AAwCA,OAAO,MAAMC,gBAA6C,GAAGC,MAAM,CAACC,GAAP,CAAW,gBAAX,CAAtD;AACP,OAAO,MAAMC,oBAAkD,GAAGF,MAAM,CAACC,GAAP,CAAW,qBAAX,CAA3D;AAEP,MAAME,WAAW,GAAG,IAApB;AAEA,OAAO,MAAMC,eAAe,GAAGN,YAAY,CAAC;EAC1CO,QAAQ,EAAE;IACRC,IAAI,EAAEC,KADE;IAERC,OAAO,EAAE,MAAO;EAFR,CADgC;EAK1CC,UAAU,EAAEC;AAL8B,CAAD,EAMxC,QANwC,CAApC,C,CAQP;;AACA,OAAO,MAAMC,mBAAmB,GAAGb,YAAY,CAAC;EAC9Cc,IAAI,EAAE;IACJN,IAAI,EAAEO;EADF,CADwC;EAI9CC,KAAK,EAAE;IACLR,IAAI,EAAE,CAACS,MAAD,EAASF,MAAT,CADD;IAELL,OAAO,EAAE;EAFJ,CAJuC;EAQ9CQ,QAAQ,EAAEN;AARoC,CAAD,EAS5C,aAT4C,CAAxC;AAWP,OAAO,SAASO,SAAT,GAAsB;EAC3B,MAAMC,MAAM,GAAGhC,MAAM,CAACa,gBAAD,CAArB;EAEA,IAAI,CAACmB,MAAL,EAAa,MAAM,IAAIC,KAAJ,CAAU,wCAAV,CAAN;EAEb,OAAOD,MAAP;AACD;AAED,OAAO,SAASE,aAAT,CAAwBC,OAAxB,EASJ;EAAA;;EACD,MAAMH,MAAM,GAAGhC,MAAM,CAACa,gBAAD,CAArB;EAEA,IAAI,CAACmB,MAAL,EAAa,MAAM,IAAIC,KAAJ,CAAU,wCAAV,CAAN;EAEb,MAAMG,EAAE,kBAAGD,OAAO,CAACC,EAAX,0BAAkB,eAAczB,MAAM,EAAG,EAAjD;EAEA,MAAM0B,EAAE,GAAG3B,kBAAkB,CAAC,eAAD,CAA7B;EAEAL,OAAO,CAACW,oBAAD,EAAuB;IAAEoB;EAAF,CAAvB,CAAP;EAEA,MAAME,WAAW,GAAG/B,GAAG,CAAC,KAAD,CAAvB;EACAJ,aAAa,CAAC,MAAMmC,WAAW,CAACC,KAAZ,GAAoB,IAA3B,CAAb;EACAtC,WAAW,CAAC,MAAMqC,WAAW,CAACC,KAAZ,GAAoB,KAA3B,CAAX;EAEA,MAAM;IACJC,gBADI;IAEJC;EAFI,IAGFT,MAAM,CAACU,QAAP,CAAgBL,EAAhB,EAAoB,EACtB,GAAGF,OADmB;IAEtBQ,MAAM,EAAE5C,QAAQ,CAAC,MAAMuC,WAAW,CAACC,KAAZ,GAAoB,KAApB,GAA4BJ,OAAO,CAACQ,MAAR,CAAeJ,KAAlD,CAFM;IAGtBH;EAHsB,CAApB,CAHJ;EASAlC,eAAe,CAAC,MAAM8B,MAAM,CAACY,UAAP,CAAkBR,EAAlB,CAAP,CAAf;EAEA,OAAO;IAAEI,gBAAF;IAAoBK,UAAU,EAAEb,MAAM,CAACa,UAAvC;IAAmDJ;EAAnD,CAAP;AACD;;AAED,MAAMK,cAAc,GAAG,CACrBd,MADqB,EAErBe,SAFqB,EAGrBC,WAHqB,EAIrBC,WAJqB,KAKlB;EACH,IAAIC,aAAa,GAAG;IAAEC,GAAG,EAAE,CAAP;IAAUC,IAAI,EAAE,CAAhB;IAAmBC,KAAK,EAAE,CAA1B;IAA6BC,MAAM,EAAE;EAArC,CAApB;EACA,MAAMC,MAAM,GAAG,CAAC;IAAEnB,EAAE,EAAE,EAAN;IAAUoB,KAAK,EAAE,EAAE,GAAGN;IAAL;EAAjB,CAAD,CAAf;;EACA,KAAK,MAAMd,EAAX,IAAiBJ,MAAjB,EAAyB;IACvB,MAAMyB,QAAQ,GAAGV,SAAS,CAACW,GAAV,CAActB,EAAd,CAAjB;IACA,MAAMuB,MAAM,GAAGX,WAAW,CAACU,GAAZ,CAAgBtB,EAAhB,CAAf;IACA,MAAMO,MAAM,GAAGM,WAAW,CAACS,GAAZ,CAAgBtB,EAAhB,CAAf;IACA,IAAI,CAACqB,QAAD,IAAa,CAACE,MAAd,IAAwB,CAAChB,MAA7B,EAAqC;IAErC,MAAMa,KAAK,GAAG,EACZ,GAAGN,aADS;MAEZ,CAACO,QAAQ,CAAClB,KAAV,GAAkBqB,QAAQ,CAACV,aAAa,CAACO,QAAQ,CAAClB,KAAV,CAAd,EAAgC,EAAhC,CAAR,IAA+CI,MAAM,CAACJ,KAAP,GAAeqB,QAAQ,CAACD,MAAM,CAACpB,KAAR,EAAe,EAAf,CAAvB,GAA4C,CAA3F;IAFN,CAAd;IAKAgB,MAAM,CAACM,IAAP,CAAY;MACVzB,EADU;MAEVoB;IAFU,CAAZ;IAKAN,aAAa,GAAGM,KAAhB;EACD;;EAED,OAAOD,MAAP;AACD,CA5BD;;AA8BA,OAAO,SAASO,YAAT,CAAuBC,KAAvB,EAA6E;EAClF,MAAMC,YAAY,GAAGhE,MAAM,CAACa,gBAAD,EAAmB,IAAnB,CAA3B;EACA,MAAMoD,UAAU,GAAGlE,QAAQ,CAAC,MAAMiE,YAAY,GAAGA,YAAY,CAACC,UAAb,CAAwB1B,KAAxB,GAAgC,GAAnC,GAAyCtB,WAA5D,CAA3B;EACA,MAAMiD,UAAU,GAAG3D,GAAG,CAAW,EAAX,CAAtB;EACA,MAAMwC,SAAS,GAAGzC,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA1B;EACA,MAAMnB,WAAW,GAAG1C,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA5B;EACA,MAAMC,UAAU,GAAG9D,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA3B;EACA,MAAMlB,WAAW,GAAG3C,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA5B;EACA,MAAME,mBAAmB,GAAG/D,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAApC;EACA,MAAM;IAAEG,SAAF;IAAaC,WAAW,EAAE1B;EAA1B,IAAyC/C,iBAAiB,EAAhE;EAEA,MAAM0E,gBAAgB,GAAGzE,QAAQ,CAAC,MAAM;IAAA;;IACtC,MAAM0E,GAAG,GAAG,IAAIN,GAAJ,EAAZ;IACA,MAAMhD,QAAQ,sBAAG4C,KAAK,CAAC5C,QAAT,8BAAqB,EAAnC;;IACA,KAAK,MAAMuD,OAAX,IAAsBvD,QAAQ,CAACwD,MAAT,CAAgBC,IAAI,IAAIA,IAAI,CAACC,QAAL,CAAc,GAAd,CAAxB,CAAtB,EAAmE;MACjE,MAAM,CAAC1B,GAAD,EAAMG,MAAN,IAAgBoB,OAAO,CAACI,KAAR,CAAc,GAAd,CAAtB;MACA,IAAI,CAACZ,UAAU,CAAC3B,KAAX,CAAiBsC,QAAjB,CAA0B1B,GAA1B,CAAD,IAAmC,CAACe,UAAU,CAAC3B,KAAX,CAAiBsC,QAAjB,CAA0BvB,MAA1B,CAAxC,EAA2E;MAE3E,MAAMyB,WAAW,GAAGhC,SAAS,CAACW,GAAV,CAAcP,GAAd,CAApB;MACA,MAAM6B,cAAc,GAAGjC,SAAS,CAACW,GAAV,CAAcJ,MAAd,CAAvB;MACA,MAAM2B,SAAS,GAAGjC,WAAW,CAACU,GAAZ,CAAgBP,GAAhB,CAAlB;MACA,MAAM+B,YAAY,GAAGlC,WAAW,CAACU,GAAZ,CAAgBJ,MAAhB,CAArB;MAEA,IAAI,CAACyB,WAAD,IAAgB,CAACC,cAAjB,IAAmC,CAACC,SAApC,IAAiD,CAACC,YAAtD,EAAoE;MAEpET,GAAG,CAACU,GAAJ,CAAQ7B,MAAR,EAAgB;QAAEG,QAAQ,EAAEsB,WAAW,CAACxC,KAAxB;QAA+BoB,MAAM,EAAEC,QAAQ,CAACqB,SAAS,CAAC1C,KAAX,EAAkB,EAAlB;MAA/C,CAAhB;MACAkC,GAAG,CAACU,GAAJ,CAAQhC,GAAR,EAAa;QAAEM,QAAQ,EAAEuB,cAAc,CAACzC,KAA3B;QAAkCoB,MAAM,EAAE,CAACC,QAAQ,CAACsB,YAAY,CAAC3C,KAAd,EAAqB,EAArB;MAAnD,CAAb;IACD;;IAED,OAAOkC,GAAP;EACD,CAnBgC,CAAjC;EAqBA,MAAMlB,MAAM,GAAGxD,QAAQ,CAAC,MAAM;IAC5B,MAAMqF,gBAAgB,GAAG,CAAC,GAAG,IAAIC,GAAJ,CAAQ,CAAC,GAAGjB,UAAU,CAACkB,MAAX,EAAJ,EAAyBb,GAAzB,CAA6Bc,CAAC,IAAIA,CAAC,CAAChD,KAApC,CAAR,CAAJ,EAAyDiD,IAAzD,CAA8D,CAACC,CAAD,EAAIC,CAAJ,KAAUD,CAAC,GAAGC,CAA5E,CAAzB;IACA,MAAM1D,MAAM,GAAG,EAAf;;IACA,KAAK,MAAMuD,CAAX,IAAgBH,gBAAhB,EAAkC;MAChC,MAAMO,KAAK,GAAGzB,UAAU,CAAC3B,KAAX,CAAiBoC,MAAjB,CAAwBvC,EAAE;QAAA;;QAAA,OAAI,oBAAAgC,UAAU,CAACV,GAAX,CAAetB,EAAf,sCAAoBG,KAApB,MAA8BgD,CAAlC;MAAA,CAA1B,CAAd;MACAvD,MAAM,CAAC6B,IAAP,CAAY,GAAG8B,KAAf;IACD;;IACD,OAAO7C,cAAc,CAACd,MAAD,EAASe,SAAT,EAAoBC,WAApB,EAAiCC,WAAjC,CAArB;EACD,CARsB,CAAvB;EAUA,MAAM2C,kBAAkB,GAAG7F,QAAQ,CAAC,MAAM;IACxC,OAAO,CAACsB,KAAK,CAACwE,IAAN,CAAWxB,mBAAmB,CAACiB,MAApB,EAAX,EAAyCQ,IAAzC,CAA8CvF,GAAG,IAAIA,GAAG,CAACgC,KAAzD,CAAR;EACD,CAFkC,CAAnC;EAIA,MAAMwD,UAAU,GAAGhG,QAAQ,CAAgB,MAAM;IAC/C,MAAMyD,KAAK,GAAGD,MAAM,CAAChB,KAAP,CAAagB,MAAM,CAAChB,KAAP,CAAayD,MAAb,GAAsB,CAAnC,EAAsCxC,KAApD;IAEA,OAAO;MACL,mBAAmBhD,aAAa,CAACgD,KAAK,CAACJ,IAAP,CAD3B;MAEL,oBAAoB5C,aAAa,CAACgD,KAAK,CAACH,KAAP,CAF5B;MAGL,kBAAkB7C,aAAa,CAACgD,KAAK,CAACL,GAAP,CAH1B;MAIL,qBAAqB3C,aAAa,CAACgD,KAAK,CAACF,MAAP,CAJ7B;MAKL,IAAIsC,kBAAkB,CAACrD,KAAnB,GAA2B0D,SAA3B,GAAuC;QAAEC,UAAU,EAAE;MAAd,CAA3C;IALK,CAAP;EAOD,CAV0B,CAA3B;EAYA,MAAMP,KAAK,GAAG5F,QAAQ,CAAC,MAAM;IAC3B,OAAOwD,MAAM,CAAChB,KAAP,CAAa4D,KAAb,CAAmB,CAAnB,EAAsB1B,GAAtB,CAA0B,OAAS2B,KAAT,KAAmB;MAAA,IAAlB;QAAEhE;MAAF,CAAkB;MAClD,MAAM;QAAEoB;MAAF,IAAYD,MAAM,CAAChB,KAAP,CAAa6D,KAAb,CAAlB;MACA,MAAMC,IAAI,GAAGrD,WAAW,CAACU,GAAZ,CAAgBtB,EAAhB,CAAb;MAEA,OAAO;QACLA,EADK;QAEL,GAAGoB,KAFE;QAGL6C,IAAI,EAAExE,MAAM,CAACwE,IAAI,CAAE9D,KAAP;MAHP,CAAP;IAKD,CATM,CAAP;EAUD,CAXqB,CAAtB;;EAaA,MAAM+D,aAAa,GAAIlE,EAAD,IAAgB;IACpC,OAAOuD,KAAK,CAACpD,KAAN,CAAYgE,IAAZ,CAAiB3B,IAAI,IAAIA,IAAI,CAACxC,EAAL,KAAYA,EAArC,CAAP;EACD,CAFD;;EAIA,MAAMoE,MAAM,GAAG9F,kBAAkB,CAAC,cAAD,CAAjC;EAEA,MAAM+F,SAAS,GAAGlG,GAAG,CAAC,KAAD,CAArB;EACAH,SAAS,CAAC,MAAM;IACdqG,SAAS,CAAClE,KAAV,GAAkB,IAAlB;EACD,CAFQ,CAAT;EAIAlC,OAAO,CAACQ,gBAAD,EAAmB;IACxB6B,QAAQ,EAAE,CACRL,EADQ,YAYL;MAAA,IAVH;QACED,EADF;QAEER,KAFF;QAGE6B,QAHF;QAIEiD,UAJF;QAKEC,WALF;QAMEhE,MANF;QAOEiE,kBAPF;QAQE9E;MARF,CAUG;MACHsC,UAAU,CAACe,GAAX,CAAe/C,EAAf,EAAmBR,KAAnB;MACAmB,SAAS,CAACoC,GAAV,CAAc/C,EAAd,EAAkBqB,QAAlB;MACAT,WAAW,CAACmC,GAAZ,CAAgB/C,EAAhB,EAAoBsE,UAApB;MACAzD,WAAW,CAACkC,GAAZ,CAAgB/C,EAAhB,EAAoBO,MAApB;MACAiE,kBAAkB,IAAIvC,mBAAmB,CAACc,GAApB,CAAwB/C,EAAxB,EAA4BwE,kBAA5B,CAAtB;MAEA,MAAMC,SAAS,GAAGpG,uBAAuB,CAACO,oBAAD,EAAuBwF,MAAvB,oBAAuBA,MAAM,CAAEM,KAA/B,CAAzC;MACA,MAAMC,aAAa,GAAGF,SAAS,CAACG,OAAV,CAAkB3E,EAAlB,CAAtB;MAEA,IAAI0E,aAAa,GAAG,CAAC,CAArB,EAAwB7C,UAAU,CAAC3B,KAAX,CAAiB0E,MAAjB,CAAwBF,aAAxB,EAAuC,CAAvC,EAA0C3E,EAA1C,EAAxB,KACK8B,UAAU,CAAC3B,KAAX,CAAiBsB,IAAjB,CAAsBzB,EAAtB;MAEL,MAAMgE,KAAK,GAAGrG,QAAQ,CAAC,MAAM4F,KAAK,CAACpD,KAAN,CAAY2E,SAAZ,CAAsBC,CAAC,IAAIA,CAAC,CAAC/E,EAAF,KAASA,EAApC,CAAP,CAAtB;MACA,MAAMgF,MAAM,GAAGrH,QAAQ,CAAC,MAAMkE,UAAU,CAAC1B,KAAX,GAAoBgB,MAAM,CAAChB,KAAP,CAAayD,MAAb,GAAsB,CAA1C,GAAgDI,KAAK,CAAC7D,KAAN,GAAc,CAArE,CAAvB;MAEA,MAAMC,gBAAgB,GAAGzC,QAAQ,CAAgB,MAAM;QACrD,MAAMsH,YAAY,GAAG5D,QAAQ,CAAClB,KAAT,KAAmB,MAAnB,IAA6BkB,QAAQ,CAAClB,KAAT,KAAmB,OAArE;QACA,MAAM+E,oBAAoB,GAAG7D,QAAQ,CAAClB,KAAT,KAAmB,OAAhD;QACA,MAAMgF,kBAAkB,GAAG9D,QAAQ,CAAClB,KAAT,KAAmB,QAA9C;QAEA,MAAMiF,MAAM,GAAG;UACb,CAAC/D,QAAQ,CAAClB,KAAV,GAAkB,CADL;UAEb6E,MAAM,EAAEA,MAAM,CAAC7E,KAFF;UAGbkF,SAAS,EAAG,YAAWJ,YAAY,GAAG,GAAH,GAAS,GAAI,IAAG,CAAC1E,MAAM,CAACJ,KAAP,GAAe,CAAf,GAAmB,CAAC,GAArB,KAA6B+E,oBAAoB,IAAIC,kBAAxB,GAA6C,CAAC,CAA9C,GAAkD,CAA/E,CAAkF,IAHxH;UAIb9D,QAAQ,EAAE3B,QAAQ,CAACS,KAAT,IAAkB0B,UAAU,CAAC1B,KAAX,KAAqBtB,WAAvC,GAAqD,UAArD,GAAkE,OAJ/D;UAKb,IAAI2E,kBAAkB,CAACrD,KAAnB,GAA2B0D,SAA3B,GAAuC;YAAEC,UAAU,EAAE;UAAd,CAA3C;QALa,CAAf;QAQA,IAAI,CAACO,SAAS,CAAClE,KAAf,EAAsB,OAAOiF,MAAP;QAEtB,IAAIpB,KAAK,CAAC7D,KAAN,GAAc,CAAlB,EAAqB,MAAM,IAAIN,KAAJ,CAAW,gBAAeG,EAAG,cAA7B,CAAN;QAErB,MAAMwC,IAAI,GAAGe,KAAK,CAACpD,KAAN,CAAY6D,KAAK,CAAC7D,KAAlB,CAAb;QAEA,IAAI,CAACqC,IAAL,EAAW,MAAM,IAAI3C,KAAJ,CAAW,+BAA8BG,EAAG,EAA5C,CAAN;QAEX,MAAMsC,OAAO,GAAGF,gBAAgB,CAACjC,KAAjB,CAAuBmB,GAAvB,CAA2BtB,EAA3B,CAAhB;;QACA,IAAIsC,OAAJ,EAAa;UACXE,IAAI,CAACF,OAAO,CAACjB,QAAT,CAAJ,IAA0BiB,OAAO,CAACf,MAAlC;QACD;;QAED,OAAO,EACL,GAAG6D,MADE;UAELE,MAAM,EACJL,YAAY,GAAI,eAAczC,IAAI,CAACzB,GAAI,QAAOyB,IAAI,CAACtB,MAAO,KAA9C,GACVqD,WAAW,CAACpE,KAAZ,GAAqB,GAAEoE,WAAW,CAACpE,KAAM,IAAzC,GACA0D,SALC;UAML7C,IAAI,EAAEkE,oBAAoB,GAAGrB,SAAH,GAAgB,GAAErB,IAAI,CAACxB,IAAK,IANjD;UAOLC,KAAK,EAAEiE,oBAAoB,GAAI,GAAE1C,IAAI,CAACvB,KAAM,IAAjB,GAAuB4C,SAP7C;UAQL9C,GAAG,EAAEM,QAAQ,CAAClB,KAAT,KAAmB,QAAnB,GAA+B,GAAEqC,IAAI,CAACzB,GAAI,IAA1C,GAAgD8C,SARhD;UASL3C,MAAM,EAAEG,QAAQ,CAAClB,KAAT,KAAmB,KAAnB,GAA4B,GAAEqC,IAAI,CAACtB,MAAO,IAA1C,GAAgD2C,SATnD;UAUL0B,KAAK,EACH,CAACN,YAAD,GAAiB,eAAczC,IAAI,CAACxB,IAAK,QAAOwB,IAAI,CAACvB,KAAM,KAA3D,GACEsD,WAAW,CAACpE,KAAZ,GAAqB,GAAEoE,WAAW,CAACpE,KAAM,IAAzC,GACA0D;QAbC,CAAP;MAeD,CAzCgC,CAAjC;MA2CA,MAAMxD,qBAAqB,GAAG1C,QAAQ,CAAgB,OAAO;QAC3DqH,MAAM,EAAEA,MAAM,CAAC7E,KAAP,GAAe;MADoC,CAAP,CAAhB,CAAtC;MAIA,OAAO;QAAEC,gBAAF;QAAoBC,qBAApB;QAA2C2E;MAA3C,CAAP;IACD,CA7EuB;IA8ExBxE,UAAU,EAAGR,EAAD,IAAgB;MAC1BgC,UAAU,CAACwD,MAAX,CAAkBxF,EAAlB;MACAW,SAAS,CAAC6E,MAAV,CAAiBxF,EAAjB;MACAY,WAAW,CAAC4E,MAAZ,CAAmBxF,EAAnB;MACAa,WAAW,CAAC2E,MAAZ,CAAmBxF,EAAnB;MACAiC,mBAAmB,CAACuD,MAApB,CAA2BxF,EAA3B;MACA8B,UAAU,CAAC3B,KAAX,GAAmB2B,UAAU,CAAC3B,KAAX,CAAiBoC,MAAjB,CAAwBkD,CAAC,IAAIA,CAAC,KAAKzF,EAAnC,CAAnB;IACD,CArFuB;IAsFxB2D,UAtFwB;IAuFxBO,aAvFwB;IAwFxBX,KAxFwB;IAyFxB9C,UAzFwB;IA0FxBoB;EA1FwB,CAAnB,CAAP;EA6FA,MAAM6D,aAAa,GAAG/H,QAAQ,CAAC,MAAM,CACnC,UADmC,EAEnC;IAAE,yBAAyBgE,KAAK,CAACxC;EAAjC,CAFmC,CAAP,CAA9B;EAKA,MAAMwG,YAAY,GAAGhI,QAAQ,CAAC,OAAO;IACnCqH,MAAM,EAAEnD,UAAU,CAAC1B,KADgB;IAEnCkB,QAAQ,EAAEO,YAAY,GAAG,UAAH,GAAyBiC,SAFZ;IAGnC+B,QAAQ,EAAEhE,YAAY,GAAG,QAAH,GAAciC;EAHD,CAAP,CAAD,CAA7B;EAMA,OAAO;IACL6B,aADK;IAELC,YAFK;IAGLzB,aAHK;IAILX,KAJK;IAKL9C,UALK;IAMLoF,SAAS,EAAE3D;EANN,CAAP;AAQD"}
@@ -20,16 +20,12 @@ export function useLocation(props) {
20
20
  const {
21
21
  isRtl
22
22
  } = useRtl();
23
-
24
- function toPhysical(side) {
25
- return side === 'start' ? isRtl.value ? 'right' : 'left' : side === 'end' ? isRtl.value ? 'left' : 'right' : side;
26
- }
27
-
28
23
  const locationStyles = computed(() => {
29
24
  if (!props.location) return {};
30
- const anchor = parseAnchor(props.location.split(' ').length > 1 ? props.location : `${props.location} center`);
31
- const side = toPhysical(anchor.side);
32
- const align = toPhysical(anchor.align);
25
+ const {
26
+ side,
27
+ align
28
+ } = parseAnchor(props.location.split(' ').length > 1 ? props.location : `${props.location} center`, isRtl.value);
33
29
 
34
30
  function getOffset(side) {
35
31
  return offset ? offset(side) : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"location.mjs","names":["useRtl","computed","parseAnchor","propsFactory","oppositeMap","center","top","bottom","left","right","makeLocationProps","location","String","useLocation","props","opposite","offset","isRtl","toPhysical","side","value","locationStyles","anchor","split","length","align","getOffset","styles","transform"],"sources":["../../src/composables/location.ts"],"sourcesContent":["// Composables\nimport { useRtl } from '@/composables/rtl'\n\n// Utilities\nimport { computed } from 'vue'\nimport { parseAnchor, propsFactory } from '@/util'\n\n// Types\nimport type { CSSProperties, PropType } from 'vue'\nimport type { Anchor } from '@/util'\n\nconst oppositeMap = {\n center: 'center',\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left',\n} as const\n\nexport interface LocationProps {\n location: Anchor | undefined\n}\n\nexport const makeLocationProps = propsFactory({\n location: String as PropType<Anchor>,\n}, 'location')\n\nexport function useLocation (props: LocationProps, opposite = false, offset?: (side: string) => number) {\n const { isRtl } = useRtl()\n\n function toPhysical (side: string) {\n return (\n side === 'start' ? (isRtl.value ? 'right' : 'left')\n : side === 'end' ? (isRtl.value ? 'left' : 'right')\n : side\n ) as 'right' | 'left' | 'top' | 'bottom' | 'center'\n }\n\n const locationStyles = computed(() => {\n if (!props.location) return {}\n\n const anchor = parseAnchor(\n props.location.split(' ').length > 1\n ? props.location\n : `${props.location} center` as Anchor\n )\n\n const side = toPhysical(anchor.side)\n const align = toPhysical(anchor.align)\n\n function getOffset (side: string) {\n return offset\n ? offset(side)\n : 0\n }\n\n const styles = {} as CSSProperties\n\n if (side !== 'center') {\n if (opposite) styles[oppositeMap[side]] = `calc(100% - ${getOffset(side)}px)`\n else styles[side] = 0\n }\n if (align !== 'center') {\n if (opposite) styles[oppositeMap[align]] = `calc(100% - ${getOffset(align)}px)`\n else styles[align] = 0\n } else {\n if (side === 'center') styles.top = styles.left = '50%'\n else {\n styles[({\n top: 'left',\n bottom: 'left',\n left: 'top',\n right: 'top',\n } as const)[side]] = '50%'\n }\n styles.transform = {\n top: 'translateX(-50%)',\n bottom: 'translateX(-50%)',\n left: 'translateY(-50%)',\n right: 'translateY(-50%)',\n center: 'translate(-50%, -50%)',\n }[side]\n }\n\n return styles\n })\n\n return { locationStyles }\n}\n"],"mappings":"AAAA;SACSA,M,qBAET;;AACA,SAASC,QAAT,QAAyB,KAAzB;SACSC,W,EAAaC,Y,6BAEtB;;AAIA,MAAMC,WAAW,GAAG;EAClBC,MAAM,EAAE,QADU;EAElBC,GAAG,EAAE,QAFa;EAGlBC,MAAM,EAAE,KAHU;EAIlBC,IAAI,EAAE,OAJY;EAKlBC,KAAK,EAAE;AALW,CAApB;AAYA,OAAO,MAAMC,iBAAiB,GAAGP,YAAY,CAAC;EAC5CQ,QAAQ,EAAEC;AADkC,CAAD,EAE1C,UAF0C,CAAtC;AAIP,OAAO,SAASC,WAAT,CAAsBC,KAAtB,EAAiG;EAAA,IAArDC,QAAqD,uEAA1C,KAA0C;EAAA,IAAnCC,MAAmC;EACtG,MAAM;IAAEC;EAAF,IAAYjB,MAAM,EAAxB;;EAEA,SAASkB,UAAT,CAAqBC,IAArB,EAAmC;IACjC,OACEA,IAAI,KAAK,OAAT,GAAoBF,KAAK,CAACG,KAAN,GAAc,OAAd,GAAwB,MAA5C,GACED,IAAI,KAAK,KAAT,GAAkBF,KAAK,CAACG,KAAN,GAAc,MAAd,GAAuB,OAAzC,GACAD,IAHJ;EAKD;;EAED,MAAME,cAAc,GAAGpB,QAAQ,CAAC,MAAM;IACpC,IAAI,CAACa,KAAK,CAACH,QAAX,EAAqB,OAAO,EAAP;IAErB,MAAMW,MAAM,GAAGpB,WAAW,CACxBY,KAAK,CAACH,QAAN,CAAeY,KAAf,CAAqB,GAArB,EAA0BC,MAA1B,GAAmC,CAAnC,GACIV,KAAK,CAACH,QADV,GAEK,GAAEG,KAAK,CAACH,QAAS,SAHE,CAA1B;IAMA,MAAMQ,IAAI,GAAGD,UAAU,CAACI,MAAM,CAACH,IAAR,CAAvB;IACA,MAAMM,KAAK,GAAGP,UAAU,CAACI,MAAM,CAACG,KAAR,CAAxB;;IAEA,SAASC,SAAT,CAAoBP,IAApB,EAAkC;MAChC,OAAOH,MAAM,GACTA,MAAM,CAACG,IAAD,CADG,GAET,CAFJ;IAGD;;IAED,MAAMQ,MAAM,GAAG,EAAf;;IAEA,IAAIR,IAAI,KAAK,QAAb,EAAuB;MACrB,IAAIJ,QAAJ,EAAcY,MAAM,CAACvB,WAAW,CAACe,IAAD,CAAZ,CAAN,GAA6B,eAAcO,SAAS,CAACP,IAAD,CAAO,KAA3D,CAAd,KACKQ,MAAM,CAACR,IAAD,CAAN,GAAe,CAAf;IACN;;IACD,IAAIM,KAAK,KAAK,QAAd,EAAwB;MACtB,IAAIV,QAAJ,EAAcY,MAAM,CAACvB,WAAW,CAACqB,KAAD,CAAZ,CAAN,GAA8B,eAAcC,SAAS,CAACD,KAAD,CAAQ,KAA7D,CAAd,KACKE,MAAM,CAACF,KAAD,CAAN,GAAgB,CAAhB;IACN,CAHD,MAGO;MACL,IAAIN,IAAI,KAAK,QAAb,EAAuBQ,MAAM,CAACrB,GAAP,GAAaqB,MAAM,CAACnB,IAAP,GAAc,KAA3B,CAAvB,KACK;QACHmB,MAAM,CAAE;UACNrB,GAAG,EAAE,MADC;UAENC,MAAM,EAAE,MAFF;UAGNC,IAAI,EAAE,KAHA;UAINC,KAAK,EAAE;QAJD,CAAD,CAKKU,IALL,CAAD,CAAN,GAKqB,KALrB;MAMD;MACDQ,MAAM,CAACC,SAAP,GAAmB;QACjBtB,GAAG,EAAE,kBADY;QAEjBC,MAAM,EAAE,kBAFS;QAGjBC,IAAI,EAAE,kBAHW;QAIjBC,KAAK,EAAE,kBAJU;QAKjBJ,MAAM,EAAE;MALS,EAMjBc,IANiB,CAAnB;IAOD;;IAED,OAAOQ,MAAP;EACD,CA/C8B,CAA/B;EAiDA,OAAO;IAAEN;EAAF,CAAP;AACD"}
1
+ {"version":3,"file":"location.mjs","names":["useRtl","computed","parseAnchor","propsFactory","oppositeMap","center","top","bottom","left","right","makeLocationProps","location","String","useLocation","props","opposite","offset","isRtl","locationStyles","side","align","split","length","value","getOffset","styles","transform"],"sources":["../../src/composables/location.ts"],"sourcesContent":["// Composables\nimport { useRtl } from '@/composables/rtl'\n\n// Utilities\nimport { computed } from 'vue'\nimport { parseAnchor, propsFactory } from '@/util'\n\n// Types\nimport type { CSSProperties, PropType } from 'vue'\nimport type { Anchor } from '@/util'\n\nconst oppositeMap = {\n center: 'center',\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left',\n} as const\n\nexport interface LocationProps {\n location: Anchor | undefined\n}\n\nexport const makeLocationProps = propsFactory({\n location: String as PropType<Anchor>,\n}, 'location')\n\nexport function useLocation (props: LocationProps, opposite = false, offset?: (side: string) => number) {\n const { isRtl } = useRtl()\n\n const locationStyles = computed(() => {\n if (!props.location) return {}\n\n const { side, align } = parseAnchor(\n props.location.split(' ').length > 1\n ? props.location\n : `${props.location} center` as Anchor,\n isRtl.value\n )\n\n function getOffset (side: string) {\n return offset\n ? offset(side)\n : 0\n }\n\n const styles = {} as CSSProperties\n\n if (side !== 'center') {\n if (opposite) styles[oppositeMap[side]] = `calc(100% - ${getOffset(side)}px)`\n else styles[side] = 0\n }\n if (align !== 'center') {\n if (opposite) styles[oppositeMap[align]] = `calc(100% - ${getOffset(align)}px)`\n else styles[align] = 0\n } else {\n if (side === 'center') styles.top = styles.left = '50%'\n else {\n styles[({\n top: 'left',\n bottom: 'left',\n left: 'top',\n right: 'top',\n } as const)[side]] = '50%'\n }\n styles.transform = {\n top: 'translateX(-50%)',\n bottom: 'translateX(-50%)',\n left: 'translateY(-50%)',\n right: 'translateY(-50%)',\n center: 'translate(-50%, -50%)',\n }[side]\n }\n\n return styles\n })\n\n return { locationStyles }\n}\n"],"mappings":"AAAA;SACSA,M,qBAET;;AACA,SAASC,QAAT,QAAyB,KAAzB;SACSC,W,EAAaC,Y,6BAEtB;;AAIA,MAAMC,WAAW,GAAG;EAClBC,MAAM,EAAE,QADU;EAElBC,GAAG,EAAE,QAFa;EAGlBC,MAAM,EAAE,KAHU;EAIlBC,IAAI,EAAE,OAJY;EAKlBC,KAAK,EAAE;AALW,CAApB;AAYA,OAAO,MAAMC,iBAAiB,GAAGP,YAAY,CAAC;EAC5CQ,QAAQ,EAAEC;AADkC,CAAD,EAE1C,UAF0C,CAAtC;AAIP,OAAO,SAASC,WAAT,CAAsBC,KAAtB,EAAiG;EAAA,IAArDC,QAAqD,uEAA1C,KAA0C;EAAA,IAAnCC,MAAmC;EACtG,MAAM;IAAEC;EAAF,IAAYjB,MAAM,EAAxB;EAEA,MAAMkB,cAAc,GAAGjB,QAAQ,CAAC,MAAM;IACpC,IAAI,CAACa,KAAK,CAACH,QAAX,EAAqB,OAAO,EAAP;IAErB,MAAM;MAAEQ,IAAF;MAAQC;IAAR,IAAkBlB,WAAW,CACjCY,KAAK,CAACH,QAAN,CAAeU,KAAf,CAAqB,GAArB,EAA0BC,MAA1B,GAAmC,CAAnC,GACIR,KAAK,CAACH,QADV,GAEK,GAAEG,KAAK,CAACH,QAAS,SAHW,EAIjCM,KAAK,CAACM,KAJ2B,CAAnC;;IAOA,SAASC,SAAT,CAAoBL,IAApB,EAAkC;MAChC,OAAOH,MAAM,GACTA,MAAM,CAACG,IAAD,CADG,GAET,CAFJ;IAGD;;IAED,MAAMM,MAAM,GAAG,EAAf;;IAEA,IAAIN,IAAI,KAAK,QAAb,EAAuB;MACrB,IAAIJ,QAAJ,EAAcU,MAAM,CAACrB,WAAW,CAACe,IAAD,CAAZ,CAAN,GAA6B,eAAcK,SAAS,CAACL,IAAD,CAAO,KAA3D,CAAd,KACKM,MAAM,CAACN,IAAD,CAAN,GAAe,CAAf;IACN;;IACD,IAAIC,KAAK,KAAK,QAAd,EAAwB;MACtB,IAAIL,QAAJ,EAAcU,MAAM,CAACrB,WAAW,CAACgB,KAAD,CAAZ,CAAN,GAA8B,eAAcI,SAAS,CAACJ,KAAD,CAAQ,KAA7D,CAAd,KACKK,MAAM,CAACL,KAAD,CAAN,GAAgB,CAAhB;IACN,CAHD,MAGO;MACL,IAAID,IAAI,KAAK,QAAb,EAAuBM,MAAM,CAACnB,GAAP,GAAamB,MAAM,CAACjB,IAAP,GAAc,KAA3B,CAAvB,KACK;QACHiB,MAAM,CAAE;UACNnB,GAAG,EAAE,MADC;UAENC,MAAM,EAAE,MAFF;UAGNC,IAAI,EAAE,KAHA;UAINC,KAAK,EAAE;QAJD,CAAD,CAKKU,IALL,CAAD,CAAN,GAKqB,KALrB;MAMD;MACDM,MAAM,CAACC,SAAP,GAAmB;QACjBpB,GAAG,EAAE,kBADY;QAEjBC,MAAM,EAAE,kBAFS;QAGjBC,IAAI,EAAE,kBAHW;QAIjBC,KAAK,EAAE,kBAJU;QAKjBJ,MAAM,EAAE;MALS,EAMjBc,IANiB,CAAnB;IAOD;;IAED,OAAOM,MAAP;EACD,CA7C8B,CAA/B;EA+CA,OAAO;IAAEP;EAAF,CAAP;AACD"}
@@ -10,7 +10,8 @@ export function useProxiedModel(props, prop, defaultValue) {
10
10
  const propIsDefined = computed(() => {
11
11
  var _vm$vnode$props, _vm$vnode$props2;
12
12
 
13
- return !!(typeof props[prop] !== 'undefined' && (vm != null && (_vm$vnode$props = vm.vnode.props) != null && _vm$vnode$props.hasOwnProperty(prop) || vm != null && (_vm$vnode$props2 = vm.vnode.props) != null && _vm$vnode$props2.hasOwnProperty(toKebabCase(prop))));
13
+ void props[prop];
14
+ return !!(vm != null && (_vm$vnode$props = vm.vnode.props) != null && _vm$vnode$props.hasOwnProperty(prop) || vm != null && (_vm$vnode$props2 = vm.vnode.props) != null && _vm$vnode$props2.hasOwnProperty(toKebabCase(prop)));
14
15
  });
15
16
  const internal = ref(transformIn(props[prop]));
16
17
  return computed({
@@ -1 +1 @@
1
- {"version":3,"file":"proxiedModel.mjs","names":["computed","ref","getCurrentInstance","toKebabCase","useProxiedModel","props","prop","defaultValue","transformIn","v","transformOut","vm","propIsDefined","vnode","hasOwnProperty","internal","get","value","set","newValue","emit"],"sources":["../../src/composables/proxiedModel.ts"],"sourcesContent":["// Utilities\nimport { computed, ref } from 'vue'\nimport { getCurrentInstance, toKebabCase } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\n// Composables\nexport function useProxiedModel<\n Props extends object & { [key in Prop as `onUpdate:${Prop}`]: ((val: any) => void) | undefined },\n Prop extends Extract<keyof Props, string>,\n Inner = Props[Prop],\n> (\n props: Props,\n prop: Prop,\n defaultValue?: Props[Prop],\n transformIn: (value?: Props[Prop]) => Inner = (v: any) => v,\n transformOut: (value: Inner) => Props[Prop] = (v: any) => v,\n) {\n const vm = getCurrentInstance('useProxiedModel')\n\n const propIsDefined = computed(() => {\n return !!(\n typeof props[prop] !== 'undefined' &&\n (vm?.vnode.props?.hasOwnProperty(prop) || vm?.vnode.props?.hasOwnProperty(toKebabCase(prop)))\n )\n })\n\n const internal = ref(transformIn(props[prop])) as Ref<Inner>\n\n return computed<Inner extends any[] ? Readonly<Inner> : Inner>({\n get (): any {\n if (propIsDefined.value) return transformIn(props[prop])\n else return internal.value\n },\n set (newValue) {\n if ((propIsDefined.value ? transformIn(props[prop]) : internal.value) === newValue) {\n return\n }\n internal.value = newValue\n vm?.emit(`update:${prop}`, transformOut(newValue))\n },\n })\n}\n"],"mappings":"AAAA;AACA,SAASA,QAAT,EAAmBC,GAAnB,QAA8B,KAA9B;SACSC,kB,EAAoBC,W,6BAE7B;;AAGA;AACA,OAAO,SAASC,eAAT,CAKLC,KALK,EAMLC,IANK,EAOLC,YAPK,EAUL;EAAA,IAFAC,WAEA,uEAF+CC,CAAD,IAAYA,CAE1D;EAAA,IADAC,YACA,uEAD+CD,CAAD,IAAYA,CAC1D;EACA,MAAME,EAAE,GAAGT,kBAAkB,CAAC,iBAAD,CAA7B;EAEA,MAAMU,aAAa,GAAGZ,QAAQ,CAAC,MAAM;IAAA;;IACnC,OAAO,CAAC,EACN,OAAOK,KAAK,CAACC,IAAD,CAAZ,KAAuB,WAAvB,KACCK,EAAE,QAAF,uBAAAA,EAAE,CAAEE,KAAJ,CAAUR,KAAV,6BAAiBS,cAAjB,CAAgCR,IAAhC,KAAyCK,EAAzC,gCAAyCA,EAAE,CAAEE,KAAJ,CAAUR,KAAnD,aAAyC,iBAAiBS,cAAjB,CAAgCX,WAAW,CAACG,IAAD,CAA3C,CAD1C,CADM,CAAR;EAID,CAL6B,CAA9B;EAOA,MAAMS,QAAQ,GAAGd,GAAG,CAACO,WAAW,CAACH,KAAK,CAACC,IAAD,CAAN,CAAZ,CAApB;EAEA,OAAON,QAAQ,CAAgD;IAC7DgB,GAAG,GAAS;MACV,IAAIJ,aAAa,CAACK,KAAlB,EAAyB,OAAOT,WAAW,CAACH,KAAK,CAACC,IAAD,CAAN,CAAlB,CAAzB,KACK,OAAOS,QAAQ,CAACE,KAAhB;IACN,CAJ4D;;IAK7DC,GAAG,CAAEC,QAAF,EAAY;MACb,IAAI,CAACP,aAAa,CAACK,KAAd,GAAsBT,WAAW,CAACH,KAAK,CAACC,IAAD,CAAN,CAAjC,GAAiDS,QAAQ,CAACE,KAA3D,MAAsEE,QAA1E,EAAoF;QAClF;MACD;;MACDJ,QAAQ,CAACE,KAAT,GAAiBE,QAAjB;MACAR,EAAE,QAAF,YAAAA,EAAE,CAAES,IAAJ,CAAU,UAASd,IAAK,EAAxB,EAA2BI,YAAY,CAACS,QAAD,CAAvC;IACD;;EAX4D,CAAhD,CAAf;AAaD"}
1
+ {"version":3,"file":"proxiedModel.mjs","names":["computed","ref","getCurrentInstance","toKebabCase","useProxiedModel","props","prop","defaultValue","transformIn","v","transformOut","vm","propIsDefined","vnode","hasOwnProperty","internal","get","value","set","newValue","emit"],"sources":["../../src/composables/proxiedModel.ts"],"sourcesContent":["// Utilities\nimport { computed, ref } from 'vue'\nimport { getCurrentInstance, toKebabCase } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\n// Composables\nexport function useProxiedModel<\n Props extends object & { [key in Prop as `onUpdate:${Prop}`]: ((val: any) => void) | undefined },\n Prop extends Extract<keyof Props, string>,\n Inner = Props[Prop],\n> (\n props: Props,\n prop: Prop,\n defaultValue?: Props[Prop],\n transformIn: (value?: Props[Prop]) => Inner = (v: any) => v,\n transformOut: (value: Inner) => Props[Prop] = (v: any) => v,\n) {\n const vm = getCurrentInstance('useProxiedModel')\n\n const propIsDefined = computed(() => {\n void props[prop]\n return !!(\n (vm?.vnode.props?.hasOwnProperty(prop) || vm?.vnode.props?.hasOwnProperty(toKebabCase(prop)))\n )\n })\n\n const internal = ref(transformIn(props[prop])) as Ref<Inner>\n\n return computed<Inner extends any[] ? Readonly<Inner> : Inner>({\n get (): any {\n if (propIsDefined.value) return transformIn(props[prop])\n else return internal.value\n },\n set (newValue) {\n if ((propIsDefined.value ? transformIn(props[prop]) : internal.value) === newValue) {\n return\n }\n internal.value = newValue\n vm?.emit(`update:${prop}`, transformOut(newValue))\n },\n })\n}\n"],"mappings":"AAAA;AACA,SAASA,QAAT,EAAmBC,GAAnB,QAA8B,KAA9B;SACSC,kB,EAAoBC,W,6BAE7B;;AAGA;AACA,OAAO,SAASC,eAAT,CAKLC,KALK,EAMLC,IANK,EAOLC,YAPK,EAUL;EAAA,IAFAC,WAEA,uEAF+CC,CAAD,IAAYA,CAE1D;EAAA,IADAC,YACA,uEAD+CD,CAAD,IAAYA,CAC1D;EACA,MAAME,EAAE,GAAGT,kBAAkB,CAAC,iBAAD,CAA7B;EAEA,MAAMU,aAAa,GAAGZ,QAAQ,CAAC,MAAM;IAAA;;IACnC,KAAKK,KAAK,CAACC,IAAD,CAAV;IACA,OAAO,CAAC,EACLK,EAAE,QAAF,uBAAAA,EAAE,CAAEE,KAAJ,CAAUR,KAAV,6BAAiBS,cAAjB,CAAgCR,IAAhC,KAAyCK,EAAzC,gCAAyCA,EAAE,CAAEE,KAAJ,CAAUR,KAAnD,aAAyC,iBAAiBS,cAAjB,CAAgCX,WAAW,CAACG,IAAD,CAA3C,CADpC,CAAR;EAGD,CAL6B,CAA9B;EAOA,MAAMS,QAAQ,GAAGd,GAAG,CAACO,WAAW,CAACH,KAAK,CAACC,IAAD,CAAN,CAAZ,CAApB;EAEA,OAAON,QAAQ,CAAgD;IAC7DgB,GAAG,GAAS;MACV,IAAIJ,aAAa,CAACK,KAAlB,EAAyB,OAAOT,WAAW,CAACH,KAAK,CAACC,IAAD,CAAN,CAAlB,CAAzB,KACK,OAAOS,QAAQ,CAACE,KAAhB;IACN,CAJ4D;;IAK7DC,GAAG,CAAEC,QAAF,EAAY;MACb,IAAI,CAACP,aAAa,CAACK,KAAd,GAAsBT,WAAW,CAACH,KAAK,CAACC,IAAD,CAAN,CAAjC,GAAiDS,QAAQ,CAACE,KAA3D,MAAsEE,QAA1E,EAAoF;QAClF;MACD;;MACDJ,QAAQ,CAACE,KAAT,GAAiBE,QAAjB;MACAR,EAAE,QAAF,YAAAA,EAAE,CAAES,IAAJ,CAAU,UAASd,IAAK,EAAxB,EAA2BI,YAAY,CAACS,QAAD,CAAvC;IACD;;EAX4D,CAAhD,CAAf;AAaD"}
@@ -3,13 +3,13 @@ import { rtl } from "../locale/index.mjs"; // Types
3
3
 
4
4
  export const RtlSymbol = Symbol.for('vuetify:rtl');
5
5
  export function createRtl(localeScope, options) {
6
- var _options$rtl, _options$defaultRtl;
6
+ var _options$rtl;
7
7
 
8
8
  return createRtlScope({
9
9
  rtl: { ...rtl,
10
10
  ...((_options$rtl = options == null ? void 0 : options.rtl) != null ? _options$rtl : {})
11
11
  },
12
- isRtl: ref((_options$defaultRtl = options == null ? void 0 : options.defaultRtl) != null ? _options$defaultRtl : false),
12
+ isRtl: ref(false),
13
13
  rtlClasses: ref('')
14
14
  }, localeScope);
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rtl.mjs","names":["computed","inject","provide","ref","rtl","RtlSymbol","Symbol","for","createRtl","localeScope","options","createRtlScope","isRtl","defaultRtl","rtlClasses","currentScope","current","value","hasOwnProperty","provideRtl","props","Error","newScope","useRtl"],"sources":["../../src/composables/rtl.ts"],"sourcesContent":["import { computed, inject, provide, ref } from 'vue'\nimport { rtl } from '@/locale'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { LocaleInstance } from './locale'\n\nexport interface RtlOptions {\n defaultRtl?: boolean\n rtl?: Record<string, boolean>\n}\n\nexport interface RtlProps {\n rtl?: boolean\n}\n\nexport interface RtlInstance {\n isRtl: Ref<boolean>\n rtl: Record<string, boolean>\n rtlClasses: Ref<string>\n}\n\nexport const RtlSymbol: InjectionKey<RtlInstance> = Symbol.for('vuetify:rtl')\n\nexport function createRtl (localeScope: LocaleInstance, options?: RtlOptions) {\n return createRtlScope({\n rtl: {\n ...rtl,\n ...(options?.rtl ?? {}),\n },\n isRtl: ref(options?.defaultRtl ?? false),\n rtlClasses: ref(''),\n }, localeScope)\n}\n\nexport function createRtlScope (currentScope: RtlInstance, localeScope: LocaleInstance, options?: RtlProps): RtlInstance {\n const isRtl = computed(() => {\n if (typeof options?.rtl === 'boolean') return options.rtl\n if (localeScope.current.value && currentScope.rtl.hasOwnProperty(localeScope.current.value)) {\n return currentScope.rtl[localeScope.current.value]\n }\n\n return currentScope.isRtl.value\n })\n\n return {\n isRtl,\n rtl: currentScope.rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function provideRtl (props: RtlProps, localeScope: LocaleInstance) {\n const currentScope = inject(RtlSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n const newScope = createRtlScope(currentScope, localeScope, props)\n\n provide(RtlSymbol, newScope)\n\n return newScope\n}\n\nexport function useRtl () {\n const currentScope = inject(RtlSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n return currentScope\n}\n"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,MAAnB,EAA2BC,OAA3B,EAAoCC,GAApC,QAA+C,KAA/C;SACSC,G,+BAET;;AAmBA,OAAO,MAAMC,SAAoC,GAAGC,MAAM,CAACC,GAAP,CAAW,aAAX,CAA7C;AAEP,OAAO,SAASC,SAAT,CAAoBC,WAApB,EAAiDC,OAAjD,EAAuE;EAAA;;EAC5E,OAAOC,cAAc,CAAC;IACpBP,GAAG,EAAE,EACH,GAAGA,GADA;MAEH,oBAAIM,OAAJ,oBAAIA,OAAO,CAAEN,GAAb,2BAAoB,EAApB;IAFG,CADe;IAKpBQ,KAAK,EAAET,GAAG,wBAACO,OAAD,oBAACA,OAAO,CAAEG,UAAV,kCAAwB,KAAxB,CALU;IAMpBC,UAAU,EAAEX,GAAG,CAAC,EAAD;EANK,CAAD,EAOlBM,WAPkB,CAArB;AAQD;AAED,OAAO,SAASE,cAAT,CAAyBI,YAAzB,EAAoDN,WAApD,EAAiFC,OAAjF,EAAkH;EACvH,MAAME,KAAK,GAAGZ,QAAQ,CAAC,MAAM;IAC3B,IAAI,QAAOU,OAAP,oBAAOA,OAAO,CAAEN,GAAhB,MAAwB,SAA5B,EAAuC,OAAOM,OAAO,CAACN,GAAf;;IACvC,IAAIK,WAAW,CAACO,OAAZ,CAAoBC,KAApB,IAA6BF,YAAY,CAACX,GAAb,CAAiBc,cAAjB,CAAgCT,WAAW,CAACO,OAAZ,CAAoBC,KAApD,CAAjC,EAA6F;MAC3F,OAAOF,YAAY,CAACX,GAAb,CAAiBK,WAAW,CAACO,OAAZ,CAAoBC,KAArC,CAAP;IACD;;IAED,OAAOF,YAAY,CAACH,KAAb,CAAmBK,KAA1B;EACD,CAPqB,CAAtB;EASA,OAAO;IACLL,KADK;IAELR,GAAG,EAAEW,YAAY,CAACX,GAFb;IAGLU,UAAU,EAAEd,QAAQ,CAAC,MAAO,gBAAeY,KAAK,CAACK,KAAN,GAAc,KAAd,GAAsB,KAAM,EAAnD;EAHf,CAAP;AAKD;AAED,OAAO,SAASE,UAAT,CAAqBC,KAArB,EAAsCX,WAAtC,EAAmE;EACxE,MAAMM,YAAY,GAAGd,MAAM,CAACI,SAAD,CAA3B;EAEA,IAAI,CAACU,YAAL,EAAmB,MAAM,IAAIM,KAAJ,CAAU,gDAAV,CAAN;EAEnB,MAAMC,QAAQ,GAAGX,cAAc,CAACI,YAAD,EAAeN,WAAf,EAA4BW,KAA5B,CAA/B;EAEAlB,OAAO,CAACG,SAAD,EAAYiB,QAAZ,CAAP;EAEA,OAAOA,QAAP;AACD;AAED,OAAO,SAASC,MAAT,GAAmB;EACxB,MAAMR,YAAY,GAAGd,MAAM,CAACI,SAAD,CAA3B;EAEA,IAAI,CAACU,YAAL,EAAmB,MAAM,IAAIM,KAAJ,CAAU,gDAAV,CAAN;EAEnB,OAAON,YAAP;AACD"}
1
+ {"version":3,"file":"rtl.mjs","names":["computed","inject","provide","ref","rtl","RtlSymbol","Symbol","for","createRtl","localeScope","options","createRtlScope","isRtl","rtlClasses","currentScope","current","value","hasOwnProperty","provideRtl","props","Error","newScope","useRtl"],"sources":["../../src/composables/rtl.ts"],"sourcesContent":["import { computed, inject, provide, ref } from 'vue'\nimport { rtl } from '@/locale'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { LocaleInstance } from './locale'\n\nexport interface RtlOptions {\n rtl?: Record<string, boolean>\n}\n\nexport interface RtlProps {\n rtl?: boolean\n}\n\nexport interface RtlInstance {\n isRtl: Ref<boolean>\n rtl: Record<string, boolean>\n rtlClasses: Ref<string>\n}\n\nexport const RtlSymbol: InjectionKey<RtlInstance> = Symbol.for('vuetify:rtl')\n\nexport function createRtl (localeScope: LocaleInstance, options?: RtlOptions) {\n return createRtlScope({\n rtl: {\n ...rtl,\n ...(options?.rtl ?? {}),\n },\n isRtl: ref(false),\n rtlClasses: ref(''),\n }, localeScope)\n}\n\nexport function createRtlScope (currentScope: RtlInstance, localeScope: LocaleInstance, options?: RtlProps): RtlInstance {\n const isRtl = computed(() => {\n if (typeof options?.rtl === 'boolean') return options.rtl\n if (localeScope.current.value && currentScope.rtl.hasOwnProperty(localeScope.current.value)) {\n return currentScope.rtl[localeScope.current.value]\n }\n\n return currentScope.isRtl.value\n })\n\n return {\n isRtl,\n rtl: currentScope.rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function provideRtl (props: RtlProps, localeScope: LocaleInstance) {\n const currentScope = inject(RtlSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n const newScope = createRtlScope(currentScope, localeScope, props)\n\n provide(RtlSymbol, newScope)\n\n return newScope\n}\n\nexport function useRtl () {\n const currentScope = inject(RtlSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n return currentScope\n}\n"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,MAAnB,EAA2BC,OAA3B,EAAoCC,GAApC,QAA+C,KAA/C;SACSC,G,+BAET;;AAkBA,OAAO,MAAMC,SAAoC,GAAGC,MAAM,CAACC,GAAP,CAAW,aAAX,CAA7C;AAEP,OAAO,SAASC,SAAT,CAAoBC,WAApB,EAAiDC,OAAjD,EAAuE;EAAA;;EAC5E,OAAOC,cAAc,CAAC;IACpBP,GAAG,EAAE,EACH,GAAGA,GADA;MAEH,oBAAIM,OAAJ,oBAAIA,OAAO,CAAEN,GAAb,2BAAoB,EAApB;IAFG,CADe;IAKpBQ,KAAK,EAAET,GAAG,CAAC,KAAD,CALU;IAMpBU,UAAU,EAAEV,GAAG,CAAC,EAAD;EANK,CAAD,EAOlBM,WAPkB,CAArB;AAQD;AAED,OAAO,SAASE,cAAT,CAAyBG,YAAzB,EAAoDL,WAApD,EAAiFC,OAAjF,EAAkH;EACvH,MAAME,KAAK,GAAGZ,QAAQ,CAAC,MAAM;IAC3B,IAAI,QAAOU,OAAP,oBAAOA,OAAO,CAAEN,GAAhB,MAAwB,SAA5B,EAAuC,OAAOM,OAAO,CAACN,GAAf;;IACvC,IAAIK,WAAW,CAACM,OAAZ,CAAoBC,KAApB,IAA6BF,YAAY,CAACV,GAAb,CAAiBa,cAAjB,CAAgCR,WAAW,CAACM,OAAZ,CAAoBC,KAApD,CAAjC,EAA6F;MAC3F,OAAOF,YAAY,CAACV,GAAb,CAAiBK,WAAW,CAACM,OAAZ,CAAoBC,KAArC,CAAP;IACD;;IAED,OAAOF,YAAY,CAACF,KAAb,CAAmBI,KAA1B;EACD,CAPqB,CAAtB;EASA,OAAO;IACLJ,KADK;IAELR,GAAG,EAAEU,YAAY,CAACV,GAFb;IAGLS,UAAU,EAAEb,QAAQ,CAAC,MAAO,gBAAeY,KAAK,CAACI,KAAN,GAAc,KAAd,GAAsB,KAAM,EAAnD;EAHf,CAAP;AAKD;AAED,OAAO,SAASE,UAAT,CAAqBC,KAArB,EAAsCV,WAAtC,EAAmE;EACxE,MAAMK,YAAY,GAAGb,MAAM,CAACI,SAAD,CAA3B;EAEA,IAAI,CAACS,YAAL,EAAmB,MAAM,IAAIM,KAAJ,CAAU,gDAAV,CAAN;EAEnB,MAAMC,QAAQ,GAAGV,cAAc,CAACG,YAAD,EAAeL,WAAf,EAA4BU,KAA5B,CAA/B;EAEAjB,OAAO,CAACG,SAAD,EAAYgB,QAAZ,CAAP;EAEA,OAAOA,QAAP;AACD;AAED,OAAO,SAASC,MAAT,GAAmB;EACxB,MAAMR,YAAY,GAAGb,MAAM,CAACI,SAAD,CAA3B;EAEA,IAAI,CAACS,YAAL,EAAmB,MAAM,IAAIM,KAAJ,CAAU,gDAAV,CAAN;EAEnB,OAAON,YAAP;AACD"}
@@ -1,6 +1,5 @@
1
1
  // Utilities
2
- import { computed } from 'vue';
3
- import { convertToUnit, getCurrentInstanceName, propsFactory } from "../util/index.mjs"; // Types
2
+ import { convertToUnit, destructComputed, getCurrentInstanceName, includes, propsFactory } from "../util/index.mjs"; // Types
4
3
 
5
4
  const predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large'];
6
5
  // Composables
@@ -12,18 +11,23 @@ export const makeSizeProps = propsFactory({
12
11
  }, 'size');
13
12
  export function useSize(props) {
14
13
  let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
15
- const sizeClasses = computed(() => {
16
- return predefinedSizes.includes(props.size) ? `${name}--size-${props.size}` : null;
17
- });
18
- const sizeStyles = computed(() => {
19
- return !predefinedSizes.includes(props.size) && props.size ? {
20
- width: convertToUnit(props.size),
21
- height: convertToUnit(props.size)
22
- } : null;
14
+ return destructComputed(() => {
15
+ let sizeClasses;
16
+ let sizeStyles;
17
+
18
+ if (includes(predefinedSizes, props.size)) {
19
+ sizeClasses = `${name}--size-${props.size}`;
20
+ } else if (props.size) {
21
+ sizeStyles = {
22
+ width: convertToUnit(props.size),
23
+ height: convertToUnit(props.size)
24
+ };
25
+ }
26
+
27
+ return {
28
+ sizeClasses,
29
+ sizeStyles
30
+ };
23
31
  });
24
- return {
25
- sizeClasses,
26
- sizeStyles
27
- };
28
32
  }
29
33
  //# sourceMappingURL=size.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"size.mjs","names":["computed","convertToUnit","getCurrentInstanceName","propsFactory","predefinedSizes","makeSizeProps","size","type","String","Number","default","useSize","props","name","sizeClasses","includes","sizeStyles","width","height"],"sources":["../../src/composables/size.ts"],"sourcesContent":["// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nconst predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large']\n\nexport interface SizeProps {\n size?: string | number\n}\n\n// Composables\nexport const makeSizeProps = propsFactory({\n size: {\n type: [String, Number],\n default: 'default',\n },\n}, 'size')\n\nexport function useSize (\n props: SizeProps,\n name = getCurrentInstanceName(),\n) {\n const sizeClasses = computed(() => {\n return predefinedSizes.includes(props.size as string)\n ? `${name}--size-${props.size}`\n : null\n })\n\n const sizeStyles = computed(() => {\n return !predefinedSizes.includes(props.size as string) && props.size\n ? ({\n width: convertToUnit(props.size),\n height: convertToUnit(props.size),\n }) : null\n })\n\n return { sizeClasses, sizeStyles }\n}\n"],"mappings":"AAAA;AACA,SAASA,QAAT,QAAyB,KAAzB;SACSC,a,EAAeC,sB,EAAwBC,Y,6BAEhD;;AACA,MAAMC,eAAe,GAAG,CAAC,SAAD,EAAY,OAAZ,EAAqB,SAArB,EAAgC,OAAhC,EAAyC,SAAzC,CAAxB;AAMA;AACA,OAAO,MAAMC,aAAa,GAAGF,YAAY,CAAC;EACxCG,IAAI,EAAE;IACJC,IAAI,EAAE,CAACC,MAAD,EAASC,MAAT,CADF;IAEJC,OAAO,EAAE;EAFL;AADkC,CAAD,EAKtC,MALsC,CAAlC;AAOP,OAAO,SAASC,OAAT,CACLC,KADK,EAGL;EAAA,IADAC,IACA,uEADOX,sBAAsB,EAC7B;EACA,MAAMY,WAAW,GAAGd,QAAQ,CAAC,MAAM;IACjC,OAAOI,eAAe,CAACW,QAAhB,CAAyBH,KAAK,CAACN,IAA/B,IACF,GAAEO,IAAK,UAASD,KAAK,CAACN,IAAK,EADzB,GAEH,IAFJ;EAGD,CAJ2B,CAA5B;EAMA,MAAMU,UAAU,GAAGhB,QAAQ,CAAC,MAAM;IAChC,OAAO,CAACI,eAAe,CAACW,QAAhB,CAAyBH,KAAK,CAACN,IAA/B,CAAD,IAAmDM,KAAK,CAACN,IAAzD,GACF;MACDW,KAAK,EAAEhB,aAAa,CAACW,KAAK,CAACN,IAAP,CADnB;MAEDY,MAAM,EAAEjB,aAAa,CAACW,KAAK,CAACN,IAAP;IAFpB,CADE,GAIA,IAJP;EAKD,CAN0B,CAA3B;EAQA,OAAO;IAAEQ,WAAF;IAAeE;EAAf,CAAP;AACD"}
1
+ {"version":3,"file":"size.mjs","names":["convertToUnit","destructComputed","getCurrentInstanceName","includes","propsFactory","predefinedSizes","makeSizeProps","size","type","String","Number","default","useSize","props","name","sizeClasses","sizeStyles","width","height"],"sources":["../../src/composables/size.ts"],"sourcesContent":["// Utilities\nimport { convertToUnit, destructComputed, getCurrentInstanceName, includes, propsFactory } from '@/util'\n\n// Types\nconst predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large']\n\nexport interface SizeProps {\n size?: string | number\n}\n\n// Composables\nexport const makeSizeProps = propsFactory({\n size: {\n type: [String, Number],\n default: 'default',\n },\n}, 'size')\n\nexport function useSize (\n props: SizeProps,\n name = getCurrentInstanceName(),\n) {\n return destructComputed(() => {\n let sizeClasses\n let sizeStyles\n if (includes(predefinedSizes, props.size)) {\n sizeClasses = `${name}--size-${props.size}`\n } else if (props.size) {\n sizeStyles = {\n width: convertToUnit(props.size),\n height: convertToUnit(props.size),\n }\n }\n return { sizeClasses, sizeStyles }\n })\n}\n"],"mappings":"AAAA;SACSA,a,EAAeC,gB,EAAkBC,sB,EAAwBC,Q,EAAUC,Y,6BAE5E;;AACA,MAAMC,eAAe,GAAG,CAAC,SAAD,EAAY,OAAZ,EAAqB,SAArB,EAAgC,OAAhC,EAAyC,SAAzC,CAAxB;AAMA;AACA,OAAO,MAAMC,aAAa,GAAGF,YAAY,CAAC;EACxCG,IAAI,EAAE;IACJC,IAAI,EAAE,CAACC,MAAD,EAASC,MAAT,CADF;IAEJC,OAAO,EAAE;EAFL;AADkC,CAAD,EAKtC,MALsC,CAAlC;AAOP,OAAO,SAASC,OAAT,CACLC,KADK,EAGL;EAAA,IADAC,IACA,uEADOZ,sBAAsB,EAC7B;EACA,OAAOD,gBAAgB,CAAC,MAAM;IAC5B,IAAIc,WAAJ;IACA,IAAIC,UAAJ;;IACA,IAAIb,QAAQ,CAACE,eAAD,EAAkBQ,KAAK,CAACN,IAAxB,CAAZ,EAA2C;MACzCQ,WAAW,GAAI,GAAED,IAAK,UAASD,KAAK,CAACN,IAAK,EAA1C;IACD,CAFD,MAEO,IAAIM,KAAK,CAACN,IAAV,EAAgB;MACrBS,UAAU,GAAG;QACXC,KAAK,EAAEjB,aAAa,CAACa,KAAK,CAACN,IAAP,CADT;QAEXW,MAAM,EAAElB,aAAa,CAACa,KAAK,CAACN,IAAP;MAFV,CAAb;IAID;;IACD,OAAO;MAAEQ,WAAF;MAAeC;IAAf,CAAP;EACD,CAZsB,CAAvB;AAaD"}
@@ -1,34 +1,44 @@
1
1
  import { useToggleScope } from "./toggleScope.mjs";
2
- import { computed, onScopeDispose, reactive, readonly, ref, toRaw, watchEffect } from 'vue';
2
+ import { computed, inject, onScopeDispose, provide, reactive, readonly, ref, watchEffect } from 'vue';
3
3
  import { getCurrentInstance } from "../util/index.mjs"; // Types
4
4
 
5
- const stack = reactive([]);
5
+ const StackSymbol = Symbol.for('vuetify:stack');
6
+ const globalStack = reactive([]);
6
7
  export function useStack(isActive, zIndex) {
7
8
  const vm = getCurrentInstance('useStack');
9
+ const parent = inject(StackSymbol, undefined);
10
+ const stack = reactive({
11
+ activeChildren: new Set()
12
+ });
13
+ provide(StackSymbol, stack);
8
14
 
9
15
  const _zIndex = ref(+zIndex.value);
10
16
 
11
17
  useToggleScope(isActive, () => {
12
- var _stack;
18
+ var _globalStack$at;
13
19
 
14
- const lastZIndex = (_stack = stack[stack.length - 1]) == null ? void 0 : _stack[1];
20
+ const lastZIndex = (_globalStack$at = globalStack.at(-1)) == null ? void 0 : _globalStack$at[1];
15
21
  _zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value;
16
- stack.push([vm, _zIndex.value]);
22
+ globalStack.push([vm.uid, _zIndex.value]);
23
+ parent == null ? void 0 : parent.activeChildren.add(vm.uid);
17
24
  onScopeDispose(() => {
18
- const idx = stack.findIndex(v => v[0] === vm);
19
- stack.splice(idx, 1);
25
+ const idx = globalStack.findIndex(v => v[0] === vm.uid);
26
+ globalStack.splice(idx, 1);
27
+ parent == null ? void 0 : parent.activeChildren.delete(vm.uid);
20
28
  });
21
29
  });
22
- const isTop = ref(true);
30
+ const globalTop = ref(true);
23
31
  watchEffect(() => {
24
- var _stack2;
32
+ var _globalStack$at2;
25
33
 
26
- const _isTop = toRaw((_stack2 = stack[stack.length - 1]) == null ? void 0 : _stack2[0]) === vm;
34
+ const _isTop = ((_globalStack$at2 = globalStack.at(-1)) == null ? void 0 : _globalStack$at2[0]) === vm.uid;
27
35
 
28
- setTimeout(() => isTop.value = _isTop);
36
+ setTimeout(() => globalTop.value = _isTop);
29
37
  });
38
+ const localTop = computed(() => !stack.activeChildren.size);
30
39
  return {
31
- isTop: readonly(isTop),
40
+ globalTop: readonly(globalTop),
41
+ localTop,
32
42
  stackStyles: computed(() => ({
33
43
  zIndex: _zIndex.value
34
44
  }))
@@ -1 +1 @@
1
- {"version":3,"file":"stack.mjs","names":["useToggleScope","computed","onScopeDispose","reactive","readonly","ref","toRaw","watchEffect","getCurrentInstance","stack","useStack","isActive","zIndex","vm","_zIndex","value","lastZIndex","length","push","idx","findIndex","v","splice","isTop","_isTop","setTimeout","stackStyles"],"sources":["../../src/composables/stack.ts"],"sourcesContent":["import { useToggleScope } from '@/composables/toggleScope'\n\nimport { computed, onScopeDispose, reactive, readonly, ref, toRaw, watchEffect } from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, Ref } from 'vue'\n\nconst stack = reactive<[vm: ComponentInternalInstance, zIndex: number][]>([])\n\nexport function useStack (isActive: Readonly<Ref<boolean>>, zIndex: Readonly<Ref<string | number>>) {\n const vm = getCurrentInstance('useStack')\n\n const _zIndex = ref(+zIndex.value)\n useToggleScope(isActive, () => {\n const lastZIndex = stack[stack.length - 1]?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value\n stack.push([vm, _zIndex.value])\n\n onScopeDispose(() => {\n const idx = stack.findIndex(v => v[0] === vm)\n stack.splice(idx, 1)\n })\n })\n\n const isTop = ref(true)\n watchEffect(() => {\n const _isTop = toRaw(stack[stack.length - 1]?.[0]) === vm\n setTimeout(() => isTop.value = _isTop)\n })\n\n return {\n isTop: readonly(isTop),\n stackStyles: computed(() => ({ zIndex: _zIndex.value })),\n }\n}\n"],"mappings":"SAASA,c;AAET,SAASC,QAAT,EAAmBC,cAAnB,EAAmCC,QAAnC,EAA6CC,QAA7C,EAAuDC,GAAvD,EAA4DC,KAA5D,EAAmEC,WAAnE,QAAsF,KAAtF;SACSC,kB,6BAET;;AAGA,MAAMC,KAAK,GAAGN,QAAQ,CAAoD,EAApD,CAAtB;AAEA,OAAO,SAASO,QAAT,CAAmBC,QAAnB,EAAqDC,MAArD,EAA6F;EAClG,MAAMC,EAAE,GAAGL,kBAAkB,CAAC,UAAD,CAA7B;;EAEA,MAAMM,OAAO,GAAGT,GAAG,CAAC,CAACO,MAAM,CAACG,KAAT,CAAnB;;EACAf,cAAc,CAACW,QAAD,EAAW,MAAM;IAAA;;IAC7B,MAAMK,UAAU,aAAGP,KAAK,CAACA,KAAK,CAACQ,MAAN,GAAe,CAAhB,CAAR,qBAAG,OAA0B,CAA1B,CAAnB;IACAH,OAAO,CAACC,KAAR,GAAgBC,UAAU,GAAGA,UAAU,GAAG,EAAhB,GAAqB,CAACJ,MAAM,CAACG,KAAvD;IACAN,KAAK,CAACS,IAAN,CAAW,CAACL,EAAD,EAAKC,OAAO,CAACC,KAAb,CAAX;IAEAb,cAAc,CAAC,MAAM;MACnB,MAAMiB,GAAG,GAAGV,KAAK,CAACW,SAAN,CAAgBC,CAAC,IAAIA,CAAC,CAAC,CAAD,CAAD,KAASR,EAA9B,CAAZ;MACAJ,KAAK,CAACa,MAAN,CAAaH,GAAb,EAAkB,CAAlB;IACD,CAHa,CAAd;EAID,CATa,CAAd;EAWA,MAAMI,KAAK,GAAGlB,GAAG,CAAC,IAAD,CAAjB;EACAE,WAAW,CAAC,MAAM;IAAA;;IAChB,MAAMiB,MAAM,GAAGlB,KAAK,YAACG,KAAK,CAACA,KAAK,CAACQ,MAAN,GAAe,CAAhB,CAAN,qBAAC,QAA0B,CAA1B,CAAD,CAAL,KAAwCJ,EAAvD;;IACAY,UAAU,CAAC,MAAMF,KAAK,CAACR,KAAN,GAAcS,MAArB,CAAV;EACD,CAHU,CAAX;EAKA,OAAO;IACLD,KAAK,EAAEnB,QAAQ,CAACmB,KAAD,CADV;IAELG,WAAW,EAAEzB,QAAQ,CAAC,OAAO;MAAEW,MAAM,EAAEE,OAAO,CAACC;IAAlB,CAAP,CAAD;EAFhB,CAAP;AAID"}
1
+ {"version":3,"file":"stack.mjs","names":["useToggleScope","computed","inject","onScopeDispose","provide","reactive","readonly","ref","watchEffect","getCurrentInstance","StackSymbol","Symbol","for","globalStack","useStack","isActive","zIndex","vm","parent","undefined","stack","activeChildren","Set","_zIndex","value","lastZIndex","at","push","uid","add","idx","findIndex","v","splice","delete","globalTop","_isTop","setTimeout","localTop","size","stackStyles"],"sources":["../../src/composables/stack.ts"],"sourcesContent":["import { useToggleScope } from '@/composables/toggleScope'\n\nimport { computed, inject, onScopeDispose, provide, reactive, readonly, ref, watchEffect } from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nconst StackSymbol: InjectionKey<StackProvide> = Symbol.for('vuetify:stack')\n\ninterface StackProvide {\n activeChildren: Set<number>\n}\n\nconst globalStack = reactive<[uid: number, zIndex: number][]>([])\n\nexport function useStack (isActive: Readonly<Ref<boolean>>, zIndex: Readonly<Ref<string | number>>) {\n const vm = getCurrentInstance('useStack')\n\n const parent = inject(StackSymbol, undefined)\n const stack: StackProvide = reactive({\n activeChildren: new Set<number>(),\n })\n provide(StackSymbol, stack)\n\n const _zIndex = ref(+zIndex.value)\n useToggleScope(isActive, () => {\n const lastZIndex = globalStack.at(-1)?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value\n globalStack.push([vm.uid, _zIndex.value])\n\n parent?.activeChildren.add(vm.uid)\n\n onScopeDispose(() => {\n const idx = globalStack.findIndex(v => v[0] === vm.uid)\n globalStack.splice(idx, 1)\n\n parent?.activeChildren.delete(vm.uid)\n })\n })\n\n const globalTop = ref(true)\n watchEffect(() => {\n const _isTop = globalStack.at(-1)?.[0] === vm.uid\n setTimeout(() => globalTop.value = _isTop)\n })\n\n const localTop = computed(() => !stack.activeChildren.size)\n\n return {\n globalTop: readonly(globalTop),\n localTop,\n stackStyles: computed(() => ({ zIndex: _zIndex.value })),\n }\n}\n"],"mappings":"SAASA,c;AAET,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,cAA3B,EAA2CC,OAA3C,EAAoDC,QAApD,EAA8DC,QAA9D,EAAwEC,GAAxE,EAA6EC,WAA7E,QAAgG,KAAhG;SACSC,kB,6BAET;;AAGA,MAAMC,WAAuC,GAAGC,MAAM,CAACC,GAAP,CAAW,eAAX,CAAhD;AAMA,MAAMC,WAAW,GAAGR,QAAQ,CAAkC,EAAlC,CAA5B;AAEA,OAAO,SAASS,QAAT,CAAmBC,QAAnB,EAAqDC,MAArD,EAA6F;EAClG,MAAMC,EAAE,GAAGR,kBAAkB,CAAC,UAAD,CAA7B;EAEA,MAAMS,MAAM,GAAGhB,MAAM,CAACQ,WAAD,EAAcS,SAAd,CAArB;EACA,MAAMC,KAAmB,GAAGf,QAAQ,CAAC;IACnCgB,cAAc,EAAE,IAAIC,GAAJ;EADmB,CAAD,CAApC;EAGAlB,OAAO,CAACM,WAAD,EAAcU,KAAd,CAAP;;EAEA,MAAMG,OAAO,GAAGhB,GAAG,CAAC,CAACS,MAAM,CAACQ,KAAT,CAAnB;;EACAxB,cAAc,CAACe,QAAD,EAAW,MAAM;IAAA;;IAC7B,MAAMU,UAAU,sBAAGZ,WAAW,CAACa,EAAZ,CAAe,CAAC,CAAhB,CAAH,qBAAG,gBAAqB,CAArB,CAAnB;IACAH,OAAO,CAACC,KAAR,GAAgBC,UAAU,GAAGA,UAAU,GAAG,EAAhB,GAAqB,CAACT,MAAM,CAACQ,KAAvD;IACAX,WAAW,CAACc,IAAZ,CAAiB,CAACV,EAAE,CAACW,GAAJ,EAASL,OAAO,CAACC,KAAjB,CAAjB;IAEAN,MAAM,QAAN,YAAAA,MAAM,CAAEG,cAAR,CAAuBQ,GAAvB,CAA2BZ,EAAE,CAACW,GAA9B;IAEAzB,cAAc,CAAC,MAAM;MACnB,MAAM2B,GAAG,GAAGjB,WAAW,CAACkB,SAAZ,CAAsBC,CAAC,IAAIA,CAAC,CAAC,CAAD,CAAD,KAASf,EAAE,CAACW,GAAvC,CAAZ;MACAf,WAAW,CAACoB,MAAZ,CAAmBH,GAAnB,EAAwB,CAAxB;MAEAZ,MAAM,QAAN,YAAAA,MAAM,CAAEG,cAAR,CAAuBa,MAAvB,CAA8BjB,EAAE,CAACW,GAAjC;IACD,CALa,CAAd;EAMD,CAba,CAAd;EAeA,MAAMO,SAAS,GAAG5B,GAAG,CAAC,IAAD,CAArB;EACAC,WAAW,CAAC,MAAM;IAAA;;IAChB,MAAM4B,MAAM,GAAG,qBAAAvB,WAAW,CAACa,EAAZ,CAAe,CAAC,CAAhB,uCAAqB,CAArB,OAA4BT,EAAE,CAACW,GAA9C;;IACAS,UAAU,CAAC,MAAMF,SAAS,CAACX,KAAV,GAAkBY,MAAzB,CAAV;EACD,CAHU,CAAX;EAKA,MAAME,QAAQ,GAAGrC,QAAQ,CAAC,MAAM,CAACmB,KAAK,CAACC,cAAN,CAAqBkB,IAA7B,CAAzB;EAEA,OAAO;IACLJ,SAAS,EAAE7B,QAAQ,CAAC6B,SAAD,CADd;IAELG,QAFK;IAGLE,WAAW,EAAEvC,QAAQ,CAAC,OAAO;MAAEe,MAAM,EAAEO,OAAO,CAACC;IAAlB,CAAP,CAAD;EAHhB,CAAP;AAKD"}
@@ -135,7 +135,7 @@ export function createTheme(app, options) {
135
135
  }
136
136
 
137
137
  for (const color of Object.keys(theme.colors)) {
138
- if (/on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue;
138
+ if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue;
139
139
  const onColor = `on-${color}`;
140
140
  const colorVal = colorToInt(theme.colors[color]);
141
141
  const blackContrast = Math.abs(APCAcontrast(0, colorVal));
@@ -176,29 +176,36 @@ export function createTheme(app, options) {
176
176
  })]);
177
177
  }
178
178
 
179
+ const bgLines = [];
180
+ const fgLines = [];
179
181
  const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)));
180
182
 
181
183
  for (const key of colors) {
182
- if (/on-[a-z]/.test(key)) {
183
- createCssClass(lines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
184
+ if (/^on-[a-z]/.test(key)) {
185
+ createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
184
186
  } else {
185
- createCssClass(lines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`]);
186
- createCssClass(lines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
187
- createCssClass(lines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`]);
187
+ createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`]);
188
+ createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
189
+ createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`]);
188
190
  }
189
191
  }
190
192
 
193
+ lines.push(...bgLines, ...fgLines);
191
194
  return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
192
195
  });
193
196
 
194
197
  if (head) {
195
- head.addHeadObjs(computed(() => ({
196
- style: [{
198
+ head.addHeadObjs(computed(() => {
199
+ const style = {
197
200
  children: styles.value,
198
201
  type: 'text/css',
199
202
  id: 'vuetify-theme-stylesheet'
200
- }]
201
- })));
203
+ };
204
+ if (parsedOptions.cspNonce) style.nonce = parsedOptions.cspNonce;
205
+ return {
206
+ style: [style]
207
+ };
208
+ }));
202
209
 
203
210
  if (IN_BROWSER) {
204
211
  watchEffect(() => head.updateDOM());
@@ -216,6 +223,7 @@ export function createTheme(app, options) {
216
223
  const el = document.createElement('style');
217
224
  el.type = 'text/css';
218
225
  el.id = 'vuetify-theme-stylesheet';
226
+ if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce);
219
227
  styleEl = el;
220
228
  document.head.appendChild(styleEl);
221
229
  }