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

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 (277) hide show
  1. package/CHANGELOG.md +53 -2
  2. package/dist/json/attributes.json +343 -195
  3. package/dist/json/importMap.json +20 -0
  4. package/dist/json/tags.json +106 -44
  5. package/dist/json/web-types.json +946 -549
  6. package/dist/vuetify.css +1486 -1085
  7. package/dist/vuetify.d.ts +9036 -8077
  8. package/dist/vuetify.esm.js +1511 -944
  9. package/dist/vuetify.esm.js.map +1 -1
  10. package/dist/vuetify.js +1510 -943
  11. package/dist/vuetify.js.map +1 -1
  12. package/dist/vuetify.min.css +3 -3
  13. package/dist/vuetify.min.js +825 -754
  14. package/dist/vuetify.min.js.map +1 -1
  15. package/lib/components/VAlert/VAlert.css +29 -8
  16. package/lib/components/VAlert/VAlert.mjs +31 -17
  17. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  18. package/lib/components/VAlert/VAlert.sass +27 -7
  19. package/lib/components/VAlert/VAlertTitle.mjs +1 -0
  20. package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
  21. package/lib/components/VAlert/_variables.scss +14 -7
  22. package/lib/components/VApp/VApp.css +1 -0
  23. package/lib/components/VApp/VApp.sass +1 -0
  24. package/lib/components/VAppBar/VAppBar.mjs +7 -3
  25. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  26. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs +82 -69
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  29. package/lib/components/VAvatar/VAvatar.mjs +15 -14
  30. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  31. package/lib/components/VBanner/VBanner.css +82 -58
  32. package/lib/components/VBanner/VBanner.mjs +39 -43
  33. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  34. package/lib/components/VBanner/VBanner.sass +61 -54
  35. package/lib/components/VBanner/VBannerActions.mjs +34 -2
  36. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  37. package/lib/components/VBanner/VBannerAvatar.mjs +20 -0
  38. package/lib/components/VBanner/VBannerAvatar.mjs.map +1 -0
  39. package/lib/components/VBanner/VBannerIcon.mjs +20 -0
  40. package/lib/components/VBanner/VBannerIcon.mjs.map +1 -0
  41. package/lib/components/VBanner/_variables.scss +10 -14
  42. package/lib/components/VBanner/index.mjs +2 -0
  43. package/lib/components/VBanner/index.mjs.map +1 -1
  44. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +2 -0
  45. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  46. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +10 -9
  47. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  48. package/lib/components/VBtn/VBtn.css +20 -1
  49. package/lib/components/VBtn/VBtn.mjs +20 -7
  50. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  51. package/lib/components/VBtn/VBtn.sass +15 -2
  52. package/lib/components/VBtn/_variables.scss +3 -0
  53. package/lib/components/VBtnGroup/VBtnGroup.css +14 -6
  54. package/lib/components/VBtnGroup/VBtnGroup.sass +14 -6
  55. package/lib/components/VCard/VCard.css +13 -11
  56. package/lib/components/VCard/VCard.mjs +5 -2
  57. package/lib/components/VCard/VCard.mjs.map +1 -1
  58. package/lib/components/VCard/VCard.sass +12 -9
  59. package/lib/components/VCard/VCardActions.mjs +1 -2
  60. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  61. package/lib/components/VCard/VCardContent.mjs +3 -0
  62. package/lib/components/VCard/VCardContent.mjs.map +1 -0
  63. package/lib/components/VCard/_variables.scss +11 -5
  64. package/lib/components/VCard/index.mjs +1 -0
  65. package/lib/components/VCard/index.mjs.map +1 -1
  66. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  67. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  68. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  69. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  70. package/lib/components/VChip/VChip.css +3 -0
  71. package/lib/components/VChip/VChip.sass +3 -0
  72. package/lib/components/VChip/_variables.scss +3 -0
  73. package/lib/components/VColorPicker/VColorPickerCanvas.css +1 -1
  74. package/lib/components/VCombobox/VCombobox.mjs +92 -74
  75. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  76. package/lib/components/VDialog/VDialog.css +31 -11
  77. package/lib/components/VDialog/VDialog.mjs +6 -9
  78. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  79. package/lib/components/VDialog/VDialog.sass +27 -10
  80. package/lib/components/VDialog/_variables.scss +3 -6
  81. package/lib/components/VExpansionPanel/VExpansionPanel.css +3 -2
  82. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +6 -2
  83. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  84. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +5 -3
  85. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  86. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +4 -0
  87. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  88. package/lib/components/VField/VField.css +1 -1
  89. package/lib/components/VField/VField.mjs +3 -4
  90. package/lib/components/VField/VField.mjs.map +1 -1
  91. package/lib/components/VField/VField.sass +1 -1
  92. package/lib/components/VFileInput/VFileInput.mjs +2 -1
  93. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  94. package/lib/components/VFooter/VFooter.mjs +32 -15
  95. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  96. package/lib/components/VForm/VForm.mjs +25 -11
  97. package/lib/components/VForm/VForm.mjs.map +1 -1
  98. package/lib/components/VIcon/VIcon.css +27 -12
  99. package/lib/components/VIcon/VIcon.mjs +19 -16
  100. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  101. package/lib/components/VIcon/VIcon.sass +27 -16
  102. package/lib/components/VIcon/_variables.scss +1 -0
  103. package/lib/components/VInput/VInput.css +3 -1
  104. package/lib/components/VInput/VInput.mjs +3 -4
  105. package/lib/components/VInput/VInput.mjs.map +1 -1
  106. package/lib/components/VInput/VInput.sass +3 -1
  107. package/lib/components/VInput/_variables.scss +4 -0
  108. package/lib/components/VList/VList.css +7 -6
  109. package/lib/components/VList/VList.mjs +36 -17
  110. package/lib/components/VList/VList.mjs.map +1 -1
  111. package/lib/components/VList/VList.sass +3 -2
  112. package/lib/components/VList/VListChildren.mjs +1 -1
  113. package/lib/components/VList/VListChildren.mjs.map +1 -1
  114. package/lib/components/VList/VListGroup.mjs +28 -10
  115. package/lib/components/VList/VListGroup.mjs.map +1 -1
  116. package/lib/components/VList/VListItem.css +119 -42
  117. package/lib/components/VList/VListItem.mjs +36 -32
  118. package/lib/components/VList/VListItem.mjs.map +1 -1
  119. package/lib/components/VList/VListItem.sass +76 -28
  120. package/lib/components/VList/VListItemAction.mjs +29 -0
  121. package/lib/components/VList/VListItemAction.mjs.map +1 -0
  122. package/lib/components/VList/VListItemAvatar.mjs +10 -16
  123. package/lib/components/VList/VListItemAvatar.mjs.map +1 -1
  124. package/lib/components/VList/VListItemIcon.mjs +23 -0
  125. package/lib/components/VList/VListItemIcon.mjs.map +1 -0
  126. package/lib/components/VList/VListItemMedia.mjs +4 -4
  127. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  128. package/lib/components/VList/_variables.scss +12 -3
  129. package/lib/components/VList/index.mjs +2 -0
  130. package/lib/components/VList/index.mjs.map +1 -1
  131. package/lib/components/VMenu/VMenu.css +2 -12
  132. package/lib/components/VMenu/VMenu.mjs +61 -31
  133. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  134. package/lib/components/VMenu/VMenu.sass +3 -6
  135. package/lib/components/VMenu/shared.mjs +2 -0
  136. package/lib/components/VMenu/shared.mjs.map +1 -0
  137. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  138. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  139. package/lib/components/VOverlay/VOverlay.css +8 -0
  140. package/lib/components/VOverlay/VOverlay.mjs +16 -15
  141. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  142. package/lib/components/VOverlay/VOverlay.sass +9 -0
  143. package/lib/components/VOverlay/_variables.scss +1 -0
  144. package/lib/components/VOverlay/positionStrategies.mjs +7 -3
  145. package/lib/components/VOverlay/positionStrategies.mjs.map +1 -1
  146. package/lib/components/VOverlay/scrollStrategies.mjs +9 -0
  147. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  148. package/lib/components/VOverlay/useActivator.mjs +50 -14
  149. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  150. package/lib/components/VPagination/VPagination.mjs +10 -12
  151. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  152. package/lib/components/VProgressLinear/VProgressLinear.css +1 -1
  153. package/lib/components/VRadio/VRadio.mjs +1 -2
  154. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  155. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  156. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  157. package/lib/components/VRangeSlider/VRangeSlider.mjs +5 -2
  158. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  159. package/lib/components/VRating/VRating.css +2 -2
  160. package/lib/components/VRating/VRating.mjs +13 -3
  161. package/lib/components/VRating/VRating.mjs.map +1 -1
  162. package/lib/components/VRating/VRating.sass +2 -2
  163. package/lib/components/VSelect/VSelect.mjs +70 -91
  164. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  165. package/lib/components/VSelectionControl/VSelectionControl.mjs +2 -1
  166. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  167. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +2 -2
  168. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  169. package/lib/components/VSlideGroup/VSlideGroup.css +0 -5
  170. package/lib/components/VSlideGroup/VSlideGroup.mjs +36 -14
  171. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  172. package/lib/components/VSlideGroup/VSlideGroup.sass +0 -4
  173. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +3 -1
  174. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  175. package/lib/components/VSlider/VSlider.css +7 -2
  176. package/lib/components/VSlider/VSlider.sass +11 -5
  177. package/lib/components/VSlider/VSliderTrack.css +6 -6
  178. package/lib/components/VSlider/VSliderTrack.mjs +1 -1
  179. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  180. package/lib/components/VSlider/VSliderTrack.sass +7 -7
  181. package/lib/components/VSlider/_variables.scss +5 -2
  182. package/lib/components/VSnackbar/VSnackbar.css +14 -13
  183. package/lib/components/VSnackbar/VSnackbar.mjs +22 -10
  184. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  185. package/lib/components/VSnackbar/VSnackbar.sass +15 -16
  186. package/lib/components/VSnackbar/_variables.scss +0 -4
  187. package/lib/components/VSwitch/VSwitch.mjs +8 -5
  188. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  189. package/lib/components/VSystemBar/VSystemBar.css +0 -5
  190. package/lib/components/VSystemBar/VSystemBar.mjs +31 -14
  191. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  192. package/lib/components/VSystemBar/VSystemBar.sass +0 -5
  193. package/lib/components/VSystemBar/_variables.scss +0 -3
  194. package/lib/components/VTabs/VTab.mjs +28 -32
  195. package/lib/components/VTabs/VTab.mjs.map +1 -1
  196. package/lib/components/VTabs/VTabs.css +6 -2
  197. package/lib/components/VTabs/VTabs.mjs +7 -8
  198. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  199. package/lib/components/VTabs/VTabs.sass +6 -1
  200. package/lib/components/VTabs/shared.mjs +2 -0
  201. package/lib/components/VTabs/shared.mjs.map +1 -0
  202. package/lib/components/VTextField/VTextField.css +4 -4
  203. package/lib/components/VTextField/VTextField.mjs +5 -9
  204. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  205. package/lib/components/VTextField/VTextField.sass +5 -5
  206. package/lib/components/VTextarea/VTextarea.css +7 -4
  207. package/lib/components/VTextarea/VTextarea.sass +9 -5
  208. package/lib/components/VTimeline/VTimeline.css +187 -48
  209. package/lib/components/VTimeline/VTimeline.mjs +27 -11
  210. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  211. package/lib/components/VTimeline/VTimeline.sass +196 -51
  212. package/lib/components/VTimeline/VTimelineDivider.mjs +2 -1
  213. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  214. package/lib/components/VTimeline/_variables.scss +2 -1
  215. package/lib/components/VToolbar/VToolbar.css +8 -1
  216. package/lib/components/VToolbar/VToolbar.mjs +8 -11
  217. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  218. package/lib/components/VToolbar/VToolbar.sass +2 -1
  219. package/lib/components/VToolbar/VToolbarItems.mjs +0 -1
  220. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  221. package/lib/components/VToolbar/_variables.scss +13 -1
  222. package/lib/components/VWindow/VWindow.mjs +0 -8
  223. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  224. package/lib/components/index.d.ts +9025 -8077
  225. package/lib/composables/defaults.mjs +2 -2
  226. package/lib/composables/defaults.mjs.map +1 -1
  227. package/lib/composables/form.mjs +18 -5
  228. package/lib/composables/form.mjs.map +1 -1
  229. package/lib/composables/forwardRef.mjs +10 -6
  230. package/lib/composables/forwardRef.mjs.map +1 -1
  231. package/lib/composables/group.mjs +14 -6
  232. package/lib/composables/group.mjs.map +1 -1
  233. package/lib/composables/index.mjs.map +1 -1
  234. package/lib/composables/items.mjs +56 -0
  235. package/lib/composables/items.mjs.map +1 -0
  236. package/lib/composables/layout.mjs +7 -3
  237. package/lib/composables/layout.mjs.map +1 -1
  238. package/lib/composables/loader.mjs.map +1 -1
  239. package/lib/composables/nested/nested.mjs +27 -14
  240. package/lib/composables/nested/nested.mjs.map +1 -1
  241. package/lib/composables/nested/openStrategies.mjs +63 -36
  242. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  243. package/lib/composables/nested/selectStrategies.mjs +163 -122
  244. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  245. package/lib/composables/overlay.mjs +5 -1
  246. package/lib/composables/overlay.mjs.map +1 -1
  247. package/lib/composables/proxiedModel.mjs.map +1 -1
  248. package/lib/composables/resizeObserver.mjs +1 -9
  249. package/lib/composables/resizeObserver.mjs.map +1 -1
  250. package/lib/composables/router.mjs +17 -5
  251. package/lib/composables/router.mjs.map +1 -1
  252. package/lib/composables/selectLink.mjs +19 -0
  253. package/lib/composables/selectLink.mjs.map +1 -0
  254. package/lib/composables/stack.mjs +7 -4
  255. package/lib/composables/stack.mjs.map +1 -1
  256. package/lib/composables/validation.mjs +6 -3
  257. package/lib/composables/validation.mjs.map +1 -1
  258. package/lib/composables/variant.mjs +0 -3
  259. package/lib/composables/variant.mjs.map +1 -1
  260. package/lib/directives/ripple/index.mjs +15 -3
  261. package/lib/directives/ripple/index.mjs.map +1 -1
  262. package/lib/entry-bundler.mjs +1 -1
  263. package/lib/framework.mjs +12 -7
  264. package/lib/framework.mjs.map +1 -1
  265. package/lib/index.d.ts +18 -2
  266. package/lib/locale/ca.mjs +9 -9
  267. package/lib/locale/ca.mjs.map +1 -1
  268. package/lib/styles/generic/_colors.scss +0 -1
  269. package/lib/styles/main.css +400 -392
  270. package/lib/styles/settings/_utilities.scss +54 -26
  271. package/lib/styles/tools/_states.sass +2 -1
  272. package/lib/util/defineComponent.mjs +37 -6
  273. package/lib/util/defineComponent.mjs.map +1 -1
  274. package/lib/util/getCurrentInstance.mjs +1 -1
  275. package/lib/util/getCurrentInstance.mjs.map +1 -1
  276. package/lib/util/helpers.mjs.map +1 -1
  277. package/package.json +31 -29
@@ -340,9 +340,9 @@ $utilities: () !default;
340
340
  class: rounded-t,
341
341
  values: variables.$rounded
342
342
  ),
343
- "rounded-right": (
344
- property: border-top-right-radius border-bottom-right-radius,
345
- class: rounded-r,
343
+ "rounded-end": (
344
+ property: (ltr: border-top-right-radius border-bottom-right-radius, rtl: border-top-left-radius border-bottom-left-radius),
345
+ class: rounded-e,
346
346
  values: variables.$rounded
347
347
  ),
348
348
  "rounded-bottom": (
@@ -350,29 +350,29 @@ $utilities: () !default;
350
350
  class: rounded-b,
351
351
  values: variables.$rounded
352
352
  ),
353
- "rounded-left": (
354
- property: border-top-left-radius border-bottom-left-radius,
355
- class: rounded-l,
353
+ "rounded-start": (
354
+ property: (ltr: border-top-left-radius border-bottom-left-radius, rtl: border-top-right-radius border-bottom-right-radius),
355
+ class: rounded-s,
356
356
  values: variables.$rounded
357
357
  ),
358
- "rounded-top-left": (
359
- property: border-top-left-radius,
360
- class: rounded-tl,
358
+ "rounded-top-start": (
359
+ property: (ltr: border-top-left-radius, rtl: border-top-right-radius),
360
+ class: rounded-ts,
361
361
  values: variables.$rounded
362
362
  ),
363
- "rounded-top-right": (
364
- property: border-top-right-radius,
365
- class: rounded-tr,
363
+ "rounded-top-end": (
364
+ property: (ltr: border-top-right-radius, rtl: border-top-left-radius),
365
+ class: rounded-te,
366
366
  values: variables.$rounded
367
367
  ),
368
- "rounded-bottom-right": (
369
- property: border-bottom-right-radius,
370
- class: rounded-br,
368
+ "rounded-bottom-end": (
369
+ property: (ltr: border-bottom-right-radius, rtl: border-bottom-left-radius),
370
+ class: rounded-be,
371
371
  values: variables.$rounded
372
372
  ),
373
- "rounded-bottom-left": (
374
- property: border-bottom-left-radius,
375
- class: rounded-bl,
373
+ "rounded-bottom-start": (
374
+ property: (ltr: border-bottom-left-radius, rtl: border-bottom-right-radius),
375
+ class: rounded-bs,
376
376
  values: variables.$rounded
377
377
  ),
378
378
 
@@ -388,23 +388,23 @@ $utilities: () !default;
388
388
  values: variables.$border-opacities
389
389
  ),
390
390
  "border-top": (
391
- property: border-top-width border-top-style border-top-color,
391
+ property: border-block-start-width border-block-start-style border-block-start-color,
392
392
  class: border-t,
393
393
  values: variables.$borders
394
394
  ),
395
- "border-right": (
396
- property: border-right-width border-right-style border-right-color,
397
- class: border-r,
395
+ "border-end": (
396
+ property: border-inline-end-width border-inline-end-style border-inline-end-color,
397
+ class: border-e,
398
398
  values: variables.$borders
399
399
  ),
400
400
  "border-bottom": (
401
- property: border-bottom-width border-bottom-style border-bottom-color,
401
+ property: border-block-end-width border-block-end-style border-block-end-color,
402
402
  class: border-b,
403
403
  values: variables.$borders
404
404
  ),
405
- "border-left": (
406
- property: border-left-width border-left-style border-left-color,
407
- class: border-l,
405
+ "border-start": (
406
+ property: border-inline-start-width border-inline-start-style border-inline-start-color,
407
+ class: border-s,
408
408
  values: variables.$borders
409
409
  ),
410
410
  "border-style": (
@@ -483,12 +483,40 @@ $utilities: () !default;
483
483
  class: position,
484
484
  values: static relative fixed absolute sticky
485
485
  ),
486
+ // Sizing
486
487
  "fill-height": (
487
488
  property: height,
488
489
  class: fill,
489
490
  values: (
490
491
  height: 100%
491
492
  )
493
+ ),
494
+ "height": (
495
+ property: height,
496
+ class: h,
497
+ values: (
498
+ auto: auto,
499
+ screen: 100vh,
500
+ 0: 0,
501
+ 25: 25%,
502
+ 50: 50%,
503
+ 75: 75%,
504
+ 100: 100%
505
+ )
506
+ ),
507
+ "width": (
508
+ property: width,
509
+ class: w,
510
+ values: (
511
+ auto: auto,
512
+ 0: 0,
513
+ 25: 25%,
514
+ 33: 33%,
515
+ 50: 50%,
516
+ 66: 66%,
517
+ 75: 75%,
518
+ 100: 100%
519
+ )
492
520
  )
493
521
  ),
494
522
  $utilities
@@ -16,7 +16,8 @@
16
16
  opacity: calc(#{map.get(settings.$states, 'focus')} * var(--v-theme-overlay-multiplier))
17
17
 
18
18
  @if ($active)
19
- &--active
19
+ &--active,
20
+ &[aria-haspopup="menu"][aria-expanded="true"]
20
21
  @include active-states($selector)
21
22
 
22
23
  @mixin active-states ($selector: '::before')
@@ -1,8 +1,8 @@
1
1
  // Utils
2
- import { defineComponent as _defineComponent, getCurrentInstance, shallowReactive, toRaw, watchEffect } from 'vue';
2
+ import { defineComponent as _defineComponent, effectScope, getCurrentInstance, shallowReactive, shallowRef, toRaw, watch, watchEffect } from 'vue';
3
3
  import { consoleWarn } from "./console.mjs";
4
4
  import { toKebabCase } from "./helpers.mjs";
5
- import { useDefaults } from "../composables/defaults.mjs"; // Types
5
+ import { provideDefaults, useDefaults } from "../composables/defaults.mjs"; // Types
6
6
 
7
7
  function propIsDefined(vnode, prop) {
8
8
  var _vnode$props, _vnode$props2;
@@ -21,16 +21,33 @@ export const defineComponent = function defineComponent(options) {
21
21
  }
22
22
 
23
23
  if (options._setup) {
24
+ var _options$props;
25
+
26
+ options.props = (_options$props = options.props) != null ? _options$props : {};
27
+ options.props._as = String;
28
+
24
29
  options.setup = function setup(props, ctx) {
25
30
  const vm = getCurrentInstance();
26
31
  const defaults = useDefaults();
27
32
 
33
+ const _subcomponentDefaults = shallowRef();
34
+
28
35
  const _props = shallowReactive({ ...toRaw(props)
29
36
  });
30
37
 
31
38
  watchEffect(() => {
39
+ var _props$_as;
40
+
32
41
  const globalDefaults = defaults.value.global;
33
- const componentDefaults = defaults.value[options.name];
42
+ const componentDefaults = defaults.value[(_props$_as = props._as) != null ? _props$_as : options.name];
43
+
44
+ if (componentDefaults) {
45
+ const subComponents = Object.entries(componentDefaults).filter(_ref => {
46
+ let [key] = _ref;
47
+ return key.startsWith('V');
48
+ });
49
+ if (subComponents.length) _subcomponentDefaults.value = Object.fromEntries(subComponents);
50
+ }
34
51
 
35
52
  for (const prop of Object.keys(props)) {
36
53
  let newVal;
@@ -38,9 +55,9 @@ export const defineComponent = function defineComponent(options) {
38
55
  if (propIsDefined(vm.vnode, prop)) {
39
56
  newVal = props[prop];
40
57
  } else {
41
- var _ref, _componentDefaults$pr;
58
+ var _ref2, _componentDefaults$pr;
42
59
 
43
- newVal = (_ref = (_componentDefaults$pr = componentDefaults == null ? void 0 : componentDefaults[prop]) != null ? _componentDefaults$pr : globalDefaults == null ? void 0 : globalDefaults[prop]) != null ? _ref : props[prop];
60
+ newVal = (_ref2 = (_componentDefaults$pr = componentDefaults == null ? void 0 : componentDefaults[prop]) != null ? _componentDefaults$pr : globalDefaults == null ? void 0 : globalDefaults[prop]) != null ? _ref2 : props[prop];
44
61
  }
45
62
 
46
63
  if (_props[prop] !== newVal) {
@@ -48,7 +65,21 @@ export const defineComponent = function defineComponent(options) {
48
65
  }
49
66
  }
50
67
  });
51
- return options._setup(_props, ctx);
68
+
69
+ const setupBindings = options._setup(_props, ctx);
70
+
71
+ let scope;
72
+ watch(_subcomponentDefaults, (val, oldVal) => {
73
+ if (!val && scope) scope.stop();else if (val && !oldVal) {
74
+ scope = effectScope();
75
+ scope.run(() => {
76
+ provideDefaults(val);
77
+ });
78
+ }
79
+ }, {
80
+ immediate: true
81
+ });
82
+ return setupBindings;
52
83
  };
53
84
  }
54
85
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/defineComponent.tsx"],"names":["defineComponent","_defineComponent","getCurrentInstance","shallowReactive","toRaw","watchEffect","consoleWarn","toKebabCase","useDefaults","propIsDefined","vnode","prop","props","hasOwnProperty","options","_setup","setup","name","ctx","vm","defaults","_props","globalDefaults","value","global","componentDefaults","Object","keys","newVal","genericComponent","exposeDefaults"],"mappings":"AAAA;AACA,SACEA,eAAe,IAAIC,gBADrB,EAEEC,kBAFF,EAGEC,eAHF,EAIEC,KAJF,EAKEC,WALF,QAMO,KANP;SAOSC,W;SACAC,W;SACAC,W,uCAET;;AAcA,SAASC,aAAT,CAAwBC,KAAxB,EAAsCC,IAAtC,EAAoD;AAAA;;AAClD,SAAO,iBAAAD,KAAK,CAACE,KAAN,kCAAaC,cAAb,CAA4BF,IAA5B,wBACPD,KAAK,CAACE,KADC,qBACP,cAAaC,cAAb,CAA4BN,WAAW,CAACI,IAAD,CAAvC,CADO,CAAP;AAED;;AAED,OAAO,MAAMX,eAAe,GAAI,SAASA,eAAT,CAA0Bc,OAA1B,EAAqD;AAAA;;AACnFA,EAAAA,OAAO,CAACC,MAAR,sBAAiBD,OAAO,CAACC,MAAzB,8BAAmCD,OAAO,CAACE,KAA3C;;AAEA,MAAI,CAACF,OAAO,CAACG,IAAb,EAAmB;AACjBX,IAAAA,WAAW,CAAC,kFAAD,CAAX;AAEA,WAAOQ,OAAP;AACD;;AAED,MAAIA,OAAO,CAACC,MAAZ,EAAoB;AAClBD,IAAAA,OAAO,CAACE,KAAR,GAAgB,SAASA,KAAT,CAAgBJ,KAAhB,EAA4CM,GAA5C,EAAiD;AAC/D,YAAMC,EAAE,GAAGjB,kBAAkB,EAA7B;AACA,YAAMkB,QAAQ,GAAGZ,WAAW,EAA5B;;AAEA,YAAMa,MAAM,GAAGlB,eAAe,CAAC,EAAE,GAAGC,KAAK,CAACQ,KAAD;AAAV,OAAD,CAA9B;;AACAP,MAAAA,WAAW,CAAC,MAAM;AAChB,cAAMiB,cAAc,GAAGF,QAAQ,CAACG,KAAT,CAAeC,MAAtC;AACA,cAAMC,iBAAiB,GAAGL,QAAQ,CAACG,KAAT,CAAeT,OAAO,CAACG,IAAvB,CAA1B;;AAEA,aAAK,MAAMN,IAAX,IAAmBe,MAAM,CAACC,IAAP,CAAYf,KAAZ,CAAnB,EAAuC;AACrC,cAAIgB,MAAJ;;AACA,cAAInB,aAAa,CAACU,EAAE,CAACT,KAAJ,EAAWC,IAAX,CAAjB,EAAmC;AACjCiB,YAAAA,MAAM,GAAGhB,KAAK,CAACD,IAAD,CAAd;AACD,WAFD,MAEO;AAAA;;AACLiB,YAAAA,MAAM,oCAAGH,iBAAH,oBAAGA,iBAAiB,CAAGd,IAAH,CAApB,oCAAgCW,cAAhC,oBAAgCA,cAAc,CAAGX,IAAH,CAA9C,mBAA0DC,KAAK,CAACD,IAAD,CAArE;AACD;;AACD,cAAIU,MAAM,CAACV,IAAD,CAAN,KAAiBiB,MAArB,EAA6B;AAC3BP,YAAAA,MAAM,CAACV,IAAD,CAAN,GAAeiB,MAAf;AACD;AACF;AACF,OAfU,CAAX;AAiBA,aAAOd,OAAO,CAACC,MAAR,CAAeM,MAAf,EAAuBH,GAAvB,CAAP;AACD,KAvBD;AAwBD;;AAED,SAAOJ,OAAP;AACD,CArCM;AAoDP,OAAO,SAASe,gBAAT,GA4B4G;AAAA,MA1B9GC,cA0B8G,uEA1B7F,IA0B6F;AACjH,SAAOhB,OAAO,IAAI,CAACgB,cAAc,GAAG9B,eAAH,GAAqBC,gBAApC,EAAsDa,OAAtD,CAAlB;AACD","sourcesContent":["// Utils\nimport {\n defineComponent as _defineComponent,\n getCurrentInstance,\n shallowReactive,\n toRaw,\n watchEffect,\n} from 'vue'\nimport { consoleWarn } from '@/util/console'\nimport { toKebabCase } from '@/util/helpers'\nimport { useDefaults } from '@/composables/defaults'\n\n// Types\nimport type {\n ComponentOptions,\n ComponentOptionsMixin,\n ComponentOptionsWithObjectProps,\n ComponentPropsOptions,\n ComputedOptions,\n DefineComponent,\n EmitsOptions,\n MethodOptions,\n VNode,\n VNodeChild,\n} from 'vue'\n\nfunction propIsDefined (vnode: VNode, prop: string) {\n return vnode.props?.hasOwnProperty(prop) ||\n vnode.props?.hasOwnProperty(toKebabCase(prop))\n}\n\nexport const defineComponent = (function defineComponent (options: ComponentOptions) {\n options._setup = options._setup ?? options.setup\n\n if (!options.name) {\n consoleWarn('The component is missing an explicit name, unable to generate default prop value')\n\n return options\n }\n\n if (options._setup) {\n options.setup = function setup (props: Record<string, any>, ctx) {\n const vm = getCurrentInstance()!\n const defaults = useDefaults()\n\n const _props = shallowReactive({ ...toRaw(props) })\n watchEffect(() => {\n const globalDefaults = defaults.value.global\n const componentDefaults = defaults.value[options.name!]\n\n for (const prop of Object.keys(props)) {\n let newVal\n if (propIsDefined(vm.vnode, prop)) {\n newVal = props[prop]\n } else {\n newVal = componentDefaults?.[prop] ?? globalDefaults?.[prop] ?? props[prop]\n }\n if (_props[prop] !== newVal) {\n _props[prop] = newVal\n }\n }\n })\n\n return options._setup(_props, ctx)\n }\n }\n\n return options\n}) as unknown as typeof _defineComponent\n\ntype ToListeners<T extends string | number | symbol> = { [K in T]: K extends `on${infer U}` ? Uncapitalize<U> : K }[T]\nexport type SlotsToProps<T extends Record<string, Slot>> = {\n $children: () => (T['default'] | VNodeChild | { [K in keyof T]?: T[K] })\n 'v-slots': new () => { [K in keyof T]?: T[K] | false }\n}/* & { // TODO: individual slots are never converted from the constructor type\n [K in keyof T as `v-slot:${K & string}`]?: new () => (T[K] | false)\n} */\n\ntype Slot<T extends any[] = any[]> = (...args: T) => VNodeChild\nexport type MakeSlots<T extends Record<string, any[]>> = {\n [K in keyof T]?: Slot<T[K]>\n}\n\nexport function genericComponent<T extends (new () => {\n $slots?: Record<string, Slot>\n})> (exposeDefaults = true): <\n PropsOptions extends Readonly<ComponentPropsOptions>,\n RawBindings,\n D,\n C extends ComputedOptions = {},\n M extends MethodOptions = {},\n Mixin extends ComponentOptionsMixin = ComponentOptionsMixin,\n Extends extends ComponentOptionsMixin = ComponentOptionsMixin,\n E extends EmitsOptions = Record<string, any>,\n EE extends string = string,\n I = InstanceType<T>,\n Base = DefineComponent<\n (I extends Record<'$props', any> ? Omit<PropsOptions, keyof I['$props']> : PropsOptions) & (\n I extends Record<'$slots', any>\n ? SlotsToProps<I['$slots']>\n : {}\n ),\n RawBindings,\n D,\n C,\n M,\n Mixin,\n Extends,\n E extends any[] ? E : I extends Record<'$props', any> ? Omit<E, ToListeners<keyof I['$props']>> : E,\n EE\n >\n>(options: ComponentOptionsWithObjectProps<PropsOptions, RawBindings, D, C, M, Mixin, Extends, E, EE>) => Base & T {\n return options => (exposeDefaults ? defineComponent : _defineComponent)(options) as any\n}\n"],"file":"defineComponent.mjs"}
1
+ {"version":3,"sources":["../../src/util/defineComponent.tsx"],"names":["defineComponent","_defineComponent","effectScope","getCurrentInstance","shallowReactive","shallowRef","toRaw","watch","watchEffect","consoleWarn","toKebabCase","provideDefaults","useDefaults","propIsDefined","vnode","prop","props","hasOwnProperty","options","_setup","setup","name","_as","String","ctx","vm","defaults","_subcomponentDefaults","_props","globalDefaults","value","global","componentDefaults","subComponents","Object","entries","filter","key","startsWith","length","fromEntries","keys","newVal","setupBindings","scope","val","oldVal","stop","run","immediate","genericComponent","exposeDefaults"],"mappings":"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","sourcesContent":["// Utils\nimport {\n defineComponent as _defineComponent,\n effectScope,\n getCurrentInstance,\n shallowReactive,\n shallowRef,\n toRaw,\n watch,\n watchEffect,\n} from 'vue'\nimport { consoleWarn } from '@/util/console'\nimport { toKebabCase } from '@/util/helpers'\nimport { provideDefaults, useDefaults } from '@/composables/defaults'\n\n// Types\nimport type {\n ComponentOptions,\n ComponentOptionsMixin,\n ComponentOptionsWithObjectProps,\n ComponentPropsOptions,\n ComputedOptions,\n DefineComponent,\n EffectScope,\n EmitsOptions,\n MethodOptions,\n VNode,\n VNodeChild,\n} from 'vue'\n\nfunction propIsDefined (vnode: VNode, prop: string) {\n return vnode.props?.hasOwnProperty(prop) ||\n vnode.props?.hasOwnProperty(toKebabCase(prop))\n}\n\nexport const defineComponent = (function defineComponent (options: ComponentOptions) {\n options._setup = options._setup ?? options.setup\n\n if (!options.name) {\n consoleWarn('The component is missing an explicit name, unable to generate default prop value')\n\n return options\n }\n\n if (options._setup) {\n options.props = options.props ?? {}\n options.props._as = String\n options.setup = function setup (props: Record<string, any>, ctx) {\n const vm = getCurrentInstance()!\n const defaults = useDefaults()\n\n const _subcomponentDefaults = shallowRef()\n const _props = shallowReactive({ ...toRaw(props) })\n watchEffect(() => {\n const globalDefaults = defaults.value.global\n const componentDefaults = defaults.value[props._as ?? options.name!]\n\n if (componentDefaults) {\n const subComponents = Object.entries(componentDefaults).filter(([key]) => key.startsWith('V'))\n if (subComponents.length) _subcomponentDefaults.value = Object.fromEntries(subComponents)\n }\n\n for (const prop of Object.keys(props)) {\n let newVal\n if (propIsDefined(vm.vnode, prop)) {\n newVal = props[prop]\n } else {\n newVal = componentDefaults?.[prop] ?? globalDefaults?.[prop] ?? props[prop]\n }\n if (_props[prop] !== newVal) {\n _props[prop] = newVal\n }\n }\n })\n\n const setupBindings = options._setup(_props, ctx)\n\n let scope: EffectScope\n watch(_subcomponentDefaults, (val, oldVal) => {\n if (!val && scope) scope.stop()\n else if (val && !oldVal) {\n scope = effectScope()\n scope.run(() => {\n provideDefaults(val)\n })\n }\n }, { immediate: true })\n\n return setupBindings\n }\n }\n\n return options\n}) as unknown as typeof _defineComponent\n\ntype ToListeners<T extends string | number | symbol> = { [K in T]: K extends `on${infer U}` ? Uncapitalize<U> : K }[T]\nexport type SlotsToProps<T extends Record<string, Slot>> = {\n $children: () => (T['default'] | VNodeChild | { [K in keyof T]?: T[K] })\n 'v-slots': new () => { [K in keyof T]?: T[K] | false }\n}/* & { // TODO: individual slots are never converted from the constructor type\n [K in keyof T as `v-slot:${K & string}`]?: new () => (T[K] | false)\n} */\n\ntype Slot<T extends any[] = any[]> = (...args: T) => VNodeChild\nexport type MakeSlots<T extends Record<string, any[]>> = {\n [K in keyof T]?: Slot<T[K]>\n}\n\nexport function genericComponent<T extends (new () => {\n $slots?: Record<string, Slot>\n})> (exposeDefaults = true): <\n PropsOptions extends Readonly<ComponentPropsOptions>,\n RawBindings,\n D,\n C extends ComputedOptions = {},\n M extends MethodOptions = {},\n Mixin extends ComponentOptionsMixin = ComponentOptionsMixin,\n Extends extends ComponentOptionsMixin = ComponentOptionsMixin,\n E extends EmitsOptions = Record<string, any>,\n EE extends string = string,\n I = InstanceType<T>,\n Base = DefineComponent<\n (I extends Record<'$props', any> ? Omit<PropsOptions, keyof I['$props']> : PropsOptions) & (\n I extends Record<'$slots', any>\n ? SlotsToProps<I['$slots']>\n : {}\n ),\n RawBindings,\n D,\n C,\n M,\n Mixin,\n Extends,\n E extends any[] ? E : I extends Record<'$props', any> ? Omit<E, ToListeners<keyof I['$props']>> : E,\n EE\n >\n>(options: ComponentOptionsWithObjectProps<PropsOptions, RawBindings, D, C, M, Mixin, Extends, E, EE>) => Base & T {\n return options => (exposeDefaults ? defineComponent : _defineComponent)(options) as any\n}\n"],"file":"defineComponent.mjs"}
@@ -1,6 +1,6 @@
1
1
  // Utilities
2
2
  import { getCurrentInstance as _getCurrentInstance } from 'vue';
3
- import { toKebabCase } from "./index.mjs";
3
+ import { toKebabCase } from "./helpers.mjs";
4
4
  export function getCurrentInstance(name, message) {
5
5
  const vm = _getCurrentInstance();
6
6
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/getCurrentInstance.ts"],"names":["getCurrentInstance","_getCurrentInstance","toKebabCase","name","message","vm","Error","getCurrentInstanceName","type"],"mappings":"AAAA;AACA,SAASA,kBAAkB,IAAIC,mBAA/B,QAA0D,KAA1D;SACSC,W;AAET,OAAO,SAASF,kBAAT,CAA6BG,IAA7B,EAA2CC,OAA3C,EAA6D;AAClE,QAAMC,EAAE,GAAGJ,mBAAmB,EAA9B;;AAEA,MAAI,CAACI,EAAL,EAAS;AACP,UAAM,IAAIC,KAAJ,CAAW,aAAYH,IAAK,IAAGC,OAAO,IAAI,6CAA8C,EAAxF,CAAN;AACD;;AAED,SAAOC,EAAP;AACD;AAED,OAAO,SAASE,sBAAT,GAAuD;AAAA;;AAAA,MAAtBJ,IAAsB,uEAAf,aAAe;AAC5D,SAAOD,WAAW,0BAACF,kBAAkB,CAACG,IAAD,CAAlB,CAAyBK,IAA1B,qBAAC,sBAA+BL,IAAhC,CAAlB;AACD","sourcesContent":["// Utilities\nimport { getCurrentInstance as _getCurrentInstance } from 'vue'\nimport { toKebabCase } from '@/util'\n\nexport function getCurrentInstance (name: string, message?: string) {\n const vm = _getCurrentInstance()\n\n if (!vm) {\n throw new Error(`[Vuetify] ${name} ${message || 'must be called from inside a setup function'}`)\n }\n\n return vm\n}\n\nexport function getCurrentInstanceName (name = 'composables') {\n return toKebabCase(getCurrentInstance(name).type?.name)\n}\n"],"file":"getCurrentInstance.mjs"}
1
+ {"version":3,"sources":["../../src/util/getCurrentInstance.ts"],"names":["getCurrentInstance","_getCurrentInstance","toKebabCase","name","message","vm","Error","getCurrentInstanceName","type"],"mappings":"AAAA;AACA,SAASA,kBAAkB,IAAIC,mBAA/B,QAA0D,KAA1D;SACSC,W;AAET,OAAO,SAASF,kBAAT,CAA6BG,IAA7B,EAA2CC,OAA3C,EAA6D;AAClE,QAAMC,EAAE,GAAGJ,mBAAmB,EAA9B;;AAEA,MAAI,CAACI,EAAL,EAAS;AACP,UAAM,IAAIC,KAAJ,CAAW,aAAYH,IAAK,IAAGC,OAAO,IAAI,6CAA8C,EAAxF,CAAN;AACD;;AAED,SAAOC,EAAP;AACD;AAED,OAAO,SAASE,sBAAT,GAAuD;AAAA;;AAAA,MAAtBJ,IAAsB,uEAAf,aAAe;AAC5D,SAAOD,WAAW,0BAACF,kBAAkB,CAACG,IAAD,CAAlB,CAAyBK,IAA1B,qBAAC,sBAA+BL,IAAhC,CAAlB;AACD","sourcesContent":["// Utilities\nimport { getCurrentInstance as _getCurrentInstance } from 'vue'\nimport { toKebabCase } from '@/util/helpers'\n\nexport function getCurrentInstance (name: string, message?: string) {\n const vm = _getCurrentInstance()\n\n if (!vm) {\n throw new Error(`[Vuetify] ${name} ${message || 'must be called from inside a setup function'}`)\n }\n\n return vm\n}\n\nexport function getCurrentInstanceName (name = 'composables') {\n return toKebabCase(getCurrentInstance(name).type?.name)\n}\n"],"file":"getCurrentInstance.mjs"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/helpers.ts"],"names":["camelize","Fragment","getNestedValue","obj","path","fallback","last","length","undefined","i","deepEqual","a","b","Date","getTime","Object","props","keys","every","p","getObjectValueByPath","replace","split","getPropertyFromItem","item","property","Array","isArray","value","createRange","start","from","v","k","getZIndex","el","nodeType","Node","ELEMENT_NODE","index","window","getComputedStyle","getPropertyValue","parentNode","tagsToReplace","escapeHTML","str","tag","filterObjectOnKeys","filtered","key","convertToUnit","unit","isNaN","String","isFinite","Number","isObject","isComponentInstance","$el","keyCodes","freeze","enter","tab","delete","esc","space","up","down","left","right","end","home","del","backspace","insert","pageup","pagedown","shift","keyValues","o","pick","paths","found","create","rest","some","RegExp","test","filterInputAttrs","attrs","arrayDiff","diff","includes","push","groupItems","items","groupBy","groupDesc","groups","current","val","name","wrapInArray","sortItems","sortBy","sortDesc","locale","customSorters","stringCollator","Intl","Collator","sensitivity","usage","sort","sortKey","sortA","sortB","customResult","map","s","toString","toLocaleLowerCase","compare","defaultFilter","search","indexOf","searchItems","toLowerCase","trim","filter","debounce","fn","delay","timeoutId","args","clearTimeout","setTimeout","throttle","limit","throttling","getPrefixedSlots","prefix","slots","startsWith","reduce","clamp","min","max","Math","padEnd","char","repeat","chunk","size","chunked","substr","humanReadableFileSize","bytes","base","abs","toFixed","camelizeObjectKeys","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","fillArray","fill","getUid","_uid","flattenFragments","nodes","node","type","children","flat","randomHexColor","n","random","slice","toKebabCase","findChildren","vnode","child","component","subTree","findChildrenWithProvide","getOwnPropertySymbols","provides","CircularBuffer","constructor","values","concat","getEventCoordinates","e","clientX","touches","clientY"],"mappings":"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","sourcesContent":["// Utilities\nimport { camelize, Fragment } from 'vue'\n\n// Types\nimport type { ComponentInternalInstance, ComponentPublicInstance, InjectionKey, Ref, Slots, VNode, VNodeChild } from 'vue'\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path: string, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\ntype SelectItemKey = string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any)\n\nexport function getPropertyFromItem (\n item: object,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property == null) return item === undefined ? fallback : item\n\n if (item !== Object(item)) return fallback === undefined ? item : fallback\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number, start = 0): number[] {\n return Array.from({ length }, (v, k) => start + k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = +window.getComputedStyle(el).getPropertyValue('z-index')\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nconst tagsToReplace: Record<string, string> = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n}\n\nexport function escapeHTML (str: string): string {\n return str.replace(/[&<>]/g, tag => tagsToReplace[tag] || tag)\n}\n\nexport function filterObjectOnKeys<T, K extends keyof T> (obj: T, keys: K[]): { [N in K]: T[N] } {\n const filtered = {} as { [N in K]: T[N] }\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]\n if (typeof obj[key] !== 'undefined') {\n filtered[key] = obj[key]\n }\n }\n\n return filtered\n}\n\nexport function convertToUnit (str: number, unit?: string): string\nexport function convertToUnit (str: string | number | null | undefined, unit?: string): string | undefined\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n } else if (isNaN(+str!)) {\n return String(str)\n } else if (!isFinite(+str!)) {\n return undefined\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\n}\n\nexport function isComponentInstance (obj: any): obj is ComponentPublicInstance {\n return obj?.$el\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\nexport const keyValues = Object.freeze({\n enter: 'Enter',\n tab: 'Tab',\n delete: 'Delete',\n esc: 'Escape',\n space: 'Space',\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n end: 'End',\n home: 'Home',\n del: 'Delete',\n backspace: 'Backspace',\n insert: 'Insert',\n pageup: 'PageUp',\n pagedown: 'PageDown',\n shift: 'Shift',\n})\n\nexport function keys<O> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\ntype MaybePick<\n T extends object,\n U extends Extract<keyof T, string>\n> = Record<string, unknown> extends T ? Partial<Pick<T, U>> : Pick<T, U>\n\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: U[]): [yes: MaybePick<T, U>, no: Omit<T, U>]\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[]): [yes: Partial<T>, no: Partial<T>]\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[]): [yes: Partial<T>, no: Partial<T>] {\n const found = Object.create(null)\n const rest = Object.create(null)\n\n for (const key in obj) {\n if (\n paths.some(path => path instanceof RegExp\n ? path.test(key)\n : path === key\n )\n ) {\n found[key] = obj[key]\n } else {\n rest[key] = obj[key]\n }\n }\n\n return [found, rest]\n}\n\n/**\n * Filter attributes that should be applied to\n * the root element of a an input component. Remaining\n * attributes should be passed to the <input> element inside.\n */\nexport function filterInputAttrs (attrs: Record<string, unknown>) {\n return pick(attrs, ['class', 'style', 'id', /^data-/])\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (!a.includes(b[i])) diff.push(b[i])\n }\n return diff\n}\n\ninterface ItemGroup<T> {\n name: string\n items: T[]\n}\n\nexport function groupItems<T extends any = any> (\n items: T[],\n groupBy: string[],\n groupDesc: boolean[]\n): ItemGroup<T>[] {\n const key = groupBy[0]\n const groups: ItemGroup<T>[] = []\n let current\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n const val = getObjectValueByPath(item, key, null)\n if (current !== val) {\n current = val\n groups.push({\n name: val ?? '',\n items: [],\n })\n }\n groups[groups.length - 1].items.push(item)\n }\n return groups\n}\n\nexport function wrapInArray<T> (v: T | T[] | null | undefined): T[] {\n return v == null\n ? []\n : Array.isArray(v)\n ? v : [v]\n}\n\ntype DataTableCompareFunction<T = any> = (a: T, b: T) => number\nexport function sortItems<T extends any, K extends keyof T> (\n items: T[],\n sortBy: string[],\n sortDesc: boolean[],\n locale: string,\n customSorters?: Record<K, DataTableCompareFunction<T[K]>>\n): T[] {\n if (sortBy === null || !sortBy.length) return items\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n return items.sort((a, b) => {\n for (let i = 0; i < sortBy.length; i++) {\n const sortKey = sortBy[i]\n\n let sortA = getObjectValueByPath(a, sortKey)\n let sortB = getObjectValueByPath(b, sortKey)\n\n if (sortDesc[i]) {\n [sortA, sortB] = [sortB, sortA]\n }\n\n if (customSorters?.[sortKey as K]) {\n const customResult = customSorters[sortKey as K](sortA, sortB)\n\n if (!customResult) continue\n\n return customResult\n }\n\n // Check if both cannot be evaluated\n if (sortA === null && sortB === null) {\n continue\n }\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n return sortA.getTime() - sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => (s || '').toString().toLocaleLowerCase())\n\n if (sortA !== sortB) {\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n })\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\ntype Writable<T> = {\n -readonly [P in keyof T]: T[P]\n}\n\n/**\n * Filters slots to only those starting with `prefix`, removing the prefix\n */\nexport function getPrefixedSlots (prefix: string, slots: Slots): Slots {\n return Object.keys(slots)\n .filter(k => k.startsWith(prefix))\n .reduce<Writable<Slots>>((obj, k) => {\n obj[k.replace(prefix, '')] = slots[k]\n return obj\n }, {})\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function humanReadableFileSize (bytes: number, base: 1000 | 1024 = 1000): string {\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = base === 1024 ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\n}\n\nexport function mergeDeep (\n source: Record<string, any> = {},\n target: Record<string, any> = {},\n arrayFn?: (a: unknown[], b: unknown[]) => unknown[],\n) {\n const out: Record<string, any> = {}\n\n for (const key in source) {\n out[key] = source[key]\n }\n\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (Array.isArray(sourceProperty) && Array.isArray(targetProperty) && arrayFn) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\n}\n\nexport function getUid () {\n return getUid._uid++\n}\ngetUid._uid = 0\n\nexport function flattenFragments (nodes: VNode[]): VNode[] {\n return nodes.map(node => {\n if (node.type === Fragment) {\n return flattenFragments(node.children as VNode[])\n } else {\n return node\n }\n }).flat()\n}\n\nexport const randomHexColor = () => {\n const n = (Math.random() * 0xfffff * 1000000).toString(16)\n return '#' + n.slice(0, 6)\n}\n\nexport function toKebabCase (str = '') {\n return str\n .replace(/[^a-z]/gi, '-')\n .replace(/\\B([A-Z])/g, '-$1')\n .toLowerCase()\n}\n\nexport type MaybeRef<T> = T | Ref<T>\n\nexport function findChildren (vnode?: VNodeChild): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') {\n return []\n }\n\n if (Array.isArray(vnode)) {\n return vnode\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (vnode.component) {\n return [vnode.component, ...findChildren(vnode.component?.subTree)]\n .filter(v => v)\n .flat(1)\n }\n\n return []\n}\n\nexport function findChildrenWithProvide (\n key: InjectionKey<any> | symbol,\n vnode?: VNodeChild,\n): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') return []\n\n if (Array.isArray(vnode)) {\n return vnode.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.component) {\n if (Object.getOwnPropertySymbols(vnode.component.provides).includes(key as symbol)) {\n return [vnode.component]\n } else if (vnode.component.subTree) {\n return findChildrenWithProvide(key, vnode.component.subTree).flat(1)\n }\n }\n\n return []\n}\n\nexport class CircularBuffer<T = never> {\n readonly #arr: Array<T> = []\n #pointer = 0\n\n constructor (public readonly size: number) {}\n\n push (val: T) {\n this.#arr[this.#pointer] = val\n this.#pointer = (this.#pointer + 1) % this.size\n }\n\n values (): T[] {\n return this.#arr.slice(this.#pointer).concat(this.#arr.slice(0, this.#pointer))\n }\n}\n\nexport type UnionToIntersection<U> =\n (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never\n\nexport function getEventCoordinates (e: MouseEvent | TouchEvent) {\n if ('touches' in e) {\n return { clientX: e.touches[0].clientX, clientY: e.touches[0].clientY }\n }\n\n return { clientX: e.clientX, clientY: e.clientY }\n}\n"],"file":"helpers.mjs"}
1
+ {"version":3,"sources":["../../src/util/helpers.ts"],"names":["camelize","Fragment","getNestedValue","obj","path","fallback","last","length","undefined","i","deepEqual","a","b","Date","getTime","Object","props","keys","every","p","getObjectValueByPath","replace","split","getPropertyFromItem","item","property","Array","isArray","value","createRange","start","from","v","k","getZIndex","el","nodeType","Node","ELEMENT_NODE","index","window","getComputedStyle","getPropertyValue","parentNode","tagsToReplace","escapeHTML","str","tag","filterObjectOnKeys","filtered","key","convertToUnit","unit","isNaN","String","isFinite","Number","isObject","isComponentInstance","$el","keyCodes","freeze","enter","tab","delete","esc","space","up","down","left","right","end","home","del","backspace","insert","pageup","pagedown","shift","keyValues","o","pick","paths","found","create","rest","some","RegExp","test","filterInputAttrs","attrs","arrayDiff","diff","includes","push","groupItems","items","groupBy","groupDesc","groups","current","val","name","wrapInArray","sortItems","sortBy","sortDesc","locale","customSorters","stringCollator","Intl","Collator","sensitivity","usage","sort","sortKey","sortA","sortB","customResult","map","s","toString","toLocaleLowerCase","compare","defaultFilter","search","indexOf","searchItems","toLowerCase","trim","filter","debounce","fn","delay","timeoutId","args","clearTimeout","setTimeout","throttle","limit","throttling","getPrefixedSlots","prefix","slots","startsWith","reduce","clamp","min","max","Math","padEnd","char","repeat","chunk","size","chunked","substr","humanReadableFileSize","bytes","base","abs","toFixed","camelizeObjectKeys","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","fillArray","fill","getUid","_uid","flattenFragments","nodes","node","type","children","flat","randomHexColor","n","random","slice","toKebabCase","findChildren","vnode","child","component","subTree","findChildrenWithProvide","getOwnPropertySymbols","provides","CircularBuffer","constructor","values","concat","getEventCoordinates","e","clientX","touches","clientY"],"mappings":"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","sourcesContent":["// Utilities\nimport { camelize, Fragment } from 'vue'\n\n// Types\nimport type { ComponentInternalInstance, ComponentPublicInstance, InjectionKey, Ref, Slots, VNode, VNodeChild } from 'vue'\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path: string, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\nexport type SelectItemKey = string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any)\n\nexport function getPropertyFromItem (\n item: any,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property == null) return item === undefined ? fallback : item\n\n if (item !== Object(item)) return fallback === undefined ? item : fallback\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number, start = 0): number[] {\n return Array.from({ length }, (v, k) => start + k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = +window.getComputedStyle(el).getPropertyValue('z-index')\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nconst tagsToReplace: Record<string, string> = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n}\n\nexport function escapeHTML (str: string): string {\n return str.replace(/[&<>]/g, tag => tagsToReplace[tag] || tag)\n}\n\nexport function filterObjectOnKeys<T, K extends keyof T> (obj: T, keys: K[]): { [N in K]: T[N] } {\n const filtered = {} as { [N in K]: T[N] }\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]\n if (typeof obj[key] !== 'undefined') {\n filtered[key] = obj[key]\n }\n }\n\n return filtered\n}\n\nexport function convertToUnit (str: number, unit?: string): string\nexport function convertToUnit (str: string | number | null | undefined, unit?: string): string | undefined\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n } else if (isNaN(+str!)) {\n return String(str)\n } else if (!isFinite(+str!)) {\n return undefined\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\n}\n\nexport function isComponentInstance (obj: any): obj is ComponentPublicInstance {\n return obj?.$el\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\nexport const keyValues = Object.freeze({\n enter: 'Enter',\n tab: 'Tab',\n delete: 'Delete',\n esc: 'Escape',\n space: 'Space',\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n end: 'End',\n home: 'Home',\n del: 'Delete',\n backspace: 'Backspace',\n insert: 'Insert',\n pageup: 'PageUp',\n pagedown: 'PageDown',\n shift: 'Shift',\n})\n\nexport function keys<O> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\ntype MaybePick<\n T extends object,\n U extends Extract<keyof T, string>\n> = Record<string, unknown> extends T ? Partial<Pick<T, U>> : Pick<T, U>\n\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: U[]): [yes: MaybePick<T, U>, no: Omit<T, U>]\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[]): [yes: Partial<T>, no: Partial<T>]\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[]): [yes: Partial<T>, no: Partial<T>] {\n const found = Object.create(null)\n const rest = Object.create(null)\n\n for (const key in obj) {\n if (\n paths.some(path => path instanceof RegExp\n ? path.test(key)\n : path === key\n )\n ) {\n found[key] = obj[key]\n } else {\n rest[key] = obj[key]\n }\n }\n\n return [found, rest]\n}\n\n/**\n * Filter attributes that should be applied to\n * the root element of a an input component. Remaining\n * attributes should be passed to the <input> element inside.\n */\nexport function filterInputAttrs (attrs: Record<string, unknown>) {\n return pick(attrs, ['class', 'style', 'id', /^data-/])\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (!a.includes(b[i])) diff.push(b[i])\n }\n return diff\n}\n\ninterface ItemGroup<T> {\n name: string\n items: T[]\n}\n\nexport function groupItems<T extends any = any> (\n items: T[],\n groupBy: string[],\n groupDesc: boolean[]\n): ItemGroup<T>[] {\n const key = groupBy[0]\n const groups: ItemGroup<T>[] = []\n let current\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n const val = getObjectValueByPath(item, key, null)\n if (current !== val) {\n current = val\n groups.push({\n name: val ?? '',\n items: [],\n })\n }\n groups[groups.length - 1].items.push(item)\n }\n return groups\n}\n\nexport function wrapInArray<T> (v: T | T[] | null | undefined): T[] {\n return v == null\n ? []\n : Array.isArray(v)\n ? v : [v]\n}\n\ntype DataTableCompareFunction<T = any> = (a: T, b: T) => number\nexport function sortItems<T extends any, K extends keyof T> (\n items: T[],\n sortBy: string[],\n sortDesc: boolean[],\n locale: string,\n customSorters?: Record<K, DataTableCompareFunction<T[K]>>\n): T[] {\n if (sortBy === null || !sortBy.length) return items\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n return items.sort((a, b) => {\n for (let i = 0; i < sortBy.length; i++) {\n const sortKey = sortBy[i]\n\n let sortA = getObjectValueByPath(a, sortKey)\n let sortB = getObjectValueByPath(b, sortKey)\n\n if (sortDesc[i]) {\n [sortA, sortB] = [sortB, sortA]\n }\n\n if (customSorters?.[sortKey as K]) {\n const customResult = customSorters[sortKey as K](sortA, sortB)\n\n if (!customResult) continue\n\n return customResult\n }\n\n // Check if both cannot be evaluated\n if (sortA === null && sortB === null) {\n continue\n }\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n return sortA.getTime() - sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => (s || '').toString().toLocaleLowerCase())\n\n if (sortA !== sortB) {\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n })\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\ntype Writable<T> = {\n -readonly [P in keyof T]: T[P]\n}\n\n/**\n * Filters slots to only those starting with `prefix`, removing the prefix\n */\nexport function getPrefixedSlots (prefix: string, slots: Slots): Slots {\n return Object.keys(slots)\n .filter(k => k.startsWith(prefix))\n .reduce<Writable<Slots>>((obj, k) => {\n obj[k.replace(prefix, '')] = slots[k]\n return obj\n }, {})\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function humanReadableFileSize (bytes: number, base: 1000 | 1024 = 1000): string {\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = base === 1024 ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\n}\n\nexport function mergeDeep (\n source: Record<string, any> = {},\n target: Record<string, any> = {},\n arrayFn?: (a: unknown[], b: unknown[]) => unknown[],\n) {\n const out: Record<string, any> = {}\n\n for (const key in source) {\n out[key] = source[key]\n }\n\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (Array.isArray(sourceProperty) && Array.isArray(targetProperty) && arrayFn) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\n}\n\nexport function getUid () {\n return getUid._uid++\n}\ngetUid._uid = 0\n\nexport function flattenFragments (nodes: VNode[]): VNode[] {\n return nodes.map(node => {\n if (node.type === Fragment) {\n return flattenFragments(node.children as VNode[])\n } else {\n return node\n }\n }).flat()\n}\n\nexport const randomHexColor = () => {\n const n = (Math.random() * 0xfffff * 1000000).toString(16)\n return '#' + n.slice(0, 6)\n}\n\nexport function toKebabCase (str = '') {\n return str\n .replace(/[^a-z]/gi, '-')\n .replace(/\\B([A-Z])/g, '-$1')\n .toLowerCase()\n}\n\nexport type MaybeRef<T> = T | Ref<T>\n\nexport function findChildren (vnode?: VNodeChild): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') {\n return []\n }\n\n if (Array.isArray(vnode)) {\n return vnode\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (vnode.component) {\n return [vnode.component, ...findChildren(vnode.component?.subTree)]\n .filter(v => v)\n .flat(1)\n }\n\n return []\n}\n\nexport function findChildrenWithProvide (\n key: InjectionKey<any> | symbol,\n vnode?: VNodeChild,\n): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') return []\n\n if (Array.isArray(vnode)) {\n return vnode.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.component) {\n if (Object.getOwnPropertySymbols(vnode.component.provides).includes(key as symbol)) {\n return [vnode.component]\n } else if (vnode.component.subTree) {\n return findChildrenWithProvide(key, vnode.component.subTree).flat(1)\n }\n }\n\n return []\n}\n\nexport class CircularBuffer<T = never> {\n readonly #arr: Array<T> = []\n #pointer = 0\n\n constructor (public readonly size: number) {}\n\n push (val: T) {\n this.#arr[this.#pointer] = val\n this.#pointer = (this.#pointer + 1) % this.size\n }\n\n values (): T[] {\n return this.#arr.slice(this.#pointer).concat(this.#arr.slice(0, this.#pointer))\n }\n}\n\nexport type UnionToIntersection<U> =\n (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never\n\nexport function getEventCoordinates (e: MouseEvent | TouchEvent) {\n if ('touches' in e) {\n return { clientX: e.touches[0].clientX, clientY: e.touches[0].clientY }\n }\n\n return { clientX: e.clientX, clientY: e.clientY }\n}\n"],"file":"helpers.mjs"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vuetify/nightly",
3
3
  "description": "Vue Material Component Framework",
4
- "version": "3.0.0-beta.0",
4
+ "version": "3.0.0-beta.2",
5
5
  "author": {
6
6
  "name": "John Leider",
7
7
  "email": "john@vuetifyjs.com"
@@ -81,6 +81,9 @@
81
81
  ]
82
82
  }
83
83
  },
84
+ "engines": {
85
+ "node": "^12.20 || >=14.13"
86
+ },
84
87
  "scripts": {
85
88
  "watch": "yarn build:lib --watch",
86
89
  "dev": "cross-env NODE_ENV=development vite",
@@ -102,58 +105,57 @@
102
105
  "cy:run": "percy exec -- cypress run-ct"
103
106
  },
104
107
  "devDependencies": {
105
- "@cypress/vite-dev-server": "^2.2.0",
106
- "@cypress/vue": "^3.0.5",
107
- "@formatjs/intl": "^1.17.0",
108
+ "@cypress/vite-dev-server": "^2.2.2",
109
+ "@cypress/vue": "^3.1.1",
110
+ "@formatjs/intl": "^2.1.1",
108
111
  "@fortawesome/fontawesome-svg-core": "^1.2.36",
109
112
  "@fortawesome/free-solid-svg-icons": "^5.15.4",
110
113
  "@fortawesome/vue-fontawesome": "^3.0.0-5",
111
- "@percy/cli": "^1.0.0-beta.70",
114
+ "@percy/cli": "^1.0.0-beta.76",
112
115
  "@percy/cypress": "^3.1.1",
113
- "@rollup/plugin-alias": "^3.1.8",
114
- "@rollup/plugin-babel": "^5.3.0",
115
- "@rollup/plugin-node-resolve": "^13.0.6",
116
- "@rollup/plugin-typescript": "^8.3.0",
116
+ "@rollup/plugin-alias": "^3.1.9",
117
+ "@rollup/plugin-babel": "^5.3.1",
118
+ "@rollup/plugin-node-resolve": "^13.1.3",
119
+ "@rollup/plugin-typescript": "^8.3.1",
117
120
  "@types/jest": "^26.0.24",
118
- "@types/node": "^16.11.7",
119
- "@types/resize-observer-browser": "^0.1.6",
120
- "@vitejs/plugin-vue": "^2.0.1",
121
- "@vitejs/plugin-vue-jsx": "^1.3.2",
121
+ "@types/node": "^16.11.26",
122
+ "@types/resize-observer-browser": "^0.1.7",
123
+ "@vitejs/plugin-vue": "^2.3.1",
124
+ "@vitejs/plugin-vue-jsx": "^1.3.9",
122
125
  "@vue/babel-plugin-jsx": "^1.1.1",
123
126
  "@vue/test-utils": "2.0.0-rc.9",
124
- "@vueuse/head": "^0.6.0",
127
+ "@vueuse/head": "^0.7.5",
125
128
  "acorn-walk": "^8.2.0",
126
- "autoprefixer": "^10.4.0",
129
+ "autoprefixer": "^10.4.4",
127
130
  "babel-plugin-add-import-extension": "1.5.1",
128
131
  "babel-plugin-module-resolver": "^4.1.0",
129
132
  "babel-plugin-transform-define": "^2.0.1",
130
133
  "babel-polyfill": "^6.26.0",
131
134
  "concurrently": "^4.1.1",
132
- "cssnano": "^5.0.10",
135
+ "cssnano": "^5.1.6",
133
136
  "cy-mobile-commands": "^0.3.0",
134
- "cypress": "^9.0.0",
137
+ "cypress": "^9.5.3",
135
138
  "cypress-file-upload": "^5.0.8",
136
- "cypress-real-events": "^1.6.0",
139
+ "cypress-real-events": "^1.7.0",
137
140
  "dotenv": "^8.6.0",
138
141
  "eslint-plugin-cypress": "^2.12.1",
139
- "eslint-plugin-jest": "^25.2.4",
142
+ "eslint-plugin-jest": "^25.7.0",
140
143
  "identity-obj-proxy": "^3.0.0",
141
144
  "jest-canvas-mock": "^2.3.1",
142
- "postcss": "^8.3.11",
143
- "rollup": "^2.60.0",
144
- "rollup-plugin-dts": "^4.0.1",
145
- "rollup-plugin-sass": "^1.2.9",
145
+ "postcss": "^8.4.12",
146
+ "rollup": "^2.70.1",
147
+ "rollup-plugin-dts": "^4.2.0",
148
+ "rollup-plugin-sass": "^1.2.12",
146
149
  "rollup-plugin-sourcemaps": "^0.6.3",
147
150
  "rollup-plugin-terser": "^7.0.2",
148
- "vite": "^2.6.14",
149
- "vite-ssr": "^0.14.3",
150
- "vue-i18n": "^9.2.0-beta.23",
151
- "vue-meta": "^2.4.0",
152
- "vue-router": "^4.0.12"
151
+ "vite": "^2.9.1",
152
+ "vite-ssr": "^0.15.0",
153
+ "vue-i18n": "^9.2.0-beta.34",
154
+ "vue-router": "^4.0.14"
153
155
  },
154
156
  "peerDependencies": {
155
157
  "@formatjs/intl": "^1.0.0 || ^2.0.0",
156
- "vue": "^3.2.19",
158
+ "vue": "^3.2.31",
157
159
  "vue-i18n": "^9.0.0"
158
160
  },
159
161
  "peerDependenciesMeta": {