@vuetify/nightly 3.2.0-dev-20230214.0 → 3.2.0-dev-20230322.0

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 (336) hide show
  1. package/CHANGELOG.md +5 -17
  2. package/dist/json/attributes.json +243 -59
  3. package/dist/json/tags.json +48 -2
  4. package/dist/json/web-types.json +1648 -279
  5. package/dist/vuetify-labs.css +666 -482
  6. package/dist/vuetify-labs.d.ts +59419 -13475
  7. package/dist/vuetify-labs.esm.js +797 -531
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +797 -531
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +524 -355
  12. package/dist/vuetify.d.ts +55670 -14368
  13. package/dist/vuetify.esm.js +607 -462
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +607 -462
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +793 -793
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.ts +6 -9
  21. package/lib/blueprints/md1.d.ts +6 -9
  22. package/lib/blueprints/md2.d.ts +6 -9
  23. package/lib/blueprints/md3.d.ts +6 -9
  24. package/lib/blueprints/md3.mjs +6 -0
  25. package/lib/blueprints/md3.mjs.map +1 -1
  26. package/lib/components/VAlert/VAlert.css +1 -1
  27. package/lib/components/VAlert/VAlert.mjs +29 -15
  28. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  29. package/lib/components/VAlert/_variables.scss +1 -1
  30. package/lib/components/VAlert/index.d.ts +515 -65
  31. package/lib/components/VApp/VApp.css +1 -0
  32. package/lib/components/VApp/VApp.sass +1 -0
  33. package/lib/components/VApp/index.d.ts +161 -17
  34. package/lib/components/VAppBar/VAppBar.mjs +9 -4
  35. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  36. package/lib/components/VAppBar/index.d.ts +624 -82
  37. package/lib/components/VAutocomplete/VAutocomplete.mjs +23 -8
  38. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  39. package/lib/components/VAutocomplete/index.d.ts +1744 -113
  40. package/lib/components/VAvatar/index.d.ts +207 -25
  41. package/lib/components/VBadge/index.d.ts +286 -36
  42. package/lib/components/VBanner/VBanner.mjs +19 -12
  43. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  44. package/lib/components/VBanner/index.d.ts +485 -67
  45. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +6 -2
  46. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  47. package/lib/components/VBottomNavigation/index.d.ts +323 -36
  48. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +11 -7
  49. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  50. package/lib/components/VBreadcrumbs/index.d.ts +346 -42
  51. package/lib/components/VBtn/VBtn.css +0 -5
  52. package/lib/components/VBtn/VBtn.mjs +65 -58
  53. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  54. package/lib/components/VBtn/VBtn.sass +0 -7
  55. package/lib/components/VBtn/_variables.scss +0 -2
  56. package/lib/components/VBtn/index.d.ts +454 -59
  57. package/lib/components/VBtnGroup/VBtnGroup.mjs +1 -7
  58. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  59. package/lib/components/VBtnGroup/index.d.ts +187 -22
  60. package/lib/components/VBtnToggle/VBtnToggle.mjs +2 -2
  61. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  62. package/lib/components/VBtnToggle/index.d.ts +248 -32
  63. package/lib/components/VCard/VCard.mjs +10 -6
  64. package/lib/components/VCard/VCard.mjs.map +1 -1
  65. package/lib/components/VCard/VCardItem.mjs +27 -23
  66. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  67. package/lib/components/VCard/index.d.ts +958 -132
  68. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  69. package/lib/components/VCarousel/index.d.ts +585 -87
  70. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  71. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  72. package/lib/components/VCheckbox/VCheckboxBtn.mjs +1 -4
  73. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  74. package/lib/components/VCheckbox/index.d.ts +841 -119
  75. package/lib/components/VChip/VChip.css +110 -90
  76. package/lib/components/VChip/VChip.mjs +70 -48
  77. package/lib/components/VChip/VChip.mjs.map +1 -1
  78. package/lib/components/VChip/_mixins.scss +27 -23
  79. package/lib/components/VChip/index.d.ts +476 -66
  80. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  81. package/lib/components/VChipGroup/index.d.ts +229 -28
  82. package/lib/components/VCode/index.d.ts +112 -13
  83. package/lib/components/VColorPicker/VColorPicker.mjs +9 -1
  84. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  85. package/lib/components/VColorPicker/VColorPickerCanvas.css +2 -1
  86. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +36 -18
  87. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  88. package/lib/components/VColorPicker/VColorPickerCanvas.sass +2 -1
  89. package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -4
  90. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  91. package/lib/components/VColorPicker/VColorPickerPreview.mjs +2 -2
  92. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  93. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  94. package/lib/components/VColorPicker/index.d.ts +284 -20
  95. package/lib/components/VColorPicker/util/index.mjs +2 -5
  96. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  97. package/lib/components/VCombobox/VCombobox.mjs +23 -8
  98. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  99. package/lib/components/VCombobox/index.d.ts +1756 -113
  100. package/lib/components/VCounter/index.d.ts +1909 -78
  101. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +4 -1
  102. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  103. package/lib/components/VDefaultsProvider/index.d.ts +136 -18
  104. package/lib/components/VDialog/VDialog.css +31 -24
  105. package/lib/components/VDialog/VDialog.mjs +2 -2
  106. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  107. package/lib/components/VDialog/VDialog.sass +19 -12
  108. package/lib/components/VDialog/index.d.ts +2403 -124
  109. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  110. package/lib/components/VDivider/index.d.ts +132 -19
  111. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  112. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  113. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  114. package/lib/components/VExpansionPanel/index.d.ts +741 -104
  115. package/lib/components/VField/VField.mjs.map +1 -1
  116. package/lib/components/VField/index.d.ts +179 -23
  117. package/lib/components/VFileInput/VFileInput.mjs +1 -0
  118. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  119. package/lib/components/VFileInput/index.d.ts +1069 -93
  120. package/lib/components/VFooter/VFooter.css +2 -0
  121. package/lib/components/VFooter/VFooter.sass +2 -0
  122. package/lib/components/VFooter/_variables.scss +2 -0
  123. package/lib/components/VFooter/index.d.ts +206 -25
  124. package/lib/components/VForm/index.d.ts +207 -20
  125. package/lib/components/VGrid/VCol.mjs +6 -5
  126. package/lib/components/VGrid/VCol.mjs.map +1 -1
  127. package/lib/components/VGrid/VRow.mjs +4 -4
  128. package/lib/components/VGrid/VRow.mjs.map +1 -1
  129. package/lib/components/VGrid/index.d.ts +745 -64
  130. package/lib/components/VHover/index.d.ts +188 -29
  131. package/lib/components/VIcon/index.d.ts +500 -44
  132. package/lib/components/VImg/VImg.mjs +2 -2
  133. package/lib/components/VImg/VImg.mjs.map +1 -1
  134. package/lib/components/VImg/index.d.ts +281 -40
  135. package/lib/components/VInput/VInput.mjs.map +1 -1
  136. package/lib/components/VInput/index.d.ts +321 -47
  137. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  138. package/lib/components/VItemGroup/index.d.ts +313 -45
  139. package/lib/components/VKbd/VKbd.css +1 -0
  140. package/lib/components/VKbd/VKbd.sass +1 -0
  141. package/lib/components/VKbd/_variables.scss +1 -0
  142. package/lib/components/VKbd/index.d.ts +112 -13
  143. package/lib/components/VLabel/index.d.ts +115 -16
  144. package/lib/components/VLayout/index.d.ts +302 -35
  145. package/lib/components/VLazy/VLazy.mjs +4 -1
  146. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  147. package/lib/components/VLazy/index.d.ts +222 -27
  148. package/lib/components/VList/VListChildren.mjs +2 -2
  149. package/lib/components/VList/VListChildren.mjs.map +1 -1
  150. package/lib/components/VList/VListGroup.mjs +1 -4
  151. package/lib/components/VList/VListGroup.mjs.map +1 -1
  152. package/lib/components/VList/VListItem.mjs +23 -19
  153. package/lib/components/VList/VListItem.mjs.map +1 -1
  154. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  155. package/lib/components/VList/index.d.ts +1500 -191
  156. package/lib/components/VLocaleProvider/index.d.ts +123 -16
  157. package/lib/components/VMain/index.d.ts +121 -14
  158. package/lib/components/VMenu/VMenu.css +4 -4
  159. package/lib/components/VMenu/VMenu.mjs +8 -7
  160. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  161. package/lib/components/VMenu/VMenu.sass +1 -1
  162. package/lib/components/VMenu/index.d.ts +2411 -121
  163. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  164. package/lib/components/VMessages/index.d.ts +1934 -87
  165. package/lib/components/VNavigationDrawer/index.d.ts +382 -47
  166. package/lib/components/VNoSsr/index.d.ts +6 -0
  167. package/lib/components/VOverlay/VOverlay.css +2 -2
  168. package/lib/components/VOverlay/VOverlay.mjs +1 -4
  169. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  170. package/lib/components/VOverlay/VOverlay.sass +1 -1
  171. package/lib/components/VOverlay/_variables.scss +1 -1
  172. package/lib/components/VOverlay/index.d.ts +527 -75
  173. package/lib/components/VOverlay/scrollStrategies.mjs +2 -2
  174. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  175. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  176. package/lib/components/VPagination/index.d.ts +504 -56
  177. package/lib/components/VParallax/VParallax.mjs +3 -3
  178. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  179. package/lib/components/VParallax/index.d.ts +144 -19
  180. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  181. package/lib/components/VProgressCircular/index.d.ts +189 -22
  182. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  183. package/lib/components/VProgressLinear/index.d.ts +325 -42
  184. package/lib/components/VRadio/index.d.ts +318 -46
  185. package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -6
  186. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  187. package/lib/components/VRadioGroup/index.d.ts +468 -66
  188. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  189. package/lib/components/VRangeSlider/index.d.ts +530 -66
  190. package/lib/components/VRating/VRating.css +0 -4
  191. package/lib/components/VRating/VRating.mjs +6 -35
  192. package/lib/components/VRating/VRating.mjs.map +1 -1
  193. package/lib/components/VRating/VRating.sass +0 -5
  194. package/lib/components/VRating/index.d.ts +309 -38
  195. package/lib/components/VResponsive/index.d.ts +144 -21
  196. package/lib/components/VSelect/VSelect.mjs +23 -8
  197. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  198. package/lib/components/VSelect/index.d.ts +3150 -247
  199. package/lib/components/VSelectionControl/VSelectionControl.mjs +1 -4
  200. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  201. package/lib/components/VSelectionControl/index.d.ts +90 -10
  202. package/lib/components/VSelectionControlGroup/index.d.ts +245 -35
  203. package/lib/components/VSheet/VSheet.mjs +16 -12
  204. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  205. package/lib/components/VSheet/index.d.ts +196 -27
  206. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  207. package/lib/components/VSlideGroup/index.d.ts +488 -70
  208. package/lib/components/VSlider/VSliderTrack.mjs +1 -0
  209. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  210. package/lib/components/VSlider/index.d.ts +523 -65
  211. package/lib/components/VSlider/slider.mjs +5 -6
  212. package/lib/components/VSlider/slider.mjs.map +1 -1
  213. package/lib/components/VSnackbar/VSnackbar.css +2 -9
  214. package/lib/components/VSnackbar/VSnackbar.mjs +10 -11
  215. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  216. package/lib/components/VSnackbar/VSnackbar.sass +3 -10
  217. package/lib/components/VSnackbar/index.d.ts +1255 -74
  218. package/lib/components/VSwitch/VSwitch.mjs +2 -2
  219. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  220. package/lib/components/VSwitch/index.d.ts +503 -75
  221. package/lib/components/VSystemBar/VSystemBar.css +5 -1
  222. package/lib/components/VSystemBar/VSystemBar.mjs +6 -2
  223. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  224. package/lib/components/VSystemBar/VSystemBar.sass +5 -1
  225. package/lib/components/VSystemBar/_variables.scss +4 -1
  226. package/lib/components/VSystemBar/index.d.ts +186 -23
  227. package/lib/components/VTable/VTable.mjs.map +1 -1
  228. package/lib/components/VTable/index.d.ts +193 -26
  229. package/lib/components/VTabs/VTab.mjs +7 -23
  230. package/lib/components/VTabs/VTab.mjs.map +1 -1
  231. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  232. package/lib/components/VTabs/index.d.ts +628 -64
  233. package/lib/components/VTextField/VTextField.mjs +9 -5
  234. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  235. package/lib/components/VTextField/index.d.ts +1447 -101
  236. package/lib/components/VTextarea/VTextarea.mjs +8 -1
  237. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  238. package/lib/components/VTextarea/index.d.ts +1043 -93
  239. package/lib/components/VThemeProvider/index.d.ts +127 -16
  240. package/lib/components/VTimeline/VTimelineDivider.mjs +18 -10
  241. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  242. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  243. package/lib/components/VTimeline/index.d.ts +446 -60
  244. package/lib/components/VToolbar/VToolbar.mjs +10 -9
  245. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  246. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  247. package/lib/components/VToolbar/index.d.ts +552 -73
  248. package/lib/components/VTooltip/VTooltip.css +3 -3
  249. package/lib/components/VTooltip/VTooltip.mjs +4 -4
  250. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  251. package/lib/components/VTooltip/VTooltip.sass +1 -1
  252. package/lib/components/VTooltip/index.d.ts +1315 -73
  253. package/lib/components/VValidation/index.d.ts +204 -27
  254. package/lib/components/VWindow/index.d.ts +541 -75
  255. package/lib/components/index.d.ts +55694 -14389
  256. package/lib/components/transitions/createTransition.mjs +1 -1
  257. package/lib/components/transitions/createTransition.mjs.map +1 -1
  258. package/lib/components/transitions/index.d.ts +2144 -259
  259. package/lib/composables/defaults.mjs +5 -1
  260. package/lib/composables/defaults.mjs.map +1 -1
  261. package/lib/composables/display.mjs +15 -10
  262. package/lib/composables/display.mjs.map +1 -1
  263. package/lib/composables/form.mjs.map +1 -1
  264. package/lib/composables/loader.mjs.map +1 -1
  265. package/lib/composables/nested/nested.mjs +2 -2
  266. package/lib/composables/nested/nested.mjs.map +1 -1
  267. package/lib/composables/nested/selectStrategies.mjs +7 -1
  268. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  269. package/lib/composables/proxiedModel.mjs +1 -1
  270. package/lib/composables/proxiedModel.mjs.map +1 -1
  271. package/lib/composables/resizeObserver.mjs.map +1 -1
  272. package/lib/composables/stack.mjs +2 -2
  273. package/lib/composables/stack.mjs.map +1 -1
  274. package/lib/composables/theme.mjs +28 -23
  275. package/lib/composables/theme.mjs.map +1 -1
  276. package/lib/composables/variant.mjs.map +1 -1
  277. package/lib/entry-bundler.mjs +1 -1
  278. package/lib/framework.mjs +1 -1
  279. package/lib/index.d.ts +6 -9
  280. package/lib/labs/VDataTable/VDataTable.css +15 -0
  281. package/lib/labs/VDataTable/VDataTable.mjs +45 -19
  282. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  283. package/lib/labs/VDataTable/VDataTable.sass +9 -0
  284. package/lib/labs/VDataTable/VDataTableFooter.mjs +3 -2
  285. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  286. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  287. package/lib/labs/VDataTable/VDataTableRow.mjs +8 -2
  288. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  289. package/lib/labs/VDataTable/VDataTableRows.mjs +6 -7
  290. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  291. package/lib/labs/VDataTable/VDataTableServer.mjs +41 -19
  292. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  293. package/lib/labs/VDataTable/VDataTableVirtual.mjs +27 -14
  294. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  295. package/lib/labs/VDataTable/composables/expand.mjs +1 -1
  296. package/lib/labs/VDataTable/composables/expand.mjs.map +1 -1
  297. package/lib/labs/VDataTable/composables/group.mjs +12 -1
  298. package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
  299. package/lib/labs/VDataTable/composables/options.mjs +4 -10
  300. package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
  301. package/lib/labs/VDataTable/composables/paginate.mjs +25 -4
  302. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  303. package/lib/labs/VDataTable/composables/select.mjs +1 -1
  304. package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
  305. package/lib/labs/VDataTable/composables/sort.mjs +19 -3
  306. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  307. package/lib/labs/VDataTable/index.d.ts +4934 -317
  308. package/lib/labs/VVirtualScroll/VVirtualScroll.mjs +18 -5
  309. package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  310. package/lib/labs/VVirtualScroll/index.d.ts +41 -7
  311. package/lib/labs/components.d.ts +4970 -324
  312. package/lib/locale/adapters/vue-i18n.d.ts +1 -1
  313. package/lib/locale/adapters/vue-i18n.mjs +1 -1
  314. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  315. package/lib/locale/index.mjs +1 -1
  316. package/lib/locale/index.mjs.map +1 -1
  317. package/lib/styles/elements/_global.sass +0 -4
  318. package/lib/styles/generic/_index.scss +0 -1
  319. package/lib/styles/generic/_transitions.scss +111 -9
  320. package/lib/styles/main.css +316 -167
  321. package/lib/styles/settings/_utilities.scss +7 -0
  322. package/lib/styles/tools/_sheet.sass +3 -6
  323. package/lib/styles/utilities/_display.sass +6 -5
  324. package/lib/styles/utilities/_elevation.scss +13 -0
  325. package/lib/styles/utilities/_index.sass +3 -2
  326. package/lib/styles/utilities/_screenreaders.sass +13 -11
  327. package/lib/util/animation.mjs +8 -1
  328. package/lib/util/animation.mjs.map +1 -1
  329. package/lib/util/colorUtils.mjs +4 -5
  330. package/lib/util/colorUtils.mjs.map +1 -1
  331. package/lib/util/defineComponent.mjs +15 -7
  332. package/lib/util/defineComponent.mjs.map +1 -1
  333. package/lib/util/helpers.mjs +4 -0
  334. package/lib/util/helpers.mjs.map +1 -1
  335. package/package.json +15 -7
  336. package/lib/styles/generic/_elevation.scss +0 -10
@@ -1,6 +1,128 @@
1
1
  import * as vue from 'vue';
2
+ import { ComponentPropsOptions, ExtractPropTypes } from 'vue';
2
3
 
3
- declare const VResponsive: vue.DefineComponent<{} & {
4
+ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> {
5
+ filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): [yes: Partial<Pick<T, U>>, no: Omit<T, U>];
6
+ }
7
+
8
+ declare const VResponsive: {
9
+ new (...args: any[]): {
10
+ $: vue.ComponentInternalInstance;
11
+ $data: {};
12
+ $props: Partial<{}> & Omit<{} & {
13
+ height?: string | number | undefined;
14
+ width?: string | number | undefined;
15
+ aspectRatio?: string | number | undefined;
16
+ maxHeight?: string | number | undefined;
17
+ maxWidth?: string | number | undefined;
18
+ minHeight?: string | number | undefined;
19
+ minWidth?: string | number | undefined;
20
+ contentClass?: string | undefined;
21
+ } & {
22
+ $children?: {} | vue.VNodeChild | {
23
+ default?: (() => vue.VNodeChild) | undefined;
24
+ additional?: (() => vue.VNodeChild) | undefined;
25
+ };
26
+ $slots?: {
27
+ default?: (() => vue.VNodeChild) | undefined;
28
+ additional?: (() => vue.VNodeChild) | undefined;
29
+ } | undefined;
30
+ 'v-slots'?: {
31
+ default?: false | (() => vue.VNodeChild) | undefined;
32
+ additional?: false | (() => vue.VNodeChild) | undefined;
33
+ } | undefined;
34
+ } & {
35
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
36
+ "v-slot:additional"?: false | (() => vue.VNodeChild) | undefined;
37
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, never>;
38
+ $attrs: {
39
+ [x: string]: unknown;
40
+ };
41
+ $refs: {
42
+ [x: string]: unknown;
43
+ };
44
+ $slots: Readonly<{
45
+ [name: string]: vue.Slot | undefined;
46
+ }>;
47
+ $root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
48
+ $parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
49
+ $emit: (event: string, ...args: any[]) => void;
50
+ $el: any;
51
+ $options: vue.ComponentOptionsBase<{} & {
52
+ height?: string | number | undefined;
53
+ width?: string | number | undefined;
54
+ aspectRatio?: string | number | undefined;
55
+ maxHeight?: string | number | undefined;
56
+ maxWidth?: string | number | undefined;
57
+ minHeight?: string | number | undefined;
58
+ minWidth?: string | number | undefined;
59
+ contentClass?: string | undefined;
60
+ } & {
61
+ $children?: {} | vue.VNodeChild | {
62
+ default?: (() => vue.VNodeChild) | undefined;
63
+ additional?: (() => vue.VNodeChild) | undefined;
64
+ };
65
+ $slots?: {
66
+ default?: (() => vue.VNodeChild) | undefined;
67
+ additional?: (() => vue.VNodeChild) | undefined;
68
+ } | undefined;
69
+ 'v-slots'?: {
70
+ default?: false | (() => vue.VNodeChild) | undefined;
71
+ additional?: false | (() => vue.VNodeChild) | undefined;
72
+ } | undefined;
73
+ } & {
74
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
75
+ "v-slot:additional"?: false | (() => vue.VNodeChild) | undefined;
76
+ }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {}, {}, string> & {
77
+ beforeCreate?: ((() => void) | (() => void)[]) | undefined;
78
+ created?: ((() => void) | (() => void)[]) | undefined;
79
+ beforeMount?: ((() => void) | (() => void)[]) | undefined;
80
+ mounted?: ((() => void) | (() => void)[]) | undefined;
81
+ beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
82
+ updated?: ((() => void) | (() => void)[]) | undefined;
83
+ activated?: ((() => void) | (() => void)[]) | undefined;
84
+ deactivated?: ((() => void) | (() => void)[]) | undefined;
85
+ beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
86
+ beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
87
+ destroyed?: ((() => void) | (() => void)[]) | undefined;
88
+ unmounted?: ((() => void) | (() => void)[]) | undefined;
89
+ renderTracked?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
90
+ renderTriggered?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
91
+ errorCaptured?: (((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void)[]) | undefined;
92
+ };
93
+ $forceUpdate: () => void;
94
+ $nextTick: typeof vue.nextTick;
95
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: vue.WatchOptions<boolean> | undefined): vue.WatchStopHandle;
96
+ } & {} & {
97
+ height?: string | number | undefined;
98
+ width?: string | number | undefined;
99
+ aspectRatio?: string | number | undefined;
100
+ maxHeight?: string | number | undefined;
101
+ maxWidth?: string | number | undefined;
102
+ minHeight?: string | number | undefined;
103
+ minWidth?: string | number | undefined;
104
+ contentClass?: string | undefined;
105
+ } & {
106
+ $children?: {} | vue.VNodeChild | {
107
+ default?: (() => vue.VNodeChild) | undefined;
108
+ additional?: (() => vue.VNodeChild) | undefined;
109
+ };
110
+ $slots?: {
111
+ default?: (() => vue.VNodeChild) | undefined;
112
+ additional?: (() => vue.VNodeChild) | undefined;
113
+ } | undefined;
114
+ 'v-slots'?: {
115
+ default?: false | (() => vue.VNodeChild) | undefined;
116
+ additional?: false | (() => vue.VNodeChild) | undefined;
117
+ } | undefined;
118
+ } & {
119
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
120
+ "v-slot:additional"?: false | (() => vue.VNodeChild) | undefined;
121
+ } & vue.ShallowUnwrapRef<{}> & {} & vue.ComponentCustomProperties & {};
122
+ __isFragment?: undefined;
123
+ __isTeleport?: undefined;
124
+ __isSuspense?: undefined;
125
+ } & vue.ComponentOptionsBase<{} & {
4
126
  height?: string | number | undefined;
5
127
  width?: string | number | undefined;
6
128
  aspectRatio?: string | number | undefined;
@@ -14,27 +136,10 @@ declare const VResponsive: vue.DefineComponent<{} & {
14
136
  default?: (() => vue.VNodeChild) | undefined;
15
137
  additional?: (() => vue.VNodeChild) | undefined;
16
138
  };
17
- 'v-slots'?: {
18
- default?: false | (() => vue.VNodeChild) | undefined;
19
- additional?: false | (() => vue.VNodeChild) | undefined;
20
- } | undefined;
21
- } & {
22
- "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
23
- "v-slot:additional"?: false | (() => vue.VNodeChild) | undefined;
24
- }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, {} & {
25
- height?: string | number | undefined;
26
- width?: string | number | undefined;
27
- aspectRatio?: string | number | undefined;
28
- maxHeight?: string | number | undefined;
29
- maxWidth?: string | number | undefined;
30
- minHeight?: string | number | undefined;
31
- minWidth?: string | number | undefined;
32
- contentClass?: string | undefined;
33
- } & {
34
- $children?: {} | vue.VNodeChild | {
139
+ $slots?: {
35
140
  default?: (() => vue.VNodeChild) | undefined;
36
141
  additional?: (() => vue.VNodeChild) | undefined;
37
- };
142
+ } | undefined;
38
143
  'v-slots'?: {
39
144
  default?: false | (() => vue.VNodeChild) | undefined;
40
145
  additional?: false | (() => vue.VNodeChild) | undefined;
@@ -42,7 +147,25 @@ declare const VResponsive: vue.DefineComponent<{} & {
42
147
  } & {
43
148
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
44
149
  "v-slot:additional"?: false | (() => vue.VNodeChild) | undefined;
45
- }, {}>;
150
+ }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {}, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
151
+ height: (StringConstructor | NumberConstructor)[];
152
+ maxHeight: (StringConstructor | NumberConstructor)[];
153
+ maxWidth: (StringConstructor | NumberConstructor)[];
154
+ minHeight: (StringConstructor | NumberConstructor)[];
155
+ minWidth: (StringConstructor | NumberConstructor)[];
156
+ width: (StringConstructor | NumberConstructor)[];
157
+ aspectRatio: (StringConstructor | NumberConstructor)[];
158
+ contentClass: StringConstructor;
159
+ }, vue.ExtractPropTypes<{
160
+ height: (StringConstructor | NumberConstructor)[];
161
+ maxHeight: (StringConstructor | NumberConstructor)[];
162
+ maxWidth: (StringConstructor | NumberConstructor)[];
163
+ minHeight: (StringConstructor | NumberConstructor)[];
164
+ minWidth: (StringConstructor | NumberConstructor)[];
165
+ width: (StringConstructor | NumberConstructor)[];
166
+ aspectRatio: (StringConstructor | NumberConstructor)[];
167
+ contentClass: StringConstructor;
168
+ }>>;
46
169
  type VResponsive = InstanceType<typeof VResponsive>;
47
170
 
48
171
  export { VResponsive };
@@ -3,7 +3,7 @@ import { createTextVNode as _createTextVNode, mergeProps as _mergeProps, createV
3
3
  import "./VSelect.css";
4
4
 
5
5
  // Components
6
- import { filterVTextFieldProps, makeVTextFieldProps } from "../VTextField/VTextField.mjs";
6
+ import { makeVTextFieldProps } from "../VTextField/VTextField.mjs";
7
7
  import { VCheckboxBtn } from "../VCheckbox/index.mjs";
8
8
  import { VChip } from "../VChip/index.mjs";
9
9
  import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
@@ -73,7 +73,15 @@ export const VSelect = genericComponent()({
73
73
  t
74
74
  } = useLocale();
75
75
  const vTextFieldRef = ref();
76
- const menu = useProxiedModel(props, 'menu');
76
+ const vMenuRef = ref();
77
+ const _menu = useProxiedModel(props, 'menu');
78
+ const menu = computed({
79
+ get: () => _menu.value,
80
+ set: v => {
81
+ if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
82
+ _menu.value = v;
83
+ }
84
+ });
77
85
  const {
78
86
  items,
79
87
  transformIn,
@@ -155,7 +163,7 @@ export const VSelect = genericComponent()({
155
163
  useRender(() => {
156
164
  const hasChips = !!(props.chips || slots.chip);
157
165
  const hasList = !!(!props.hideNoData || displayItems.value.length || slots.prepend || slots.append || slots['no-data']);
158
- const [textFieldProps] = filterVTextFieldProps(props);
166
+ const [textFieldProps] = VTextField.filterProps(props);
159
167
  return _createVNode(VTextField, _mergeProps({
160
168
  "ref": vTextFieldRef
161
169
  }, textFieldProps, {
@@ -180,6 +188,7 @@ export const VSelect = genericComponent()({
180
188
  }), {
181
189
  ...slots,
182
190
  default: () => _createVNode(_Fragment, null, [_createVNode(VMenu, _mergeProps({
191
+ "ref": vMenuRef,
183
192
  "modelValue": menu.value,
184
193
  "onUpdate:modelValue": $event => menu.value = $event,
185
194
  "activator": "parent",
@@ -240,7 +249,13 @@ export const VSelect = genericComponent()({
240
249
  return _createVNode("div", {
241
250
  "key": item.value,
242
251
  "class": "v-select__selection"
243
- }, [hasChips ? _createVNode(VDefaultsProvider, {
252
+ }, [hasChips ? !slots.chip ? _createVNode(VChip, _mergeProps({
253
+ "key": "chip",
254
+ "closable": props.closableChips,
255
+ "size": "small",
256
+ "text": item.title
257
+ }, slotProps), null) : _createVNode(VDefaultsProvider, {
258
+ "key": "chip-defaults",
244
259
  "defaults": {
245
260
  VChip: {
246
261
  closable: props.closableChips,
@@ -249,15 +264,15 @@ export const VSelect = genericComponent()({
249
264
  }
250
265
  }
251
266
  }, {
252
- default: () => [slots.chip ? slots.chip({
267
+ default: () => [slots.chip?.({
253
268
  item,
254
269
  index,
255
270
  props: slotProps
256
- }) : _createVNode(VChip, slotProps, null)]
257
- }) : slots.selection ? slots.selection({
271
+ })]
272
+ }) : slots.selection?.({
258
273
  item,
259
274
  index
260
- }) : _createVNode("span", {
275
+ }) ?? _createVNode("span", {
261
276
  "class": "v-select__selection-text"
262
277
  }, [item.title, props.multiple && index < selections.value.length - 1 && _createVNode("span", {
263
278
  "class": "v-select__selection-comma"
@@ -1 +1 @@
1
- {"version":3,"file":"VSelect.mjs","names":["filterVTextFieldProps","makeVTextFieldProps","VCheckboxBtn","VChip","VDefaultsProvider","VDialogTransition","VList","VListItem","VMenu","VTextField","forwardRefs","IconValue","makeItemsProps","useItems","makeTransitionProps","useForm","useLocale","useProxiedModel","computed","mergeProps","ref","deepEqual","genericComponent","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","eager","hideNoData","hideSelected","menu","menuIcon","type","default","menuProps","Object","multiple","noDataText","String","openOnClear","valueComparator","Function","itemChildren","VSelect","name","props","modelValue","transition","component","emits","val","setup","slots","t","vTextFieldRef","items","transformIn","transformOut","model","v","transformed","form","selections","value","map","find","item","selected","selection","displayItems","filter","some","s","listRef","onClear","e","onMousedownControl","length","readonly","isReadonly","onKeydown","includes","key","preventDefault","focus","select","index","findIndex","splice","onBlur","$el","contains","relatedTarget","onFocusout","hasChips","chip","hasList","prepend","append","textFieldProps","join","externalValue","onClick","isSelected","undefined","onChipClose","stopPropagation","slotProps","closable","size","text","title"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { filterVTextFieldProps, makeVTextFieldProps } from '@/components/VTextField/VTextField'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDialogTransition } from '@/components/transitions'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/items'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useForm } from '@/composables/form'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, mergeProps, ref } from 'vue'\nimport { deepEqual, genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { InternalItem } from '@/composables/items'\nimport type { MakeSlots, SlotsToProps } from '@/util'\nimport type { PropType } from 'vue'\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType<VMenu['$props']>,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeItemsProps({ itemChildren: false }),\n}, 'v-select')\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = T extends Primitive\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? readonly Val<T, ReturnObject>[]\n : Val<T, ReturnObject>\n\nexport const VSelect = genericComponent<new <\n T,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value<T, ReturnObject, Multiple> = Value<T, ReturnObject, Multiple>\n>() => {\n $props: {\n items?: readonly T[]\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V\n 'onUpdate:modelValue'?: (val: V) => void\n } & SlotsToProps<\n Omit<VInputSlots & VFieldSlots, 'default'> & MakeSlots<{\n item: [{ item: InternalItem<T>, index: number, props: Record<string, unknown> }]\n chip: [{ item: InternalItem<T>, index: number, props: Record<string, unknown> }]\n selection: [{ item: InternalItem<T>, index: number }]\n 'prepend-item': []\n 'append-item': []\n 'no-data': []\n }>\n >\n}>()({\n name: 'VSelect',\n\n props: {\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition } }),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n 'update:menu': (val: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const menu = useProxiedModel(props, 'menu')\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const form = useForm()\n const selections = computed(() => {\n return model.value.map(v => {\n return items.value.find(item => props.valueComparator(item.value, v.value)) || v\n })\n })\n const selected = computed(() => selections.value.map(selection => selection.props.value))\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !selections.value.some(s => s === item))\n }\n return items.value\n })\n\n const listRef = ref<VList>()\n\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (\n (props.hideNoData && !items.value.length) ||\n props.readonly || form?.isReadonly.value\n ) return\n\n menu.value = !menu.value\n }\n function onKeydown (e: KeyboardEvent) {\n if (props.readonly || form?.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (e.key === 'ArrowDown') {\n listRef.value?.focus('next')\n } else if (e.key === 'ArrowUp') {\n listRef.value?.focus('prev')\n } else if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n }\n function select (item: InternalItem) {\n if (props.multiple) {\n const index = selected.value.findIndex(selection => props.valueComparator(selection, item.value))\n\n if (index === -1) {\n model.value = [...model.value, item]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n } else {\n model.value = [item]\n menu.value = false\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\n }\n }\n function onFocusout (e: FocusEvent) {\n if (e.relatedTarget == null) {\n vTextFieldRef.value?.focus()\n }\n }\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n const hasList = !!((!props.hideNoData || displayItems.value.length) || slots.prepend || slots.append || slots['no-data'])\n const [textFieldProps] = filterVTextFieldProps(props)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n modelValue={ model.value.map(v => v.props.value).join(', ') }\n onUpdate:modelValue={ v => { if (v == null) model.value = [] } }\n validationValue={ model.externalValue }\n dirty={ model.value.length > 0 }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n },\n ]}\n appendInnerIcon={ props.menuIcon }\n readonly\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-select__content\"\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n transition={ props.transition }\n { ...props.menuProps }\n >\n { hasList && (\n <VList\n ref={ listRef }\n selected={ selected.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onFocusout={ onFocusout }\n >\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem title={ t(props.noDataText) } />\n )) }\n\n { slots['prepend-item']?.() }\n\n { displayItems.value.map((item, index) => {\n if (slots.item) {\n return slots.item?.({\n item,\n index,\n props: mergeProps(item.props, { onClick: () => select(item) }),\n })\n }\n\n return (\n <VListItem\n key={ index }\n { ...item.props }\n onClick={ () => select(item) }\n >\n {{\n prepend: ({ isSelected }) => props.multiple && !props.hideSelected ? (\n <VCheckboxBtn modelValue={ isSelected } ripple={ false } />\n ) : undefined,\n }}\n </VListItem>\n )\n })}\n\n { slots['append-item']?.() }\n </VList>\n ) }\n </VMenu>\n\n { selections.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\n\n return (\n <div key={ item.value } class=\"v-select__selection\">\n { hasChips ? (\n <VDefaultsProvider\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: item.title,\n },\n }}\n >\n { slots.chip\n ? slots.chip({ item, index, props: slotProps })\n : (<VChip { ...slotProps } />)\n }\n </VDefaultsProvider>\n ) : (\n slots.selection\n ? slots.selection({ item, index })\n : (\n <span class=\"v-select__selection-text\">\n { item.title }\n { props.multiple && (index < selections.value.length - 1) && (\n <span class=\"v-select__selection-comma\">,</span>\n ) }\n </span>\n )\n )}\n </div>\n )\n }) }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VSelect.mjs","names":["makeVTextFieldProps","VCheckboxBtn","VChip","VDefaultsProvider","VDialogTransition","VList","VListItem","VMenu","VTextField","forwardRefs","IconValue","makeItemsProps","useItems","makeTransitionProps","useForm","useLocale","useProxiedModel","computed","mergeProps","ref","deepEqual","genericComponent","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","eager","hideNoData","hideSelected","menu","menuIcon","type","default","menuProps","Object","multiple","noDataText","String","openOnClear","valueComparator","Function","itemChildren","VSelect","name","props","modelValue","transition","component","emits","val","setup","slots","t","vTextFieldRef","vMenuRef","_menu","get","value","set","v","ΨopenChildren","items","transformIn","transformOut","model","transformed","form","selections","map","find","item","selected","selection","displayItems","filter","some","s","listRef","onClear","e","onMousedownControl","length","readonly","isReadonly","onKeydown","includes","key","preventDefault","focus","select","index","findIndex","splice","onBlur","$el","contains","relatedTarget","onFocusout","hasChips","chip","hasList","prepend","append","textFieldProps","filterProps","join","externalValue","onClick","isSelected","undefined","onChipClose","stopPropagation","slotProps","title","closable","size","text"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { makeVTextFieldProps } from '@/components/VTextField/VTextField'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDialogTransition } from '@/components/transitions'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/items'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useForm } from '@/composables/form'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, mergeProps, ref } from 'vue'\nimport { deepEqual, genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { InternalItem } from '@/composables/items'\nimport type { MakeSlots, SlotsToProps } from '@/util'\nimport type { PropType } from 'vue'\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType<VMenu['$props']>,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeItemsProps({ itemChildren: false }),\n}, 'v-select')\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = T extends Primitive\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? readonly Val<T, ReturnObject>[]\n : Val<T, ReturnObject>\n\nexport const VSelect = genericComponent<new <\n T,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value<T, ReturnObject, Multiple> = Value<T, ReturnObject, Multiple>\n>() => {\n $props: {\n items?: readonly T[]\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V\n 'onUpdate:modelValue'?: (val: V) => void\n } & SlotsToProps<\n Omit<VInputSlots & VFieldSlots, 'default'> & MakeSlots<{\n item: [{ item: InternalItem<T>, index: number, props: Record<string, unknown> }]\n chip: [{ item: InternalItem<T>, index: number, props: Record<string, unknown> }]\n selection: [{ item: InternalItem<T>, index: number }]\n 'prepend-item': []\n 'append-item': []\n 'no-data': []\n }>\n >\n}>()({\n name: 'VSelect',\n\n props: {\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition } }),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n 'update:menu': (val: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const vMenuRef = ref<VMenu>()\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return\n _menu.value = v\n },\n })\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const form = useForm()\n const selections = computed(() => {\n return model.value.map(v => {\n return items.value.find(item => props.valueComparator(item.value, v.value)) || v\n })\n })\n const selected = computed(() => selections.value.map(selection => selection.props.value))\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !selections.value.some(s => s === item))\n }\n return items.value\n })\n\n const listRef = ref<VList>()\n\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (\n (props.hideNoData && !items.value.length) ||\n props.readonly || form?.isReadonly.value\n ) return\n\n menu.value = !menu.value\n }\n function onKeydown (e: KeyboardEvent) {\n if (props.readonly || form?.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (e.key === 'ArrowDown') {\n listRef.value?.focus('next')\n } else if (e.key === 'ArrowUp') {\n listRef.value?.focus('prev')\n } else if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n }\n function select (item: InternalItem) {\n if (props.multiple) {\n const index = selected.value.findIndex(selection => props.valueComparator(selection, item.value))\n\n if (index === -1) {\n model.value = [...model.value, item]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n } else {\n model.value = [item]\n menu.value = false\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\n }\n }\n function onFocusout (e: FocusEvent) {\n if (e.relatedTarget == null) {\n vTextFieldRef.value?.focus()\n }\n }\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n const hasList = !!((!props.hideNoData || displayItems.value.length) || slots.prepend || slots.append || slots['no-data'])\n const [textFieldProps] = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n modelValue={ model.value.map(v => v.props.value).join(', ') }\n onUpdate:modelValue={ v => { if (v == null) model.value = [] } }\n validationValue={ model.externalValue }\n dirty={ model.value.length > 0 }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n },\n ]}\n appendInnerIcon={ props.menuIcon }\n readonly\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-select__content\"\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n transition={ props.transition }\n { ...props.menuProps }\n >\n { hasList && (\n <VList\n ref={ listRef }\n selected={ selected.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onFocusout={ onFocusout }\n >\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem title={ t(props.noDataText) } />\n ))}\n\n { slots['prepend-item']?.() }\n\n { displayItems.value.map((item, index) => {\n if (slots.item) {\n return slots.item?.({\n item,\n index,\n props: mergeProps(item.props, { onClick: () => select(item) }),\n })\n }\n\n return (\n <VListItem\n key={ index }\n { ...item.props }\n onClick={ () => select(item) }\n >\n {{\n prepend: ({ isSelected }) => props.multiple && !props.hideSelected ? (\n <VCheckboxBtn modelValue={ isSelected } ripple={ false } />\n ) : undefined,\n }}\n </VListItem>\n )\n })}\n\n { slots['append-item']?.() }\n </VList>\n )}\n </VMenu>\n\n { selections.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\n\n return (\n <div key={ item.value } class=\"v-select__selection\">\n { hasChips ? (\n !slots.chip ? (\n <VChip\n key=\"chip\"\n closable={ props.closableChips }\n size=\"small\"\n text={ item.title }\n { ...slotProps }\n />\n ) : (\n <VDefaultsProvider\n key=\"chip-defaults\"\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: item.title,\n },\n }}\n >\n { slots.chip?.({ item, index, props: slotProps }) }\n </VDefaultsProvider>\n )\n ) : (\n slots.selection?.({ item, index }) ?? (\n <span class=\"v-select__selection-text\">\n { item.title }\n { props.multiple && (index < selections.value.length - 1) && (\n <span class=\"v-select__selection-comma\">,</span>\n )}\n </span>\n )\n )}\n </div>\n )\n })}\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n"],"mappings":"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"}