@vuetify/nightly 3.0.0-beta.2 → 3.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (567) hide show
  1. package/CHANGELOG.md +2 -53
  2. package/dist/json/attributes.json +170 -242
  3. package/dist/json/tags.json +32 -50
  4. package/dist/json/web-types.json +596 -570
  5. package/dist/vuetify.css +338 -356
  6. package/dist/vuetify.d.ts +5952 -5468
  7. package/dist/vuetify.esm.js +2272 -2010
  8. package/dist/vuetify.esm.js.map +1 -1
  9. package/dist/vuetify.js +2271 -2009
  10. package/dist/vuetify.js.map +1 -1
  11. package/dist/vuetify.min.css +2 -2
  12. package/dist/vuetify.min.js +912 -886
  13. package/dist/vuetify.min.js.map +1 -1
  14. package/lib/components/VAlert/VAlert.mjs +11 -6
  15. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  16. package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
  17. package/lib/components/VAlert/index.mjs.map +1 -1
  18. package/lib/components/VApp/VApp.mjs.map +1 -1
  19. package/lib/components/VApp/index.mjs.map +1 -1
  20. package/lib/components/VAppBar/VAppBar.mjs +4 -4
  21. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  22. package/lib/components/VAppBar/VAppBarNavIcon.mjs +4 -2
  23. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  24. package/lib/components/VAppBar/VAppBarTitle.mjs +3 -1
  25. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  26. package/lib/components/VAppBar/index.mjs.map +1 -1
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs +31 -41
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  29. package/lib/components/VAutocomplete/index.mjs.map +1 -1
  30. package/lib/components/VAvatar/VAvatar.mjs +3 -2
  31. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  32. package/lib/components/VAvatar/index.mjs.map +1 -1
  33. package/lib/components/VBadge/VBadge.css +3 -6
  34. package/lib/components/VBadge/VBadge.mjs +16 -44
  35. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  36. package/lib/components/VBadge/VBadge.sass +2 -4
  37. package/lib/components/VBadge/_variables.scss +1 -2
  38. package/lib/components/VBadge/index.mjs.map +1 -1
  39. package/lib/components/VBanner/VBanner.mjs +10 -5
  40. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  41. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  42. package/lib/components/VBanner/VBannerAvatar.mjs.map +1 -1
  43. package/lib/components/VBanner/VBannerIcon.mjs.map +1 -1
  44. package/lib/components/VBanner/VBannerText.mjs.map +1 -1
  45. package/lib/components/VBanner/index.mjs.map +1 -1
  46. package/lib/components/VBottomNavigation/VBottomNavigation.css +1 -1
  47. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +1 -1
  48. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  49. package/lib/components/VBottomNavigation/VBottomNavigation.sass +1 -1
  50. package/lib/components/VBottomNavigation/index.mjs.map +1 -1
  51. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
  52. package/lib/components/VBottomSheet/index.mjs.map +1 -1
  53. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +3 -2
  54. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  55. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  56. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  57. package/lib/components/VBreadcrumbs/index.mjs.map +1 -1
  58. package/lib/components/VBreadcrumbs/shared.mjs.map +1 -1
  59. package/lib/components/VBtn/VBtn.css +18 -9
  60. package/lib/components/VBtn/VBtn.mjs +19 -10
  61. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  62. package/lib/components/VBtn/VBtn.sass +5 -2
  63. package/lib/components/VBtn/_variables.scss +0 -1
  64. package/lib/components/VBtn/index.mjs.map +1 -1
  65. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  66. package/lib/components/VBtnGroup/index.mjs.map +1 -1
  67. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  68. package/lib/components/VBtnToggle/index.mjs.map +1 -1
  69. package/lib/components/VCalendar/VCalendar.mjs.map +1 -1
  70. package/lib/components/VCalendar/VCalendarCategory.mjs.map +1 -1
  71. package/lib/components/VCalendar/VCalendarDaily.mjs.map +1 -1
  72. package/lib/components/VCalendar/VCalendarMonthly.mjs.map +1 -1
  73. package/lib/components/VCalendar/VCalendarWeekly.mjs.map +1 -1
  74. package/lib/components/VCalendar/index.mjs.map +1 -1
  75. package/lib/components/VCalendar/mixins/calendar-base.mjs.map +1 -1
  76. package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +1 -1
  77. package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs.map +1 -1
  78. package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
  79. package/lib/components/VCalendar/mixins/times.mjs.map +1 -1
  80. package/lib/components/VCalendar/modes/column.mjs.map +1 -1
  81. package/lib/components/VCalendar/modes/common.mjs.map +1 -1
  82. package/lib/components/VCalendar/modes/index.mjs.map +1 -1
  83. package/lib/components/VCalendar/modes/stack.mjs.map +1 -1
  84. package/lib/components/VCalendar/util/events.mjs.map +1 -1
  85. package/lib/components/VCalendar/util/parser.mjs.map +1 -1
  86. package/lib/components/VCalendar/util/props.mjs.map +1 -1
  87. package/lib/components/VCalendar/util/timestamp.mjs.map +1 -1
  88. package/lib/components/VCard/VCard.css +8 -7
  89. package/lib/components/VCard/VCard.mjs +11 -6
  90. package/lib/components/VCard/VCard.mjs.map +1 -1
  91. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  92. package/lib/components/VCard/VCardAvatar.mjs.map +1 -1
  93. package/lib/components/VCard/VCardContent.mjs.map +1 -1
  94. package/lib/components/VCard/VCardHeader.mjs.map +1 -1
  95. package/lib/components/VCard/VCardHeaderText.mjs.map +1 -1
  96. package/lib/components/VCard/VCardImg.mjs.map +1 -1
  97. package/lib/components/VCard/VCardSubtitle.mjs.map +1 -1
  98. package/lib/components/VCard/VCardText.mjs.map +1 -1
  99. package/lib/components/VCard/VCardTitle.mjs.map +1 -1
  100. package/lib/components/VCard/index.mjs.map +1 -1
  101. package/lib/components/VCarousel/VCarousel.mjs +3 -2
  102. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  103. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  104. package/lib/components/VCarousel/index.mjs.map +1 -1
  105. package/lib/components/VCheckbox/VCheckbox.mjs +5 -4
  106. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  107. package/lib/components/VCheckbox/index.mjs.map +1 -1
  108. package/lib/components/VChip/VChip.mjs +5 -4
  109. package/lib/components/VChip/VChip.mjs.map +1 -1
  110. package/lib/components/VChip/index.mjs.map +1 -1
  111. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  112. package/lib/components/VChipGroup/index.mjs.map +1 -1
  113. package/lib/components/VCode/index.mjs.map +1 -1
  114. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  115. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  116. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  117. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  118. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  119. package/lib/components/VColorPicker/index.mjs.map +1 -1
  120. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  121. package/lib/components/VCombobox/VCombobox.mjs +46 -52
  122. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  123. package/lib/components/VCombobox/index.mjs.map +1 -1
  124. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  125. package/lib/components/VCounter/index.mjs.map +1 -1
  126. package/lib/components/VData/VData.mjs.map +1 -1
  127. package/lib/components/VData/index.mjs.map +1 -1
  128. package/lib/components/VDataIterator/VDataFooter.mjs.map +1 -1
  129. package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
  130. package/lib/components/VDataIterator/index.mjs.map +1 -1
  131. package/lib/components/VDataTable/MobileRow.mjs.map +1 -1
  132. package/lib/components/VDataTable/Row.mjs.map +1 -1
  133. package/lib/components/VDataTable/RowGroup.mjs.map +1 -1
  134. package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
  135. package/lib/components/VDataTable/VDataTableHeader.mjs.map +1 -1
  136. package/lib/components/VDataTable/VDataTableHeaderDesktop.mjs.map +1 -1
  137. package/lib/components/VDataTable/VDataTableHeaderMobile.mjs.map +1 -1
  138. package/lib/components/VDataTable/VEditDialog.mjs.map +1 -1
  139. package/lib/components/VDataTable/VVirtualTable.mjs.map +1 -1
  140. package/lib/components/VDataTable/index.mjs.map +1 -1
  141. package/lib/components/VDataTable/mixins/header.mjs.map +1 -1
  142. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  143. package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +1 -1
  144. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
  145. package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +1 -1
  146. package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +1 -1
  147. package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
  148. package/lib/components/VDatePicker/index.mjs.map +1 -1
  149. package/lib/components/VDatePicker/mixins/date-picker-table.mjs.map +1 -1
  150. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -1
  151. package/lib/components/VDatePicker/util/eventHelpers.mjs.map +1 -1
  152. package/lib/components/VDatePicker/util/index.mjs.map +1 -1
  153. package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +1 -1
  154. package/lib/components/VDatePicker/util/monthChange.mjs.map +1 -1
  155. package/lib/components/VDatePicker/util/pad.mjs.map +1 -1
  156. package/lib/components/VDatePicker/util/sanitizeDateString.mjs.map +1 -1
  157. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  158. package/lib/components/VDefaultsProvider/index.mjs.map +1 -1
  159. package/lib/components/VDialog/VDialog.css +0 -1
  160. package/lib/components/VDialog/VDialog.mjs +8 -3
  161. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  162. package/lib/components/VDialog/VDialog.sass +0 -1
  163. package/lib/components/VDialog/_variables.scss +0 -1
  164. package/lib/components/VDialog/index.mjs.map +1 -1
  165. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  166. package/lib/components/VDivider/index.mjs.map +1 -1
  167. package/lib/components/VExpansionPanel/VExpansionPanel.css +8 -7
  168. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  169. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  170. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +4 -3
  171. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  172. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  173. package/lib/components/VExpansionPanel/index.mjs.map +1 -1
  174. package/lib/components/VField/VField.mjs +7 -5
  175. package/lib/components/VField/VField.mjs.map +1 -1
  176. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  177. package/lib/components/VField/index.mjs.map +1 -1
  178. package/lib/components/VFileInput/VFileInput.mjs +3 -2
  179. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  180. package/lib/components/VFileInput/index.mjs.map +1 -1
  181. package/lib/components/VFooter/VFooter.mjs +1 -1
  182. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  183. package/lib/components/VFooter/index.mjs.map +1 -1
  184. package/lib/components/VForm/VForm.mjs.map +1 -1
  185. package/lib/components/VForm/index.mjs.map +1 -1
  186. package/lib/components/VGrid/VCol.mjs.map +1 -1
  187. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  188. package/lib/components/VGrid/VRow.mjs.map +1 -1
  189. package/lib/components/VGrid/VSpacer.mjs.map +1 -1
  190. package/lib/components/VGrid/index.mjs.map +1 -1
  191. package/lib/components/VHover/VHover.mjs.map +1 -1
  192. package/lib/components/VHover/index.mjs.map +1 -1
  193. package/lib/components/VIcon/VIcon.mjs +2 -4
  194. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  195. package/lib/components/VIcon/index.mjs.map +1 -1
  196. package/lib/components/VImg/VImg.mjs.map +1 -1
  197. package/lib/components/VImg/index.mjs.map +1 -1
  198. package/lib/components/VInput/VInput.mjs +4 -3
  199. package/lib/components/VInput/VInput.mjs.map +1 -1
  200. package/lib/components/VInput/index.mjs.map +1 -1
  201. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  202. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  203. package/lib/components/VItemGroup/index.mjs.map +1 -1
  204. package/lib/components/VKbd/index.mjs.map +1 -1
  205. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  206. package/lib/components/VLabel/index.mjs.map +1 -1
  207. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  208. package/lib/components/VLayout/VLayoutItem.mjs +1 -1
  209. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  210. package/lib/components/VLayout/index.mjs.map +1 -1
  211. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  212. package/lib/components/VLazy/index.mjs.map +1 -1
  213. package/lib/components/VList/VList.css +0 -6
  214. package/lib/components/VList/VList.mjs +47 -31
  215. package/lib/components/VList/VList.mjs.map +1 -1
  216. package/lib/components/VList/VList.sass +0 -1
  217. package/lib/components/VList/VListChildren.mjs +41 -3
  218. package/lib/components/VList/VListChildren.mjs.map +1 -1
  219. package/lib/components/VList/VListGroup.mjs +4 -3
  220. package/lib/components/VList/VListGroup.mjs.map +1 -1
  221. package/lib/components/VList/VListImg.mjs.map +1 -1
  222. package/lib/components/VList/VListItem.css +8 -7
  223. package/lib/components/VList/VListItem.mjs +6 -5
  224. package/lib/components/VList/VListItem.mjs.map +1 -1
  225. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  226. package/lib/components/VList/VListItemAvatar.mjs.map +1 -1
  227. package/lib/components/VList/VListItemHeader.mjs.map +1 -1
  228. package/lib/components/VList/VListItemIcon.mjs.map +1 -1
  229. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  230. package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
  231. package/lib/components/VList/VListItemTitle.mjs.map +1 -1
  232. package/lib/components/VList/VListSubheader.mjs +3 -3
  233. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  234. package/lib/components/VList/_variables.scss +0 -1
  235. package/lib/components/VList/index.mjs.map +1 -1
  236. package/lib/components/VList/list.mjs.map +1 -1
  237. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  238. package/lib/components/VLocaleProvider/index.mjs.map +1 -1
  239. package/lib/components/VMain/VMain.mjs.map +1 -1
  240. package/lib/components/VMain/index.mjs.map +1 -1
  241. package/lib/components/VMenu/VMenu.mjs +6 -2
  242. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  243. package/lib/components/VMenu/_variables.scss +0 -1
  244. package/lib/components/VMenu/index.mjs.map +1 -1
  245. package/lib/components/VMenu/shared.mjs.map +1 -1
  246. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  247. package/lib/components/VMessages/index.mjs.map +1 -1
  248. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +7 -7
  249. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  250. package/lib/components/VNavigationDrawer/index.mjs.map +1 -1
  251. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  252. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  253. package/lib/components/VNoSsr/index.mjs.map +1 -1
  254. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
  255. package/lib/components/VOtpInput/index.mjs.map +1 -1
  256. package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
  257. package/lib/components/VOverflowBtn/index.mjs.map +1 -1
  258. package/lib/components/VOverlay/VOverlay.css +0 -1
  259. package/lib/components/VOverlay/VOverlay.mjs +45 -21
  260. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  261. package/lib/components/VOverlay/VOverlay.sass +0 -1
  262. package/lib/components/VOverlay/_variables.scss +0 -1
  263. package/lib/components/VOverlay/index.mjs.map +1 -1
  264. package/lib/components/VOverlay/{positionStrategies.mjs → locationStrategies.mjs} +32 -33
  265. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -0
  266. package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -1
  267. package/lib/components/VOverlay/scrollStrategies.mjs +2 -2
  268. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  269. package/lib/components/VOverlay/useActivator.mjs +7 -1
  270. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  271. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  272. package/lib/components/VPagination/VPagination.mjs +6 -5
  273. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  274. package/lib/components/VPagination/index.mjs.map +1 -1
  275. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  276. package/lib/components/VParallax/index.mjs.map +1 -1
  277. package/lib/components/VPicker/VPicker.mjs.map +1 -1
  278. package/lib/components/VPicker/index.mjs.map +1 -1
  279. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  280. package/lib/components/VProgressCircular/index.mjs.map +1 -1
  281. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  282. package/lib/components/VProgressLinear/index.mjs.map +1 -1
  283. package/lib/components/VRadio/VRadio.mjs +5 -3
  284. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  285. package/lib/components/VRadio/index.mjs.map +1 -1
  286. package/lib/components/VRadioGroup/VRadioGroup.mjs +5 -3
  287. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  288. package/lib/components/VRadioGroup/index.mjs.map +1 -1
  289. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  290. package/lib/components/VRangeSlider/index.mjs.map +1 -1
  291. package/lib/components/VRating/VRating.mjs +4 -3
  292. package/lib/components/VRating/VRating.mjs.map +1 -1
  293. package/lib/components/VRating/index.mjs.map +1 -1
  294. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  295. package/lib/components/VResponsive/index.mjs.map +1 -1
  296. package/lib/components/VSelect/VSelect.mjs +40 -27
  297. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  298. package/lib/components/VSelect/index.mjs.map +1 -1
  299. package/lib/components/VSelectionControl/VSelectionControl.mjs +7 -6
  300. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  301. package/lib/components/VSelectionControl/index.mjs.map +1 -1
  302. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +4 -3
  303. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  304. package/lib/components/VSelectionControlGroup/index.mjs.map +1 -1
  305. package/lib/components/VSheet/VSheet.mjs +7 -3
  306. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  307. package/lib/components/VSheet/index.mjs.map +1 -1
  308. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  309. package/lib/components/VSkeletonLoader/index.mjs.map +1 -1
  310. package/lib/components/VSlideGroup/VSlideGroup.mjs +4 -3
  311. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  312. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  313. package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
  314. package/lib/components/VSlideGroup/index.mjs.map +1 -1
  315. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  316. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  317. package/lib/components/VSlider/VSliderTrack.mjs +2 -1
  318. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  319. package/lib/components/VSlider/index.mjs.map +1 -1
  320. package/lib/components/VSlider/slider.mjs.map +1 -1
  321. package/lib/components/VSnackbar/VSnackbar.css +0 -18
  322. package/lib/components/VSnackbar/VSnackbar.mjs +19 -12
  323. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  324. package/lib/components/VSnackbar/VSnackbar.sass +0 -18
  325. package/lib/components/VSnackbar/index.mjs.map +1 -1
  326. package/lib/components/VSparkline/VSparkline.mjs.map +1 -1
  327. package/lib/components/VSparkline/helpers/core.mjs.map +1 -1
  328. package/lib/components/VSparkline/helpers/math.mjs.map +1 -1
  329. package/lib/components/VSparkline/helpers/path.mjs.map +1 -1
  330. package/lib/components/VSparkline/index.mjs.map +1 -1
  331. package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
  332. package/lib/components/VSpeedDial/index.mjs.map +1 -1
  333. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  334. package/lib/components/VStepper/VStepperContent.mjs.map +1 -1
  335. package/lib/components/VStepper/VStepperStep.mjs.map +1 -1
  336. package/lib/components/VStepper/index.mjs.map +1 -1
  337. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  338. package/lib/components/VSwitch/index.mjs.map +1 -1
  339. package/lib/components/VSystemBar/VSystemBar.mjs +1 -1
  340. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  341. package/lib/components/VSystemBar/index.mjs.map +1 -1
  342. package/lib/components/VTable/VTable.mjs.map +1 -1
  343. package/lib/components/VTable/index.mjs.map +1 -1
  344. package/lib/components/VTabs/VTab.css +1 -1
  345. package/lib/components/VTabs/VTab.mjs +5 -4
  346. package/lib/components/VTabs/VTab.mjs.map +1 -1
  347. package/lib/components/VTabs/VTab.sass +1 -1
  348. package/lib/components/VTabs/VTabs.css +8 -9
  349. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  350. package/lib/components/VTabs/VTabs.sass +4 -5
  351. package/lib/components/VTabs/index.mjs.map +1 -1
  352. package/lib/components/VTabs/shared.mjs.map +1 -1
  353. package/lib/components/VTextField/VTextField.mjs +3 -2
  354. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  355. package/lib/components/VTextField/index.mjs.map +1 -1
  356. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  357. package/lib/components/VTextarea/index.mjs.map +1 -1
  358. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  359. package/lib/components/VThemeProvider/index.mjs.map +1 -1
  360. package/lib/components/VTimePicker/SelectingTimes.mjs.map +1 -1
  361. package/lib/components/VTimePicker/VTimePicker.mjs.map +1 -1
  362. package/lib/components/VTimePicker/VTimePickerClock.mjs.map +1 -1
  363. package/lib/components/VTimePicker/VTimePickerTitle.mjs.map +1 -1
  364. package/lib/components/VTimePicker/index.mjs.map +1 -1
  365. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  366. package/lib/components/VTimeline/VTimelineDivider.mjs +3 -2
  367. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  368. package/lib/components/VTimeline/VTimelineItem.mjs +3 -2
  369. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  370. package/lib/components/VTimeline/index.mjs.map +1 -1
  371. package/lib/components/VTimeline/shared.mjs.map +1 -1
  372. package/lib/components/VToolbar/VToolbar.mjs +16 -9
  373. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  374. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  375. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  376. package/lib/components/VToolbar/index.mjs.map +1 -1
  377. package/lib/components/VTooltip/VTooltip.mjs +12 -7
  378. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  379. package/lib/components/VTooltip/index.mjs.map +1 -1
  380. package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
  381. package/lib/components/VTreeview/VTreeviewNode.mjs.map +1 -1
  382. package/lib/components/VTreeview/index.mjs.map +1 -1
  383. package/lib/components/VTreeview/util/filterTreeItems.mjs.map +1 -1
  384. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  385. package/lib/components/VValidation/index.mjs.map +1 -1
  386. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  387. package/lib/components/VVirtualScroll/index.mjs.map +1 -1
  388. package/lib/components/VWindow/VWindow.mjs +2 -2
  389. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  390. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  391. package/lib/components/VWindow/index.mjs.map +1 -1
  392. package/lib/components/index.d.ts +3689 -3205
  393. package/lib/components/index.mjs.map +1 -1
  394. package/lib/components/transitions/createTransition.mjs.map +1 -1
  395. package/lib/components/transitions/dialog-transition.mjs +61 -8
  396. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  397. package/lib/components/transitions/expand-transition.mjs.map +1 -1
  398. package/lib/components/transitions/index.mjs.map +1 -1
  399. package/lib/composables/border.mjs.map +1 -1
  400. package/lib/composables/color.mjs.map +1 -1
  401. package/lib/composables/defaults.mjs.map +1 -1
  402. package/lib/composables/delay.mjs.map +1 -1
  403. package/lib/composables/density.mjs.map +1 -1
  404. package/lib/composables/dimensions.mjs.map +1 -1
  405. package/lib/composables/display.mjs.map +1 -1
  406. package/lib/composables/elevation.mjs.map +1 -1
  407. package/lib/composables/filter.mjs +33 -13
  408. package/lib/composables/filter.mjs.map +1 -1
  409. package/lib/composables/focus.mjs.map +1 -1
  410. package/lib/composables/form.mjs.map +1 -1
  411. package/lib/composables/forwardRef.mjs.map +1 -1
  412. package/lib/composables/group.mjs.map +1 -1
  413. package/lib/composables/hydration.mjs.map +1 -1
  414. package/lib/composables/icons.mjs +15 -3
  415. package/lib/composables/icons.mjs.map +1 -1
  416. package/lib/composables/index.mjs.map +1 -1
  417. package/lib/composables/intersectionObserver.mjs.map +1 -1
  418. package/lib/composables/items.mjs +39 -11
  419. package/lib/composables/items.mjs.map +1 -1
  420. package/lib/composables/layout.mjs +3 -3
  421. package/lib/composables/layout.mjs.map +1 -1
  422. package/lib/composables/lazy.mjs.map +1 -1
  423. package/lib/composables/loader.mjs.map +1 -1
  424. package/lib/composables/locale.mjs +11 -8
  425. package/lib/composables/locale.mjs.map +1 -1
  426. package/lib/composables/location.mjs +70 -0
  427. package/lib/composables/location.mjs.map +1 -0
  428. package/lib/composables/mutationObserver.mjs.map +1 -1
  429. package/lib/composables/nested/nested.mjs.map +1 -1
  430. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  431. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  432. package/lib/composables/position.mjs +4 -25
  433. package/lib/composables/position.mjs.map +1 -1
  434. package/lib/composables/proxiedModel.mjs.map +1 -1
  435. package/lib/composables/refs.mjs.map +1 -1
  436. package/lib/composables/resizeObserver.mjs.map +1 -1
  437. package/lib/composables/rounded.mjs.map +1 -1
  438. package/lib/composables/router.mjs +25 -23
  439. package/lib/composables/router.mjs.map +1 -1
  440. package/lib/composables/rtl.mjs.map +1 -1
  441. package/lib/composables/scopeId.mjs +11 -0
  442. package/lib/composables/scopeId.mjs.map +1 -0
  443. package/lib/composables/scroll.mjs.map +1 -1
  444. package/lib/composables/selectLink.mjs.map +1 -1
  445. package/lib/composables/size.mjs.map +1 -1
  446. package/lib/composables/ssrBoot.mjs.map +1 -1
  447. package/lib/composables/stack.mjs +23 -22
  448. package/lib/composables/stack.mjs.map +1 -1
  449. package/lib/composables/tag.mjs.map +1 -1
  450. package/lib/composables/teleport.mjs.map +1 -1
  451. package/lib/composables/theme.mjs +89 -92
  452. package/lib/composables/theme.mjs.map +1 -1
  453. package/lib/composables/toggleScope.mjs +18 -0
  454. package/lib/composables/toggleScope.mjs.map +1 -0
  455. package/lib/composables/touch.mjs.map +1 -1
  456. package/lib/composables/transition.mjs.map +1 -1
  457. package/lib/composables/validation.mjs +1 -0
  458. package/lib/composables/validation.mjs.map +1 -1
  459. package/lib/composables/variant.mjs.map +1 -1
  460. package/lib/directives/click-outside/index.mjs.map +1 -1
  461. package/lib/directives/color/index.mjs.map +1 -1
  462. package/lib/directives/index.mjs.map +1 -1
  463. package/lib/directives/intersect/index.mjs.map +1 -1
  464. package/lib/directives/mutate/index.mjs.map +1 -1
  465. package/lib/directives/resize/index.mjs.map +1 -1
  466. package/lib/directives/ripple/index.mjs.map +1 -1
  467. package/lib/directives/scroll/index.mjs.map +1 -1
  468. package/lib/directives/touch/index.mjs.map +1 -1
  469. package/lib/entry-bundler.mjs +1 -1
  470. package/lib/entry-bundler.mjs.map +1 -1
  471. package/lib/framework.mjs +10 -22
  472. package/lib/framework.mjs.map +1 -1
  473. package/lib/iconsets/fa-svg.d.ts +2 -1
  474. package/lib/iconsets/fa-svg.mjs.map +1 -1
  475. package/lib/iconsets/fa.d.ts +2 -1
  476. package/lib/iconsets/fa.mjs.map +1 -1
  477. package/lib/iconsets/fa4.d.ts +2 -1
  478. package/lib/iconsets/fa4.mjs.map +1 -1
  479. package/lib/iconsets/md.d.ts +2 -1
  480. package/lib/iconsets/md.mjs.map +1 -1
  481. package/lib/iconsets/mdi-svg.d.ts +2 -1
  482. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  483. package/lib/iconsets/mdi.d.ts +2 -1
  484. package/lib/iconsets/mdi.mjs.map +1 -1
  485. package/lib/index.d.ts +81 -80
  486. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  487. package/lib/locale/adapters/vue-intl.mjs.map +1 -1
  488. package/lib/locale/af.mjs.map +1 -1
  489. package/lib/locale/ar.mjs.map +1 -1
  490. package/lib/locale/az.mjs.map +1 -1
  491. package/lib/locale/bg.mjs.map +1 -1
  492. package/lib/locale/ca.mjs.map +1 -1
  493. package/lib/locale/ckb.mjs.map +1 -1
  494. package/lib/locale/cs.mjs.map +1 -1
  495. package/lib/locale/da.mjs.map +1 -1
  496. package/lib/locale/de.mjs.map +1 -1
  497. package/lib/locale/el.mjs.map +1 -1
  498. package/lib/locale/en.mjs.map +1 -1
  499. package/lib/locale/es.mjs.map +1 -1
  500. package/lib/locale/et.mjs.map +1 -1
  501. package/lib/locale/fa.mjs.map +1 -1
  502. package/lib/locale/fi.mjs.map +1 -1
  503. package/lib/locale/fr.mjs.map +1 -1
  504. package/lib/locale/he.mjs.map +1 -1
  505. package/lib/locale/hr.mjs.map +1 -1
  506. package/lib/locale/hu.mjs.map +1 -1
  507. package/lib/locale/id.mjs.map +1 -1
  508. package/lib/locale/index.mjs.map +1 -1
  509. package/lib/locale/it.mjs.map +1 -1
  510. package/lib/locale/ja.mjs.map +1 -1
  511. package/lib/locale/ko.mjs.map +1 -1
  512. package/lib/locale/lt.mjs.map +1 -1
  513. package/lib/locale/lv.mjs.map +1 -1
  514. package/lib/locale/nl.mjs.map +1 -1
  515. package/lib/locale/no.mjs.map +1 -1
  516. package/lib/locale/pl.mjs.map +1 -1
  517. package/lib/locale/pt.mjs.map +1 -1
  518. package/lib/locale/ro.mjs.map +1 -1
  519. package/lib/locale/ru.mjs.map +1 -1
  520. package/lib/locale/sk.mjs.map +1 -1
  521. package/lib/locale/sl.mjs.map +1 -1
  522. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  523. package/lib/locale/sr-Latn.mjs.map +1 -1
  524. package/lib/locale/sv.mjs.map +1 -1
  525. package/lib/locale/th.mjs.map +1 -1
  526. package/lib/locale/tr.mjs.map +1 -1
  527. package/lib/locale/uk.mjs.map +1 -1
  528. package/lib/locale/vi.mjs.map +1 -1
  529. package/lib/locale/zh-Hans.mjs.map +1 -1
  530. package/lib/locale/zh-Hant.mjs.map +1 -1
  531. package/lib/presets/default/index.mjs.map +1 -1
  532. package/lib/services/goto/easing-patterns.mjs.map +1 -1
  533. package/lib/services/goto/index.mjs.map +1 -1
  534. package/lib/services/goto/util.mjs.map +1 -1
  535. package/lib/styles/tools/_states.sass +9 -2
  536. package/lib/styles/tools/_utilities.sass +1 -1
  537. package/lib/{components/VOverlay/util → util}/anchor.mjs +0 -0
  538. package/lib/util/anchor.mjs.map +1 -0
  539. package/lib/util/animation.mjs.map +1 -1
  540. package/lib/util/box.mjs.map +1 -1
  541. package/lib/util/color/APCA.mjs.map +1 -1
  542. package/lib/util/color/transformCIELAB.mjs.map +1 -1
  543. package/lib/util/color/transformSRGB.mjs.map +1 -1
  544. package/lib/util/colorUtils.mjs.map +1 -1
  545. package/lib/util/colors.mjs.map +1 -1
  546. package/lib/util/console.mjs.map +1 -1
  547. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  548. package/lib/util/dateTimeUtils.mjs.map +1 -1
  549. package/lib/util/defineComponent.mjs.map +1 -1
  550. package/lib/util/dom.mjs.map +1 -1
  551. package/lib/util/easing.mjs.map +1 -1
  552. package/lib/util/getCurrentInstance.mjs.map +1 -1
  553. package/lib/util/getScrollParent.mjs.map +1 -1
  554. package/lib/util/globals.mjs +0 -3
  555. package/lib/util/globals.mjs.map +1 -1
  556. package/lib/util/helpers.mjs +1 -1
  557. package/lib/util/helpers.mjs.map +1 -1
  558. package/lib/util/index.mjs +1 -0
  559. package/lib/util/index.mjs.map +1 -1
  560. package/lib/util/isFixedPosition.mjs.map +1 -1
  561. package/lib/util/propsFactory.mjs.map +1 -1
  562. package/lib/util/useRender.mjs.map +1 -1
  563. package/package.json +22 -22
  564. package/lib/components/VOverlay/positionStrategies.mjs.map +0 -1
  565. package/lib/components/VOverlay/util/anchor.mjs.map +0 -1
  566. package/lib/composables/overlay.mjs +0 -34
  567. package/lib/composables/overlay.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/composables/touch.ts"],"names":["CircularBuffer","HORIZON","HISTORY","kineticEnergyToVelocity","work","sqrt2","Math","sqrt","abs","calculateImpulseVelocity","samples","length","t","d","i","vprev","vcurr","useVelocity","touches","addMovement","e","Array","from","changedTouches","forEach","touch","identifier","push","timeStamp","endTouch","getVelocity","id","values","reverse","Error","newest","x","y","val","clientX","clientY","direction","absX","absY","oops"],"mappings":"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","sourcesContent":["import { CircularBuffer } from '@/util'\n\nconst HORIZON = 100 // ms\nconst HISTORY = 20 // number of samples to keep\n\nexport interface Sample {\n t: number\n d: number\n}\n\n/** @see https://android.googlesource.com/platform/frameworks/native/+/master/libs/input/VelocityTracker.cpp */\nfunction kineticEnergyToVelocity (work: number) {\n const sqrt2 = 1.41421356237\n return (work < 0 ? -1.0 : 1.0) * Math.sqrt(Math.abs(work)) * sqrt2\n}\n\n/**\n * Returns pointer velocity in px/s\n */\nexport function calculateImpulseVelocity (samples: Sample[]) {\n // The input should be in reversed time order (most recent sample at index i=0)\n if (samples.length < 2) {\n // if 0 or 1 points, velocity is zero\n return 0\n }\n // if (samples[1].t > samples[0].t) {\n // // Algorithm will still work, but not perfectly\n // consoleWarn('Samples provided to calculateImpulseVelocity in the wrong order')\n // }\n if (samples.length === 2) {\n // if 2 points, basic linear calculation\n if (samples[1].t === samples[0].t) {\n // consoleWarn(`Events have identical time stamps t=${samples[0].t}, setting velocity = 0`)\n return 0\n }\n return (samples[1].d - samples[0].d) / (samples[1].t - samples[0].t)\n }\n // Guaranteed to have at least 3 points here\n // start with the oldest sample and go forward in time\n let work = 0\n for (let i = samples.length - 1; i > 0; i--) {\n if (samples[i].t === samples[i - 1].t) {\n // consoleWarn(`Events have identical time stamps t=${samples[i].t}, skipping sample`)\n continue\n }\n const vprev = kineticEnergyToVelocity(work) // v[i-1]\n const vcurr = (samples[i].d - samples[i - 1].d) / (samples[i].t - samples[i - 1].t) // v[i]\n work += (vcurr - vprev) * Math.abs(vcurr)\n if (i === samples.length - 1) {\n work *= 0.5\n }\n }\n return kineticEnergyToVelocity(work) * 1000\n}\n\nexport function useVelocity () {\n const touches: Record<number, CircularBuffer<[number, Touch]> | undefined> = {}\n\n function addMovement (e: TouchEvent) {\n Array.from(e.changedTouches).forEach(touch => {\n const samples = touches[touch.identifier] ?? (touches[touch.identifier] = new CircularBuffer(HISTORY))\n samples.push([e.timeStamp, touch])\n })\n }\n\n function endTouch (e: TouchEvent) {\n Array.from(e.changedTouches).forEach(touch => {\n delete touches[touch.identifier]\n })\n }\n\n function getVelocity (id: number) {\n const samples = touches[id]?.values().reverse()\n\n if (!samples) {\n throw new Error(`No samples for touch id ${id}`)\n }\n\n const newest = samples[0]\n const x: Sample[] = []\n const y: Sample[] = []\n for (const val of samples) {\n if (newest[0] - val[0] > HORIZON) break\n\n x.push({ t: val[0], d: val[1].clientX })\n y.push({ t: val[0], d: val[1].clientY })\n }\n\n return {\n x: calculateImpulseVelocity(x),\n y: calculateImpulseVelocity(y),\n get direction () {\n const { x, y } = this\n const [absX, absY] = [Math.abs(x), Math.abs(y)]\n\n return absX > absY && x >= 0 ? 'right'\n : absX > absY && x <= 0 ? 'left'\n : absY > absX && y >= 0 ? 'down'\n : absY > absX && y <= 0 ? 'up'\n : oops()\n },\n }\n }\n\n return { addMovement, endTouch, getVelocity }\n}\n\nfunction oops (): never {\n throw new Error()\n}\n"],"file":"touch.mjs"}
1
+ {"version":3,"file":"touch.mjs","names":["CircularBuffer","HORIZON","HISTORY","kineticEnergyToVelocity","work","sqrt2","Math","sqrt","abs","calculateImpulseVelocity","samples","length","t","d","i","vprev","vcurr","useVelocity","touches","addMovement","e","Array","from","changedTouches","forEach","touch","identifier","push","timeStamp","endTouch","getVelocity","id","values","reverse","Error","newest","x","y","val","clientX","clientY","direction","absX","absY","oops"],"sources":["../../src/composables/touch.ts"],"sourcesContent":["import { CircularBuffer } from '@/util'\n\nconst HORIZON = 100 // ms\nconst HISTORY = 20 // number of samples to keep\n\nexport interface Sample {\n t: number\n d: number\n}\n\n/** @see https://android.googlesource.com/platform/frameworks/native/+/master/libs/input/VelocityTracker.cpp */\nfunction kineticEnergyToVelocity (work: number) {\n const sqrt2 = 1.41421356237\n return (work < 0 ? -1.0 : 1.0) * Math.sqrt(Math.abs(work)) * sqrt2\n}\n\n/**\n * Returns pointer velocity in px/s\n */\nexport function calculateImpulseVelocity (samples: Sample[]) {\n // The input should be in reversed time order (most recent sample at index i=0)\n if (samples.length < 2) {\n // if 0 or 1 points, velocity is zero\n return 0\n }\n // if (samples[1].t > samples[0].t) {\n // // Algorithm will still work, but not perfectly\n // consoleWarn('Samples provided to calculateImpulseVelocity in the wrong order')\n // }\n if (samples.length === 2) {\n // if 2 points, basic linear calculation\n if (samples[1].t === samples[0].t) {\n // consoleWarn(`Events have identical time stamps t=${samples[0].t}, setting velocity = 0`)\n return 0\n }\n return (samples[1].d - samples[0].d) / (samples[1].t - samples[0].t)\n }\n // Guaranteed to have at least 3 points here\n // start with the oldest sample and go forward in time\n let work = 0\n for (let i = samples.length - 1; i > 0; i--) {\n if (samples[i].t === samples[i - 1].t) {\n // consoleWarn(`Events have identical time stamps t=${samples[i].t}, skipping sample`)\n continue\n }\n const vprev = kineticEnergyToVelocity(work) // v[i-1]\n const vcurr = (samples[i].d - samples[i - 1].d) / (samples[i].t - samples[i - 1].t) // v[i]\n work += (vcurr - vprev) * Math.abs(vcurr)\n if (i === samples.length - 1) {\n work *= 0.5\n }\n }\n return kineticEnergyToVelocity(work) * 1000\n}\n\nexport function useVelocity () {\n const touches: Record<number, CircularBuffer<[number, Touch]> | undefined> = {}\n\n function addMovement (e: TouchEvent) {\n Array.from(e.changedTouches).forEach(touch => {\n const samples = touches[touch.identifier] ?? (touches[touch.identifier] = new CircularBuffer(HISTORY))\n samples.push([e.timeStamp, touch])\n })\n }\n\n function endTouch (e: TouchEvent) {\n Array.from(e.changedTouches).forEach(touch => {\n delete touches[touch.identifier]\n })\n }\n\n function getVelocity (id: number) {\n const samples = touches[id]?.values().reverse()\n\n if (!samples) {\n throw new Error(`No samples for touch id ${id}`)\n }\n\n const newest = samples[0]\n const x: Sample[] = []\n const y: Sample[] = []\n for (const val of samples) {\n if (newest[0] - val[0] > HORIZON) break\n\n x.push({ t: val[0], d: val[1].clientX })\n y.push({ t: val[0], d: val[1].clientY })\n }\n\n return {\n x: calculateImpulseVelocity(x),\n y: calculateImpulseVelocity(y),\n get direction () {\n const { x, y } = this\n const [absX, absY] = [Math.abs(x), Math.abs(y)]\n\n return absX > absY && x >= 0 ? 'right'\n : absX > absY && x <= 0 ? 'left'\n : absY > absX && y >= 0 ? 'down'\n : absY > absX && y <= 0 ? 'up'\n : oops()\n },\n }\n }\n\n return { addMovement, endTouch, getVelocity }\n}\n\nfunction oops (): never {\n throw new Error()\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/composables/transition.ts"],"names":["h","mergeProps","Transition","propsFactory","makeTransitionProps","transition","type","Boolean","String","Object","default","validator","val","MaybeTransition","props","slots","rest","component","customProps","name"],"mappings":"AAAA;AACA,SAASA,CAAT,EAAYC,UAAZ,EAAwBC,UAAxB,QAA0C,KAA1C;SACSC,Y,6BAET;;AAGA,OAAO,MAAMC,mBAAmB,GAAGD,YAAY,CAAC;AAC9CE,EAAAA,UAAU,EAAE;AACVC,IAAAA,IAAI,EAAE,CAACC,OAAD,EAAUC,MAAV,EAAkBC,MAAlB,CADI;AAEVC,IAAAA,OAAO,EAAE,iBAFC;AAGVC,IAAAA,SAAS,EAAEC,GAAG,IAAIA,GAAG,KAAK;AAHhB;AADkC,CAAD,EAM5C,YAN4C,CAAxC;AAYP,OAAO,MAAMC,eAA0D,GAAG,CAACC,KAAD,WAAsB;AAAA;;AAAA,MAAd;AAAEC,IAAAA;AAAF,GAAc;AAC9F,QAAM;AAAEV,IAAAA,UAAF;AAAc,OAAGW;AAAjB,MAA0BF,KAAhC;AAEA,MAAI,CAACT,UAAD,IAAe,OAAOA,UAAP,KAAsB,SAAzC,EAAoD,yBAAOU,KAAK,CAACL,OAAb,qBAAO,oBAAAK,KAAK,CAAZ;AAEpD,QAAM;AAAEE,IAAAA,SAAS,GAAGf,UAAd;AAA0B,OAAGgB;AAA7B,MAA6C,OAAOb,UAAP,KAAsB,QAAtB,GAAiCA,UAAjC,GAA8C,EAAjG;AAEA,SAAOL,CAAC,CACNiB,SADM,EAENhB,UAAU,CAAC,OAAOI,UAAP,KAAsB,QAAtB,GAAiC;AAAEc,IAAAA,IAAI,EAAEd;AAAR,GAAjC,GAAwDa,WAAzD,EAA6EF,IAA7E,CAFJ,EAGND,KAHM,CAAR;AAKD,CAZM","sourcesContent":["// Utilities\nimport { h, mergeProps, Transition } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { Component, FunctionalComponent, PropType, TransitionProps } from 'vue'\n\nexport const makeTransitionProps = propsFactory({\n transition: {\n type: [Boolean, String, Object] as PropType<string | boolean | TransitionProps & { component?: Component }>,\n default: 'fade-transition',\n validator: val => val !== true,\n },\n}, 'transition')\n\ninterface MaybeTransitionProps extends TransitionProps {\n transition?: string | boolean | TransitionProps & { component?: any }\n}\n\nexport const MaybeTransition: FunctionalComponent<MaybeTransitionProps> = (props, { slots }) => {\n const { transition, ...rest } = props\n\n if (!transition || typeof transition === 'boolean') return slots.default?.()\n\n const { component = Transition, ...customProps } = typeof transition === 'object' ? transition : {}\n\n return h(\n component,\n mergeProps(typeof transition === 'string' ? { name: transition } : customProps as any, rest as any),\n slots\n )\n}\n"],"file":"transition.mjs"}
1
+ {"version":3,"file":"transition.mjs","names":["h","mergeProps","Transition","propsFactory","makeTransitionProps","transition","type","Boolean","String","Object","default","validator","val","MaybeTransition","props","slots","rest","component","customProps","name"],"sources":["../../src/composables/transition.ts"],"sourcesContent":["// Utilities\nimport { h, mergeProps, Transition } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { Component, FunctionalComponent, PropType, TransitionProps } from 'vue'\n\nexport const makeTransitionProps = propsFactory({\n transition: {\n type: [Boolean, String, Object] as PropType<string | boolean | TransitionProps & { component?: Component }>,\n default: 'fade-transition',\n validator: val => val !== true,\n },\n}, 'transition')\n\ninterface MaybeTransitionProps extends TransitionProps {\n transition?: string | boolean | TransitionProps & { component?: any }\n}\n\nexport const MaybeTransition: FunctionalComponent<MaybeTransitionProps> = (props, { slots }) => {\n const { transition, ...rest } = props\n\n if (!transition || typeof transition === 'boolean') return slots.default?.()\n\n const { component = Transition, ...customProps } = typeof transition === 'object' ? transition : {}\n\n return h(\n component,\n mergeProps(typeof transition === 'string' ? { name: transition } : customProps as any, rest as any),\n slots\n )\n}\n"],"mappings":"AAAA;AACA,SAASA,CAAT,EAAYC,UAAZ,EAAwBC,UAAxB,QAA0C,KAA1C;SACSC,Y,6BAET;;AAGA,OAAO,MAAMC,mBAAmB,GAAGD,YAAY,CAAC;EAC9CE,UAAU,EAAE;IACVC,IAAI,EAAE,CAACC,OAAD,EAAUC,MAAV,EAAkBC,MAAlB,CADI;IAEVC,OAAO,EAAE,iBAFC;IAGVC,SAAS,EAAEC,GAAG,IAAIA,GAAG,KAAK;EAHhB;AADkC,CAAD,EAM5C,YAN4C,CAAxC;AAYP,OAAO,MAAMC,eAA0D,GAAG,CAACC,KAAD,WAAsB;EAAA;;EAAA,IAAd;IAAEC;EAAF,CAAc;EAC9F,MAAM;IAAEV,UAAF;IAAc,GAAGW;EAAjB,IAA0BF,KAAhC;EAEA,IAAI,CAACT,UAAD,IAAe,OAAOA,UAAP,KAAsB,SAAzC,EAAoD,yBAAOU,KAAK,CAACL,OAAb,qBAAO,oBAAAK,KAAK,CAAZ;EAEpD,MAAM;IAAEE,SAAS,GAAGf,UAAd;IAA0B,GAAGgB;EAA7B,IAA6C,OAAOb,UAAP,KAAsB,QAAtB,GAAiCA,UAAjC,GAA8C,EAAjG;EAEA,OAAOL,CAAC,CACNiB,SADM,EAENhB,UAAU,CAAC,OAAOI,UAAP,KAAsB,QAAtB,GAAiC;IAAEc,IAAI,EAAEd;EAAR,CAAjC,GAAwDa,WAAzD,EAA6EF,IAA7E,CAFJ,EAGND,KAHM,CAAR;AAKD,CAZM"}
@@ -37,6 +37,7 @@ export function useValidation(props) {
37
37
  return props.errorMessages.length ? wrapInArray(props.errorMessages) : internalErrorMessages.value;
38
38
  });
39
39
  const isValid = computed(() => {
40
+ if (!props.rules.length) return true;
40
41
  if (props.error || errorMessages.value.length) return false;
41
42
  return isPristine.value ? null : true;
42
43
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/composables/validation.ts"],"names":["useForm","useProxiedModel","computed","onBeforeMount","onBeforeUnmount","ref","watch","getCurrentInstanceName","getUid","propsFactory","wrapInArray","makeValidationProps","disabled","Boolean","error","errorMessages","type","Array","String","default","maxErrors","Number","name","readonly","rules","modelValue","useValidation","props","model","form","internalErrorMessages","isPristine","isDirty","value","length","isDisabled","isReadonly","isValid","isValidating","validationClasses","uid","register","validate","reset","resetValidation","unregister","results","rule","handler","result","console","warn","push"],"mappings":"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","sourcesContent":["// Composables\nimport { useForm } from '@/composables/form'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onBeforeMount, onBeforeUnmount, ref, watch } from 'vue'\nimport { getCurrentInstanceName, getUid, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type ValidationResult = string | true\nexport type ValidationRule =\n | ValidationResult\n | PromiseLike<ValidationResult>\n | ((value: any) => ValidationResult)\n | ((value: any) => PromiseLike<ValidationResult>)\n\nexport interface ValidationProps {\n disabled: boolean\n error: boolean\n errorMessages: string | string[]\n maxErrors: string | number\n name: string | undefined\n readonly: boolean\n rules: ValidationRule[]\n modelValue: any\n 'onUpdate:modelValue': ((val: any) => void) | undefined\n}\n\nexport const makeValidationProps = propsFactory({\n disabled: Boolean,\n error: Boolean,\n errorMessages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n maxErrors: {\n type: [Number, String],\n default: 1,\n },\n name: String,\n readonly: Boolean,\n rules: {\n type: Array as PropType<ValidationRule[]>,\n default: () => ([]),\n },\n modelValue: null,\n})\n\nexport function useValidation (\n props: ValidationProps,\n name = getCurrentInstanceName(),\n) {\n const model = useProxiedModel(props, 'modelValue')\n const form = useForm()\n const internalErrorMessages = ref<string[]>([])\n const isPristine = ref(true)\n const isDirty = computed(() => wrapInArray(model.value === '' ? null : model.value).length > 0)\n const isDisabled = computed(() => !!(props.disabled || form?.isDisabled.value))\n const isReadonly = computed(() => !!(props.readonly || form?.isReadonly.value))\n const errorMessages = computed(() => {\n return props.errorMessages.length\n ? wrapInArray(props.errorMessages)\n : internalErrorMessages.value\n })\n const isValid = computed(() => {\n if (props.error || errorMessages.value.length) return false\n\n return isPristine.value ? null : true\n })\n const isValidating = ref(false)\n const validationClasses = computed(() => {\n return {\n [`${name}--error`]: isValid.value === false,\n [`${name}--dirty`]: isDirty.value,\n [`${name}--disabled`]: isDisabled.value,\n [`${name}--readonly`]: isReadonly.value,\n }\n })\n\n const uid = computed(() => props.name ?? getUid())\n\n onBeforeMount(() => {\n form?.register(uid.value, validate, reset, resetValidation, isValid)\n })\n\n onBeforeUnmount(() => {\n form?.unregister(uid.value)\n })\n\n watch(model, () => {\n if (model.value != null) validate()\n })\n\n function reset () {\n resetValidation()\n model.value = null\n }\n\n function resetValidation () {\n isPristine.value = true\n internalErrorMessages.value = []\n }\n\n async function validate () {\n const results = []\n\n isValidating.value = true\n\n for (const rule of props.rules) {\n if (results.length >= (props.maxErrors || 1)) {\n break\n }\n\n const handler = typeof rule === 'function' ? rule : () => rule\n const result = await handler(model.value)\n\n if (result === true) continue\n\n if (typeof result !== 'string') {\n // eslint-disable-next-line no-console\n console.warn(`${result} is not a valid value. Rule functions must return boolean true or a string.`)\n\n continue\n }\n\n results.push(result)\n }\n\n internalErrorMessages.value = results\n isValidating.value = false\n isPristine.value = false\n\n return internalErrorMessages.value\n }\n\n return {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n }\n}\n"],"file":"validation.mjs"}
1
+ {"version":3,"file":"validation.mjs","names":["useForm","useProxiedModel","computed","onBeforeMount","onBeforeUnmount","ref","watch","getCurrentInstanceName","getUid","propsFactory","wrapInArray","makeValidationProps","disabled","Boolean","error","errorMessages","type","Array","String","default","maxErrors","Number","name","readonly","rules","modelValue","useValidation","props","model","form","internalErrorMessages","isPristine","isDirty","value","length","isDisabled","isReadonly","isValid","isValidating","validationClasses","uid","register","validate","reset","resetValidation","unregister","results","rule","handler","result","console","warn","push"],"sources":["../../src/composables/validation.ts"],"sourcesContent":["// Composables\nimport { useForm } from '@/composables/form'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onBeforeMount, onBeforeUnmount, ref, watch } from 'vue'\nimport { getCurrentInstanceName, getUid, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type ValidationResult = string | true\nexport type ValidationRule =\n | ValidationResult\n | PromiseLike<ValidationResult>\n | ((value: any) => ValidationResult)\n | ((value: any) => PromiseLike<ValidationResult>)\n\nexport interface ValidationProps {\n disabled: boolean\n error: boolean\n errorMessages: string | string[]\n maxErrors: string | number\n name: string | undefined\n readonly: boolean\n rules: ValidationRule[]\n modelValue: any\n 'onUpdate:modelValue': ((val: any) => void) | undefined\n}\n\nexport const makeValidationProps = propsFactory({\n disabled: Boolean,\n error: Boolean,\n errorMessages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n maxErrors: {\n type: [Number, String],\n default: 1,\n },\n name: String,\n readonly: Boolean,\n rules: {\n type: Array as PropType<ValidationRule[]>,\n default: () => ([]),\n },\n modelValue: null,\n})\n\nexport function useValidation (\n props: ValidationProps,\n name = getCurrentInstanceName(),\n) {\n const model = useProxiedModel(props, 'modelValue')\n const form = useForm()\n const internalErrorMessages = ref<string[]>([])\n const isPristine = ref(true)\n const isDirty = computed(() => wrapInArray(model.value === '' ? null : model.value).length > 0)\n const isDisabled = computed(() => !!(props.disabled || form?.isDisabled.value))\n const isReadonly = computed(() => !!(props.readonly || form?.isReadonly.value))\n const errorMessages = computed(() => {\n return props.errorMessages.length\n ? wrapInArray(props.errorMessages)\n : internalErrorMessages.value\n })\n const isValid = computed(() => {\n if (!props.rules.length) return true\n if (props.error || errorMessages.value.length) return false\n\n return isPristine.value ? null : true\n })\n const isValidating = ref(false)\n const validationClasses = computed(() => {\n return {\n [`${name}--error`]: isValid.value === false,\n [`${name}--dirty`]: isDirty.value,\n [`${name}--disabled`]: isDisabled.value,\n [`${name}--readonly`]: isReadonly.value,\n }\n })\n\n const uid = computed(() => props.name ?? getUid())\n\n onBeforeMount(() => {\n form?.register(uid.value, validate, reset, resetValidation, isValid)\n })\n\n onBeforeUnmount(() => {\n form?.unregister(uid.value)\n })\n\n watch(model, () => {\n if (model.value != null) validate()\n })\n\n function reset () {\n resetValidation()\n model.value = null\n }\n\n function resetValidation () {\n isPristine.value = true\n internalErrorMessages.value = []\n }\n\n async function validate () {\n const results = []\n\n isValidating.value = true\n\n for (const rule of props.rules) {\n if (results.length >= (props.maxErrors || 1)) {\n break\n }\n\n const handler = typeof rule === 'function' ? rule : () => rule\n const result = await handler(model.value)\n\n if (result === true) continue\n\n if (typeof result !== 'string') {\n // eslint-disable-next-line no-console\n console.warn(`${result} is not a valid value. Rule functions must return boolean true or a string.`)\n\n continue\n }\n\n results.push(result)\n }\n\n internalErrorMessages.value = results\n isValidating.value = false\n isPristine.value = false\n\n return internalErrorMessages.value\n }\n\n return {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/composables/variant.tsx"],"names":["useColor","computed","unref","getCurrentInstanceName","propsFactory","allowedVariants","genOverlays","isClickable","name","makeVariantProps","color","String","variant","type","default","validator","v","includes","useVariant","props","variantClasses","colorClasses","colorStyles"],"mappings":";AAAA;SACSA,Q,uBAET;;AACA,SAASC,QAAT,EAAmBC,KAAnB,QAAgC,KAAhC;SACSC,sB,EAAwBC,Y,6BAEjC;;AAIA,OAAO,MAAMC,eAAe,GAAG,CAC7B,UAD6B,EAE7B,OAF6B,EAG7B,MAH6B,EAI7B,WAJ6B,EAK7B,gBAL6B,EAM7B,gBAN6B,CAAxB;AAgBP,OAAO,SAASC,WAAT,CAAsBC,WAAtB,EAA4CC,IAA5C,EAA0D;AAC/D,wCAEMD,WAAW;AAAA,aAAiB,GAAEC,IAAK;AAAxB,UAFjB;AAAA,aAIiB,GAAEA,IAAK;AAJxB;AAOD;AAED,OAAO,MAAMC,gBAAgB,GAAGL,YAAY,CAAC;AAC3CM,EAAAA,KAAK,EAAEC,MADoC;AAE3CC,EAAAA,OAAO,EAAE;AACPC,IAAAA,IAAI,EAAEF,MADC;AAEPG,IAAAA,OAAO,EAAE,WAFF;AAGPC,IAAAA,SAAS,EAAGC,CAAD,IAAYX,eAAe,CAACY,QAAhB,CAAyBD,CAAzB;AAHhB;AAFkC,CAAD,EAOzC,SAPyC,CAArC;AASP,OAAO,SAASE,UAAT,CACLC,KADK,EAGL;AAAA,MADAX,IACA,uEADOL,sBAAsB,EAC7B;AACA,QAAMiB,cAAc,GAAGnB,QAAQ,CAAC,MAAM;AACpC,UAAM;AAAEW,MAAAA;AAAF,QAAcV,KAAK,CAACiB,KAAD,CAAzB;AACA,WAAQ,GAAEX,IAAK,aAAYI,OAAQ,EAAnC;AACD,GAH8B,CAA/B;AAKA,QAAM;AAAES,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MAAgCtB,QAAQ,CAACC,QAAQ,CAAC,MAAM;AAC5D,UAAM;AAAEW,MAAAA,OAAF;AAAWF,MAAAA;AAAX,QAAqBR,KAAK,CAACiB,KAAD,CAAhC;AACA,WAAO;AACL,OAAC,CAAC,WAAD,EAAc,gBAAd,EAAgCF,QAAhC,CAAyCL,OAAzC,IAAoD,YAApD,GAAmE,MAApE,GAA6EF;AADxE,KAAP;AAGD,GALsD,CAAT,CAA9C;AAOA,SAAO;AAAEW,IAAAA,YAAF;AAAgBC,IAAAA,WAAhB;AAA6BF,IAAAA;AAA7B,GAAP;AACD","sourcesContent":["// Composables\nimport { useColor } from '@/composables/color'\n\n// Utilities\nimport { computed, unref } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { MaybeRef } from '@/util'\n\nexport const allowedVariants = [\n 'outlined',\n 'plain',\n 'text',\n 'contained',\n 'contained-flat',\n 'contained-text',\n] as const\n\nexport type Variant = typeof allowedVariants[number]\n\nexport interface VariantProps {\n color?: string\n variant: Variant\n}\n\nexport function genOverlays (isClickable: boolean, name: string) {\n return (\n <>\n { isClickable && <div class={`${name}__overlay`} /> }\n\n <div class={`${name}__underlay`} />\n </>\n )\n}\n\nexport const makeVariantProps = propsFactory({\n color: String,\n variant: {\n type: String as PropType<Variant>,\n default: 'contained',\n validator: (v: any) => allowedVariants.includes(v),\n },\n}, 'variant')\n\nexport function useVariant (\n props: MaybeRef<VariantProps>,\n name = getCurrentInstanceName(),\n) {\n const variantClasses = computed(() => {\n const { variant } = unref(props)\n return `${name}--variant-${variant}`\n })\n\n const { colorClasses, colorStyles } = useColor(computed(() => {\n const { variant, color } = unref(props)\n return {\n [['contained', 'contained-flat'].includes(variant) ? 'background' : 'text']: color,\n }\n }))\n\n return { colorClasses, colorStyles, variantClasses }\n}\n"],"file":"variant.mjs"}
1
+ {"version":3,"file":"variant.mjs","names":["useColor","computed","unref","getCurrentInstanceName","propsFactory","allowedVariants","genOverlays","isClickable","name","makeVariantProps","color","String","variant","type","default","validator","v","includes","useVariant","props","variantClasses","colorClasses","colorStyles"],"sources":["../../src/composables/variant.tsx"],"sourcesContent":["// Composables\nimport { useColor } from '@/composables/color'\n\n// Utilities\nimport { computed, unref } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { MaybeRef } from '@/util'\n\nexport const allowedVariants = [\n 'outlined',\n 'plain',\n 'text',\n 'contained',\n 'contained-flat',\n 'contained-text',\n] as const\n\nexport type Variant = typeof allowedVariants[number]\n\nexport interface VariantProps {\n color?: string\n variant: Variant\n}\n\nexport function genOverlays (isClickable: boolean, name: string) {\n return (\n <>\n { isClickable && <div class={`${name}__overlay`} /> }\n\n <div class={`${name}__underlay`} />\n </>\n )\n}\n\nexport const makeVariantProps = propsFactory({\n color: String,\n variant: {\n type: String as PropType<Variant>,\n default: 'contained',\n validator: (v: any) => allowedVariants.includes(v),\n },\n}, 'variant')\n\nexport function useVariant (\n props: MaybeRef<VariantProps>,\n name = getCurrentInstanceName(),\n) {\n const variantClasses = computed(() => {\n const { variant } = unref(props)\n return `${name}--variant-${variant}`\n })\n\n const { colorClasses, colorStyles } = useColor(computed(() => {\n const { variant, color } = unref(props)\n return {\n [['contained', 'contained-flat'].includes(variant) ? 'background' : 'text']: color,\n }\n }))\n\n return { colorClasses, colorStyles, variantClasses }\n}\n"],"mappings":";AAAA;SACSA,Q,uBAET;;AACA,SAASC,QAAT,EAAmBC,KAAnB,QAAgC,KAAhC;SACSC,sB,EAAwBC,Y,6BAEjC;;AAIA,OAAO,MAAMC,eAAe,GAAG,CAC7B,UAD6B,EAE7B,OAF6B,EAG7B,MAH6B,EAI7B,WAJ6B,EAK7B,gBAL6B,EAM7B,gBAN6B,CAAxB;AAgBP,OAAO,SAASC,WAAT,CAAsBC,WAAtB,EAA4CC,IAA5C,EAA0D;EAC/D,sCAEMD,WAAW;IAAA,SAAiB,GAAEC,IAAK;EAAxB,QAFjB;IAAA,SAIiB,GAAEA,IAAK;EAJxB;AAOD;AAED,OAAO,MAAMC,gBAAgB,GAAGL,YAAY,CAAC;EAC3CM,KAAK,EAAEC,MADoC;EAE3CC,OAAO,EAAE;IACPC,IAAI,EAAEF,MADC;IAEPG,OAAO,EAAE,WAFF;IAGPC,SAAS,EAAGC,CAAD,IAAYX,eAAe,CAACY,QAAhB,CAAyBD,CAAzB;EAHhB;AAFkC,CAAD,EAOzC,SAPyC,CAArC;AASP,OAAO,SAASE,UAAT,CACLC,KADK,EAGL;EAAA,IADAX,IACA,uEADOL,sBAAsB,EAC7B;EACA,MAAMiB,cAAc,GAAGnB,QAAQ,CAAC,MAAM;IACpC,MAAM;MAAEW;IAAF,IAAcV,KAAK,CAACiB,KAAD,CAAzB;IACA,OAAQ,GAAEX,IAAK,aAAYI,OAAQ,EAAnC;EACD,CAH8B,CAA/B;EAKA,MAAM;IAAES,YAAF;IAAgBC;EAAhB,IAAgCtB,QAAQ,CAACC,QAAQ,CAAC,MAAM;IAC5D,MAAM;MAAEW,OAAF;MAAWF;IAAX,IAAqBR,KAAK,CAACiB,KAAD,CAAhC;IACA,OAAO;MACL,CAAC,CAAC,WAAD,EAAc,gBAAd,EAAgCF,QAAhC,CAAyCL,OAAzC,IAAoD,YAApD,GAAmE,MAApE,GAA6EF;IADxE,CAAP;EAGD,CALsD,CAAT,CAA9C;EAOA,OAAO;IAAEW,YAAF;IAAgBC,WAAhB;IAA6BF;EAA7B,CAAP;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/click-outside/index.ts"],"names":["attachedRoot","defaultConditional","checkEvent","e","el","binding","checkIsActive","root","ShadowRoot","host","target","elements","value","include","push","some","contains","isActive","closeConditional","directive","handler","_clickOutside","lastMousedownWasOutside","setTimeout","handleShadow","callback","document","ClickOutside","mounted","onClick","onMousedown","app","addEventListener","instance","$","uid","unmounted","removeEventListener"],"mappings":"SAASA,Y;;AAaT,SAASC,kBAAT,GAA+B;AAC7B,SAAO,IAAP;AACD;;AAED,SAASC,UAAT,CAAqBC,CAArB,EAAoCC,EAApC,EAAqDC,OAArD,EAAqG;AACnG;AACA;AACA;AACA;AACA,MAAI,CAACF,CAAD,IAAMG,aAAa,CAACH,CAAD,EAAIE,OAAJ,CAAb,KAA8B,KAAxC,EAA+C,OAAO,KAAP,CALoD,CAOnG;AACA;AACA;;AACA,QAAME,IAAI,GAAGP,YAAY,CAACI,EAAD,CAAzB;AACA,MACE,OAAOI,UAAP,KAAsB,WAAtB,IACAD,IAAI,YAAYC,UADhB,IAEAD,IAAI,CAACE,IAAL,KAAcN,CAAC,CAACO,MAHlB,EAIE,OAAO,KAAP,CAfiG,CAiBnG;AACA;;AACA,QAAMC,QAAQ,GAAG,CAAE,OAAON,OAAO,CAACO,KAAf,KAAyB,QAAzB,IAAqCP,OAAO,CAACO,KAAR,CAAcC,OAApD,KAAiE,MAAM,EAAvE,CAAD,GAAjB,CAnBmG,CAoBnG;;;AACAF,EAAAA,QAAQ,CAACG,IAAT,CAAcV,EAAd,EArBmG,CAuBnG;AACA;AACA;AACA;AACA;;AACA,SAAO,CAACO,QAAQ,CAACI,IAAT,CAAcX,EAAE,IAAIA,EAAJ,oBAAIA,EAAE,CAAEY,QAAJ,CAAab,CAAC,CAACO,MAAf,CAApB,CAAR;AACD;;AAED,SAASJ,aAAT,CAAwBH,CAAxB,EAAuCE,OAAvC,EAA8F;AAC5F,QAAMY,QAAQ,GAAI,OAAOZ,OAAO,CAACO,KAAf,KAAyB,QAAzB,IAAqCP,OAAO,CAACO,KAAR,CAAcM,gBAApD,IAAyEjB,kBAA1F;AAEA,SAAOgB,QAAQ,CAACd,CAAD,CAAf;AACD;;AAED,SAASgB,SAAT,CAAoBhB,CAApB,EAAmCC,EAAnC,EAAoDC,OAApD,EAA2F;AACzF,QAAMe,OAAO,GAAG,OAAOf,OAAO,CAACO,KAAf,KAAyB,UAAzB,GAAsCP,OAAO,CAACO,KAA9C,GAAsDP,OAAO,CAACO,KAAR,CAAcQ,OAApF;AAEAhB,EAAAA,EAAE,CAACiB,aAAH,CAAkBC,uBAAlB,IAA6CpB,UAAU,CAACC,CAAD,EAAIC,EAAJ,EAAQC,OAAR,CAAvD,IAA2EkB,UAAU,CAAC,MAAM;AAC1FjB,IAAAA,aAAa,CAACH,CAAD,EAAIE,OAAJ,CAAb,IAA6Be,OAA7B,IAAwCA,OAAO,CAACjB,CAAD,CAA/C;AACD,GAFoF,EAElF,CAFkF,CAArF;AAGD;;AAED,SAASqB,YAAT,CAAuBpB,EAAvB,EAAwCqB,QAAxC,EAAkE;AAChE,QAAMlB,IAAI,GAAGP,YAAY,CAACI,EAAD,CAAzB;AAEAqB,EAAAA,QAAQ,CAACC,QAAD,CAAR;;AAEA,MAAI,OAAOlB,UAAP,KAAsB,WAAtB,IAAqCD,IAAI,YAAYC,UAAzD,EAAqE;AACnEiB,IAAAA,QAAQ,CAAClB,IAAD,CAAR;AACD;AACF;;AAED,OAAO,MAAMoB,YAAY,GAAG;AAC1B;AACA;AACA;AACA;AACA;AACAC,EAAAA,OAAO,CAAExB,EAAF,EAAmBC,OAAnB,EAA0D;AAC/D,UAAMwB,OAAO,GAAI1B,CAAD,IAAcgB,SAAS,CAAChB,CAAD,EAAkBC,EAAlB,EAAsBC,OAAtB,CAAvC;;AACA,UAAMyB,WAAW,GAAI3B,CAAD,IAAc;AAChCC,MAAAA,EAAE,CAACiB,aAAH,CAAkBC,uBAAlB,GAA4CpB,UAAU,CAACC,CAAD,EAAkBC,EAAlB,EAAsBC,OAAtB,CAAtD;AACD,KAFD;;AAIAmB,IAAAA,YAAY,CAACpB,EAAD,EAAM2B,GAAD,IAAsB;AACrCA,MAAAA,GAAG,CAACC,gBAAJ,CAAqB,OAArB,EAA8BH,OAA9B,EAAuC,IAAvC;AACAE,MAAAA,GAAG,CAACC,gBAAJ,CAAqB,WAArB,EAAkCF,WAAlC,EAA+C,IAA/C;AACD,KAHW,CAAZ;;AAKA,QAAI,CAAC1B,EAAE,CAACiB,aAAR,EAAuB;AACrBjB,MAAAA,EAAE,CAACiB,aAAH,GAAmB;AACjBC,QAAAA,uBAAuB,EAAE;AADR,OAAnB;AAGD;;AAEDlB,IAAAA,EAAE,CAACiB,aAAH,CAAiBhB,OAAO,CAAC4B,QAAR,CAAkBC,CAAlB,CAAoBC,GAArC,IAA4C;AAC1CN,MAAAA,OAD0C;AAE1CC,MAAAA;AAF0C,KAA5C;AAID,GA3ByB;;AA6B1BM,EAAAA,SAAS,CAAEhC,EAAF,EAAmBC,OAAnB,EAA0D;AACjE,QAAI,CAACD,EAAE,CAACiB,aAAR,EAAuB;AAEvBG,IAAAA,YAAY,CAACpB,EAAD,EAAM2B,GAAD,IAAsB;AAAA;;AACrC,UAAI,CAACA,GAAD,IAAQ,uBAAC3B,EAAE,CAACiB,aAAJ,aAAC,kBAAmBhB,OAAO,CAAC4B,QAAR,CAAkBC,CAAlB,CAAoBC,GAAvC,CAAD,CAAZ,EAA0D;AAE1D,YAAM;AAAEN,QAAAA,OAAF;AAAWC,QAAAA;AAAX,UAA2B1B,EAAE,CAACiB,aAAH,CAAiBhB,OAAO,CAAC4B,QAAR,CAAkBC,CAAlB,CAAoBC,GAArC,CAAjC;AAEAJ,MAAAA,GAAG,CAACM,mBAAJ,CAAwB,OAAxB,EAAiCR,OAAjC,EAA0C,IAA1C;AACAE,MAAAA,GAAG,CAACM,mBAAJ,CAAwB,WAAxB,EAAqCP,WAArC,EAAkD,IAAlD;AACD,KAPW,CAAZ;AASA,WAAO1B,EAAE,CAACiB,aAAH,CAAiBhB,OAAO,CAAC4B,QAAR,CAAkBC,CAAlB,CAAoBC,GAArC,CAAP;AACD;;AA1CyB,CAArB;AA6CP,eAAeR,YAAf","sourcesContent":["import { attachedRoot } from '@/util'\nimport type { DirectiveBinding } from 'vue'\n\ninterface ClickOutsideBindingArgs {\n handler: (e: MouseEvent) => void\n closeConditional?: (e: Event) => boolean\n include?: () => HTMLElement[]\n}\n\ninterface ClickOutsideDirectiveBinding extends DirectiveBinding {\n value: ((e: MouseEvent) => void) | ClickOutsideBindingArgs\n}\n\nfunction defaultConditional () {\n return true\n}\n\nfunction checkEvent (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding): boolean {\n // The include element callbacks below can be expensive\n // so we should avoid calling them when we're not active.\n // Explicitly check for false to allow fallback compatibility\n // with non-toggleable components\n if (!e || checkIsActive(e, binding) === false) return false\n\n // If we're clicking inside the shadowroot, then the app root doesn't get the same\n // level of introspection as to _what_ we're clicking. We want to check to see if\n // our target is the shadowroot parent container, and if it is, ignore.\n const root = attachedRoot(el)\n if (\n typeof ShadowRoot !== 'undefined' &&\n root instanceof ShadowRoot &&\n root.host === e.target\n ) return false\n\n // Check if additional elements were passed to be included in check\n // (click must be outside all included elements, if any)\n const elements = ((typeof binding.value === 'object' && binding.value.include) || (() => []))()\n // Add the root element for the component this directive was defined on\n elements.push(el)\n\n // Check if it's a click outside our elements, and then if our callback returns true.\n // Non-toggleable components should take action in their callback and return falsy.\n // Toggleable can return true if it wants to deactivate.\n // Note that, because we're in the capture phase, this callback will occur before\n // the bubbling click event on any outside elements.\n return !elements.some(el => el?.contains(e.target as Node))\n}\n\nfunction checkIsActive (e: MouseEvent, binding: ClickOutsideDirectiveBinding): boolean | void {\n const isActive = (typeof binding.value === 'object' && binding.value.closeConditional) || defaultConditional\n\n return isActive(e)\n}\n\nfunction directive (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const handler = typeof binding.value === 'function' ? binding.value : binding.value.handler\n\n el._clickOutside!.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => {\n checkIsActive(e, binding) && handler && handler(e)\n }, 0)\n}\n\nfunction handleShadow (el: HTMLElement, callback: Function): void {\n const root = attachedRoot(el)\n\n callback(document)\n\n if (typeof ShadowRoot !== 'undefined' && root instanceof ShadowRoot) {\n callback(root)\n }\n}\n\nexport const ClickOutside = {\n // [data-app] may not be found\n // if using bind, inserted makes\n // sure that the root element is\n // available, iOS does not support\n // clicks on body\n mounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const onClick = (e: Event) => directive(e as MouseEvent, el, binding)\n const onMousedown = (e: Event) => {\n el._clickOutside!.lastMousedownWasOutside = checkEvent(e as MouseEvent, el, binding)\n }\n\n handleShadow(el, (app: HTMLElement) => {\n app.addEventListener('click', onClick, true)\n app.addEventListener('mousedown', onMousedown, true)\n })\n\n if (!el._clickOutside) {\n el._clickOutside = {\n lastMousedownWasOutside: true,\n }\n }\n\n el._clickOutside[binding.instance!.$.uid] = {\n onClick,\n onMousedown,\n }\n },\n\n unmounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n if (!el._clickOutside) return\n\n handleShadow(el, (app: HTMLElement) => {\n if (!app || !el._clickOutside?.[binding.instance!.$.uid]) return\n\n const { onClick, onMousedown } = el._clickOutside[binding.instance!.$.uid]!\n\n app.removeEventListener('click', onClick, true)\n app.removeEventListener('mousedown', onMousedown, true)\n })\n\n delete el._clickOutside[binding.instance!.$.uid]\n },\n}\n\nexport default ClickOutside\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["attachedRoot","defaultConditional","checkEvent","e","el","binding","checkIsActive","root","ShadowRoot","host","target","elements","value","include","push","some","contains","isActive","closeConditional","directive","handler","_clickOutside","lastMousedownWasOutside","setTimeout","handleShadow","callback","document","ClickOutside","mounted","onClick","onMousedown","app","addEventListener","instance","$","uid","unmounted","removeEventListener"],"sources":["../../../src/directives/click-outside/index.ts"],"sourcesContent":["import { attachedRoot } from '@/util'\nimport type { DirectiveBinding } from 'vue'\n\ninterface ClickOutsideBindingArgs {\n handler: (e: MouseEvent) => void\n closeConditional?: (e: Event) => boolean\n include?: () => HTMLElement[]\n}\n\ninterface ClickOutsideDirectiveBinding extends DirectiveBinding {\n value: ((e: MouseEvent) => void) | ClickOutsideBindingArgs\n}\n\nfunction defaultConditional () {\n return true\n}\n\nfunction checkEvent (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding): boolean {\n // The include element callbacks below can be expensive\n // so we should avoid calling them when we're not active.\n // Explicitly check for false to allow fallback compatibility\n // with non-toggleable components\n if (!e || checkIsActive(e, binding) === false) return false\n\n // If we're clicking inside the shadowroot, then the app root doesn't get the same\n // level of introspection as to _what_ we're clicking. We want to check to see if\n // our target is the shadowroot parent container, and if it is, ignore.\n const root = attachedRoot(el)\n if (\n typeof ShadowRoot !== 'undefined' &&\n root instanceof ShadowRoot &&\n root.host === e.target\n ) return false\n\n // Check if additional elements were passed to be included in check\n // (click must be outside all included elements, if any)\n const elements = ((typeof binding.value === 'object' && binding.value.include) || (() => []))()\n // Add the root element for the component this directive was defined on\n elements.push(el)\n\n // Check if it's a click outside our elements, and then if our callback returns true.\n // Non-toggleable components should take action in their callback and return falsy.\n // Toggleable can return true if it wants to deactivate.\n // Note that, because we're in the capture phase, this callback will occur before\n // the bubbling click event on any outside elements.\n return !elements.some(el => el?.contains(e.target as Node))\n}\n\nfunction checkIsActive (e: MouseEvent, binding: ClickOutsideDirectiveBinding): boolean | void {\n const isActive = (typeof binding.value === 'object' && binding.value.closeConditional) || defaultConditional\n\n return isActive(e)\n}\n\nfunction directive (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const handler = typeof binding.value === 'function' ? binding.value : binding.value.handler\n\n el._clickOutside!.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => {\n checkIsActive(e, binding) && handler && handler(e)\n }, 0)\n}\n\nfunction handleShadow (el: HTMLElement, callback: Function): void {\n const root = attachedRoot(el)\n\n callback(document)\n\n if (typeof ShadowRoot !== 'undefined' && root instanceof ShadowRoot) {\n callback(root)\n }\n}\n\nexport const ClickOutside = {\n // [data-app] may not be found\n // if using bind, inserted makes\n // sure that the root element is\n // available, iOS does not support\n // clicks on body\n mounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const onClick = (e: Event) => directive(e as MouseEvent, el, binding)\n const onMousedown = (e: Event) => {\n el._clickOutside!.lastMousedownWasOutside = checkEvent(e as MouseEvent, el, binding)\n }\n\n handleShadow(el, (app: HTMLElement) => {\n app.addEventListener('click', onClick, true)\n app.addEventListener('mousedown', onMousedown, true)\n })\n\n if (!el._clickOutside) {\n el._clickOutside = {\n lastMousedownWasOutside: true,\n }\n }\n\n el._clickOutside[binding.instance!.$.uid] = {\n onClick,\n onMousedown,\n }\n },\n\n unmounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n if (!el._clickOutside) return\n\n handleShadow(el, (app: HTMLElement) => {\n if (!app || !el._clickOutside?.[binding.instance!.$.uid]) return\n\n const { onClick, onMousedown } = el._clickOutside[binding.instance!.$.uid]!\n\n app.removeEventListener('click', onClick, true)\n app.removeEventListener('mousedown', onMousedown, true)\n })\n\n delete el._clickOutside[binding.instance!.$.uid]\n },\n}\n\nexport default ClickOutside\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/color/index.ts"],"names":["classToHex","isCssColor","parseGradient","colors","setTextColor","el","color","currentTheme","cssColor","style","caretColor","setBackgroundColor","backgroundColor","borderColor","setBorderColor","modifiers","Object","keys","length","top","borderTopColor","right","borderRightColor","bottom","borderBottomColor","left","borderLeftColor","setGradientColor","gradient","backgroundImage","updateColor","binding","node","context","$vuetify","theme","arg","undefined","value","update","oldValue","Color","bind"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Utilities\nimport {\n classToHex,\n isCssColor,\n parseGradient,\n} from '../../util/colorUtils'\nimport colors from '../../util/colors'\n\n// Types\nimport { VuetifyThemeVariant } from 'types/services/theme'\nimport { VNode, VNodeDirective } from 'vue'\n\ninterface BorderModifiers {\n top?: Boolean\n right?: Boolean\n bottom?: Boolean\n left?: Boolean\n}\n\nfunction setTextColor (\n el: HTMLElement,\n color: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n) {\n const cssColor = !isCssColor(color) ? classToHex(color, colors, currentTheme) : color\n\n el.style.color = cssColor\n el.style.caretColor = cssColor\n}\n\nfunction setBackgroundColor (\n el: HTMLElement,\n color: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n) {\n const cssColor = !isCssColor(color) ? classToHex(color, colors, currentTheme) : color\n\n el.style.backgroundColor = cssColor\n el.style.borderColor = cssColor\n}\n\nfunction setBorderColor (\n el: HTMLElement,\n color: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n modifiers?: BorderModifiers,\n) {\n const cssColor = !isCssColor(color) ? classToHex(color, colors, currentTheme) : color\n\n if (!modifiers || !Object.keys(modifiers).length) {\n el.style.borderColor = cssColor\n return\n }\n\n if (modifiers.top) el.style.borderTopColor = cssColor\n if (modifiers.right) el.style.borderRightColor = cssColor\n if (modifiers.bottom) el.style.borderBottomColor = cssColor\n if (modifiers.left) el.style.borderLeftColor = cssColor\n}\n\nfunction setGradientColor (\n el: HTMLElement,\n gradient: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n) {\n el.style.backgroundImage = `linear-gradient(${\n parseGradient(gradient, colors, currentTheme)\n })`\n}\n\nfunction updateColor (\n el: HTMLElement,\n binding: VNodeDirective,\n node: VNode\n) {\n const currentTheme = node.context!.$vuetify.theme.currentTheme\n\n if (binding.arg === undefined) {\n setBackgroundColor(el, binding.value, currentTheme)\n } else if (binding.arg === 'text') {\n setTextColor(el, binding.value, currentTheme)\n } else if (binding.arg === 'border') {\n setBorderColor(el, binding.value, currentTheme, binding.modifiers)\n } else if (binding.arg === 'gradient') {\n setGradientColor(el, binding.value, currentTheme)\n }\n}\n\nfunction update (\n el: HTMLElement,\n binding: VNodeDirective,\n node: VNode\n) {\n if (binding.value === binding.oldValue) return\n\n updateColor(el, binding, node)\n}\n\nexport const Color = {\n bind: updateColor,\n update,\n}\n\nexport default Color\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["classToHex","isCssColor","parseGradient","colors","setTextColor","el","color","currentTheme","cssColor","style","caretColor","setBackgroundColor","backgroundColor","borderColor","setBorderColor","modifiers","Object","keys","length","top","borderTopColor","right","borderRightColor","bottom","borderBottomColor","left","borderLeftColor","setGradientColor","gradient","backgroundImage","updateColor","binding","node","context","$vuetify","theme","arg","undefined","value","update","oldValue","Color","bind"],"sources":["../../../src/directives/color/index.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Utilities\nimport {\n classToHex,\n isCssColor,\n parseGradient,\n} from '../../util/colorUtils'\nimport colors from '../../util/colors'\n\n// Types\nimport { VuetifyThemeVariant } from 'types/services/theme'\nimport { VNode, VNodeDirective } from 'vue'\n\ninterface BorderModifiers {\n top?: Boolean\n right?: Boolean\n bottom?: Boolean\n left?: Boolean\n}\n\nfunction setTextColor (\n el: HTMLElement,\n color: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n) {\n const cssColor = !isCssColor(color) ? classToHex(color, colors, currentTheme) : color\n\n el.style.color = cssColor\n el.style.caretColor = cssColor\n}\n\nfunction setBackgroundColor (\n el: HTMLElement,\n color: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n) {\n const cssColor = !isCssColor(color) ? classToHex(color, colors, currentTheme) : color\n\n el.style.backgroundColor = cssColor\n el.style.borderColor = cssColor\n}\n\nfunction setBorderColor (\n el: HTMLElement,\n color: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n modifiers?: BorderModifiers,\n) {\n const cssColor = !isCssColor(color) ? classToHex(color, colors, currentTheme) : color\n\n if (!modifiers || !Object.keys(modifiers).length) {\n el.style.borderColor = cssColor\n return\n }\n\n if (modifiers.top) el.style.borderTopColor = cssColor\n if (modifiers.right) el.style.borderRightColor = cssColor\n if (modifiers.bottom) el.style.borderBottomColor = cssColor\n if (modifiers.left) el.style.borderLeftColor = cssColor\n}\n\nfunction setGradientColor (\n el: HTMLElement,\n gradient: string,\n currentTheme: Partial<VuetifyThemeVariant>,\n) {\n el.style.backgroundImage = `linear-gradient(${\n parseGradient(gradient, colors, currentTheme)\n })`\n}\n\nfunction updateColor (\n el: HTMLElement,\n binding: VNodeDirective,\n node: VNode\n) {\n const currentTheme = node.context!.$vuetify.theme.currentTheme\n\n if (binding.arg === undefined) {\n setBackgroundColor(el, binding.value, currentTheme)\n } else if (binding.arg === 'text') {\n setTextColor(el, binding.value, currentTheme)\n } else if (binding.arg === 'border') {\n setBorderColor(el, binding.value, currentTheme, binding.modifiers)\n } else if (binding.arg === 'gradient') {\n setGradientColor(el, binding.value, currentTheme)\n }\n}\n\nfunction update (\n el: HTMLElement,\n binding: VNodeDirective,\n node: VNode\n) {\n if (binding.value === binding.oldValue) return\n\n updateColor(el, binding, node)\n}\n\nexport const Color = {\n bind: updateColor,\n update,\n}\n\nexport default Color\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/directives/index.ts"],"names":["ClickOutside","Intersect","Mutate","Resize","Ripple","Scroll","Touch"],"mappings":"SAASA,Y,qCACT;;SACSC,S;SACAC,M;SACAC,M;SACAC,M;SACAC,M;SACAC,K","sourcesContent":["export { ClickOutside } from './click-outside'\n// export { Color } from './color'\nexport { Intersect } from './intersect'\nexport { Mutate } from './mutate'\nexport { Resize } from './resize'\nexport { Ripple } from './ripple'\nexport { Scroll } from './scroll'\nexport { Touch } from './touch'\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["ClickOutside","Intersect","Mutate","Resize","Ripple","Scroll","Touch"],"sources":["../../src/directives/index.ts"],"sourcesContent":["export { ClickOutside } from './click-outside'\n// export { Color } from './color'\nexport { Intersect } from './intersect'\nexport { Mutate } from './mutate'\nexport { Resize } from './resize'\nexport { Ripple } from './ripple'\nexport { Scroll } from './scroll'\nexport { Touch } from './touch'\n"],"mappings":"SAASA,Y,qCACT;;SACSC,S;SACAC,M;SACAC,M;SACAC,M;SACAC,M;SACAC,K"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/intersect/index.ts"],"names":["SUPPORTS_INTERSECTION","mounted","el","binding","modifiers","value","handler","options","observer","IntersectionObserver","entries","_observe","instance","$","uid","isIntersecting","some","entry","quiet","init","once","unmounted","Object","observe","unobserve","Intersect"],"mappings":"AAAA;SACSA,qB,gCAET;;AAoBA,SAASC,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAqE;AACnE,MAAI,CAACH,qBAAL,EAA4B;AAE5B,QAAMI,SAAS,GAAGD,OAAO,CAACC,SAAR,IAAqB,EAAvC;AACA,QAAMC,KAAK,GAAGF,OAAO,CAACE,KAAtB;AACA,QAAM;AAAEC,IAAAA,OAAF;AAAWC,IAAAA;AAAX,MAAuB,OAAOF,KAAP,KAAiB,QAAjB,GACzBA,KADyB,GAEzB;AAAEC,IAAAA,OAAO,EAAED,KAAX;AAAkBE,IAAAA,OAAO,EAAE;AAA3B,GAFJ;AAIA,QAAMC,QAAQ,GAAG,IAAIC,oBAAJ,CAAyB,YAGrC;AAAA;;AAAA,QAFHC,OAEG,uEAFoC,EAEpC;AAAA,QADHF,QACG;;AACH,UAAMG,QAAQ,mBAAGT,EAAE,CAACS,QAAN,qBAAG,aAAcR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,CAAjB;;AACA,QAAI,CAACH,QAAL,EAAe,OAFZ,CAEmB;;AAEtB,UAAMI,cAAc,GAAGL,OAAO,CAACM,IAAR,CAAaC,KAAK,IAAIA,KAAK,CAACF,cAA5B,CAAvB,CAJG,CAMH;AACA;;AACA,QACET,OAAO,KACL,CAACF,SAAS,CAACc,KAAX,IACAP,QAAQ,CAACQ,IAFJ,CAAP,KAIE,CAACf,SAAS,CAACgB,IAAX,IACAL,cADA,IAEAJ,QAAQ,CAACQ,IANX,CADF,EASE;AACAb,MAAAA,OAAO,CAACS,cAAD,EAAiBL,OAAjB,EAA0BF,QAA1B,CAAP;AACD;;AAED,QAAIO,cAAc,IAAIX,SAAS,CAACgB,IAAhC,EAAsCC,SAAS,CAACnB,EAAD,EAAKC,OAAL,CAAT,CAAtC,KACKQ,QAAQ,CAACQ,IAAT,GAAgB,IAAhB;AACN,GA1BgB,EA0BdZ,OA1Bc,CAAjB;AA4BAL,EAAAA,EAAE,CAACS,QAAH,GAAcW,MAAM,CAACpB,EAAE,CAACS,QAAJ,CAApB;AACAT,EAAAA,EAAE,CAACS,QAAH,CAAaR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,IAAwC;AAAEK,IAAAA,IAAI,EAAE,KAAR;AAAeX,IAAAA;AAAf,GAAxC;AAEAA,EAAAA,QAAQ,CAACe,OAAT,CAAiBrB,EAAjB;AACD;;AAED,SAASmB,SAAT,CAAoBnB,EAApB,EAAqCC,OAArC,EAAuE;AAAA;;AACrE,QAAMoB,OAAO,oBAAGrB,EAAE,CAACS,QAAN,qBAAG,cAAcR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,CAAhB;AACA,MAAI,CAACS,OAAL,EAAc;AAEdA,EAAAA,OAAO,CAACf,QAAR,CAAiBgB,SAAjB,CAA2BtB,EAA3B;AACA,SAAOA,EAAE,CAACS,QAAH,CAAaR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAP;AACD;;AAED,OAAO,MAAMW,SAAuC,GAAG;AACrDxB,EAAAA,OADqD;AAErDoB,EAAAA;AAFqD,CAAhD;AAKP,eAAeI,SAAf","sourcesContent":["// Utils\nimport { SUPPORTS_INTERSECTION } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\ntype ObserveHandler = (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[],\n observer: IntersectionObserver,\n) => void\n\nexport interface ObserveDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value?: ObserveHandler | { handler: ObserveHandler, options?: IntersectionObserverInit }\n modifiers: {\n once?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ObserveDirectiveBinding) {\n if (!SUPPORTS_INTERSECTION) return\n\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { handler, options } = typeof value === 'object'\n ? value\n : { handler: value, options: {} }\n\n const observer = new IntersectionObserver((\n entries: IntersectionObserverEntry[] = [],\n observer: IntersectionObserver\n ) => {\n const _observe = el._observe?.[binding.instance!.$.uid]\n if (!_observe) return // Just in case, should never fire\n\n const isIntersecting = entries.some(entry => entry.isIntersecting)\n\n // If is not quiet or has already been\n // initted, invoke the user callback\n if (\n handler && (\n !modifiers.quiet ||\n _observe.init\n ) && (\n !modifiers.once ||\n isIntersecting ||\n _observe.init\n )\n ) {\n handler(isIntersecting, entries, observer)\n }\n\n if (isIntersecting && modifiers.once) unmounted(el, binding)\n else _observe.init = true\n }, options)\n\n el._observe = Object(el._observe)\n el._observe![binding.instance!.$.uid] = { init: false, observer }\n\n observer.observe(el)\n}\n\nfunction unmounted (el: HTMLElement, binding: ObserveDirectiveBinding) {\n const observe = el._observe?.[binding.instance!.$.uid]\n if (!observe) return\n\n observe.observer.unobserve(el)\n delete el._observe![binding.instance!.$.uid]\n}\n\nexport const Intersect: ObjectDirective<HTMLElement> = {\n mounted,\n unmounted,\n}\n\nexport default Intersect\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["SUPPORTS_INTERSECTION","mounted","el","binding","modifiers","value","handler","options","observer","IntersectionObserver","entries","_observe","instance","$","uid","isIntersecting","some","entry","quiet","init","once","unmounted","Object","observe","unobserve","Intersect"],"sources":["../../../src/directives/intersect/index.ts"],"sourcesContent":["// Utils\nimport { SUPPORTS_INTERSECTION } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\ntype ObserveHandler = (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[],\n observer: IntersectionObserver,\n) => void\n\nexport interface ObserveDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value?: ObserveHandler | { handler: ObserveHandler, options?: IntersectionObserverInit }\n modifiers: {\n once?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ObserveDirectiveBinding) {\n if (!SUPPORTS_INTERSECTION) return\n\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { handler, options } = typeof value === 'object'\n ? value\n : { handler: value, options: {} }\n\n const observer = new IntersectionObserver((\n entries: IntersectionObserverEntry[] = [],\n observer: IntersectionObserver\n ) => {\n const _observe = el._observe?.[binding.instance!.$.uid]\n if (!_observe) return // Just in case, should never fire\n\n const isIntersecting = entries.some(entry => entry.isIntersecting)\n\n // If is not quiet or has already been\n // initted, invoke the user callback\n if (\n handler && (\n !modifiers.quiet ||\n _observe.init\n ) && (\n !modifiers.once ||\n isIntersecting ||\n _observe.init\n )\n ) {\n handler(isIntersecting, entries, observer)\n }\n\n if (isIntersecting && modifiers.once) unmounted(el, binding)\n else _observe.init = true\n }, options)\n\n el._observe = Object(el._observe)\n el._observe![binding.instance!.$.uid] = { init: false, observer }\n\n observer.observe(el)\n}\n\nfunction unmounted (el: HTMLElement, binding: ObserveDirectiveBinding) {\n const observe = el._observe?.[binding.instance!.$.uid]\n if (!observe) return\n\n observe.observer.unobserve(el)\n delete el._observe![binding.instance!.$.uid]\n}\n\nexport const Intersect: ObjectDirective<HTMLElement> = {\n mounted,\n unmounted,\n}\n\nexport default Intersect\n"],"mappings":"AAAA;SACSA,qB,gCAET;;AAoBA,SAASC,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAqE;EACnE,IAAI,CAACH,qBAAL,EAA4B;EAE5B,MAAMI,SAAS,GAAGD,OAAO,CAACC,SAAR,IAAqB,EAAvC;EACA,MAAMC,KAAK,GAAGF,OAAO,CAACE,KAAtB;EACA,MAAM;IAAEC,OAAF;IAAWC;EAAX,IAAuB,OAAOF,KAAP,KAAiB,QAAjB,GACzBA,KADyB,GAEzB;IAAEC,OAAO,EAAED,KAAX;IAAkBE,OAAO,EAAE;EAA3B,CAFJ;EAIA,MAAMC,QAAQ,GAAG,IAAIC,oBAAJ,CAAyB,YAGrC;IAAA;;IAAA,IAFHC,OAEG,uEAFoC,EAEpC;IAAA,IADHF,QACG;;IACH,MAAMG,QAAQ,mBAAGT,EAAE,CAACS,QAAN,qBAAG,aAAcR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,CAAjB;;IACA,IAAI,CAACH,QAAL,EAAe,OAFZ,CAEmB;;IAEtB,MAAMI,cAAc,GAAGL,OAAO,CAACM,IAAR,CAAaC,KAAK,IAAIA,KAAK,CAACF,cAA5B,CAAvB,CAJG,CAMH;IACA;;IACA,IACET,OAAO,KACL,CAACF,SAAS,CAACc,KAAX,IACAP,QAAQ,CAACQ,IAFJ,CAAP,KAIE,CAACf,SAAS,CAACgB,IAAX,IACAL,cADA,IAEAJ,QAAQ,CAACQ,IANX,CADF,EASE;MACAb,OAAO,CAACS,cAAD,EAAiBL,OAAjB,EAA0BF,QAA1B,CAAP;IACD;;IAED,IAAIO,cAAc,IAAIX,SAAS,CAACgB,IAAhC,EAAsCC,SAAS,CAACnB,EAAD,EAAKC,OAAL,CAAT,CAAtC,KACKQ,QAAQ,CAACQ,IAAT,GAAgB,IAAhB;EACN,CA1BgB,EA0BdZ,OA1Bc,CAAjB;EA4BAL,EAAE,CAACS,QAAH,GAAcW,MAAM,CAACpB,EAAE,CAACS,QAAJ,CAApB;EACAT,EAAE,CAACS,QAAH,CAAaR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,IAAwC;IAAEK,IAAI,EAAE,KAAR;IAAeX;EAAf,CAAxC;EAEAA,QAAQ,CAACe,OAAT,CAAiBrB,EAAjB;AACD;;AAED,SAASmB,SAAT,CAAoBnB,EAApB,EAAqCC,OAArC,EAAuE;EAAA;;EACrE,MAAMoB,OAAO,oBAAGrB,EAAE,CAACS,QAAN,qBAAG,cAAcR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,CAAhB;EACA,IAAI,CAACS,OAAL,EAAc;EAEdA,OAAO,CAACf,QAAR,CAAiBgB,SAAjB,CAA2BtB,EAA3B;EACA,OAAOA,EAAE,CAACS,QAAH,CAAaR,OAAO,CAACS,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAP;AACD;;AAED,OAAO,MAAMW,SAAuC,GAAG;EACrDxB,OADqD;EAErDoB;AAFqD,CAAhD;AAKP,eAAeI,SAAf"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/mutate/index.ts"],"names":["mounted","el","binding","modifiers","value","once","immediate","modifierKeys","defaultValue","Object","keys","length","handler","options","attributes","attr","characterData","char","childList","child","subtree","sub","observer","MutationObserver","mutations","unmounted","_mutate","instance","$","uid","observe","disconnect","Mutate"],"mappings":"AAAA;AASA,SAASA,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAsE;AAAA;;AACpE,QAAMC,SAAS,GAAGD,OAAO,CAACC,SAAR,IAAqB,EAAvC;AACA,QAAMC,KAAK,GAAGF,OAAO,CAACE,KAAtB;AACA,QAAM;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,SAAR;AAAmB,OAAGC;AAAtB,MAAuCJ,SAA7C;AACA,QAAMK,YAAY,GAAG,CAACC,MAAM,CAACC,IAAP,CAAYH,YAAZ,EAA0BI,MAAhD;AAEA,QAAM;AAAEC,IAAAA,OAAF;AAAWC,IAAAA;AAAX,MAAuB,OAAOT,KAAP,KAAiB,QAAjB,GACzBA,KADyB,GAEzB;AACAQ,IAAAA,OAAO,EAAER,KADT;AAEAS,IAAAA,OAAO,EAAE;AACPC,MAAAA,UAAU,wBAAEP,YAAF,oBAAEA,YAAY,CAAEQ,IAAhB,iCAAwBP,YAD3B;AAEPQ,MAAAA,aAAa,wBAAET,YAAF,oBAAEA,YAAY,CAAEU,IAAhB,iCAAwBT,YAF9B;AAGPU,MAAAA,SAAS,yBAAEX,YAAF,oBAAEA,YAAY,CAAEY,KAAhB,kCAAyBX,YAH3B;AAIPY,MAAAA,OAAO,uBAAEb,YAAF,oBAAEA,YAAY,CAAEc,GAAhB,gCAAuBb;AAJvB;AAFT,GAFJ;AAYA,QAAMc,QAAQ,GAAG,IAAIC,gBAAJ,CAAqB,YAGjC;AAAA,QAFHC,SAEG,uEAF2B,EAE3B;AAAA,QADHF,QACG;AACHV,IAAAA,OAAO,QAAP,YAAAA,OAAO,CAAGY,SAAH,EAAcF,QAAd,CAAP;AAEA,QAAIjB,IAAJ,EAAUoB,SAAS,CAACxB,EAAD,EAAKC,OAAL,CAAT;AACX,GAPgB,CAAjB;AASA,MAAII,SAAJ,EAAeM,OAAO,QAAP,YAAAA,OAAO,CAAG,EAAH,EAAOU,QAAP,CAAP;AAEfrB,EAAAA,EAAE,CAACyB,OAAH,GAAajB,MAAM,CAACR,EAAE,CAACyB,OAAJ,CAAnB;AACAzB,EAAAA,EAAE,CAACyB,OAAH,CAAYxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAAhC,IAAuC;AAAEP,IAAAA;AAAF,GAAvC;AAEAA,EAAAA,QAAQ,CAACQ,OAAT,CAAiB7B,EAAjB,EAAqBY,OAArB;AACD;;AAED,SAASY,SAAT,CAAoBxB,EAApB,EAAqCC,OAArC,EAAwE;AAAA;;AACtE,MAAI,iBAACD,EAAE,CAACyB,OAAJ,aAAC,YAAaxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAD,CAAJ,EAA4C;;AAE5C5B,EAAAA,EAAE,CAACyB,OAAH,CAAWxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAA/B,EAAqCP,QAArC,CAA8CS,UAA9C;;AACA,SAAO9B,EAAE,CAACyB,OAAH,CAAWxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAA/B,CAAP;AACD;;AAED,OAAO,MAAMG,MAAoC,GAAG;AAClDhC,EAAAA,OADkD;AAElDyB,EAAAA;AAFkD,CAA7C;AAKP,eAAeO,MAAf","sourcesContent":["// Types\nimport type { DirectiveBinding, ObjectDirective } from 'vue'\nimport type { MutationOptions } from '@/composables/mutationObserver'\n\nexport interface MutationDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value: MutationCallback | { handler: MutationCallback, options?: MutationObserverInit }\n modifiers: MutationOptions\n}\n\nfunction mounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { once, immediate, ...modifierKeys } = modifiers\n const defaultValue = !Object.keys(modifierKeys).length\n\n const { handler, options } = typeof value === 'object'\n ? value\n : {\n handler: value,\n options: {\n attributes: modifierKeys?.attr ?? defaultValue,\n characterData: modifierKeys?.char ?? defaultValue,\n childList: modifierKeys?.child ?? defaultValue,\n subtree: modifierKeys?.sub ?? defaultValue,\n },\n }\n\n const observer = new MutationObserver((\n mutations: MutationRecord[] = [],\n observer: MutationObserver\n ) => {\n handler?.(mutations, observer)\n\n if (once) unmounted(el, binding)\n })\n\n if (immediate) handler?.([], observer)\n\n el._mutate = Object(el._mutate)\n el._mutate![binding.instance!.$.uid] = { observer }\n\n observer.observe(el, options)\n}\n\nfunction unmounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n if (!el._mutate?.[binding.instance!.$.uid]) return\n\n el._mutate[binding.instance!.$.uid]!.observer.disconnect()\n delete el._mutate[binding.instance!.$.uid]\n}\n\nexport const Mutate: ObjectDirective<HTMLElement> = {\n mounted,\n unmounted,\n}\n\nexport default Mutate\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["mounted","el","binding","modifiers","value","once","immediate","modifierKeys","defaultValue","Object","keys","length","handler","options","attributes","attr","characterData","char","childList","child","subtree","sub","observer","MutationObserver","mutations","unmounted","_mutate","instance","$","uid","observe","disconnect","Mutate"],"sources":["../../../src/directives/mutate/index.ts"],"sourcesContent":["// Types\nimport type { DirectiveBinding, ObjectDirective } from 'vue'\nimport type { MutationOptions } from '@/composables/mutationObserver'\n\nexport interface MutationDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value: MutationCallback | { handler: MutationCallback, options?: MutationObserverInit }\n modifiers: MutationOptions\n}\n\nfunction mounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { once, immediate, ...modifierKeys } = modifiers\n const defaultValue = !Object.keys(modifierKeys).length\n\n const { handler, options } = typeof value === 'object'\n ? value\n : {\n handler: value,\n options: {\n attributes: modifierKeys?.attr ?? defaultValue,\n characterData: modifierKeys?.char ?? defaultValue,\n childList: modifierKeys?.child ?? defaultValue,\n subtree: modifierKeys?.sub ?? defaultValue,\n },\n }\n\n const observer = new MutationObserver((\n mutations: MutationRecord[] = [],\n observer: MutationObserver\n ) => {\n handler?.(mutations, observer)\n\n if (once) unmounted(el, binding)\n })\n\n if (immediate) handler?.([], observer)\n\n el._mutate = Object(el._mutate)\n el._mutate![binding.instance!.$.uid] = { observer }\n\n observer.observe(el, options)\n}\n\nfunction unmounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n if (!el._mutate?.[binding.instance!.$.uid]) return\n\n el._mutate[binding.instance!.$.uid]!.observer.disconnect()\n delete el._mutate[binding.instance!.$.uid]\n}\n\nexport const Mutate: ObjectDirective<HTMLElement> = {\n mounted,\n unmounted,\n}\n\nexport default Mutate\n"],"mappings":"AAAA;AASA,SAASA,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAsE;EAAA;;EACpE,MAAMC,SAAS,GAAGD,OAAO,CAACC,SAAR,IAAqB,EAAvC;EACA,MAAMC,KAAK,GAAGF,OAAO,CAACE,KAAtB;EACA,MAAM;IAAEC,IAAF;IAAQC,SAAR;IAAmB,GAAGC;EAAtB,IAAuCJ,SAA7C;EACA,MAAMK,YAAY,GAAG,CAACC,MAAM,CAACC,IAAP,CAAYH,YAAZ,EAA0BI,MAAhD;EAEA,MAAM;IAAEC,OAAF;IAAWC;EAAX,IAAuB,OAAOT,KAAP,KAAiB,QAAjB,GACzBA,KADyB,GAEzB;IACAQ,OAAO,EAAER,KADT;IAEAS,OAAO,EAAE;MACPC,UAAU,wBAAEP,YAAF,oBAAEA,YAAY,CAAEQ,IAAhB,iCAAwBP,YAD3B;MAEPQ,aAAa,wBAAET,YAAF,oBAAEA,YAAY,CAAEU,IAAhB,iCAAwBT,YAF9B;MAGPU,SAAS,yBAAEX,YAAF,oBAAEA,YAAY,CAAEY,KAAhB,kCAAyBX,YAH3B;MAIPY,OAAO,uBAAEb,YAAF,oBAAEA,YAAY,CAAEc,GAAhB,gCAAuBb;IAJvB;EAFT,CAFJ;EAYA,MAAMc,QAAQ,GAAG,IAAIC,gBAAJ,CAAqB,YAGjC;IAAA,IAFHC,SAEG,uEAF2B,EAE3B;IAAA,IADHF,QACG;IACHV,OAAO,QAAP,YAAAA,OAAO,CAAGY,SAAH,EAAcF,QAAd,CAAP;IAEA,IAAIjB,IAAJ,EAAUoB,SAAS,CAACxB,EAAD,EAAKC,OAAL,CAAT;EACX,CAPgB,CAAjB;EASA,IAAII,SAAJ,EAAeM,OAAO,QAAP,YAAAA,OAAO,CAAG,EAAH,EAAOU,QAAP,CAAP;EAEfrB,EAAE,CAACyB,OAAH,GAAajB,MAAM,CAACR,EAAE,CAACyB,OAAJ,CAAnB;EACAzB,EAAE,CAACyB,OAAH,CAAYxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAAhC,IAAuC;IAAEP;EAAF,CAAvC;EAEAA,QAAQ,CAACQ,OAAT,CAAiB7B,EAAjB,EAAqBY,OAArB;AACD;;AAED,SAASY,SAAT,CAAoBxB,EAApB,EAAqCC,OAArC,EAAwE;EAAA;;EACtE,IAAI,iBAACD,EAAE,CAACyB,OAAJ,aAAC,YAAaxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAD,CAAJ,EAA4C;;EAE5C5B,EAAE,CAACyB,OAAH,CAAWxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAA/B,EAAqCP,QAArC,CAA8CS,UAA9C;;EACA,OAAO9B,EAAE,CAACyB,OAAH,CAAWxB,OAAO,CAACyB,QAAR,CAAkBC,CAAlB,CAAoBC,GAA/B,CAAP;AACD;;AAED,OAAO,MAAMG,MAAoC,GAAG;EAClDhC,OADkD;EAElDyB;AAFkD,CAA7C;AAKP,eAAeO,MAAf"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/resize/index.ts"],"names":["mounted","el","binding","handler","value","options","passive","modifiers","active","window","addEventListener","_onResize","Object","instance","$","uid","quiet","unmounted","removeEventListener","Resize"],"mappings":"AAUA,SAASA,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAoE;AAAA;;AAClE,QAAMC,OAAO,GAAGD,OAAO,CAACE,KAAxB;AACA,QAAMC,OAAgC,GAAG;AACvCC,IAAAA,OAAO,EAAE,wBAACJ,OAAO,CAACK,SAAT,aAAC,mBAAmBC,MAApB;AAD8B,GAAzC;AAIAC,EAAAA,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkCP,OAAlC,EAA2CE,OAA3C;AAEAJ,EAAAA,EAAE,CAACU,SAAH,GAAeC,MAAM,CAACX,EAAE,CAACU,SAAJ,CAArB;AACAV,EAAAA,EAAE,CAACU,SAAH,CAAcT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,IAAyC;AACvCZ,IAAAA,OADuC;AAEvCE,IAAAA;AAFuC,GAAzC;;AAKA,MAAI,yBAACH,OAAO,CAACK,SAAT,aAAC,oBAAmBS,KAApB,CAAJ,EAA+B;AAC7Bb,IAAAA,OAAO;AACR;AACF;;AAED,SAASc,SAAT,CAAoBhB,EAApB,EAAqCC,OAArC,EAAsE;AAAA;;AACpE,MAAI,mBAACD,EAAE,CAACU,SAAJ,aAAC,cAAeT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAnC,CAAD,CAAJ,EAA8C;AAE9C,QAAM;AAAEZ,IAAAA,OAAF;AAAWE,IAAAA;AAAX,MAAuBJ,EAAE,CAACU,SAAH,CAAaT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAA7B;AAEAN,EAAAA,MAAM,CAACS,mBAAP,CAA2B,QAA3B,EAAqCf,OAArC,EAA8CE,OAA9C;AAEA,SAAOJ,EAAE,CAACU,SAAH,CAAaT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAP;AACD;;AAED,OAAO,MAAMI,MAAM,GAAG;AACpBnB,EAAAA,OADoB;AAEpBiB,EAAAA;AAFoB,CAAf;AAKP,eAAeE,MAAf","sourcesContent":["import type { DirectiveBinding } from 'vue'\n\ninterface ResizeDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value: () => void\n modifiers?: {\n active?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n const handler = binding.value\n const options: AddEventListenerOptions = {\n passive: !binding.modifiers?.active,\n }\n\n window.addEventListener('resize', handler, options)\n\n el._onResize = Object(el._onResize)\n el._onResize![binding.instance!.$.uid] = {\n handler,\n options,\n }\n\n if (!binding.modifiers?.quiet) {\n handler()\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n if (!el._onResize?.[binding.instance!.$.uid]) return\n\n const { handler, options } = el._onResize[binding.instance!.$.uid]!\n\n window.removeEventListener('resize', handler, options)\n\n delete el._onResize[binding.instance!.$.uid]\n}\n\nexport const Resize = {\n mounted,\n unmounted,\n}\n\nexport default Resize\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["mounted","el","binding","handler","value","options","passive","modifiers","active","window","addEventListener","_onResize","Object","instance","$","uid","quiet","unmounted","removeEventListener","Resize"],"sources":["../../../src/directives/resize/index.ts"],"sourcesContent":["import type { DirectiveBinding } from 'vue'\n\ninterface ResizeDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value: () => void\n modifiers?: {\n active?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n const handler = binding.value\n const options: AddEventListenerOptions = {\n passive: !binding.modifiers?.active,\n }\n\n window.addEventListener('resize', handler, options)\n\n el._onResize = Object(el._onResize)\n el._onResize![binding.instance!.$.uid] = {\n handler,\n options,\n }\n\n if (!binding.modifiers?.quiet) {\n handler()\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n if (!el._onResize?.[binding.instance!.$.uid]) return\n\n const { handler, options } = el._onResize[binding.instance!.$.uid]!\n\n window.removeEventListener('resize', handler, options)\n\n delete el._onResize[binding.instance!.$.uid]\n}\n\nexport const Resize = {\n mounted,\n unmounted,\n}\n\nexport default Resize\n"],"mappings":"AAUA,SAASA,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAoE;EAAA;;EAClE,MAAMC,OAAO,GAAGD,OAAO,CAACE,KAAxB;EACA,MAAMC,OAAgC,GAAG;IACvCC,OAAO,EAAE,wBAACJ,OAAO,CAACK,SAAT,aAAC,mBAAmBC,MAApB;EAD8B,CAAzC;EAIAC,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkCP,OAAlC,EAA2CE,OAA3C;EAEAJ,EAAE,CAACU,SAAH,GAAeC,MAAM,CAACX,EAAE,CAACU,SAAJ,CAArB;EACAV,EAAE,CAACU,SAAH,CAAcT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,IAAyC;IACvCZ,OADuC;IAEvCE;EAFuC,CAAzC;;EAKA,IAAI,yBAACH,OAAO,CAACK,SAAT,aAAC,oBAAmBS,KAApB,CAAJ,EAA+B;IAC7Bb,OAAO;EACR;AACF;;AAED,SAASc,SAAT,CAAoBhB,EAApB,EAAqCC,OAArC,EAAsE;EAAA;;EACpE,IAAI,mBAACD,EAAE,CAACU,SAAJ,aAAC,cAAeT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAnC,CAAD,CAAJ,EAA8C;EAE9C,MAAM;IAAEZ,OAAF;IAAWE;EAAX,IAAuBJ,EAAE,CAACU,SAAH,CAAaT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAA7B;EAEAN,MAAM,CAACS,mBAAP,CAA2B,QAA3B,EAAqCf,OAArC,EAA8CE,OAA9C;EAEA,OAAOJ,EAAE,CAACU,SAAH,CAAaT,OAAO,CAACW,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAP;AACD;;AAED,OAAO,MAAMI,MAAM,GAAG;EACpBnB,OADoB;EAEpBiB;AAFoB,CAAf;AAKP,eAAeE,MAAf"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/ripple/index.ts"],"names":["isObject","keyCodes","stopSymbol","Symbol","DELAY_RIPPLE","transform","el","value","style","webkitTransform","opacity","isTouchEvent","e","constructor","name","isKeyboardEvent","calculate","localX","localY","offset","getBoundingClientRect","target","touches","length","clientX","left","clientY","top","radius","scale","_ripple","circle","clientWidth","center","Math","sqrt","clientHeight","centerX","centerY","x","y","ripples","show","enabled","container","document","createElement","animation","appendChild","className","class","size","width","height","computed","window","getComputedStyle","position","dataset","previousPosition","classList","add","activated","String","performance","now","setTimeout","remove","hide","getElementsByClassName","isHiding","diff","Number","delay","max","parentNode","removeChild","isRippleEnabled","rippleShow","element","currentTarget","touched","isTouch","centered","showTimerCommit","showTimer","rippleStop","rippleHide","clearTimeout","type","rippleCancelShow","keyboardRipple","keyboardRippleShow","keyCode","enter","space","keyboardRippleHide","focusRippleHide","updateRipple","binding","wasEnabled","modifiers","stop","addEventListener","passive","removeListeners","removeEventListener","mounted","unmounted","updated","oldValue","Ripple"],"mappings":"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","sourcesContent":["// Styles\nimport './VRipple.sass'\n\n// Utilities\nimport { isObject, keyCodes } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\nconst stopSymbol = Symbol('rippleStop')\n\ntype VuetifyRippleEvent = (MouseEvent | TouchEvent | KeyboardEvent) & { [stopSymbol]?: boolean }\n\nconst DELAY_RIPPLE = 80\n\nfunction transform (el: HTMLElement, value: string) {\n el.style.transform = value\n el.style.webkitTransform = value\n}\n\nfunction opacity (el: HTMLElement, value: number) {\n el.style.opacity = `calc(${value} * var(--v-theme-overlay-multiplier))`\n}\n\ninterface RippleOptions {\n class?: string\n center?: boolean\n circle?: boolean\n}\n\nexport interface RippleDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value?: boolean | { class: string }\n modifiers: {\n center?: boolean\n circle?: boolean\n stop?: boolean\n }\n}\n\nfunction isTouchEvent (e: VuetifyRippleEvent): e is TouchEvent {\n return e.constructor.name === 'TouchEvent'\n}\n\nfunction isKeyboardEvent (e: VuetifyRippleEvent): e is KeyboardEvent {\n return e.constructor.name === 'KeyboardEvent'\n}\n\nconst calculate = (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n) => {\n let localX = 0\n let localY = 0\n\n if (!isKeyboardEvent(e)) {\n const offset = el.getBoundingClientRect()\n const target = isTouchEvent(e) ? e.touches[e.touches.length - 1] : e\n\n localX = target.clientX - offset.left\n localY = target.clientY - offset.top\n }\n\n let radius = 0\n let scale = 0.3\n if (el._ripple?.circle) {\n scale = 0.15\n radius = el.clientWidth / 2\n radius = value.center ? radius : radius + Math.sqrt((localX - radius) ** 2 + (localY - radius) ** 2) / 4\n } else {\n radius = Math.sqrt(el.clientWidth ** 2 + el.clientHeight ** 2) / 2\n }\n\n const centerX = `${(el.clientWidth - (radius * 2)) / 2}px`\n const centerY = `${(el.clientHeight - (radius * 2)) / 2}px`\n\n const x = value.center ? centerX : `${localX - radius}px`\n const y = value.center ? centerY : `${localY - radius}px`\n\n return { radius, scale, x, y, centerX, centerY }\n}\n\nconst ripples = {\n /* eslint-disable max-statements */\n show (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n ) {\n if (!el?._ripple?.enabled) {\n return\n }\n\n const container = document.createElement('span')\n const animation = document.createElement('span')\n\n container.appendChild(animation)\n container.className = 'v-ripple__container'\n\n if (value.class) {\n container.className += ` ${value.class}`\n }\n\n const { radius, scale, x, y, centerX, centerY } = calculate(e, el, value)\n\n const size = `${radius * 2}px`\n animation.className = 'v-ripple__animation'\n animation.style.width = size\n animation.style.height = size\n\n el.appendChild(container)\n\n const computed = window.getComputedStyle(el)\n if (computed && computed.position === 'static') {\n el.style.position = 'relative'\n el.dataset.previousPosition = 'static'\n }\n\n animation.classList.add('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--visible')\n transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`)\n opacity(animation, 0)\n animation.dataset.activated = String(performance.now())\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--in')\n transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`)\n opacity(animation, 0.08)\n }, 0)\n },\n\n hide (el: HTMLElement | null) {\n if (!el?._ripple?.enabled) return\n\n const ripples = el.getElementsByClassName('v-ripple__animation')\n\n if (ripples.length === 0) return\n const animation = ripples[ripples.length - 1]\n\n if (animation.dataset.isHiding) return\n else animation.dataset.isHiding = 'true'\n\n const diff = performance.now() - Number(animation.dataset.activated)\n const delay = Math.max(250 - diff, 0)\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--in')\n animation.classList.add('v-ripple__animation--out')\n opacity(animation, 0)\n\n setTimeout(() => {\n const ripples = el.getElementsByClassName('v-ripple__animation')\n if (ripples.length === 1 && el.dataset.previousPosition) {\n el.style.position = el.dataset.previousPosition\n delete el.dataset.previousPosition\n }\n\n animation.parentNode && el.removeChild(animation.parentNode)\n }, 300)\n }, delay)\n },\n}\n\nfunction isRippleEnabled (value: any): value is true {\n return typeof value === 'undefined' || !!value\n}\n\nfunction rippleShow (e: VuetifyRippleEvent) {\n const value: RippleOptions = {}\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element?._ripple || element._ripple.touched || e[stopSymbol]) return\n\n // Don't allow the event to trigger ripples on any other elements\n e[stopSymbol] = true\n\n if (isTouchEvent(e)) {\n element._ripple.touched = true\n element._ripple.isTouch = true\n } else {\n // It's possible for touch events to fire\n // as mouse events on Android/iOS, this\n // will skip the event call if it has\n // already been registered as touch\n if (element._ripple.isTouch) return\n }\n\n value.center = element._ripple.centered || isKeyboardEvent(e)\n if (element._ripple.class) {\n value.class = element._ripple.class\n }\n\n if (isTouchEvent(e)) {\n // already queued that shows or hides the ripple\n if (element._ripple.showTimerCommit) return\n\n element._ripple.showTimerCommit = () => {\n ripples.show(e, element, value)\n }\n element._ripple.showTimer = window.setTimeout(() => {\n if (element?._ripple?.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n }\n }, DELAY_RIPPLE)\n } else {\n ripples.show(e, element, value)\n }\n}\n\nfunction rippleStop (e: VuetifyRippleEvent) {\n e[stopSymbol] = true\n}\n\nfunction rippleHide (e: Event) {\n const element = e.currentTarget as HTMLElement | null\n if (!element || !element._ripple) return\n\n window.clearTimeout(element._ripple.showTimer)\n\n // The touch interaction occurs before the show timer is triggered.\n // We still want to show ripple effect.\n if (e.type === 'touchend' && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n\n // re-queue ripple hiding\n element._ripple.showTimer = window.setTimeout(() => {\n rippleHide(e)\n })\n return\n }\n\n window.setTimeout(() => {\n if (element._ripple) {\n element._ripple.touched = false\n }\n })\n ripples.hide(element)\n}\n\nfunction rippleCancelShow (e: MouseEvent | TouchEvent) {\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element || !element._ripple) return\n\n if (element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit = null\n }\n\n window.clearTimeout(element._ripple.showTimer)\n}\n\nlet keyboardRipple = false\n\nfunction keyboardRippleShow (e: KeyboardEvent) {\n if (!keyboardRipple && (e.keyCode === keyCodes.enter || e.keyCode === keyCodes.space)) {\n keyboardRipple = true\n rippleShow(e)\n }\n}\n\nfunction keyboardRippleHide (e: KeyboardEvent) {\n keyboardRipple = false\n rippleHide(e)\n}\n\nfunction focusRippleHide (e: FocusEvent) {\n if (keyboardRipple) {\n keyboardRipple = false\n rippleHide(e)\n }\n}\n\nfunction updateRipple (el: HTMLElement, binding: RippleDirectiveBinding, wasEnabled: boolean) {\n const { value, modifiers } = binding\n const enabled = isRippleEnabled(value)\n if (!enabled) {\n ripples.hide(el)\n }\n\n el._ripple = el._ripple ?? {}\n el._ripple.enabled = enabled\n el._ripple.centered = modifiers.center\n el._ripple.circle = modifiers.circle\n if (isObject(value) && value.class) {\n el._ripple.class = value.class\n }\n\n if (enabled && !wasEnabled) {\n if (modifiers.stop) {\n el.addEventListener('touchstart', rippleStop, { passive: true })\n el.addEventListener('mousedown', rippleStop)\n return\n }\n\n el.addEventListener('touchstart', rippleShow, { passive: true })\n el.addEventListener('touchend', rippleHide, { passive: true })\n el.addEventListener('touchmove', rippleCancelShow, { passive: true })\n el.addEventListener('touchcancel', rippleHide)\n\n el.addEventListener('mousedown', rippleShow)\n el.addEventListener('mouseup', rippleHide)\n el.addEventListener('mouseleave', rippleHide)\n\n el.addEventListener('keydown', keyboardRippleShow)\n el.addEventListener('keyup', keyboardRippleHide)\n\n el.addEventListener('blur', focusRippleHide)\n\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, { passive: true })\n } else if (!enabled && wasEnabled) {\n removeListeners(el)\n }\n}\n\nfunction removeListeners (el: HTMLElement) {\n el.removeEventListener('mousedown', rippleShow)\n el.removeEventListener('touchstart', rippleShow)\n el.removeEventListener('touchend', rippleHide)\n el.removeEventListener('touchmove', rippleCancelShow)\n el.removeEventListener('touchcancel', rippleHide)\n el.removeEventListener('mouseup', rippleHide)\n el.removeEventListener('mouseleave', rippleHide)\n el.removeEventListener('keydown', keyboardRippleShow)\n el.removeEventListener('keyup', keyboardRippleHide)\n el.removeEventListener('dragstart', rippleHide)\n el.removeEventListener('blur', focusRippleHide)\n}\n\nfunction mounted (el: HTMLElement, binding: DirectiveBinding) {\n updateRipple(el, binding, false)\n}\n\nfunction unmounted (el: HTMLElement) {\n delete el._ripple\n removeListeners(el)\n}\n\nfunction updated (el: HTMLElement, binding: DirectiveBinding) {\n if (binding.value === binding.oldValue) {\n return\n }\n\n const wasEnabled = isRippleEnabled(binding.oldValue)\n updateRipple(el, binding, wasEnabled)\n}\n\nexport const Ripple: ObjectDirective = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Ripple\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["isObject","keyCodes","stopSymbol","Symbol","DELAY_RIPPLE","transform","el","value","style","webkitTransform","opacity","isTouchEvent","e","constructor","name","isKeyboardEvent","calculate","localX","localY","offset","getBoundingClientRect","target","touches","length","clientX","left","clientY","top","radius","scale","_ripple","circle","clientWidth","center","Math","sqrt","clientHeight","centerX","centerY","x","y","ripples","show","enabled","container","document","createElement","animation","appendChild","className","class","size","width","height","computed","window","getComputedStyle","position","dataset","previousPosition","classList","add","activated","String","performance","now","setTimeout","remove","hide","getElementsByClassName","isHiding","diff","Number","delay","max","parentNode","removeChild","isRippleEnabled","rippleShow","element","currentTarget","touched","isTouch","centered","showTimerCommit","showTimer","rippleStop","rippleHide","clearTimeout","type","rippleCancelShow","keyboardRipple","keyboardRippleShow","keyCode","enter","space","keyboardRippleHide","focusRippleHide","updateRipple","binding","wasEnabled","modifiers","stop","addEventListener","passive","removeListeners","removeEventListener","mounted","unmounted","updated","oldValue","Ripple"],"sources":["../../../src/directives/ripple/index.ts"],"sourcesContent":["// Styles\nimport './VRipple.sass'\n\n// Utilities\nimport { isObject, keyCodes } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\nconst stopSymbol = Symbol('rippleStop')\n\ntype VuetifyRippleEvent = (MouseEvent | TouchEvent | KeyboardEvent) & { [stopSymbol]?: boolean }\n\nconst DELAY_RIPPLE = 80\n\nfunction transform (el: HTMLElement, value: string) {\n el.style.transform = value\n el.style.webkitTransform = value\n}\n\nfunction opacity (el: HTMLElement, value: number) {\n el.style.opacity = `calc(${value} * var(--v-theme-overlay-multiplier))`\n}\n\ninterface RippleOptions {\n class?: string\n center?: boolean\n circle?: boolean\n}\n\nexport interface RippleDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value?: boolean | { class: string }\n modifiers: {\n center?: boolean\n circle?: boolean\n stop?: boolean\n }\n}\n\nfunction isTouchEvent (e: VuetifyRippleEvent): e is TouchEvent {\n return e.constructor.name === 'TouchEvent'\n}\n\nfunction isKeyboardEvent (e: VuetifyRippleEvent): e is KeyboardEvent {\n return e.constructor.name === 'KeyboardEvent'\n}\n\nconst calculate = (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n) => {\n let localX = 0\n let localY = 0\n\n if (!isKeyboardEvent(e)) {\n const offset = el.getBoundingClientRect()\n const target = isTouchEvent(e) ? e.touches[e.touches.length - 1] : e\n\n localX = target.clientX - offset.left\n localY = target.clientY - offset.top\n }\n\n let radius = 0\n let scale = 0.3\n if (el._ripple?.circle) {\n scale = 0.15\n radius = el.clientWidth / 2\n radius = value.center ? radius : radius + Math.sqrt((localX - radius) ** 2 + (localY - radius) ** 2) / 4\n } else {\n radius = Math.sqrt(el.clientWidth ** 2 + el.clientHeight ** 2) / 2\n }\n\n const centerX = `${(el.clientWidth - (radius * 2)) / 2}px`\n const centerY = `${(el.clientHeight - (radius * 2)) / 2}px`\n\n const x = value.center ? centerX : `${localX - radius}px`\n const y = value.center ? centerY : `${localY - radius}px`\n\n return { radius, scale, x, y, centerX, centerY }\n}\n\nconst ripples = {\n /* eslint-disable max-statements */\n show (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n ) {\n if (!el?._ripple?.enabled) {\n return\n }\n\n const container = document.createElement('span')\n const animation = document.createElement('span')\n\n container.appendChild(animation)\n container.className = 'v-ripple__container'\n\n if (value.class) {\n container.className += ` ${value.class}`\n }\n\n const { radius, scale, x, y, centerX, centerY } = calculate(e, el, value)\n\n const size = `${radius * 2}px`\n animation.className = 'v-ripple__animation'\n animation.style.width = size\n animation.style.height = size\n\n el.appendChild(container)\n\n const computed = window.getComputedStyle(el)\n if (computed && computed.position === 'static') {\n el.style.position = 'relative'\n el.dataset.previousPosition = 'static'\n }\n\n animation.classList.add('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--visible')\n transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`)\n opacity(animation, 0)\n animation.dataset.activated = String(performance.now())\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--in')\n transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`)\n opacity(animation, 0.08)\n }, 0)\n },\n\n hide (el: HTMLElement | null) {\n if (!el?._ripple?.enabled) return\n\n const ripples = el.getElementsByClassName('v-ripple__animation')\n\n if (ripples.length === 0) return\n const animation = ripples[ripples.length - 1]\n\n if (animation.dataset.isHiding) return\n else animation.dataset.isHiding = 'true'\n\n const diff = performance.now() - Number(animation.dataset.activated)\n const delay = Math.max(250 - diff, 0)\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--in')\n animation.classList.add('v-ripple__animation--out')\n opacity(animation, 0)\n\n setTimeout(() => {\n const ripples = el.getElementsByClassName('v-ripple__animation')\n if (ripples.length === 1 && el.dataset.previousPosition) {\n el.style.position = el.dataset.previousPosition\n delete el.dataset.previousPosition\n }\n\n animation.parentNode && el.removeChild(animation.parentNode)\n }, 300)\n }, delay)\n },\n}\n\nfunction isRippleEnabled (value: any): value is true {\n return typeof value === 'undefined' || !!value\n}\n\nfunction rippleShow (e: VuetifyRippleEvent) {\n const value: RippleOptions = {}\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element?._ripple || element._ripple.touched || e[stopSymbol]) return\n\n // Don't allow the event to trigger ripples on any other elements\n e[stopSymbol] = true\n\n if (isTouchEvent(e)) {\n element._ripple.touched = true\n element._ripple.isTouch = true\n } else {\n // It's possible for touch events to fire\n // as mouse events on Android/iOS, this\n // will skip the event call if it has\n // already been registered as touch\n if (element._ripple.isTouch) return\n }\n\n value.center = element._ripple.centered || isKeyboardEvent(e)\n if (element._ripple.class) {\n value.class = element._ripple.class\n }\n\n if (isTouchEvent(e)) {\n // already queued that shows or hides the ripple\n if (element._ripple.showTimerCommit) return\n\n element._ripple.showTimerCommit = () => {\n ripples.show(e, element, value)\n }\n element._ripple.showTimer = window.setTimeout(() => {\n if (element?._ripple?.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n }\n }, DELAY_RIPPLE)\n } else {\n ripples.show(e, element, value)\n }\n}\n\nfunction rippleStop (e: VuetifyRippleEvent) {\n e[stopSymbol] = true\n}\n\nfunction rippleHide (e: Event) {\n const element = e.currentTarget as HTMLElement | null\n if (!element || !element._ripple) return\n\n window.clearTimeout(element._ripple.showTimer)\n\n // The touch interaction occurs before the show timer is triggered.\n // We still want to show ripple effect.\n if (e.type === 'touchend' && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n\n // re-queue ripple hiding\n element._ripple.showTimer = window.setTimeout(() => {\n rippleHide(e)\n })\n return\n }\n\n window.setTimeout(() => {\n if (element._ripple) {\n element._ripple.touched = false\n }\n })\n ripples.hide(element)\n}\n\nfunction rippleCancelShow (e: MouseEvent | TouchEvent) {\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element || !element._ripple) return\n\n if (element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit = null\n }\n\n window.clearTimeout(element._ripple.showTimer)\n}\n\nlet keyboardRipple = false\n\nfunction keyboardRippleShow (e: KeyboardEvent) {\n if (!keyboardRipple && (e.keyCode === keyCodes.enter || e.keyCode === keyCodes.space)) {\n keyboardRipple = true\n rippleShow(e)\n }\n}\n\nfunction keyboardRippleHide (e: KeyboardEvent) {\n keyboardRipple = false\n rippleHide(e)\n}\n\nfunction focusRippleHide (e: FocusEvent) {\n if (keyboardRipple) {\n keyboardRipple = false\n rippleHide(e)\n }\n}\n\nfunction updateRipple (el: HTMLElement, binding: RippleDirectiveBinding, wasEnabled: boolean) {\n const { value, modifiers } = binding\n const enabled = isRippleEnabled(value)\n if (!enabled) {\n ripples.hide(el)\n }\n\n el._ripple = el._ripple ?? {}\n el._ripple.enabled = enabled\n el._ripple.centered = modifiers.center\n el._ripple.circle = modifiers.circle\n if (isObject(value) && value.class) {\n el._ripple.class = value.class\n }\n\n if (enabled && !wasEnabled) {\n if (modifiers.stop) {\n el.addEventListener('touchstart', rippleStop, { passive: true })\n el.addEventListener('mousedown', rippleStop)\n return\n }\n\n el.addEventListener('touchstart', rippleShow, { passive: true })\n el.addEventListener('touchend', rippleHide, { passive: true })\n el.addEventListener('touchmove', rippleCancelShow, { passive: true })\n el.addEventListener('touchcancel', rippleHide)\n\n el.addEventListener('mousedown', rippleShow)\n el.addEventListener('mouseup', rippleHide)\n el.addEventListener('mouseleave', rippleHide)\n\n el.addEventListener('keydown', keyboardRippleShow)\n el.addEventListener('keyup', keyboardRippleHide)\n\n el.addEventListener('blur', focusRippleHide)\n\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, { passive: true })\n } else if (!enabled && wasEnabled) {\n removeListeners(el)\n }\n}\n\nfunction removeListeners (el: HTMLElement) {\n el.removeEventListener('mousedown', rippleShow)\n el.removeEventListener('touchstart', rippleShow)\n el.removeEventListener('touchend', rippleHide)\n el.removeEventListener('touchmove', rippleCancelShow)\n el.removeEventListener('touchcancel', rippleHide)\n el.removeEventListener('mouseup', rippleHide)\n el.removeEventListener('mouseleave', rippleHide)\n el.removeEventListener('keydown', keyboardRippleShow)\n el.removeEventListener('keyup', keyboardRippleHide)\n el.removeEventListener('dragstart', rippleHide)\n el.removeEventListener('blur', focusRippleHide)\n}\n\nfunction mounted (el: HTMLElement, binding: DirectiveBinding) {\n updateRipple(el, binding, false)\n}\n\nfunction unmounted (el: HTMLElement) {\n delete el._ripple\n removeListeners(el)\n}\n\nfunction updated (el: HTMLElement, binding: DirectiveBinding) {\n if (binding.value === binding.oldValue) {\n return\n }\n\n const wasEnabled = isRippleEnabled(binding.oldValue)\n updateRipple(el, binding, wasEnabled)\n}\n\nexport const Ripple: ObjectDirective = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Ripple\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/scroll/index.ts"],"names":["mounted","el","binding","self","modifiers","value","options","passive","handler","target","arg","document","querySelector","window","addEventListener","_onScroll","Object","instance","$","uid","undefined","unmounted","removeEventListener","updated","oldValue","Scroll"],"mappings":"AAYA,SAASA,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAoE;AAAA;;AAClE,QAAM;AAAEC,IAAAA,IAAI,GAAG;AAAT,4BAAmBD,OAAO,CAACE,SAA3B,iCAAwC,EAA9C;AACA,QAAMC,KAAK,GAAGH,OAAO,CAACG,KAAtB;AACA,QAAMC,OAAO,GAAI,OAAOD,KAAP,KAAiB,QAAjB,IAA6BA,KAAK,CAACC,OAApC,IAAgD;AAAEC,IAAAA,OAAO,EAAE;AAAX,GAAhE;AACA,QAAMC,OAAO,GAAG,OAAOH,KAAP,KAAiB,UAAjB,IAA+B,iBAAiBA,KAAhD,GAAwDA,KAAxD,GAAgEA,KAAK,CAACG,OAAtF;AAEA,QAAMC,MAAM,GAAGN,IAAI,GACfF,EADe,GAEfC,OAAO,CAACQ,GAAR,GACEC,QAAQ,CAACC,aAAT,CAAuBV,OAAO,CAACQ,GAA/B,CADF,GAEEG,MAJN;AAMA,MAAI,CAACJ,MAAL,EAAa;AAEbA,EAAAA,MAAM,CAACK,gBAAP,CAAwB,QAAxB,EAAkCN,OAAlC,EAA2CF,OAA3C;AAEAL,EAAAA,EAAE,CAACc,SAAH,GAAeC,MAAM,CAACf,EAAE,CAACc,SAAJ,CAArB;AACAd,EAAAA,EAAE,CAACc,SAAH,CAAcb,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,IAAyC;AACvCX,IAAAA,OADuC;AAEvCF,IAAAA,OAFuC;AAGvC;AACAG,IAAAA,MAAM,EAAEN,IAAI,GAAGiB,SAAH,GAAeX;AAJY,GAAzC;AAMD;;AAED,SAASY,SAAT,CAAoBpB,EAApB,EAAqCC,OAArC,EAAsE;AAAA;;AACpE,MAAI,mBAACD,EAAE,CAACc,SAAJ,aAAC,cAAeb,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAnC,CAAD,CAAJ,EAA8C;AAE9C,QAAM;AAAEX,IAAAA,OAAF;AAAWF,IAAAA,OAAX;AAAoBG,IAAAA,MAAM,GAAGR;AAA7B,MAAoCA,EAAE,CAACc,SAAH,CAAab,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAA1C;AAEAV,EAAAA,MAAM,CAACa,mBAAP,CAA2B,QAA3B,EAAqCd,OAArC,EAA8CF,OAA9C;AACA,SAAOL,EAAE,CAACc,SAAH,CAAab,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAP;AACD;;AAED,SAASI,OAAT,CAAkBtB,EAAlB,EAAmCC,OAAnC,EAAoE;AAClE,MAAIA,OAAO,CAACG,KAAR,KAAkBH,OAAO,CAACsB,QAA9B,EAAwC;AAExCH,EAAAA,SAAS,CAACpB,EAAD,EAAKC,OAAL,CAAT;AACAF,EAAAA,OAAO,CAACC,EAAD,EAAKC,OAAL,CAAP;AACD;;AAED,OAAO,MAAMuB,MAAM,GAAG;AACpBzB,EAAAA,OADoB;AAEpBqB,EAAAA,SAFoB;AAGpBE,EAAAA;AAHoB,CAAf;AAMP,eAAeE,MAAf","sourcesContent":["import type { DirectiveBinding } from 'vue'\n\ninterface ScrollDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value: EventListener | {\n handler: EventListener\n options?: AddEventListenerOptions\n } | EventListenerObject & { options?: AddEventListenerOptions }\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n const { self = false } = binding.modifiers ?? {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || { passive: true }\n const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = Object(el._onScroll)\n el._onScroll![binding.instance!.$.uid] = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (!el._onScroll?.[binding.instance!.$.uid]) return\n\n const { handler, options, target = el } = el._onScroll[binding.instance!.$.uid]!\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll[binding.instance!.$.uid]\n}\n\nfunction updated (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (binding.value === binding.oldValue) return\n\n unmounted(el, binding)\n mounted(el, binding)\n}\n\nexport const Scroll = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Scroll\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["mounted","el","binding","self","modifiers","value","options","passive","handler","target","arg","document","querySelector","window","addEventListener","_onScroll","Object","instance","$","uid","undefined","unmounted","removeEventListener","updated","oldValue","Scroll"],"sources":["../../../src/directives/scroll/index.ts"],"sourcesContent":["import type { DirectiveBinding } from 'vue'\n\ninterface ScrollDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value: EventListener | {\n handler: EventListener\n options?: AddEventListenerOptions\n } | EventListenerObject & { options?: AddEventListenerOptions }\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n const { self = false } = binding.modifiers ?? {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || { passive: true }\n const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = Object(el._onScroll)\n el._onScroll![binding.instance!.$.uid] = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (!el._onScroll?.[binding.instance!.$.uid]) return\n\n const { handler, options, target = el } = el._onScroll[binding.instance!.$.uid]!\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll[binding.instance!.$.uid]\n}\n\nfunction updated (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (binding.value === binding.oldValue) return\n\n unmounted(el, binding)\n mounted(el, binding)\n}\n\nexport const Scroll = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Scroll\n"],"mappings":"AAYA,SAASA,OAAT,CAAkBC,EAAlB,EAAmCC,OAAnC,EAAoE;EAAA;;EAClE,MAAM;IAAEC,IAAI,GAAG;EAAT,0BAAmBD,OAAO,CAACE,SAA3B,iCAAwC,EAA9C;EACA,MAAMC,KAAK,GAAGH,OAAO,CAACG,KAAtB;EACA,MAAMC,OAAO,GAAI,OAAOD,KAAP,KAAiB,QAAjB,IAA6BA,KAAK,CAACC,OAApC,IAAgD;IAAEC,OAAO,EAAE;EAAX,CAAhE;EACA,MAAMC,OAAO,GAAG,OAAOH,KAAP,KAAiB,UAAjB,IAA+B,iBAAiBA,KAAhD,GAAwDA,KAAxD,GAAgEA,KAAK,CAACG,OAAtF;EAEA,MAAMC,MAAM,GAAGN,IAAI,GACfF,EADe,GAEfC,OAAO,CAACQ,GAAR,GACEC,QAAQ,CAACC,aAAT,CAAuBV,OAAO,CAACQ,GAA/B,CADF,GAEEG,MAJN;EAMA,IAAI,CAACJ,MAAL,EAAa;EAEbA,MAAM,CAACK,gBAAP,CAAwB,QAAxB,EAAkCN,OAAlC,EAA2CF,OAA3C;EAEAL,EAAE,CAACc,SAAH,GAAeC,MAAM,CAACf,EAAE,CAACc,SAAJ,CAArB;EACAd,EAAE,CAACc,SAAH,CAAcb,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAlC,IAAyC;IACvCX,OADuC;IAEvCF,OAFuC;IAGvC;IACAG,MAAM,EAAEN,IAAI,GAAGiB,SAAH,GAAeX;EAJY,CAAzC;AAMD;;AAED,SAASY,SAAT,CAAoBpB,EAApB,EAAqCC,OAArC,EAAsE;EAAA;;EACpE,IAAI,mBAACD,EAAE,CAACc,SAAJ,aAAC,cAAeb,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAnC,CAAD,CAAJ,EAA8C;EAE9C,MAAM;IAAEX,OAAF;IAAWF,OAAX;IAAoBG,MAAM,GAAGR;EAA7B,IAAoCA,EAAE,CAACc,SAAH,CAAab,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAA1C;EAEAV,MAAM,CAACa,mBAAP,CAA2B,QAA3B,EAAqCd,OAArC,EAA8CF,OAA9C;EACA,OAAOL,EAAE,CAACc,SAAH,CAAab,OAAO,CAACe,QAAR,CAAkBC,CAAlB,CAAoBC,GAAjC,CAAP;AACD;;AAED,SAASI,OAAT,CAAkBtB,EAAlB,EAAmCC,OAAnC,EAAoE;EAClE,IAAIA,OAAO,CAACG,KAAR,KAAkBH,OAAO,CAACsB,QAA9B,EAAwC;EAExCH,SAAS,CAACpB,EAAD,EAAKC,OAAL,CAAT;EACAF,OAAO,CAACC,EAAD,EAAKC,OAAL,CAAP;AACD;;AAED,OAAO,MAAMuB,MAAM,GAAG;EACpBzB,OADoB;EAEpBqB,SAFoB;EAGpBE;AAHoB,CAAf;AAMP,eAAeE,MAAf"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/touch/index.ts"],"names":["keys","handleGesture","wrapper","touchstartX","touchendX","touchstartY","touchendY","dirRatio","minDistance","offsetX","offsetY","Math","abs","left","right","up","down","touchstart","event","touch","changedTouches","clientX","clientY","start","originalEvent","touchend","end","touchmove","touchmoveX","touchmoveY","move","createHandlers","value","e","mounted","el","binding","target","parent","parentElement","options","passive","uid","instance","$","handlers","_touchHandlers","Object","create","forEach","eventName","addEventListener","unmounted","removeEventListener","Touch"],"mappings":"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","sourcesContent":["// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\n// Utilities\nimport { keys } from '@/util'\n\nexport interface TouchHandlers {\n start?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n end?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n move?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n left?: (wrapper: TouchWrapper) => void\n right?: (wrapper: TouchWrapper) => void\n up?: (wrapper: TouchWrapper) => void\n down?: (wrapper: TouchWrapper) => void\n}\n\nexport interface TouchWrapper extends TouchHandlers {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n touchendX: number\n touchendY: number\n offsetX: number\n offsetY: number\n}\n\nexport interface TouchValue extends TouchHandlers {\n parent?: boolean\n options?: AddEventListenerOptions\n}\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\nexport interface TouchDirectiveBinding extends Omit<DirectiveBinding, 'value'> {\n value?: TouchValue\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)\n wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)\n wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start?.({ originalEvent: event, ...wrapper })\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end?.({ originalEvent: event, ...wrapper })\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move?.({ originalEvent: event, ...wrapper })\n}\n\nfunction createHandlers (value: TouchHandlers = {}): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction mounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const value = binding.value\n const target = value?.parent ? el.parentElement : el\n const options = value?.options ?? { passive: true }\n const uid = binding.instance?.$.uid // TODO: use custom uid generator\n\n if (!target || !uid) return\n\n const handlers = createHandlers(binding.value)\n\n target._touchHandlers = target._touchHandlers ?? Object.create(null)\n target._touchHandlers![uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(eventName, handlers[eventName], options)\n })\n}\n\nfunction unmounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const target = binding.value?.parent ? el.parentElement : el\n const uid = binding.instance?.$.uid\n\n if (!target?._touchHandlers || !uid) return\n\n const handlers = target._touchHandlers[uid]\n\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n\n delete target._touchHandlers[uid]\n}\n\nexport const Touch: ObjectDirective = {\n mounted,\n unmounted,\n}\n\nexport default Touch\n"],"file":"index.mjs"}
1
+ {"version":3,"file":"index.mjs","names":["keys","handleGesture","wrapper","touchstartX","touchendX","touchstartY","touchendY","dirRatio","minDistance","offsetX","offsetY","Math","abs","left","right","up","down","touchstart","event","touch","changedTouches","clientX","clientY","start","originalEvent","touchend","end","touchmove","touchmoveX","touchmoveY","move","createHandlers","value","e","mounted","el","binding","target","parent","parentElement","options","passive","uid","instance","$","handlers","_touchHandlers","Object","create","forEach","eventName","addEventListener","unmounted","removeEventListener","Touch"],"sources":["../../../src/directives/touch/index.ts"],"sourcesContent":["// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\n// Utilities\nimport { keys } from '@/util'\n\nexport interface TouchHandlers {\n start?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n end?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n move?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n left?: (wrapper: TouchWrapper) => void\n right?: (wrapper: TouchWrapper) => void\n up?: (wrapper: TouchWrapper) => void\n down?: (wrapper: TouchWrapper) => void\n}\n\nexport interface TouchWrapper extends TouchHandlers {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n touchendX: number\n touchendY: number\n offsetX: number\n offsetY: number\n}\n\nexport interface TouchValue extends TouchHandlers {\n parent?: boolean\n options?: AddEventListenerOptions\n}\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\nexport interface TouchDirectiveBinding extends Omit<DirectiveBinding, 'value'> {\n value?: TouchValue\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)\n wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)\n wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start?.({ originalEvent: event, ...wrapper })\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end?.({ originalEvent: event, ...wrapper })\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move?.({ originalEvent: event, ...wrapper })\n}\n\nfunction createHandlers (value: TouchHandlers = {}): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction mounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const value = binding.value\n const target = value?.parent ? el.parentElement : el\n const options = value?.options ?? { passive: true }\n const uid = binding.instance?.$.uid // TODO: use custom uid generator\n\n if (!target || !uid) return\n\n const handlers = createHandlers(binding.value)\n\n target._touchHandlers = target._touchHandlers ?? Object.create(null)\n target._touchHandlers![uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(eventName, handlers[eventName], options)\n })\n}\n\nfunction unmounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const target = binding.value?.parent ? el.parentElement : el\n const uid = binding.instance?.$.uid\n\n if (!target?._touchHandlers || !uid) return\n\n const handlers = target._touchHandlers[uid]\n\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n\n delete target._touchHandlers[uid]\n}\n\nexport const Touch: ObjectDirective = {\n mounted,\n unmounted,\n}\n\nexport default Touch\n"],"mappings":"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"}
@@ -10,7 +10,7 @@ export const createVuetify = function () {
10
10
  ...options
11
11
  });
12
12
  };
13
- export const version = "3.0.0-beta.2";
13
+ export const version = "3.0.0-beta.3";
14
14
  export { components, directives };
15
15
  export * from "./composables/index.mjs";
16
16
  //# sourceMappingURL=entry-bundler.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/entry-bundler.ts"],"names":["components","directives","createVuetify","_createVuetify","options","version"],"mappings":"AAAA;OACO,KAAKA,U;OACL,KAAKC,U;SACHC,aAAa,IAAIC,c;AAG1B,OAAO,MAAMD,aAAa,GAAG,YAAkC;AAAA,MAAjCE,OAAiC,uEAAP,EAAO;AAC7D,SAAOD,cAAc,CAAC;AAAEH,IAAAA,UAAF;AAAcC,IAAAA,UAAd;AAA0B,OAAGG;AAA7B,GAAD,CAArB;AACD,CAFM;AAIP,OAAO,MAAMC,OAAO,iBAAb;AAEP,SACEL,UADF,EAEEC,UAFF","sourcesContent":["import './styles/main.sass'\nimport * as components from './components'\nimport * as directives from './directives'\nimport { createVuetify as _createVuetify } from './framework'\nimport type { VuetifyOptions } from './framework'\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n return _createVuetify({ components, directives, ...options })\n}\n\nexport const version = __VUETIFY_VERSION__\n\nexport {\n components,\n directives,\n}\nexport * from './composables'\n"],"file":"entry-bundler.mjs"}
1
+ {"version":3,"file":"entry-bundler.mjs","names":["components","directives","createVuetify","_createVuetify","options","version"],"sources":["../src/entry-bundler.ts"],"sourcesContent":["import './styles/main.sass'\nimport * as components from './components'\nimport * as directives from './directives'\nimport { createVuetify as _createVuetify } from './framework'\nimport type { VuetifyOptions } from './framework'\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n return _createVuetify({ components, directives, ...options })\n}\n\nexport const version = __VUETIFY_VERSION__\n\nexport {\n components,\n directives,\n}\nexport * from './composables'\n"],"mappings":"AAAA;OACO,KAAKA,U;OACL,KAAKC,U;SACHC,aAAa,IAAIC,c;AAG1B,OAAO,MAAMD,aAAa,GAAG,YAAkC;EAAA,IAAjCE,OAAiC,uEAAP,EAAO;EAC7D,OAAOD,cAAc,CAAC;IAAEH,UAAF;IAAcC,UAAd;IAA0B,GAAGG;EAA7B,CAAD,CAArB;AACD,CAFM;AAIP,OAAO,MAAMC,OAAO,iBAAb;AAEP,SACEL,UADF,EAEEC,UAFF"}
package/lib/framework.mjs CHANGED
@@ -1,13 +1,13 @@
1
+ // Composables
2
+ import { createDefaults, DefaultsSymbol } from "./composables/defaults.mjs";
1
3
  import { createDisplay, DisplaySymbol } from "./composables/display.mjs";
4
+ import { createIcons, IconSymbol } from "./composables/icons.mjs";
5
+ import { createLocale, LocaleAdapterSymbol } from "./composables/locale.mjs";
2
6
  import { createTheme, ThemeSymbol } from "./composables/theme.mjs";
3
- import { defaultSets, IconSymbol } from "./composables/icons.mjs";
4
- import { createDefaults, DefaultsSymbol } from "./composables/defaults.mjs";
5
- import { createLocaleAdapter, LocaleAdapterSymbol } from "./composables/locale.mjs";
6
- import { createRtl, RtlSymbol } from "./composables/rtl.mjs";
7
- import { aliases as iconAliases, mdi } from "./iconsets/mdi.mjs"; // Utilities
7
+ import { RtlSymbol } from "./composables/rtl.mjs"; // Utilities
8
8
 
9
- import { reactive } from 'vue';
10
- import { defineComponent, mergeDeep } from "./util/index.mjs"; // Types
9
+ import { defineComponent } from "./util/index.mjs";
10
+ import { reactive } from 'vue'; // Types
11
11
 
12
12
  export * from "./composables/index.mjs";
13
13
  export const createVuetify = function () {
@@ -17,8 +17,7 @@ export const createVuetify = function () {
17
17
  const {
18
18
  aliases = {},
19
19
  components = {},
20
- directives = {},
21
- icons = {}
20
+ directives = {}
22
21
  } = options;
23
22
 
24
23
  for (const key in directives) {
@@ -38,19 +37,8 @@ export const createVuetify = function () {
38
37
  app.provide(DefaultsSymbol, createDefaults(options.defaults));
39
38
  app.provide(DisplaySymbol, createDisplay(options.display));
40
39
  app.provide(ThemeSymbol, createTheme(app, options.theme));
41
- app.provide(IconSymbol, mergeDeep({
42
- defaultSet: 'mdi',
43
- sets: { ...defaultSets,
44
- mdi
45
- },
46
- aliases: iconAliases
47
- }, icons));
48
- const {
49
- adapter,
50
- rootInstance
51
- } = createLocaleAdapter(app, options == null ? void 0 : options.locale);
52
- app.provide(LocaleAdapterSymbol, adapter);
53
- app.provide(RtlSymbol, createRtl(rootInstance, options == null ? void 0 : options.locale)); // Vue's inject() can only be used in setup
40
+ app.provide(IconSymbol, createIcons(options.icons));
41
+ app.provide(LocaleAdapterSymbol, createLocale(app, options.locale)); // Vue's inject() can only be used in setup
54
42
 
55
43
  function inject(key) {
56
44
  var _vm$parent$provides, _vm$parent, _vm$vnode$appContext;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/framework.ts"],"names":["createDisplay","DisplaySymbol","createTheme","ThemeSymbol","defaultSets","IconSymbol","createDefaults","DefaultsSymbol","createLocaleAdapter","LocaleAdapterSymbol","createRtl","RtlSymbol","aliases","iconAliases","mdi","reactive","defineComponent","mergeDeep","createVuetify","options","install","app","components","directives","icons","key","directive","component","name","provide","defaults","display","theme","defaultSet","sets","adapter","rootInstance","locale","inject","vm","$","provides","parent","vnode","appContext","mixin","computed","$vuetify","call","rtl"],"mappings":"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","sourcesContent":["import { createDisplay, DisplaySymbol } from '@/composables/display'\nimport { createTheme, ThemeSymbol } from '@/composables/theme'\nimport { defaultSets, IconSymbol } from '@/composables/icons'\nimport { createDefaults, DefaultsSymbol } from '@/composables/defaults'\nimport { createLocaleAdapter, LocaleAdapterSymbol } from '@/composables/locale'\nimport { createRtl, RtlSymbol } from '@/composables/rtl'\nimport { aliases as iconAliases, mdi } from '@/iconsets/mdi'\n\n// Utilities\nimport { reactive } from 'vue'\nimport { defineComponent, mergeDeep } from '@/util'\n\n// Types\nimport type { App, ComponentPublicInstance, InjectionKey } from 'vue'\nimport type { DisplayOptions } from '@/composables/display'\nimport type { ThemeOptions } from '@/composables/theme'\nimport type { IconOptions } from '@/composables/icons'\nimport type { LocaleAdapter, LocaleOptions } from '@/composables/locale'\nimport type { RtlOptions } from '@/composables/rtl'\nimport type { DefaultsOptions } from '@/composables/defaults'\n\nexport * from './composables'\n\nexport interface VuetifyOptions {\n aliases?: Record<string, any>\n components?: Record<string, any>\n directives?: Record<string, any>\n defaults?: DefaultsOptions\n display?: DisplayOptions\n theme?: ThemeOptions\n icons?: IconOptions\n locale?: (LocaleOptions & RtlOptions) | (LocaleAdapter & RtlOptions)\n}\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n const install = (app: App) => {\n const {\n aliases = {},\n components = {},\n directives = {},\n icons = {},\n } = options\n\n for (const key in directives) {\n app.directive(key, directives[key])\n }\n\n for (const key in components) {\n app.component(key, components[key])\n }\n\n for (const key in aliases) {\n app.component(key, defineComponent({\n ...aliases[key],\n name: key,\n }))\n }\n\n app.provide(DefaultsSymbol, createDefaults(options.defaults))\n app.provide(DisplaySymbol, createDisplay(options.display))\n app.provide(ThemeSymbol, createTheme(app, options.theme))\n app.provide(IconSymbol, mergeDeep({\n defaultSet: 'mdi',\n sets: {\n ...defaultSets,\n mdi,\n },\n aliases: iconAliases,\n }, icons))\n const { adapter, rootInstance } = createLocaleAdapter(app, options?.locale)\n app.provide(LocaleAdapterSymbol, adapter)\n app.provide(RtlSymbol, createRtl(rootInstance, options?.locale))\n\n // Vue's inject() can only be used in setup\n function inject (this: ComponentPublicInstance, key: InjectionKey<any> | string) {\n const vm = this.$\n\n const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides\n\n if (provides && (key as any) in provides) {\n return provides[(key as string)]\n }\n }\n\n app.mixin({\n computed: {\n $vuetify () {\n return reactive({\n defaults: inject.call(this, DefaultsSymbol),\n display: inject.call(this, DisplaySymbol),\n theme: inject.call(this, ThemeSymbol),\n icons: inject.call(this, IconSymbol),\n locale: inject.call(this, LocaleAdapterSymbol),\n rtl: inject.call(this, RtlSymbol),\n })\n },\n },\n })\n }\n\n return { install }\n}\n"],"file":"framework.mjs"}
1
+ {"version":3,"file":"framework.mjs","names":["createDefaults","DefaultsSymbol","createDisplay","DisplaySymbol","createIcons","IconSymbol","createLocale","LocaleAdapterSymbol","createTheme","ThemeSymbol","RtlSymbol","defineComponent","reactive","createVuetify","options","install","app","aliases","components","directives","key","directive","component","name","provide","defaults","display","theme","icons","locale","inject","vm","$","provides","parent","vnode","appContext","mixin","computed","$vuetify","call","rtl"],"sources":["../src/framework.ts"],"sourcesContent":["// Composables\nimport { createDefaults, DefaultsSymbol } from '@/composables/defaults'\nimport { createDisplay, DisplaySymbol } from '@/composables/display'\nimport { createIcons, IconSymbol } from '@/composables/icons'\nimport { createLocale, LocaleAdapterSymbol } from '@/composables/locale'\nimport { createTheme, ThemeSymbol } from '@/composables/theme'\nimport { RtlSymbol } from '@/composables/rtl'\n\n// Utilities\nimport { defineComponent } from '@/util'\nimport { reactive } from 'vue'\n\n// Types\nimport type { App, ComponentPublicInstance, InjectionKey } from 'vue'\nimport type { DefaultsOptions } from '@/composables/defaults'\nimport type { DisplayOptions } from '@/composables/display'\nimport type { IconOptions } from '@/composables/icons'\nimport type { LocaleAdapter, LocaleOptions } from '@/composables/locale'\nimport type { RtlOptions } from '@/composables/rtl'\nimport type { ThemeOptions } from '@/composables/theme'\n\nexport * from './composables'\n\nexport interface VuetifyOptions {\n aliases?: Record<string, any>\n components?: Record<string, any>\n directives?: Record<string, any>\n defaults?: DefaultsOptions\n display?: DisplayOptions\n theme?: ThemeOptions\n icons?: IconOptions\n locale?: (LocaleOptions & RtlOptions) | (LocaleAdapter & RtlOptions)\n}\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n const install = (app: App) => {\n const {\n aliases = {},\n components = {},\n directives = {},\n } = options\n\n for (const key in directives) {\n app.directive(key, directives[key])\n }\n\n for (const key in components) {\n app.component(key, components[key])\n }\n\n for (const key in aliases) {\n app.component(key, defineComponent({\n ...aliases[key],\n name: key,\n }))\n }\n\n app.provide(DefaultsSymbol, createDefaults(options.defaults))\n app.provide(DisplaySymbol, createDisplay(options.display))\n app.provide(ThemeSymbol, createTheme(app, options.theme))\n app.provide(IconSymbol, createIcons(options.icons))\n app.provide(LocaleAdapterSymbol, createLocale(app, options.locale))\n\n // Vue's inject() can only be used in setup\n function inject (this: ComponentPublicInstance, key: InjectionKey<any> | string) {\n const vm = this.$\n\n const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides\n\n if (provides && (key as any) in provides) {\n return provides[(key as string)]\n }\n }\n\n app.mixin({\n computed: {\n $vuetify () {\n return reactive({\n defaults: inject.call(this, DefaultsSymbol),\n display: inject.call(this, DisplaySymbol),\n theme: inject.call(this, ThemeSymbol),\n icons: inject.call(this, IconSymbol),\n locale: inject.call(this, LocaleAdapterSymbol),\n rtl: inject.call(this, RtlSymbol),\n })\n },\n },\n })\n }\n\n return { install }\n}\n"],"mappings":"AAAA;SACSA,c,EAAgBC,c;SAChBC,a,EAAeC,a;SACfC,W,EAAaC,U;SACbC,Y,EAAcC,mB;SACdC,W,EAAaC,W;SACbC,S,iCAET;;SACSC,e;AACT,SAASC,QAAT,QAAyB,KAAzB,C,CAEA;;;AAsBA,OAAO,MAAMC,aAAa,GAAG,YAAkC;EAAA,IAAjCC,OAAiC,uEAAP,EAAO;;EAC7D,MAAMC,OAAO,GAAIC,GAAD,IAAc;IAC5B,MAAM;MACJC,OAAO,GAAG,EADN;MAEJC,UAAU,GAAG,EAFT;MAGJC,UAAU,GAAG;IAHT,IAIFL,OAJJ;;IAMA,KAAK,MAAMM,GAAX,IAAkBD,UAAlB,EAA8B;MAC5BH,GAAG,CAACK,SAAJ,CAAcD,GAAd,EAAmBD,UAAU,CAACC,GAAD,CAA7B;IACD;;IAED,KAAK,MAAMA,GAAX,IAAkBF,UAAlB,EAA8B;MAC5BF,GAAG,CAACM,SAAJ,CAAcF,GAAd,EAAmBF,UAAU,CAACE,GAAD,CAA7B;IACD;;IAED,KAAK,MAAMA,GAAX,IAAkBH,OAAlB,EAA2B;MACzBD,GAAG,CAACM,SAAJ,CAAcF,GAAd,EAAmBT,eAAe,CAAC,EACjC,GAAGM,OAAO,CAACG,GAAD,CADuB;QAEjCG,IAAI,EAAEH;MAF2B,CAAD,CAAlC;IAID;;IAEDJ,GAAG,CAACQ,OAAJ,CAAYvB,cAAZ,EAA4BD,cAAc,CAACc,OAAO,CAACW,QAAT,CAA1C;IACAT,GAAG,CAACQ,OAAJ,CAAYrB,aAAZ,EAA2BD,aAAa,CAACY,OAAO,CAACY,OAAT,CAAxC;IACAV,GAAG,CAACQ,OAAJ,CAAYf,WAAZ,EAAyBD,WAAW,CAACQ,GAAD,EAAMF,OAAO,CAACa,KAAd,CAApC;IACAX,GAAG,CAACQ,OAAJ,CAAYnB,UAAZ,EAAwBD,WAAW,CAACU,OAAO,CAACc,KAAT,CAAnC;IACAZ,GAAG,CAACQ,OAAJ,CAAYjB,mBAAZ,EAAiCD,YAAY,CAACU,GAAD,EAAMF,OAAO,CAACe,MAAd,CAA7C,EA1B4B,CA4B5B;;IACA,SAASC,MAAT,CAAgDV,GAAhD,EAAiF;MAAA;;MAC/E,MAAMW,EAAE,GAAG,KAAKC,CAAhB;MAEA,MAAMC,QAAQ,wCAAGF,EAAE,CAACG,MAAN,qBAAG,WAAWD,QAAd,0DAA0BF,EAAE,CAACI,KAAH,CAASC,UAAnC,qBAA0B,qBAAqBH,QAA7D;;MAEA,IAAIA,QAAQ,IAAKb,GAAD,IAAgBa,QAAhC,EAA0C;QACxC,OAAOA,QAAQ,CAAEb,GAAF,CAAf;MACD;IACF;;IAEDJ,GAAG,CAACqB,KAAJ,CAAU;MACRC,QAAQ,EAAE;QACRC,QAAQ,GAAI;UACV,OAAO3B,QAAQ,CAAC;YACda,QAAQ,EAAEK,MAAM,CAACU,IAAP,CAAY,IAAZ,EAAkBvC,cAAlB,CADI;YAEdyB,OAAO,EAAEI,MAAM,CAACU,IAAP,CAAY,IAAZ,EAAkBrC,aAAlB,CAFK;YAGdwB,KAAK,EAAEG,MAAM,CAACU,IAAP,CAAY,IAAZ,EAAkB/B,WAAlB,CAHO;YAIdmB,KAAK,EAAEE,MAAM,CAACU,IAAP,CAAY,IAAZ,EAAkBnC,UAAlB,CAJO;YAKdwB,MAAM,EAAEC,MAAM,CAACU,IAAP,CAAY,IAAZ,EAAkBjC,mBAAlB,CALM;YAMdkC,GAAG,EAAEX,MAAM,CAACU,IAAP,CAAY,IAAZ,EAAkB9B,SAAlB;UANS,CAAD,CAAf;QAQD;;MAVO;IADF,CAAV;EAcD,CArDD;;EAuDA,OAAO;IAAEK;EAAF,CAAP;AACD,CAzDM"}