@dimailn/vuetify 2.7.2-alpha2 → 2.7.2-superbundle2

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 (1011) hide show
  1. package/dist/vuetify.css +4806 -4806
  2. package/dist/vuetify.css.map +1 -1
  3. package/dist/vuetify.js +5571 -5345
  4. package/dist/vuetify.js.map +1 -1
  5. package/dist/vuetify.min.css +3 -3
  6. package/dist/vuetify.min.js +2 -2
  7. package/dist/vuetify.sass +109 -0
  8. package/es5/components/VAlert/VAlert.js +54 -38
  9. package/es5/components/VAlert/VAlert.js.map +1 -1
  10. package/es5/components/VApp/VApp.js +16 -12
  11. package/es5/components/VApp/VApp.js.map +1 -1
  12. package/es5/components/VAppBar/VAppBar.js +10 -12
  13. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  14. package/es5/components/VAppBar/VAppBarNavIcon.js +20 -13
  15. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  16. package/es5/components/VAppBar/VAppBarTitle.js +8 -9
  17. package/es5/components/VAppBar/VAppBarTitle.js.map +1 -1
  18. package/es5/components/VAutocomplete/VAutocomplete.js +23 -22
  19. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  20. package/es5/components/VAvatar/VAvatar.js +8 -9
  21. package/es5/components/VAvatar/VAvatar.js.map +1 -1
  22. package/es5/components/VBadge/VBadge.js +24 -22
  23. package/es5/components/VBadge/VBadge.js.map +1 -1
  24. package/es5/components/VBanner/VBanner.js +37 -32
  25. package/es5/components/VBanner/VBanner.js.map +1 -1
  26. package/es5/components/VBottomNavigation/VBottomNavigation.js +14 -11
  27. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  28. package/es5/components/VBottomSheet/VBottomSheet.js +2 -5
  29. package/es5/components/VBottomSheet/VBottomSheet.js.map +1 -1
  30. package/es5/components/VBreadcrumbs/VBreadcrumbs.js +11 -11
  31. package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  32. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -8
  33. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  34. package/es5/components/VBtn/VBtn.js +24 -30
  35. package/es5/components/VBtn/VBtn.js.map +1 -1
  36. package/es5/components/VBtnToggle/VBtnToggle.js +2 -2
  37. package/es5/components/VBtnToggle/VBtnToggle.js.map +1 -1
  38. package/es5/components/VCalendar/VCalendar.js +27 -25
  39. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  40. package/es5/components/VCalendar/VCalendarCategory.js +21 -23
  41. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  42. package/es5/components/VCalendar/VCalendarDaily.js +69 -67
  43. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  44. package/es5/components/VCalendar/VCalendarMonthly.js +1 -4
  45. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  46. package/es5/components/VCalendar/VCalendarWeekly.js +65 -64
  47. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  48. package/es5/components/VCalendar/mixins/calendar-with-events.js +64 -58
  49. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  50. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +1 -4
  51. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  52. package/es5/components/VCalendar/mixins/times.js +4 -2
  53. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  54. package/es5/components/VCard/VCard.js +11 -13
  55. package/es5/components/VCard/VCard.js.map +1 -1
  56. package/es5/components/VCarousel/VCarousel.js +37 -28
  57. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  58. package/es5/components/VCarousel/VCarouselItem.js +18 -16
  59. package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
  60. package/es5/components/VCheckbox/VCheckbox.js +10 -11
  61. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  62. package/es5/components/VCheckbox/VSimpleCheckbox.js +29 -20
  63. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  64. package/es5/components/VChip/VChip.js +44 -37
  65. package/es5/components/VChip/VChip.js.map +1 -1
  66. package/es5/components/VChipGroup/VChipGroup.js +2 -2
  67. package/es5/components/VChipGroup/VChipGroup.js.map +1 -1
  68. package/es5/components/VColorPicker/VColorPicker.js +38 -32
  69. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  70. package/es5/components/VColorPicker/VColorPickerCanvas.js +22 -19
  71. package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  72. package/es5/components/VColorPicker/VColorPickerEdit.js +28 -25
  73. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  74. package/es5/components/VColorPicker/VColorPickerPreview.js +48 -37
  75. package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  76. package/es5/components/VColorPicker/VColorPickerSwatches.js +15 -15
  77. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  78. package/es5/components/VCombobox/VCombobox.js +27 -22
  79. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  80. package/es5/components/VContent/VContent.js +4 -8
  81. package/es5/components/VContent/VContent.js.map +1 -1
  82. package/es5/components/VCounter/VCounter.js +5 -7
  83. package/es5/components/VCounter/VCounter.js.map +1 -1
  84. package/es5/components/VData/VData.js +5 -3
  85. package/es5/components/VData/VData.js.map +1 -1
  86. package/es5/components/VDataIterator/VDataFooter.js +46 -34
  87. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  88. package/es5/components/VDataIterator/VDataIterator.js +22 -20
  89. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  90. package/es5/components/VDataTable/MobileRow.js +21 -15
  91. package/es5/components/VDataTable/MobileRow.js.map +1 -1
  92. package/es5/components/VDataTable/Row.js +15 -11
  93. package/es5/components/VDataTable/Row.js.map +1 -1
  94. package/es5/components/VDataTable/RowGroup.js +12 -9
  95. package/es5/components/VDataTable/RowGroup.js.map +1 -1
  96. package/es5/components/VDataTable/VDataTable.js +206 -176
  97. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  98. package/es5/components/VDataTable/VDataTableHeader.js +20 -12
  99. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  100. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +24 -21
  101. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  102. package/es5/components/VDataTable/VDataTableHeaderMobile.js +19 -22
  103. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  104. package/es5/components/VDataTable/VEditDialog.js +43 -34
  105. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  106. package/es5/components/VDataTable/VSimpleTable.js +7 -8
  107. package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
  108. package/es5/components/VDataTable/VVirtualTable.js +16 -17
  109. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  110. package/es5/components/VDataTable/mixins/header.js +18 -14
  111. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  112. package/es5/components/VDatePicker/VDatePicker.js +113 -99
  113. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  114. package/es5/components/VDatePicker/VDatePickerDateTable.js +12 -13
  115. package/es5/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
  116. package/es5/components/VDatePicker/VDatePickerHeader.js +38 -26
  117. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  118. package/es5/components/VDatePicker/VDatePickerMonthTable.js +3 -3
  119. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  120. package/es5/components/VDatePicker/VDatePickerTitle.js +17 -12
  121. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  122. package/es5/components/VDatePicker/VDatePickerYears.js +3 -3
  123. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  124. package/es5/components/VDatePicker/mixins/date-picker-table.js +47 -34
  125. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  126. package/es5/components/VDatePicker/util/eventHelpers.js.map +1 -1
  127. package/es5/components/VDialog/VDialog.js +46 -29
  128. package/es5/components/VDialog/VDialog.js.map +1 -1
  129. package/es5/components/VDivider/VDivider.js +9 -11
  130. package/es5/components/VDivider/VDivider.js.map +1 -1
  131. package/es5/components/VExpansionPanel/VExpansionPanel.js +8 -9
  132. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  133. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +11 -9
  134. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  135. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +34 -31
  136. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  137. package/es5/components/VExpansionPanel/VExpansionPanels.js +2 -5
  138. package/es5/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  139. package/es5/components/VFileInput/VFileInput.js +35 -32
  140. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  141. package/es5/components/VFooter/VFooter.js +9 -11
  142. package/es5/components/VFooter/VFooter.js.map +1 -1
  143. package/es5/components/VForm/VForm.js +12 -11
  144. package/es5/components/VForm/VForm.js.map +1 -1
  145. package/es5/components/VGrid/VCol.js +8 -8
  146. package/es5/components/VGrid/VCol.js.map +1 -1
  147. package/es5/components/VGrid/VContainer.js +19 -17
  148. package/es5/components/VGrid/VContainer.js.map +1 -1
  149. package/es5/components/VGrid/VRow.js +10 -7
  150. package/es5/components/VGrid/VRow.js.map +1 -1
  151. package/es5/components/VGrid/grid.js +9 -7
  152. package/es5/components/VGrid/grid.js.map +1 -1
  153. package/es5/components/VHover/VHover.js +3 -3
  154. package/es5/components/VHover/VHover.js.map +1 -1
  155. package/es5/components/VIcon/VIcon.js +36 -69
  156. package/es5/components/VIcon/VIcon.js.map +1 -1
  157. package/es5/components/VImg/VImg.js +41 -38
  158. package/es5/components/VImg/VImg.js.map +1 -1
  159. package/es5/components/VInput/VInput.js +77 -70
  160. package/es5/components/VInput/VInput.js.map +1 -1
  161. package/es5/components/VItemGroup/VItem.js +6 -5
  162. package/es5/components/VItemGroup/VItem.js.map +1 -1
  163. package/es5/components/VItemGroup/VItemGroup.js +4 -8
  164. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  165. package/es5/components/VLabel/VLabel.js +15 -12
  166. package/es5/components/VLabel/VLabel.js.map +1 -1
  167. package/es5/components/VLazy/VLazy.js +7 -7
  168. package/es5/components/VLazy/VLazy.js.map +1 -1
  169. package/es5/components/VList/VList.js +12 -12
  170. package/es5/components/VList/VList.js.map +1 -1
  171. package/es5/components/VList/VListGroup.js +32 -31
  172. package/es5/components/VList/VListGroup.js.map +1 -1
  173. package/es5/components/VList/VListItem.js +22 -26
  174. package/es5/components/VList/VListItem.js.map +1 -1
  175. package/es5/components/VList/VListItemAction.js +11 -8
  176. package/es5/components/VList/VListItemAction.js.map +1 -1
  177. package/es5/components/VList/VListItemAvatar.js +9 -9
  178. package/es5/components/VList/VListItemAvatar.js.map +1 -1
  179. package/es5/components/VList/VListItemGroup.js +2 -2
  180. package/es5/components/VList/VListItemGroup.js.map +1 -1
  181. package/es5/components/VList/VListItemIcon.js +9 -11
  182. package/es5/components/VList/VListItemIcon.js.map +1 -1
  183. package/es5/components/VMain/VMain.js +5 -9
  184. package/es5/components/VMain/VMain.js.map +1 -1
  185. package/es5/components/VMenu/VMenu.js +66 -42
  186. package/es5/components/VMenu/VMenu.js.map +1 -1
  187. package/es5/components/VMessages/VMessages.js +12 -12
  188. package/es5/components/VMessages/VMessages.js.map +1 -1
  189. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +59 -51
  190. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  191. package/es5/components/VOtpInput/VOtpInput.js +57 -52
  192. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  193. package/es5/components/VOverflowBtn/VOverflowBtn.js +8 -11
  194. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  195. package/es5/components/VOverlay/VOverlay.js +8 -11
  196. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  197. package/es5/components/VPagination/VPagination.js +48 -35
  198. package/es5/components/VPagination/VPagination.js.map +1 -1
  199. package/es5/components/VParallax/VParallax.js +20 -23
  200. package/es5/components/VParallax/VParallax.js.map +1 -1
  201. package/es5/components/VPicker/VPicker.js +21 -17
  202. package/es5/components/VPicker/VPicker.js.map +1 -1
  203. package/es5/components/VProgressCircular/VProgressCircular.js +40 -38
  204. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  205. package/es5/components/VProgressLinear/VProgressLinear.js +32 -33
  206. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  207. package/es5/components/VRadioGroup/VRadio.js +37 -29
  208. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  209. package/es5/components/VRadioGroup/VRadioGroup.js +17 -16
  210. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  211. package/es5/components/VRangeSlider/VRangeSlider.js +7 -10
  212. package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
  213. package/es5/components/VRating/VRating.js +48 -52
  214. package/es5/components/VRating/VRating.js.map +1 -1
  215. package/es5/components/VResponsive/VResponsive.js +11 -11
  216. package/es5/components/VResponsive/VResponsive.js.map +1 -1
  217. package/es5/components/VSelect/VSelect.js +126 -102
  218. package/es5/components/VSelect/VSelect.js.map +1 -1
  219. package/es5/components/VSelect/VSelectList.js +63 -44
  220. package/es5/components/VSelect/VSelectList.js.map +1 -1
  221. package/es5/components/VSheet/VSheet.js +9 -12
  222. package/es5/components/VSheet/VSheet.js.map +1 -1
  223. package/es5/components/VSkeletonLoader/VSkeletonLoader.js +22 -18
  224. package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  225. package/es5/components/VSlideGroup/VSlideGroup.js +56 -39
  226. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  227. package/es5/components/VSlider/VSlider.js +75 -62
  228. package/es5/components/VSlider/VSlider.js.map +1 -1
  229. package/es5/components/VSnackbar/VSnackbar.js +32 -22
  230. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  231. package/es5/components/VSparkline/VSparkline.js +24 -24
  232. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  233. package/es5/components/VSpeedDial/VSpeedDial.js +11 -11
  234. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  235. package/es5/components/VStepper/VStepper.js +6 -7
  236. package/es5/components/VStepper/VStepper.js.map +1 -1
  237. package/es5/components/VStepper/VStepperContent.js +13 -15
  238. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  239. package/es5/components/VStepper/VStepperStep.js +23 -22
  240. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  241. package/es5/components/VSubheader/VSubheader.js +8 -7
  242. package/es5/components/VSubheader/VSubheader.js.map +1 -1
  243. package/es5/components/VSwitch/VSwitch.js +22 -22
  244. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  245. package/es5/components/VSystemBar/VSystemBar.js +8 -9
  246. package/es5/components/VSystemBar/VSystemBar.js.map +1 -1
  247. package/es5/components/VTabs/VTab.js +10 -12
  248. package/es5/components/VTabs/VTab.js.map +1 -1
  249. package/es5/components/VTabs/VTabItem.js +4 -6
  250. package/es5/components/VTabs/VTabItem.js.map +1 -1
  251. package/es5/components/VTabs/VTabs.js +47 -34
  252. package/es5/components/VTabs/VTabs.js.map +1 -1
  253. package/es5/components/VTabs/VTabsBar.js +9 -8
  254. package/es5/components/VTabs/VTabsBar.js.map +1 -1
  255. package/es5/components/VTabs/VTabsItems.js +3 -6
  256. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  257. package/es5/components/VTabs/VTabsSlider.js +3 -5
  258. package/es5/components/VTabs/VTabsSlider.js.map +1 -1
  259. package/es5/components/VTextField/VTextField.js +74 -59
  260. package/es5/components/VTextField/VTextField.js.map +1 -1
  261. package/es5/components/VTextarea/VTextarea.js +5 -6
  262. package/es5/components/VTextarea/VTextarea.js.map +1 -1
  263. package/es5/components/VThemeProvider/VThemeProvider.js +5 -5
  264. package/es5/components/VThemeProvider/VThemeProvider.js.map +1 -1
  265. package/es5/components/VTimePicker/VTimePicker.js +29 -25
  266. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  267. package/es5/components/VTimePicker/VTimePickerClock.js +41 -40
  268. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  269. package/es5/components/VTimePicker/VTimePickerTitle.js +14 -15
  270. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  271. package/es5/components/VTimeline/VTimeline.js +4 -5
  272. package/es5/components/VTimeline/VTimeline.js.map +1 -1
  273. package/es5/components/VTimeline/VTimelineItem.js +24 -24
  274. package/es5/components/VTimeline/VTimelineItem.js.map +1 -1
  275. package/es5/components/VToolbar/VToolbar.js +14 -17
  276. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  277. package/es5/components/VTooltip/VTooltip.js +13 -11
  278. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  279. package/es5/components/VTreeview/VTreeview.js +6 -7
  280. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  281. package/es5/components/VTreeview/VTreeviewNode.js +109 -93
  282. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  283. package/es5/components/VVirtualScroll/VVirtualScroll.js +8 -12
  284. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  285. package/es5/components/VWindow/VWindow.js +38 -26
  286. package/es5/components/VWindow/VWindow.js.map +1 -1
  287. package/es5/components/VWindow/VWindowItem.js +30 -25
  288. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  289. package/es5/components/index.js +112 -0
  290. package/es5/components/index.js.map +1 -1
  291. package/es5/components/transitions/createTransition.js +24 -22
  292. package/es5/components/transitions/createTransition.js.map +1 -1
  293. package/es5/directives/click-outside/index.js +6 -6
  294. package/es5/directives/click-outside/index.js.map +1 -1
  295. package/es5/directives/intersect/index.js +6 -6
  296. package/es5/directives/intersect/index.js.map +1 -1
  297. package/es5/directives/ripple/index.js +5 -11
  298. package/es5/directives/ripple/index.js.map +1 -1
  299. package/es5/directives/touch/index.js +6 -12
  300. package/es5/directives/touch/index.js.map +1 -1
  301. package/es5/framework.js +1 -1
  302. package/es5/framework.js.map +1 -1
  303. package/es5/helpers.js +72 -0
  304. package/es5/helpers.js.map +1 -0
  305. package/es5/index.js +36 -31
  306. package/es5/index.js.map +1 -1
  307. package/es5/install.js +15 -42
  308. package/es5/install.js.map +1 -1
  309. package/es5/mixins/activatable/index.js +12 -19
  310. package/es5/mixins/activatable/index.js.map +1 -1
  311. package/es5/mixins/binds-attrs/index.js +5 -3
  312. package/es5/mixins/binds-attrs/index.js.map +1 -1
  313. package/es5/mixins/bootable/index.js +5 -3
  314. package/es5/mixins/bootable/index.js.map +1 -1
  315. package/es5/mixins/button-group/index.js +3 -6
  316. package/es5/mixins/button-group/index.js.map +1 -1
  317. package/es5/mixins/colorable/index.js +8 -36
  318. package/es5/mixins/colorable/index.js.map +1 -1
  319. package/es5/mixins/comparable/index.js +4 -2
  320. package/es5/mixins/comparable/index.js.map +1 -1
  321. package/es5/mixins/delayable/index.js +4 -2
  322. package/es5/mixins/delayable/index.js.map +1 -1
  323. package/es5/mixins/dependent/index.js +2 -8
  324. package/es5/mixins/dependent/index.js.map +1 -1
  325. package/es5/mixins/detachable/index.js +2 -2
  326. package/es5/mixins/detachable/index.js.map +1 -1
  327. package/es5/mixins/elevatable/index.js +4 -2
  328. package/es5/mixins/elevatable/index.js.map +1 -1
  329. package/es5/mixins/filterable/index.js +4 -2
  330. package/es5/mixins/filterable/index.js.map +1 -1
  331. package/es5/mixins/groupable/index.js +11 -14
  332. package/es5/mixins/groupable/index.js.map +1 -1
  333. package/es5/mixins/intersectable/index.js +5 -11
  334. package/es5/mixins/intersectable/index.js.map +1 -1
  335. package/es5/mixins/loadable/index.js +9 -7
  336. package/es5/mixins/loadable/index.js.map +1 -1
  337. package/es5/mixins/localable/index.js +4 -2
  338. package/es5/mixins/localable/index.js.map +1 -1
  339. package/es5/mixins/measurable/index.js +4 -2
  340. package/es5/mixins/measurable/index.js.map +1 -1
  341. package/es5/mixins/menuable/index.js +5 -8
  342. package/es5/mixins/menuable/index.js.map +1 -1
  343. package/es5/mixins/mobile/index.js +13 -9
  344. package/es5/mixins/mobile/index.js.map +1 -1
  345. package/es5/mixins/mouse/index.js +6 -9
  346. package/es5/mixins/mouse/index.js.map +1 -1
  347. package/es5/mixins/overlayable/index.js +16 -46
  348. package/es5/mixins/overlayable/index.js.map +1 -1
  349. package/es5/mixins/picker/index.js +20 -19
  350. package/es5/mixins/picker/index.js.map +1 -1
  351. package/es5/mixins/picker-button/index.js +11 -14
  352. package/es5/mixins/picker-button/index.js.map +1 -1
  353. package/es5/mixins/positionable/index.js +4 -2
  354. package/es5/mixins/positionable/index.js.map +1 -1
  355. package/es5/mixins/proxyable/index.js +6 -4
  356. package/es5/mixins/proxyable/index.js.map +1 -1
  357. package/es5/mixins/registrable/index.js +5 -3
  358. package/es5/mixins/registrable/index.js.map +1 -1
  359. package/es5/mixins/returnable/index.js +4 -2
  360. package/es5/mixins/returnable/index.js.map +1 -1
  361. package/es5/mixins/rippleable/index.js +13 -21
  362. package/es5/mixins/rippleable/index.js.map +1 -1
  363. package/es5/mixins/roundable/index.js +4 -2
  364. package/es5/mixins/roundable/index.js.map +1 -1
  365. package/es5/mixins/routable/index.js +25 -24
  366. package/es5/mixins/routable/index.js.map +1 -1
  367. package/es5/mixins/scrollable/index.js +4 -2
  368. package/es5/mixins/scrollable/index.js.map +1 -1
  369. package/es5/mixins/selectable/index.js +33 -31
  370. package/es5/mixins/selectable/index.js.map +1 -1
  371. package/es5/mixins/sizeable/index.js +4 -2
  372. package/es5/mixins/sizeable/index.js.map +1 -1
  373. package/es5/mixins/ssr-bootable/index.js +4 -2
  374. package/es5/mixins/ssr-bootable/index.js.map +1 -1
  375. package/es5/mixins/stackable/index.js +4 -2
  376. package/es5/mixins/stackable/index.js.map +1 -1
  377. package/es5/mixins/themeable/index.js +16 -5
  378. package/es5/mixins/themeable/index.js.map +1 -1
  379. package/es5/mixins/toggleable/index.js +10 -4
  380. package/es5/mixins/toggleable/index.js.map +1 -1
  381. package/es5/mixins/transitionable/index.js +4 -2
  382. package/es5/mixins/transitionable/index.js.map +1 -1
  383. package/es5/mixins/translatable/index.js +4 -2
  384. package/es5/mixins/translatable/index.js.map +1 -1
  385. package/es5/mixins/validatable/index.js +1 -1
  386. package/es5/mixins/validatable/index.js.map +1 -1
  387. package/es5/services/goto/util.js.map +1 -1
  388. package/es5/services/theme/index.js +19 -6
  389. package/es5/services/theme/index.js.map +1 -1
  390. package/es5/util/helpers.js +20 -33
  391. package/es5/util/helpers.js.map +1 -1
  392. package/es5/util/mergeData.js +1 -1
  393. package/es5/util/mergeData.js.map +1 -1
  394. package/es5/util/mixins.js +5 -11
  395. package/es5/util/mixins.js.map +1 -1
  396. package/es5/vuetify.js +45 -0
  397. package/es5/vuetify.js.map +1 -0
  398. package/lib/components/VAlert/VAlert.js +54 -38
  399. package/lib/components/VAlert/VAlert.js.map +1 -1
  400. package/lib/components/VApp/VApp.js +14 -10
  401. package/lib/components/VApp/VApp.js.map +1 -1
  402. package/lib/components/VAppBar/VAppBar.js +11 -12
  403. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  404. package/lib/components/VAppBar/VAppBarNavIcon.js +15 -10
  405. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  406. package/lib/components/VAppBar/VAppBarTitle.js +4 -6
  407. package/lib/components/VAppBar/VAppBarTitle.js.map +1 -1
  408. package/lib/components/VAutocomplete/VAutocomplete.js +23 -22
  409. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  410. package/lib/components/VAvatar/VAvatar.js +4 -4
  411. package/lib/components/VAvatar/VAvatar.js.map +1 -1
  412. package/lib/components/VBadge/VBadge.js +26 -22
  413. package/lib/components/VBadge/VBadge.js.map +1 -1
  414. package/lib/components/VBanner/VBanner.js +28 -23
  415. package/lib/components/VBanner/VBanner.js.map +1 -1
  416. package/lib/components/VBottomNavigation/VBottomNavigation.js +14 -10
  417. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  418. package/lib/components/VBottomSheet/VBottomSheet.js +2 -4
  419. package/lib/components/VBottomSheet/VBottomSheet.js.map +1 -1
  420. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +9 -9
  421. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  422. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -7
  423. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  424. package/lib/components/VBtn/VBtn.js +25 -31
  425. package/lib/components/VBtn/VBtn.js.map +1 -1
  426. package/lib/components/VBtnToggle/VBtnToggle.js +2 -2
  427. package/lib/components/VBtnToggle/VBtnToggle.js.map +1 -1
  428. package/lib/components/VCalendar/VCalendar.js +25 -24
  429. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  430. package/lib/components/VCalendar/VCalendarCategory.js +16 -19
  431. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  432. package/lib/components/VCalendar/VCalendarDaily.js +39 -41
  433. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  434. package/lib/components/VCalendar/VCalendarMonthly.js +1 -3
  435. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  436. package/lib/components/VCalendar/VCalendarWeekly.js +30 -32
  437. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  438. package/lib/components/VCalendar/mixins/calendar-with-events.js +24 -27
  439. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  440. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +1 -3
  441. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  442. package/lib/components/VCalendar/mixins/times.js +2 -2
  443. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  444. package/lib/components/VCard/VCard.js +12 -14
  445. package/lib/components/VCard/VCard.js.map +1 -1
  446. package/lib/components/VCarousel/VCarousel.js +39 -31
  447. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  448. package/lib/components/VCarousel/VCarouselItem.js +19 -17
  449. package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
  450. package/lib/components/VCheckbox/VCheckbox.js +10 -10
  451. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  452. package/lib/components/VCheckbox/VSimpleCheckbox.js +25 -19
  453. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  454. package/lib/components/VChip/VChip.js +43 -34
  455. package/lib/components/VChip/VChip.js.map +1 -1
  456. package/lib/components/VChipGroup/VChipGroup.js +2 -2
  457. package/lib/components/VChipGroup/VChipGroup.js.map +1 -1
  458. package/lib/components/VColorPicker/VColorPicker.js +30 -23
  459. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  460. package/lib/components/VColorPicker/VColorPickerCanvas.js +8 -9
  461. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  462. package/lib/components/VColorPicker/VColorPickerEdit.js +24 -19
  463. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  464. package/lib/components/VColorPicker/VColorPickerPreview.js +45 -35
  465. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  466. package/lib/components/VColorPicker/VColorPickerSwatches.js +15 -14
  467. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  468. package/lib/components/VCombobox/VCombobox.js +20 -20
  469. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  470. package/lib/components/VContent/VContent.js +4 -8
  471. package/lib/components/VContent/VContent.js.map +1 -1
  472. package/lib/components/VCounter/VCounter.js +7 -7
  473. package/lib/components/VCounter/VCounter.js.map +1 -1
  474. package/lib/components/VData/VData.js +3 -3
  475. package/lib/components/VData/VData.js.map +1 -1
  476. package/lib/components/VDataIterator/VDataFooter.js +46 -34
  477. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  478. package/lib/components/VDataIterator/VDataIterator.js +20 -16
  479. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  480. package/lib/components/VDataTable/MobileRow.js +16 -11
  481. package/lib/components/VDataTable/MobileRow.js.map +1 -1
  482. package/lib/components/VDataTable/Row.js +12 -6
  483. package/lib/components/VDataTable/Row.js.map +1 -1
  484. package/lib/components/VDataTable/RowGroup.js +9 -7
  485. package/lib/components/VDataTable/RowGroup.js.map +1 -1
  486. package/lib/components/VDataTable/VDataTable.js +169 -135
  487. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  488. package/lib/components/VDataTable/VDataTableHeader.js +19 -11
  489. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  490. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +24 -21
  491. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  492. package/lib/components/VDataTable/VDataTableHeaderMobile.js +9 -10
  493. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  494. package/lib/components/VDataTable/VEditDialog.js +41 -31
  495. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  496. package/lib/components/VDataTable/VSimpleTable.js +6 -6
  497. package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
  498. package/lib/components/VDataTable/VVirtualTable.js +11 -12
  499. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  500. package/lib/components/VDataTable/mixins/header.js +17 -12
  501. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  502. package/lib/components/VDatePicker/VDatePicker.js +107 -92
  503. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  504. package/lib/components/VDatePicker/VDatePickerDateTable.js +11 -13
  505. package/lib/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
  506. package/lib/components/VDatePicker/VDatePickerHeader.js +37 -25
  507. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  508. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -3
  509. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  510. package/lib/components/VDatePicker/VDatePickerTitle.js +16 -10
  511. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  512. package/lib/components/VDatePicker/VDatePickerYears.js +3 -3
  513. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  514. package/lib/components/VDatePicker/mixins/date-picker-table.js +36 -27
  515. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  516. package/lib/components/VDatePicker/util/eventHelpers.js.map +1 -1
  517. package/lib/components/VDialog/VDialog.js +46 -27
  518. package/lib/components/VDialog/VDialog.js.map +1 -1
  519. package/lib/components/VDivider/VDivider.js +12 -14
  520. package/lib/components/VDivider/VDivider.js.map +1 -1
  521. package/lib/components/VExpansionPanel/VExpansionPanel.js +8 -9
  522. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  523. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +9 -6
  524. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  525. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +31 -21
  526. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  527. package/lib/components/VExpansionPanel/VExpansionPanels.js +2 -4
  528. package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  529. package/lib/components/VFileInput/VFileInput.js +34 -31
  530. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  531. package/lib/components/VFooter/VFooter.js +5 -6
  532. package/lib/components/VFooter/VFooter.js.map +1 -1
  533. package/lib/components/VForm/VForm.js +11 -8
  534. package/lib/components/VForm/VForm.js.map +1 -1
  535. package/lib/components/VGrid/VCol.js +9 -9
  536. package/lib/components/VGrid/VCol.js.map +1 -1
  537. package/lib/components/VGrid/VContainer.js +22 -16
  538. package/lib/components/VGrid/VContainer.js.map +1 -1
  539. package/lib/components/VGrid/VRow.js +12 -9
  540. package/lib/components/VGrid/VRow.js.map +1 -1
  541. package/lib/components/VGrid/grid.js +7 -6
  542. package/lib/components/VGrid/grid.js.map +1 -1
  543. package/lib/components/VHover/VHover.js +3 -3
  544. package/lib/components/VHover/VHover.js.map +1 -1
  545. package/lib/components/VIcon/VIcon.js +36 -65
  546. package/lib/components/VIcon/VIcon.js.map +1 -1
  547. package/lib/components/VImg/VImg.js +41 -32
  548. package/lib/components/VImg/VImg.js.map +1 -1
  549. package/lib/components/VInput/VInput.js +61 -59
  550. package/lib/components/VInput/VInput.js.map +1 -1
  551. package/lib/components/VItemGroup/VItem.js +5 -5
  552. package/lib/components/VItemGroup/VItem.js.map +1 -1
  553. package/lib/components/VItemGroup/VItemGroup.js +4 -8
  554. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  555. package/lib/components/VLabel/VLabel.js +18 -13
  556. package/lib/components/VLabel/VLabel.js.map +1 -1
  557. package/lib/components/VLazy/VLazy.js +7 -6
  558. package/lib/components/VLazy/VLazy.js.map +1 -1
  559. package/lib/components/VList/VList.js +12 -13
  560. package/lib/components/VList/VList.js.map +1 -1
  561. package/lib/components/VList/VListGroup.js +29 -21
  562. package/lib/components/VList/VListGroup.js.map +1 -1
  563. package/lib/components/VList/VListItem.js +26 -25
  564. package/lib/components/VList/VListItem.js.map +1 -1
  565. package/lib/components/VList/VListItemAction.js +8 -7
  566. package/lib/components/VList/VListItemAction.js.map +1 -1
  567. package/lib/components/VList/VListItemAvatar.js +9 -10
  568. package/lib/components/VList/VListItemAvatar.js.map +1 -1
  569. package/lib/components/VList/VListItemGroup.js +2 -2
  570. package/lib/components/VList/VListItemGroup.js.map +1 -1
  571. package/lib/components/VList/VListItemIcon.js +8 -7
  572. package/lib/components/VList/VListItemIcon.js.map +1 -1
  573. package/lib/components/VMain/VMain.js +5 -8
  574. package/lib/components/VMain/VMain.js.map +1 -1
  575. package/lib/components/VMenu/VMenu.js +65 -40
  576. package/lib/components/VMenu/VMenu.js.map +1 -1
  577. package/lib/components/VMessages/VMessages.js +12 -11
  578. package/lib/components/VMessages/VMessages.js.map +1 -1
  579. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +60 -49
  580. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  581. package/lib/components/VOtpInput/VOtpInput.js +46 -40
  582. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  583. package/lib/components/VOverflowBtn/VOverflowBtn.js +8 -10
  584. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  585. package/lib/components/VOverlay/VOverlay.js +8 -10
  586. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  587. package/lib/components/VPagination/VPagination.js +42 -30
  588. package/lib/components/VPagination/VPagination.js.map +1 -1
  589. package/lib/components/VParallax/VParallax.js +13 -12
  590. package/lib/components/VParallax/VParallax.js.map +1 -1
  591. package/lib/components/VPicker/VPicker.js +20 -15
  592. package/lib/components/VPicker/VPicker.js.map +1 -1
  593. package/lib/components/VProgressCircular/VProgressCircular.js +37 -30
  594. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  595. package/lib/components/VProgressLinear/VProgressLinear.js +30 -24
  596. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  597. package/lib/components/VRadioGroup/VRadio.js +34 -24
  598. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  599. package/lib/components/VRadioGroup/VRadioGroup.js +18 -17
  600. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  601. package/lib/components/VRangeSlider/VRangeSlider.js +7 -9
  602. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  603. package/lib/components/VRating/VRating.js +34 -34
  604. package/lib/components/VRating/VRating.js.map +1 -1
  605. package/lib/components/VResponsive/VResponsive.js +11 -10
  606. package/lib/components/VResponsive/VResponsive.js.map +1 -1
  607. package/lib/components/VSelect/VSelect.js +123 -95
  608. package/lib/components/VSelect/VSelect.js.map +1 -1
  609. package/lib/components/VSelect/VSelectList.js +59 -39
  610. package/lib/components/VSelect/VSelectList.js.map +1 -1
  611. package/lib/components/VSheet/VSheet.js +7 -11
  612. package/lib/components/VSheet/VSheet.js.map +1 -1
  613. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +21 -16
  614. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  615. package/lib/components/VSlideGroup/VSlideGroup.js +51 -35
  616. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  617. package/lib/components/VSlider/VSlider.js +75 -63
  618. package/lib/components/VSlider/VSlider.js.map +1 -1
  619. package/lib/components/VSnackbar/VSnackbar.js +31 -20
  620. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  621. package/lib/components/VSparkline/VSparkline.js +16 -17
  622. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  623. package/lib/components/VSpeedDial/VSpeedDial.js +10 -9
  624. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  625. package/lib/components/VStepper/VStepper.js +6 -6
  626. package/lib/components/VStepper/VStepper.js.map +1 -1
  627. package/lib/components/VStepper/VStepperContent.js +8 -8
  628. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  629. package/lib/components/VStepper/VStepperStep.js +9 -10
  630. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  631. package/lib/components/VSubheader/VSubheader.js +7 -7
  632. package/lib/components/VSubheader/VSubheader.js.map +1 -1
  633. package/lib/components/VSwitch/VSwitch.js +26 -23
  634. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  635. package/lib/components/VSystemBar/VSystemBar.js +3 -4
  636. package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
  637. package/lib/components/VTabs/VTab.js +12 -13
  638. package/lib/components/VTabs/VTab.js.map +1 -1
  639. package/lib/components/VTabs/VTabItem.js +4 -5
  640. package/lib/components/VTabs/VTabItem.js.map +1 -1
  641. package/lib/components/VTabs/VTabs.js +48 -34
  642. package/lib/components/VTabs/VTabs.js.map +1 -1
  643. package/lib/components/VTabs/VTabsBar.js +10 -8
  644. package/lib/components/VTabs/VTabsBar.js.map +1 -1
  645. package/lib/components/VTabs/VTabsItems.js +3 -5
  646. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  647. package/lib/components/VTabs/VTabsSlider.js +3 -4
  648. package/lib/components/VTabs/VTabsSlider.js.map +1 -1
  649. package/lib/components/VTextField/VTextField.js +73 -57
  650. package/lib/components/VTextField/VTextField.js.map +1 -1
  651. package/lib/components/VTextarea/VTextarea.js +5 -6
  652. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  653. package/lib/components/VThemeProvider/VThemeProvider.js +4 -5
  654. package/lib/components/VThemeProvider/VThemeProvider.js.map +1 -1
  655. package/lib/components/VTimePicker/VTimePicker.js +26 -22
  656. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  657. package/lib/components/VTimePicker/VTimePickerClock.js +7 -8
  658. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  659. package/lib/components/VTimePicker/VTimePickerTitle.js +7 -8
  660. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  661. package/lib/components/VTimeline/VTimeline.js +4 -4
  662. package/lib/components/VTimeline/VTimeline.js.map +1 -1
  663. package/lib/components/VTimeline/VTimelineItem.js +26 -23
  664. package/lib/components/VTimeline/VTimelineItem.js.map +1 -1
  665. package/lib/components/VToolbar/VToolbar.js +15 -19
  666. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  667. package/lib/components/VTooltip/VTooltip.js +12 -9
  668. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  669. package/lib/components/VTreeview/VTreeview.js +6 -6
  670. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  671. package/lib/components/VTreeview/VTreeviewNode.js +98 -83
  672. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  673. package/lib/components/VVirtualScroll/VVirtualScroll.js +8 -12
  674. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  675. package/lib/components/VWindow/VWindow.js +37 -27
  676. package/lib/components/VWindow/VWindow.js.map +1 -1
  677. package/lib/components/VWindow/VWindowItem.js +29 -23
  678. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  679. package/lib/components/index.js +4 -0
  680. package/lib/components/index.js.map +1 -1
  681. package/lib/components/transitions/createTransition.js +25 -20
  682. package/lib/components/transitions/createTransition.js.map +1 -1
  683. package/lib/directives/click-outside/index.js +6 -6
  684. package/lib/directives/click-outside/index.js.map +1 -1
  685. package/lib/directives/intersect/index.js +6 -6
  686. package/lib/directives/intersect/index.js.map +1 -1
  687. package/lib/directives/ripple/index.js +5 -6
  688. package/lib/directives/ripple/index.js.map +1 -1
  689. package/lib/directives/touch/index.js +6 -7
  690. package/lib/directives/touch/index.js.map +1 -1
  691. package/lib/framework.js +1 -1
  692. package/lib/framework.js.map +1 -1
  693. package/lib/helpers.js +10 -0
  694. package/lib/helpers.js.map +1 -0
  695. package/lib/install.js +16 -39
  696. package/lib/install.js.map +1 -1
  697. package/lib/mixins/activatable/index.js +10 -16
  698. package/lib/mixins/activatable/index.js.map +1 -1
  699. package/lib/mixins/binds-attrs/index.js +3 -3
  700. package/lib/mixins/binds-attrs/index.js.map +1 -1
  701. package/lib/mixins/bootable/index.js +4 -5
  702. package/lib/mixins/bootable/index.js.map +1 -1
  703. package/lib/mixins/button-group/index.js +3 -5
  704. package/lib/mixins/button-group/index.js.map +1 -1
  705. package/lib/mixins/colorable/index.js +6 -42
  706. package/lib/mixins/colorable/index.js.map +1 -1
  707. package/lib/mixins/comparable/index.js +2 -2
  708. package/lib/mixins/comparable/index.js.map +1 -1
  709. package/lib/mixins/delayable/index.js +2 -2
  710. package/lib/mixins/delayable/index.js.map +1 -1
  711. package/lib/mixins/dependent/index.js +2 -8
  712. package/lib/mixins/dependent/index.js.map +1 -1
  713. package/lib/mixins/detachable/index.js +2 -2
  714. package/lib/mixins/detachable/index.js.map +1 -1
  715. package/lib/mixins/elevatable/index.js +2 -2
  716. package/lib/mixins/elevatable/index.js.map +1 -1
  717. package/lib/mixins/filterable/index.js +2 -2
  718. package/lib/mixins/filterable/index.js.map +1 -1
  719. package/lib/mixins/groupable/index.js +11 -13
  720. package/lib/mixins/groupable/index.js.map +1 -1
  721. package/lib/mixins/intersectable/index.js +5 -11
  722. package/lib/mixins/intersectable/index.js.map +1 -1
  723. package/lib/mixins/loadable/index.js +9 -7
  724. package/lib/mixins/loadable/index.js.map +1 -1
  725. package/lib/mixins/localable/index.js +2 -2
  726. package/lib/mixins/localable/index.js.map +1 -1
  727. package/lib/mixins/measurable/index.js +2 -2
  728. package/lib/mixins/measurable/index.js.map +1 -1
  729. package/lib/mixins/menuable/index.js +5 -9
  730. package/lib/mixins/menuable/index.js.map +1 -1
  731. package/lib/mixins/mobile/index.js +12 -9
  732. package/lib/mixins/mobile/index.js.map +1 -1
  733. package/lib/mixins/mouse/index.js +4 -10
  734. package/lib/mixins/mouse/index.js.map +1 -1
  735. package/lib/mixins/overlayable/index.js +13 -44
  736. package/lib/mixins/overlayable/index.js.map +1 -1
  737. package/lib/mixins/picker/index.js +21 -19
  738. package/lib/mixins/picker/index.js.map +1 -1
  739. package/lib/mixins/picker-button/index.js +9 -10
  740. package/lib/mixins/picker-button/index.js.map +1 -1
  741. package/lib/mixins/positionable/index.js +2 -2
  742. package/lib/mixins/positionable/index.js.map +1 -1
  743. package/lib/mixins/proxyable/index.js +3 -3
  744. package/lib/mixins/proxyable/index.js.map +1 -1
  745. package/lib/mixins/registrable/index.js +3 -3
  746. package/lib/mixins/registrable/index.js.map +1 -1
  747. package/lib/mixins/returnable/index.js +2 -2
  748. package/lib/mixins/returnable/index.js.map +1 -1
  749. package/lib/mixins/rippleable/index.js +11 -9
  750. package/lib/mixins/rippleable/index.js.map +1 -1
  751. package/lib/mixins/roundable/index.js +2 -2
  752. package/lib/mixins/roundable/index.js.map +1 -1
  753. package/lib/mixins/routable/index.js +24 -20
  754. package/lib/mixins/routable/index.js.map +1 -1
  755. package/lib/mixins/scrollable/index.js +2 -2
  756. package/lib/mixins/scrollable/index.js.map +1 -1
  757. package/lib/mixins/selectable/index.js +23 -17
  758. package/lib/mixins/selectable/index.js.map +1 -1
  759. package/lib/mixins/sizeable/index.js +2 -2
  760. package/lib/mixins/sizeable/index.js.map +1 -1
  761. package/lib/mixins/ssr-bootable/index.js +2 -2
  762. package/lib/mixins/ssr-bootable/index.js.map +1 -1
  763. package/lib/mixins/stackable/index.js +2 -2
  764. package/lib/mixins/stackable/index.js.map +1 -1
  765. package/lib/mixins/themeable/index.js +8 -5
  766. package/lib/mixins/themeable/index.js.map +1 -1
  767. package/lib/mixins/toggleable/index.js +7 -3
  768. package/lib/mixins/toggleable/index.js.map +1 -1
  769. package/lib/mixins/transitionable/index.js +2 -2
  770. package/lib/mixins/transitionable/index.js.map +1 -1
  771. package/lib/mixins/translatable/index.js +2 -2
  772. package/lib/mixins/translatable/index.js.map +1 -1
  773. package/lib/mixins/validatable/index.js +1 -1
  774. package/lib/mixins/validatable/index.js.map +1 -1
  775. package/lib/services/goto/util.js.map +1 -1
  776. package/lib/services/theme/index.js +11 -7
  777. package/lib/services/theme/index.js.map +1 -1
  778. package/lib/util/helpers.js +16 -28
  779. package/lib/util/helpers.js.map +1 -1
  780. package/lib/util/mergeData.js +1 -1
  781. package/lib/util/mergeData.js.map +1 -1
  782. package/lib/util/mixins.js +4 -9
  783. package/lib/util/mixins.js.map +1 -1
  784. package/lib/vuetify.js +19 -0
  785. package/lib/vuetify.js.map +1 -0
  786. package/package.json +9 -8
  787. package/src/components/VAlert/VAlert.ts +50 -42
  788. package/src/components/VApp/VApp.ts +9 -11
  789. package/src/components/VAppBar/VAppBar.ts +10 -11
  790. package/src/components/VAppBar/VAppBarNavIcon.ts +11 -9
  791. package/src/components/VAppBar/VAppBarTitle.ts +3 -5
  792. package/src/components/VAutocomplete/VAutocomplete.ts +22 -21
  793. package/src/components/VAvatar/VAvatar.ts +4 -4
  794. package/src/components/VBadge/VBadge.ts +25 -21
  795. package/src/components/VBanner/VBanner.ts +27 -22
  796. package/src/components/VBanner/__tests__/VBanner.spec.ts +2 -2
  797. package/src/components/VBottomNavigation/VBottomNavigation.ts +14 -12
  798. package/src/components/VBottomSheet/VBottomSheet.ts +2 -4
  799. package/src/components/VBreadcrumbs/VBreadcrumbs.ts +7 -7
  800. package/src/components/VBreadcrumbs/VBreadcrumbsItem.ts +8 -6
  801. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbs.spec.ts +1 -1
  802. package/src/components/VBtn/VBtn.ts +25 -34
  803. package/src/components/VBtn/__tests__/VBtn.spec.ts +219 -219
  804. package/src/components/VBtnToggle/VBtnToggle.ts +2 -2
  805. package/src/components/VCalendar/VCalendar.ts +28 -22
  806. package/src/components/VCalendar/VCalendarCategory.ts +16 -17
  807. package/src/components/VCalendar/VCalendarDaily.ts +38 -38
  808. package/src/components/VCalendar/VCalendarMonthly.ts +1 -3
  809. package/src/components/VCalendar/VCalendarWeekly.ts +29 -29
  810. package/src/components/VCalendar/mixins/calendar-with-events.ts +21 -23
  811. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -3
  812. package/src/components/VCalendar/mixins/times.ts +2 -2
  813. package/src/components/VCard/VCard.ts +13 -12
  814. package/src/components/VCarousel/VCarousel.ts +37 -29
  815. package/src/components/VCarousel/VCarouselItem.ts +19 -19
  816. package/src/components/VCheckbox/VCheckbox.ts +10 -10
  817. package/src/components/VCheckbox/VSimpleCheckbox.ts +22 -23
  818. package/src/components/VChip/VChip.ts +41 -43
  819. package/src/components/VChipGroup/VChipGroup.ts +2 -2
  820. package/src/components/VColorPicker/VColorPicker.ts +29 -22
  821. package/src/components/VColorPicker/VColorPickerCanvas.ts +7 -8
  822. package/src/components/VColorPicker/VColorPickerEdit.ts +23 -18
  823. package/src/components/VColorPicker/VColorPickerPreview.ts +40 -30
  824. package/src/components/VColorPicker/VColorPickerSwatches.ts +14 -13
  825. package/src/components/VCombobox/VCombobox.ts +21 -21
  826. package/src/components/VContent/VContent.ts +4 -7
  827. package/src/components/VCounter/VCounter.ts +5 -5
  828. package/src/components/VData/VData.ts +3 -3
  829. package/src/components/VData/__tests__/VData.spec.ts +9 -9
  830. package/src/components/VDataIterator/VDataFooter.ts +48 -36
  831. package/src/components/VDataIterator/VDataIterator.ts +20 -16
  832. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +4 -4
  833. package/src/components/VDataTable/MobileRow.ts +12 -12
  834. package/src/components/VDataTable/Row.ts +9 -8
  835. package/src/components/VDataTable/RowGroup.ts +6 -8
  836. package/src/components/VDataTable/VDataTable.ts +180 -148
  837. package/src/components/VDataTable/VDataTableHeader.ts +8 -9
  838. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +25 -20
  839. package/src/components/VDataTable/VDataTableHeaderMobile.ts +9 -10
  840. package/src/components/VDataTable/VEditDialog.ts +39 -31
  841. package/src/components/VDataTable/VSimpleTable.ts +6 -6
  842. package/src/components/VDataTable/VVirtualTable.ts +12 -13
  843. package/src/components/VDataTable/__tests__/MobileRow.spec.ts +2 -2
  844. package/src/components/VDataTable/__tests__/Row.spec.ts +2 -2
  845. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +992 -997
  846. package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +2 -2
  847. package/src/components/VDataTable/mixins/__tests__/header.spec.ts +2 -2
  848. package/src/components/VDataTable/mixins/header.ts +18 -12
  849. package/src/components/VDatePicker/VDatePicker.ts +108 -92
  850. package/src/components/VDatePicker/VDatePickerDateTable.ts +12 -12
  851. package/src/components/VDatePicker/VDatePickerHeader.ts +36 -24
  852. package/src/components/VDatePicker/VDatePickerMonthTable.ts +3 -3
  853. package/src/components/VDatePicker/VDatePickerTitle.ts +15 -11
  854. package/src/components/VDatePicker/VDatePickerYears.ts +3 -3
  855. package/src/components/VDatePicker/mixins/date-picker-table.ts +32 -29
  856. package/src/components/VDatePicker/util/eventHelpers.ts +3 -3
  857. package/src/components/VDialog/VDialog.ts +42 -38
  858. package/src/components/VDialog/__tests__/VDialog.spec.ts +10 -10
  859. package/src/components/VDivider/VDivider.ts +11 -12
  860. package/src/components/VExpansionPanel/VExpansionPanel.ts +7 -8
  861. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +8 -10
  862. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +33 -33
  863. package/src/components/VExpansionPanel/VExpansionPanels.ts +2 -4
  864. package/src/components/VFileInput/VFileInput.ts +35 -31
  865. package/src/components/VFooter/VFooter.ts +4 -5
  866. package/src/components/VForm/VForm.ts +10 -7
  867. package/src/components/VGrid/VCol.ts +4 -9
  868. package/src/components/VGrid/VContainer.ts +15 -18
  869. package/src/components/VGrid/VRow.ts +8 -8
  870. package/src/components/VGrid/grid.ts +3 -7
  871. package/src/components/VHover/VHover.ts +3 -3
  872. package/src/components/VHover/__tests__/VHover.spec.ts +1 -1
  873. package/src/components/VIcon/VIcon.ts +39 -64
  874. package/src/components/VImg/VImg.ts +40 -44
  875. package/src/components/VInput/VInput.ts +61 -51
  876. package/src/components/VItemGroup/VItem.ts +5 -5
  877. package/src/components/VItemGroup/VItemGroup.ts +2 -6
  878. package/src/components/VLabel/VLabel.ts +13 -12
  879. package/src/components/VLazy/VLazy.ts +4 -5
  880. package/src/components/VList/VList.ts +11 -10
  881. package/src/components/VList/VListGroup.ts +28 -22
  882. package/src/components/VList/VListItem.ts +24 -31
  883. package/src/components/VList/VListItemAction.ts +5 -8
  884. package/src/components/VList/VListItemAvatar.ts +10 -8
  885. package/src/components/VList/VListItemGroup.ts +2 -2
  886. package/src/components/VList/VListItemIcon.ts +5 -7
  887. package/src/components/VList/__tests__/VListItemAction.spec.ts +1 -1
  888. package/src/components/VMain/VMain.ts +5 -7
  889. package/src/components/VMenu/VMenu.ts +60 -47
  890. package/src/components/VMenu/__tests__/VMenu.spec.ts +20 -20
  891. package/src/components/VMessages/VMessages.ts +12 -9
  892. package/src/components/VMessages/__tests__/VMessages.spec.ts +1 -1
  893. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +49 -51
  894. package/src/components/VOtpInput/VOtpInput.ts +46 -39
  895. package/src/components/VOverflowBtn/VOverflowBtn.ts +9 -12
  896. package/src/components/VOverlay/VOverlay.ts +8 -8
  897. package/src/components/VPagination/VPagination.ts +37 -33
  898. package/src/components/VParallax/VParallax.ts +12 -11
  899. package/src/components/VPicker/VPicker.ts +20 -15
  900. package/src/components/VProgressCircular/VProgressCircular.ts +35 -32
  901. package/src/components/VProgressLinear/VProgressLinear.ts +32 -35
  902. package/src/components/VRadioGroup/VRadio.ts +31 -23
  903. package/src/components/VRadioGroup/VRadioGroup.ts +16 -18
  904. package/src/components/VRangeSlider/VRangeSlider.ts +7 -9
  905. package/src/components/VRating/VRating.ts +33 -35
  906. package/src/components/VRating/__tests__/VRating.spec.ts +64 -70
  907. package/src/components/VResponsive/VResponsive.ts +10 -10
  908. package/src/components/VSelect/VSelect.ts +117 -101
  909. package/src/components/VSelect/VSelectList.ts +59 -40
  910. package/src/components/VSheet/VSheet.ts +12 -14
  911. package/src/components/VSkeletonLoader/VSkeletonLoader.ts +20 -15
  912. package/src/components/VSlideGroup/VSlideGroup.ts +50 -44
  913. package/src/components/VSlideGroup/__tests__/VSlideGroup.spec.ts +4 -4
  914. package/src/components/VSlider/VSlider.ts +75 -62
  915. package/src/components/VSnackbar/VSnackbar.ts +29 -26
  916. package/src/components/VSparkline/VSparkline.ts +17 -18
  917. package/src/components/VSpeedDial/VSpeedDial.ts +9 -8
  918. package/src/components/VStepper/VStepper.ts +5 -5
  919. package/src/components/VStepper/VStepperContent.ts +6 -14
  920. package/src/components/VStepper/VStepperStep.ts +8 -9
  921. package/src/components/VSubheader/VSubheader.ts +6 -6
  922. package/src/components/VSubheader/__tests__/VSubheader.spec.ts +1 -1
  923. package/src/components/VSwitch/VSwitch.ts +27 -29
  924. package/src/components/VSystemBar/VSystemBar.ts +2 -3
  925. package/src/components/VTabs/VTab.ts +14 -14
  926. package/src/components/VTabs/VTabItem.ts +4 -6
  927. package/src/components/VTabs/VTabs.ts +43 -38
  928. package/src/components/VTabs/VTabsBar.ts +9 -7
  929. package/src/components/VTabs/VTabsItems.ts +3 -5
  930. package/src/components/VTabs/VTabsSlider.ts +2 -3
  931. package/src/components/VTabs/__tests__/VTabs.spec.ts +1 -1
  932. package/src/components/VTextField/VTextField.ts +68 -62
  933. package/src/components/VTextarea/VTextarea.ts +5 -6
  934. package/src/components/VThemeProvider/VThemeProvider.ts +4 -5
  935. package/src/components/VTimePicker/VTimePicker.ts +36 -32
  936. package/src/components/VTimePicker/VTimePickerClock.ts +7 -8
  937. package/src/components/VTimePicker/VTimePickerTitle.ts +7 -8
  938. package/src/components/VTimeline/VTimeline.ts +3 -3
  939. package/src/components/VTimeline/VTimelineItem.ts +25 -22
  940. package/src/components/VToolbar/VToolbar.ts +15 -17
  941. package/src/components/VTooltip/VTooltip.ts +12 -9
  942. package/src/components/VTreeview/VTreeview.ts +5 -6
  943. package/src/components/VTreeview/VTreeviewNode.ts +103 -88
  944. package/src/components/VVirtualScroll/VVirtualScroll.ts +7 -10
  945. package/src/components/VVirtualScroll/__tests__/VVirtualScroll.spec.ts +1 -1
  946. package/src/components/VWindow/VWindow.sass +5 -5
  947. package/src/components/VWindow/VWindow.ts +33 -31
  948. package/src/components/VWindow/VWindowItem.ts +32 -27
  949. package/src/components/index.ts +10 -0
  950. package/src/components/transitions/createTransition.ts +25 -23
  951. package/src/directives/click-outside/index.ts +6 -6
  952. package/src/directives/intersect/index.ts +6 -6
  953. package/src/directives/ripple/index.ts +6 -9
  954. package/src/directives/touch/index.ts +6 -9
  955. package/src/framework.ts +0 -2
  956. package/src/helpers.ts +20 -0
  957. package/src/index.ts +3 -19
  958. package/src/install.ts +12 -39
  959. package/src/mixins/activatable/__tests__/activatable.spec.ts +1 -1
  960. package/src/mixins/activatable/index.ts +11 -19
  961. package/src/mixins/binds-attrs/index.ts +3 -3
  962. package/src/mixins/bootable/index.ts +4 -5
  963. package/src/mixins/button-group/index.ts +3 -5
  964. package/src/mixins/colorable/index.ts +6 -49
  965. package/src/mixins/comparable/index.ts +2 -2
  966. package/src/mixins/delayable/index.ts +2 -2
  967. package/src/mixins/dependent/index.ts +3 -11
  968. package/src/mixins/detachable/__tests__/detachable.spec.ts +3 -3
  969. package/src/mixins/detachable/index.ts +2 -2
  970. package/src/mixins/elevatable/index.ts +2 -2
  971. package/src/mixins/filterable/index.ts +2 -2
  972. package/src/mixins/groupable/index.ts +9 -13
  973. package/src/mixins/intersectable/index.ts +5 -8
  974. package/src/mixins/loadable/index.ts +12 -10
  975. package/src/mixins/localable/index.ts +2 -2
  976. package/src/mixins/measurable/index.ts +2 -2
  977. package/src/mixins/menuable/index.ts +5 -8
  978. package/src/mixins/mobile/index.ts +12 -10
  979. package/src/mixins/mouse/index.ts +4 -9
  980. package/src/mixins/overlayable/index.ts +16 -44
  981. package/src/mixins/picker/index.ts +19 -17
  982. package/src/mixins/picker-button/index.ts +7 -6
  983. package/src/mixins/positionable/index.ts +2 -2
  984. package/src/mixins/proxyable/index.ts +5 -5
  985. package/src/mixins/registrable/index.ts +3 -3
  986. package/src/mixins/returnable/index.ts +2 -2
  987. package/src/mixins/rippleable/index.ts +9 -16
  988. package/src/mixins/roundable/index.ts +2 -2
  989. package/src/mixins/routable/__tests__/routable.spec.ts +3 -6
  990. package/src/mixins/routable/index.ts +23 -24
  991. package/src/mixins/scrollable/index.ts +2 -2
  992. package/src/mixins/selectable/index.ts +23 -18
  993. package/src/mixins/sizeable/index.ts +2 -2
  994. package/src/mixins/ssr-bootable/index.ts +2 -2
  995. package/src/mixins/stackable/index.ts +2 -2
  996. package/src/mixins/themeable/index.ts +10 -6
  997. package/src/mixins/toggleable/index.ts +6 -3
  998. package/src/mixins/transitionable/index.ts +2 -2
  999. package/src/mixins/translatable/index.ts +2 -2
  1000. package/src/mixins/validatable/index.ts +1 -1
  1001. package/src/services/goto/util.ts +0 -1
  1002. package/src/services/theme/index.ts +7 -12
  1003. package/src/util/helpers.ts +12 -30
  1004. package/src/util/mergeData.ts +1 -1
  1005. package/src/util/mixins.ts +20 -10
  1006. package/src/vuetify.ts +19 -0
  1007. package/es5/util/make-directive-activatable.js +0 -74
  1008. package/es5/util/make-directive-activatable.js.map +0 -1
  1009. package/lib/util/make-directive-activatable.js +0 -49
  1010. package/lib/util/make-directive-activatable.js.map +0 -1
  1011. package/src/util/make-directive-activatable.ts +0 -55
@@ -35,8 +35,6 @@ var _console = require("../../util/console");
35
35
 
36
36
  var _mixins = _interopRequireDefault(require("../../util/mixins"));
37
37
 
38
- var _vue = require("vue");
39
-
40
38
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
41
39
 
42
40
  function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
@@ -63,7 +61,7 @@ exports.defaultMenuProps = defaultMenuProps;
63
61
  var baseMixins = (0, _mixins.default)(_VTextField2.default, _comparable.default, _dependent.default, _filterable.default);
64
62
  /* @vue/component */
65
63
 
66
- var _default2 = baseMixins.extend({
64
+ var _default2 = baseMixins.extend().extend({
67
65
  name: 'v-select',
68
66
  directives: {
69
67
  ClickOutside: _clickOutside.default
@@ -126,7 +124,7 @@ var _default2 = baseMixins.extend({
126
124
  // As long as a value is defined, show it
127
125
  // Otherwise, check if multiple
128
126
  // to determine which default to provide
129
- lazyValue: this.modelValue !== undefined ? this.modelValue : this.multiple ? [] : undefined,
127
+ lazyValue: this.value !== undefined ? this.value : this.multiple ? [] : undefined,
130
128
  selectedIndex: -1,
131
129
  selectedItems: [],
132
130
  keyboardLookupPrefix: '',
@@ -139,7 +137,7 @@ var _default2 = baseMixins.extend({
139
137
  return this.filterDuplicates(this.cachedItems.concat(this.items));
140
138
  },
141
139
  classes: function classes() {
142
- return _objectSpread(_objectSpread({}, _VTextField2.default.computed.classes.call(this)), {}, {
140
+ return _objectSpread(_objectSpread({}, _VTextField2.default.options.computed.classes.call(this)), {}, {
143
141
  'v-select': true,
144
142
  'v-select--chips': this.hasChips,
145
143
  'v-select--chips--small': this.smallChips,
@@ -153,7 +151,7 @@ var _default2 = baseMixins.extend({
153
151
  return this.allItems;
154
152
  },
155
153
  computedOwns: function computedOwns() {
156
- return "list-".concat(this.$.uid);
154
+ return "list-".concat(this._uid);
157
155
  },
158
156
  computedCounterValue: function computedCounterValue() {
159
157
  var _a;
@@ -169,15 +167,16 @@ var _default2 = baseMixins.extend({
169
167
  directives: function directives() {
170
168
  var _this = this;
171
169
 
172
- return [[_clickOutside.default, {
173
- handler: function handler() {
174
- return _this.isFocused && _this.blur();
175
- },
176
- closeConditional: this.closeConditional,
177
- include: function include() {
178
- return _this.getOpenDependentElements();
170
+ return this.isFocused ? [{
171
+ name: 'click-outside',
172
+ value: {
173
+ handler: this.blur,
174
+ closeConditional: this.closeConditional,
175
+ include: function include() {
176
+ return _this.getOpenDependentElements();
177
+ }
179
178
  }
180
- }]];
179
+ }] : undefined;
181
180
  },
182
181
  dynamicHeight: function dynamicHeight() {
183
182
  return 'auto';
@@ -186,7 +185,7 @@ var _default2 = baseMixins.extend({
186
185
  return this.chips || this.smallChips;
187
186
  },
188
187
  hasSlot: function hasSlot() {
189
- return Boolean(this.hasChips || this.$slots.selection);
188
+ return Boolean(this.hasChips || this.$scopedSlots.selection);
190
189
  },
191
190
  isDirty: function isDirty() {
192
191
  return this.selectedItems.length > 0;
@@ -194,29 +193,36 @@ var _default2 = baseMixins.extend({
194
193
  listData: function listData() {
195
194
  var scopeId = this.$vnode && this.$vnode.context.$options._scopeId;
196
195
  var attrs = scopeId ? _defineProperty({}, scopeId, true) : {};
197
- return _objectSpread(_objectSpread({}, attrs), {}, {
198
- id: this.computedOwns,
199
- action: this.multiple,
200
- color: this.itemColor,
201
- dense: this.dense,
202
- hideSelected: this.hideSelected,
203
- items: this.virtualizedItems,
204
- itemDisabled: this.itemDisabled,
205
- itemText: this.itemText,
206
- itemValue: this.itemValue,
207
- noDataText: this.$vuetify.lang.t(this.noDataText),
208
- selectedItems: this.selectedItems,
209
- onSelect: this.selectItem
210
- });
196
+ return {
197
+ attrs: _objectSpread(_objectSpread({}, attrs), {}, {
198
+ id: this.computedOwns
199
+ }),
200
+ props: {
201
+ action: this.multiple,
202
+ color: this.itemColor,
203
+ dense: this.dense,
204
+ hideSelected: this.hideSelected,
205
+ items: this.virtualizedItems,
206
+ itemDisabled: this.itemDisabled,
207
+ itemText: this.itemText,
208
+ itemValue: this.itemValue,
209
+ noDataText: this.$vuetify.lang.t(this.noDataText),
210
+ selectedItems: this.selectedItems
211
+ },
212
+ on: {
213
+ select: this.selectItem
214
+ },
215
+ scopedSlots: {
216
+ item: this.$scopedSlots.item
217
+ }
218
+ };
211
219
  },
212
220
  staticList: function staticList() {
213
221
  if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {
214
222
  (0, _console.consoleError)('assert: staticList should not be called if slots are used');
215
223
  }
216
224
 
217
- return (0, _vue.h)(_VSelectList.default, this.listData, {
218
- item: this.$slots.item
219
- });
225
+ return this.$createElement(_VSelectList.default, this.listData);
220
226
  },
221
227
  virtualizedItems: function virtualizedItems() {
222
228
  return this.$_menuProps.auto ? this.computedItems : this.computedItems.slice(0, this.lastItem);
@@ -236,7 +242,7 @@ var _default2 = baseMixins.extend({
236
242
 
237
243
  return _objectSpread(_objectSpread({}, defaultMenuProps), {}, {
238
244
  eager: this.eager,
239
- modelValue: this.menuCanShow && this.isMenuActive,
245
+ value: this.menuCanShow && this.isMenuActive,
240
246
  nudgeBottom: normalisedProps.offsetY ? 1 : 0
241
247
  }, normalisedProps);
242
248
  }
@@ -290,7 +296,7 @@ var _default2 = baseMixins.extend({
290
296
  methods: {
291
297
  /** @public */
292
298
  blur: function blur(e) {
293
- _VTextField2.default.methods.blur.call(this, e);
299
+ _VTextField2.default.options.methods.blur.call(this, e);
294
300
 
295
301
  this.isMenuActive = false;
296
302
  this.isFocused = false;
@@ -359,20 +365,26 @@ var _default2 = baseMixins.extend({
359
365
 
360
366
  var isDisabled = this.isDisabled || this.getDisabled(item);
361
367
  var isInteractive = !isDisabled && this.isInteractive;
362
- return (0, _vue.h)(_VChip.default, {
363
- class: 'v-chip--select',
364
- tabindex: -1,
365
- close: this.deletableChips && isInteractive,
366
- disabled: isDisabled,
367
- inputValue: index === this.selectedIndex,
368
- small: this.smallChips,
369
- onClick: function onClick(e) {
370
- if (!isInteractive) return;
371
- e.stopPropagation();
372
- _this7.selectedIndex = index;
368
+ return this.$createElement(_VChip.default, {
369
+ staticClass: 'v-chip--select',
370
+ attrs: {
371
+ tabindex: -1
373
372
  },
374
- 'onClick:close': function onClickClose() {
375
- return _this7.onChipInput(item);
373
+ props: {
374
+ close: this.deletableChips && isInteractive,
375
+ disabled: isDisabled,
376
+ inputValue: index === this.selectedIndex,
377
+ small: this.smallChips
378
+ },
379
+ on: {
380
+ click: function click(e) {
381
+ if (!isInteractive) return;
382
+ e.stopPropagation();
383
+ _this7.selectedIndex = index;
384
+ },
385
+ 'click:close': function clickClose() {
386
+ return _this7.onChipInput(item);
387
+ }
376
388
  },
377
389
  key: JSON.stringify(this.getValue(item))
378
390
  }, this.getText(item));
@@ -380,10 +392,11 @@ var _default2 = baseMixins.extend({
380
392
  genCommaSelection: function genCommaSelection(item, index, last) {
381
393
  var color = index === this.selectedIndex && this.computedColor;
382
394
  var isDisabled = this.isDisabled || this.getDisabled(item);
383
- return (0, _vue.h)('div', this.setTextColor(color, {
384
- class: ['v-select__selection v-select__selection--comma', {
395
+ return this.$createElement('div', this.setTextColor(color, {
396
+ staticClass: 'v-select__selection v-select__selection--comma',
397
+ class: {
385
398
  'v-select__selection--disabled': isDisabled
386
- }],
399
+ },
387
400
  key: JSON.stringify(this.getValue(item))
388
401
  }), "".concat(this.getText(item)).concat(last ? '' : ', '));
389
402
  },
@@ -399,62 +412,69 @@ var _default2 = baseMixins.extend({
399
412
  selections.children.push(input);
400
413
  }
401
414
 
402
- return [this.genFieldset(), (0, _vue.withDirectives)((0, _vue.h)('div', {
403
- class: 'v-select__slot'
404
- }, [this.genLabel(), this.prefix ? this.genAffix('prefix') : null, selections, this.suffix ? this.genAffix('suffix') : null, this.genClearIcon(), this.genIconSlot(), this.genHiddenInput()]), this.directives), this.genMenu(), this.genProgress()];
415
+ return [this.genFieldset(), this.$createElement('div', {
416
+ staticClass: 'v-select__slot',
417
+ directives: this.directives
418
+ }, [this.genLabel(), this.prefix ? this.genAffix('prefix') : null, selections, this.suffix ? this.genAffix('suffix') : null, this.genClearIcon(), this.genIconSlot(), this.genHiddenInput()]), this.genMenu(), this.genProgress()];
405
419
  },
406
420
  genIcon: function genIcon(type, cb, extraData) {
407
- var icon = _VInput.default.methods.genIcon.call(this, type, cb, extraData);
421
+ var icon = _VInput.default.options.methods.genIcon.call(this, type, cb, extraData);
408
422
 
409
423
  if (type === 'append') {
410
424
  // Don't allow the dropdown icon to be focused
411
- var hasListeners = Object.keys(icon.children[0].props).some(function (key) {
412
- return key.startsWith('on');
413
- });
414
- icon.children[0].data = (0, _mergeData.default)(icon.children[0].props, {
415
- tabindex: hasListeners && '-1',
416
- 'aria-hidden': 'true',
417
- 'aria-label': undefined
425
+ icon.children[0].data = (0, _mergeData.default)(icon.children[0].data, {
426
+ attrs: {
427
+ tabindex: icon.children[0].componentOptions.listeners && '-1',
428
+ 'aria-hidden': 'true',
429
+ 'aria-label': undefined
430
+ }
418
431
  });
419
432
  }
420
433
 
421
434
  return icon;
422
435
  },
423
436
  genInput: function genInput() {
424
- var input = _VTextField2.default.methods.genInput.call(this);
425
-
426
- delete input.props.name;
427
- input.props = (0, _mergeData.default)(input.props, {
428
- readonly: true,
429
- type: 'text',
430
- 'aria-readonly': String(this.isReadonly),
431
- 'aria-activedescendant': (0, _helpers.getObjectValueByPath)(this.$refs.menu, 'activeTile.id'),
432
- autocomplete: (0, _helpers.getObjectValueByPath)(input.data, 'attrs.autocomplete', 'off'),
433
- placeholder: !this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel) ? this.placeholder : undefined,
434
- onKeypress: this.onKeyPress
435
- });
436
- input.props = _objectSpread(_objectSpread({}, input.props), {}, {
437
- value: null
437
+ var input = _VTextField2.default.options.methods.genInput.call(this);
438
+
439
+ delete input.data.attrs.name;
440
+ input.data = (0, _mergeData.default)(input.data, {
441
+ domProps: {
442
+ value: null
443
+ },
444
+ attrs: {
445
+ readonly: true,
446
+ type: 'text',
447
+ 'aria-readonly': String(this.isReadonly),
448
+ 'aria-activedescendant': (0, _helpers.getObjectValueByPath)(this.$refs.menu, 'activeTile.id'),
449
+ autocomplete: (0, _helpers.getObjectValueByPath)(input.data, 'attrs.autocomplete', 'off'),
450
+ placeholder: !this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel) ? this.placeholder : undefined
451
+ },
452
+ on: {
453
+ keypress: this.onKeyPress
454
+ }
438
455
  });
439
- input.props = (0, _helpers.normalizeAttrs)(input.props);
440
456
  return input;
441
457
  },
442
458
  genHiddenInput: function genHiddenInput() {
443
- return (0, _vue.h)('input', {
444
- value: this.lazyValue,
445
- type: 'hidden',
446
- name: this.attrs$.name
459
+ return this.$createElement('input', {
460
+ domProps: {
461
+ value: this.lazyValue
462
+ },
463
+ attrs: {
464
+ type: 'hidden',
465
+ name: this.attrs$.name
466
+ }
447
467
  });
448
468
  },
449
469
  genInputSlot: function genInputSlot() {
450
- var render = _VTextField2.default.methods.genInputSlot.call(this);
470
+ var render = _VTextField2.default.options.methods.genInputSlot.call(this);
451
471
 
452
- render.props = _objectSpread({
472
+ render.data.attrs = _objectSpread(_objectSpread({}, render.data.attrs), {}, {
453
473
  role: 'button',
454
474
  'aria-haspopup': 'listbox',
455
475
  'aria-expanded': String(this.isMenuActive),
456
476
  'aria-owns': this.computedOwns
457
- }, render.props);
477
+ });
458
478
  return render;
459
479
  },
460
480
  genList: function genList() {
@@ -471,16 +491,14 @@ var _default2 = baseMixins.extend({
471
491
  var slots = ['prepend-item', 'no-data', 'append-item'].filter(function (slotName) {
472
492
  return _this8.$slots[slotName];
473
493
  }).map(function (slotName) {
474
- return (0, _vue.h)('template', {
494
+ return _this8.$createElement('template', {
475
495
  slot: slotName
476
496
  }, _this8.$slots[slotName]);
477
497
  }); // Requires destructuring due to Vue
478
498
  // modifying the `on` property when passed
479
499
  // as a referenced object
480
500
 
481
- return (0, _vue.h)(_VSelectList.default, _objectSpread({}, this.listData), _objectSpread(_objectSpread({}, slots), {}, {
482
- item: this.$slots.item
483
- }));
501
+ return this.$createElement(_VSelectList.default, _objectSpread({}, this.listData), slots);
484
502
  },
485
503
  genMenu: function genMenu() {
486
504
  var _this9 = this;
@@ -498,23 +516,27 @@ var _default2 = baseMixins.extend({
498
516
  } else {
499
517
  props.attach = this.attach;
500
518
  }
501
- return (0, _vue.h)(_VMenu.default, _objectSpread(_objectSpread({
502
- role: undefined
503
- }, props), {}, {
504
- onInput: function onInput(val) {
505
- _this9.isMenuActive = val;
506
- _this9.isFocused = val;
519
+ return this.$createElement(_VMenu.default, {
520
+ attrs: {
521
+ role: undefined
522
+ },
523
+ props: props,
524
+ on: {
525
+ input: function input(val) {
526
+ _this9.isMenuActive = val;
527
+ _this9.isFocused = val;
528
+ },
529
+ scroll: this.onScroll
507
530
  },
508
- onScroll: this.onScroll,
509
531
  ref: 'menu'
510
- }), [this.genList()]);
532
+ }, [this.genList()]);
511
533
  },
512
534
  genSelections: function genSelections() {
513
535
  var length = this.selectedItems.length;
514
536
  var children = new Array(length);
515
537
  var genSelection;
516
538
 
517
- if (this.$slots.selection) {
539
+ if (this.$scopedSlots.selection) {
518
540
  genSelection = this.genSlotSelection;
519
541
  } else if (this.hasChips) {
520
542
  genSelection = this.genChipSelection;
@@ -526,15 +548,17 @@ var _default2 = baseMixins.extend({
526
548
  children[length] = genSelection(this.selectedItems[length], length, length === children.length - 1);
527
549
  }
528
550
 
529
- return (0, _vue.h)('div', {
530
- class: 'v-select__selections'
551
+ return this.$createElement('div', {
552
+ staticClass: 'v-select__selections'
531
553
  }, children);
532
554
  },
533
555
  genSlotSelection: function genSlotSelection(item, index) {
534
556
  var _this10 = this;
535
557
 
536
- return this.$slots.selection({
537
- class: 'v-chip--select',
558
+ return this.$scopedSlots.selection({
559
+ attrs: {
560
+ class: 'v-chip--select'
561
+ },
538
562
  parent: this,
539
563
  item: item,
540
564
  index: index,
@@ -692,7 +716,7 @@ var _default2 = baseMixins.extend({
692
716
  }
693
717
  }
694
718
 
695
- _VTextField2.default.methods.onMouseUp.call(this, e);
719
+ _VTextField2.default.options.methods.onMouseUp.call(this, e);
696
720
  },
697
721
  onScroll: function onScroll() {
698
722
  var _this14 = this;
@@ -841,7 +865,7 @@ var _default2 = baseMixins.extend({
841
865
  setValue: function setValue(value) {
842
866
  if (!this.valueComparator(value, this.internalValue)) {
843
867
  this.internalValue = value;
844
- this.$emit('update:modelValue', value);
868
+ this.$emit('change', value);
845
869
  }
846
870
  },
847
871
  isAppendInner: function isAppendInner(target) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VSelect/VSelect.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../VTextField/VTextField.sass'\nimport './VSelect.sass'\n\n// Components\nimport VChip from '../VChip'\nimport VMenu from '../VMenu'\nimport VSelectList from './VSelectList'\n\n// Extensions\nimport VInput from '../VInput'\nimport VTextField from '../VTextField/VTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Dependent from '../../mixins/dependent'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport { getPropertyFromItem, getObjectValueByPath, keyCodes, normalizeAttrs } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, VNodeDirective, PropType, VNodeData, withDirectives, h } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { SelectItemKey } from 'vuetify/types'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n disableKeys: true,\n openOnClick: false,\n maxHeight: 304,\n}\n\n// Types\nconst baseMixins = mixins(\n VTextField,\n Comparable,\n Dependent,\n Filterable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n menu: InstanceType<typeof VMenu>\n content: HTMLElement\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n 'append-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-select',\n\n directives: {\n ClickOutside,\n },\n\n props: {\n appendIcon: {\n type: String,\n default: '$dropdown',\n },\n attach: {\n type: null as unknown as PropType<string | boolean | Element | VNode>,\n default: false,\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n disableLookup: Boolean,\n eager: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemColor: {\n type: String,\n default: 'primary',\n },\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n menuProps: {\n type: [String, Array, Object],\n default: () => defaultMenuProps,\n },\n multiple: Boolean,\n openOnClear: Boolean,\n returnObject: Boolean,\n smallChips: Boolean,\n },\n\n data () {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n menuIsBooted: false,\n isMenuActive: false,\n lastItem: 20,\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n lazyValue: this.modelValue !== undefined\n ? this.modelValue\n : this.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [] as any[],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0,\n }\n },\n\n computed: {\n /* All items that the select has */\n allItems (): object[] {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes (): object {\n return {\n ...VTextField.computed.classes.call(this),\n 'v-select': true,\n 'v-select--chips': this.hasChips,\n 'v-select--chips--small': this.smallChips,\n 'v-select--is-menu-active': this.isMenuActive,\n 'v-select--is-multi': this.multiple,\n }\n },\n /* Used by other components to overwrite */\n computedItems (): object[] {\n return this.allItems\n },\n computedOwns (): string {\n return `list-${this.$.uid}`\n },\n computedCounterValue (): number {\n const value = this.multiple\n ? this.selectedItems\n : (this.getText(this.selectedItems[0]) ?? '').toString()\n\n if (typeof this.counterValue === 'function') {\n return this.counterValue(value)\n }\n\n return value.length\n },\n directives (): VNodeDirective[] | undefined {\n return [\n [\n ClickOutside,\n {\n handler: () => this.isFocused && this.blur(),\n closeConditional: this.closeConditional,\n include: () => this.getOpenDependentElements(),\n }\n ]\n ]\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n hasSlot (): boolean {\n return Boolean(this.hasChips || this.$slots.selection)\n },\n isDirty (): boolean {\n return this.selectedItems.length > 0\n },\n listData (): object {\n const scopeId = this.$vnode && (this.$vnode.context!.$options as { [key: string]: any })._scopeId\n const attrs = scopeId ? {\n [scopeId]: true,\n } : {}\n\n return {\n ...attrs,\n id: this.computedOwns,\n action: this.multiple,\n color: this.itemColor,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n itemDisabled: this.itemDisabled,\n itemText: this.itemText,\n itemValue: this.itemValue,\n noDataText: this.$vuetify.lang.t(this.noDataText),\n selectedItems: this.selectedItems,\n onSelect: this.selectItem,\n }\n },\n staticList (): VNode {\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n consoleError('assert: staticList should not be called if slots are used')\n }\n\n return h(VSelectList, this.listData, {\n item: this.$slots.item,\n })\n },\n virtualizedItems (): object[] {\n return (this.$_menuProps as any).auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow: () => true,\n $_menuProps (): object {\n let normalisedProps = typeof this.menuProps === 'string'\n ? this.menuProps.split(',')\n : this.menuProps\n\n if (Array.isArray(normalisedProps)) {\n normalisedProps = normalisedProps.reduce((acc, p) => {\n acc[p.trim()] = true\n return acc\n }, {})\n }\n\n return {\n ...defaultMenuProps,\n eager: this.eager,\n modelValue: this.menuCanShow && this.isMenuActive,\n nudgeBottom: normalisedProps.offsetY ? 1 : 0, // convert to int\n ...normalisedProps,\n }\n },\n },\n\n watch: {\n internalValue (val) {\n this.initialValue = val\n this.setSelectedItems()\n\n if (this.multiple) {\n this.$nextTick(() => {\n this.$refs.menu?.updateDimensions()\n })\n }\n if (this.hideSelected) {\n this.$nextTick(() => {\n this.onScroll()\n })\n }\n },\n isMenuActive (val) {\n window.setTimeout(() => this.onMenuActiveChange(val))\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n // Breaks vue-test-utils if\n // this isn't calculated\n // on the next tick\n this.$nextTick(() => {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n })\n }\n\n this.setSelectedItems()\n },\n },\n },\n\n methods: {\n /** @public */\n blur (e?: Event) {\n VTextField.methods.blur.call(this, e)\n this.isMenuActive = false\n this.isFocused = false\n this.selectedIndex = -1\n this.setMenuIndex(-1)\n },\n /** @public */\n activateMenu () {\n if (\n !this.isInteractive ||\n this.isMenuActive\n ) return\n\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : null)\n this.setMenuIndex(-1)\n this.$nextTick(() => this.$refs.input && this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e: Event) {\n if (!this.isMenuActive) return true\n\n return (\n !this._isDestroyed &&\n\n // Click originates from outside the menu content\n // Multiple selects don't close when an item is clicked\n (!this.getContent() ||\n !this.getContent().contains(e.target as Node)) &&\n\n // Click originates from outside the element\n this.$el &&\n !this.$el.contains(e.target as Node) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr: any[]) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n\n // Do not return null values if existant (#14421)\n if (item == null) {\n continue\n }\n // Do not deduplicate headers or dividers (#12517)\n if (item.header || item.divider) {\n uniqueValues.set(item, item)\n continue\n }\n\n const val = this.getValue(item)\n\n // TODO: comparator\n !uniqueValues.has(val) && uniqueValues.set(val, item)\n }\n return Array.from(uniqueValues.values())\n },\n findExistingIndex (item: object) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex((i: object) => this.valueComparator(this.getValue(i), itemValue))\n },\n getContent () {\n return this.$refs.menu && this.$refs.menu.$refs.content\n },\n genChipSelection (item: object, index: number) {\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n const isInteractive = !isDisabled && this.isInteractive\n\n return h(VChip, {\n class: 'v-chip--select',\n tabindex: -1,\n close: this.deletableChips && isInteractive,\n disabled: isDisabled,\n inputValue: index === this.selectedIndex,\n small: this.smallChips,\n onClick: (e: MouseEvent) => {\n if (!isInteractive) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n 'onClick:close': () => this.onChipInput(item),\n key: JSON.stringify(this.getValue(item)),\n }, this.getText(item))\n },\n genCommaSelection (item: object, index: number, last: boolean) {\n const color = index === this.selectedIndex && this.computedColor\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n\n return h('div', this.setTextColor(color, {\n class: ['v-select__selection v-select__selection--comma', {\n 'v-select__selection--disabled': isDisabled,\n }],\n key: JSON.stringify(this.getValue(item)),\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot (): (VNode | VNode[] | null)[] {\n const selections = this.genSelections()\n const input = this.genInput()\n\n // If the return is an empty array\n // push the input\n if (Array.isArray(selections)) {\n selections.push(input)\n // Otherwise push it into children\n } else {\n selections.children = selections.children || []\n selections.children.push(input)\n }\n\n return [\n this.genFieldset(),\n withDirectives(h('div', {\n class: 'v-select__slot'\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n selections,\n this.suffix ? this.genAffix('suffix') : null,\n this.genClearIcon(),\n this.genIconSlot(),\n this.genHiddenInput(),\n ]), this.directives),\n this.genMenu(),\n this.genProgress(),\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData?: VNodeData\n ) {\n const icon = VInput.methods.genIcon.call(this, type, cb, extraData)\n\n if (type === 'append') {\n // Don't allow the dropdown icon to be focused\n const hasListeners = Object.keys(icon.children![0].props).some(key => key.startsWith('on'))\n icon.children![0].data = mergeData(icon.children![0].props!, {\n tabindex: hasListeners && '-1',\n 'aria-hidden': 'true',\n 'aria-label': undefined\n })\n }\n\n return icon\n },\n genInput (): VNode {\n const input = VTextField.methods.genInput.call(this)\n\n delete input.props.name\n\n input.props = mergeData(input.props, {\n readonly: true,\n type: 'text',\n 'aria-readonly': String(this.isReadonly),\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n placeholder: (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) ? this.placeholder : undefined,\n onKeypress: this.onKeyPress,\n })\n\n input.props = { ...input.props, value: null }\n input.props = normalizeAttrs(input.props)\n\n return input\n },\n genHiddenInput (): VNode {\n return h('input', {\n value: this.lazyValue,\n type: 'hidden',\n name: this.attrs$.name\n })\n },\n genInputSlot (): VNode {\n const render = VTextField.methods.genInputSlot.call(this)\n\n render.props = {\n role: 'button',\n 'aria-haspopup': 'listbox',\n 'aria-expanded': String(this.isMenuActive),\n 'aria-owns': this.computedOwns,\n ...render.props\n }\n\n return render\n },\n genList (): VNode {\n // If there's no slots, we can use a cached VNode to improve performance\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n return this.genListWithSlot()\n } else {\n return this.staticList\n }\n },\n genListWithSlot (): VNode {\n const slots = ['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => h('template', {\n slot: slotName,\n }, this.$slots[slotName]))\n // Requires destructuring due to Vue\n // modifying the `on` property when passed\n // as a referenced object\n\n return h(VSelectList, {\n ...this.listData,\n }, {...slots,item: this.$slots.item})\n },\n genMenu (): VNode {\n const props = this.$_menuProps as any\n props.activator = this.$refs['input-slot']\n\n if ('attach' in props) void 0\n else if (\n // TODO: make this a computed property or helper or something\n this.attach === '' || // If used as a boolean prop (<v-menu attach>)\n this.attach === true || // If bound to a boolean (<v-menu :attach=\"true\">)\n this.attach === 'attach' // If bound as boolean prop in pug (v-menu(attach))\n ) {\n // Attach to root el so that\n // menu covers prepend/append icons\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return h(VMenu, {\n role: undefined,\n ...props,\n onInput: (val: boolean) => {\n this.isMenuActive = val\n this.isFocused = val\n },\n onScroll: this.onScroll,\n ref: 'menu',\n }, [this.genList()])\n },\n genSelections (): VNode {\n let length = this.selectedItems.length\n\n const children = new Array(length)\n\n let genSelection\n if (this.$slots.selection) {\n genSelection = this.genSlotSelection\n } else if (this.hasChips) {\n genSelection = this.genChipSelection\n } else {\n genSelection = this.genCommaSelection\n }\n\n while (length--) {\n children[length] = genSelection(\n this.selectedItems[length],\n length,\n length === children.length - 1\n )\n }\n\n return h('div', {\n class: 'v-select__selections',\n }, children)\n },\n genSlotSelection (item: object, index: number): VNode[] | undefined {\n return this.$slots.selection!({\n class: 'v-chip--select',\n parent: this,\n item,\n index,\n select: (e: Event) => {\n e.stopPropagation()\n this.selectedIndex = index\n },\n selected: index === this.selectedIndex,\n disabled: !this.isInteractive,\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? (this.$refs.menu as { [key: string]: any }).listIndex : -1\n },\n getDisabled (item: object) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item: object) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e?: Event) {\n e && this.$emit('blur', e)\n },\n onChipInput (item: object) {\n if (this.multiple) this.selectItem(item)\n else this.setValue(null)\n // If all items have been deleted,\n // open `v-menu`\n if (this.selectedItems.length === 0) {\n this.isMenuActive = true\n } else {\n this.isMenuActive = false\n }\n this.selectedIndex = -1\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n if (!this.isAppendInner(e.target)) {\n this.isMenuActive = true\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n\n this.$emit('click', e)\n },\n onEscDown (e: Event) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e: KeyboardEvent) {\n if (\n this.multiple ||\n !this.isInteractive ||\n this.disableLookup ||\n e.key.length > 1 ||\n e.ctrlKey || e.metaKey || e.altKey\n ) return\n\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n const now = performance.now()\n if (now - this.keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n this.keyboardLookupPrefix = ''\n }\n this.keyboardLookupPrefix += e.key.toLowerCase()\n this.keyboardLookupLastTime = now\n\n const index = this.allItems.findIndex(item => {\n const text = (this.getText(item) ?? '').toString()\n\n return text.toLowerCase().startsWith(this.keyboardLookupPrefix)\n })\n const item = this.allItems[index]\n if (index !== -1) {\n this.lastItem = Math.max(this.lastItem, index + 5)\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.isReadonly && e.keyCode !== keyCodes.tab) return\n\n const keyCode = e.keyCode\n const menu = this.$refs.menu\n\n this.$emit('keydown', e)\n\n if (!menu) return\n\n // If menu is active, allow default\n // listIndex change from menu\n if (this.isMenuActive && [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end, keyCodes.enter].includes(keyCode)) {\n this.$nextTick(() => {\n menu.changeListIndex(e)\n this.$emit('update:list-index', menu.listIndex)\n })\n }\n\n // If enter, space, open menu\n if ([\n keyCodes.enter,\n keyCodes.space,\n ].includes(keyCode)) this.activateMenu()\n\n // If menu is not active, up/down/home/end can do\n // one of 2 things. If multiple, opens the\n // menu, if not, will cycle through all\n // available options\n if (\n !this.isMenuActive &&\n [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end].includes(keyCode)\n ) return this.onUpDown(e)\n\n // If escape deactivate the menu\n if (keyCode === keyCodes.esc) return this.onEscDown(e)\n\n // If tab - select item or close menu\n if (keyCode === keyCodes.tab) return this.onTabDown(e)\n\n // If space preventDefault\n if (keyCode === keyCodes.space) return this.onSpaceDown(e)\n },\n onMenuActiveChange (val: boolean) {\n // If menu is closing and mulitple\n // or menuIndex is already set\n // skip menu index recalculation\n if (\n (this.multiple && !val) ||\n this.getMenuIndex() > -1\n ) return\n\n const menu = this.$refs.menu\n\n if (!menu || !this.isDirty) return\n\n // When menu opens, set index of first active item\n this.$refs.menu.getTiles()\n for (let i = 0; i < menu.tiles.length; i++) {\n if (menu.tiles[i].getAttribute('aria-selected') === 'true') {\n this.setMenuIndex(i)\n break\n }\n }\n },\n onMouseUp (e: MouseEvent) {\n // eslint-disable-next-line sonarjs/no-collapsible-if\n if (\n this.hasMouseDown &&\n e.which !== 3 &&\n this.isInteractive\n ) {\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isAppendInner(e.target)) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n }\n }\n\n VTextField.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => {\n const content = this.getContent()\n if (content) content.scrollTop = 0\n })\n } else {\n if (this.lastItem > this.computedItems.length) return\n\n const showMoreItems = (\n this.getContent().scrollHeight -\n (this.getContent().scrollTop +\n this.getContent().clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onSpaceDown (e: KeyboardEvent) {\n e.preventDefault()\n },\n onTabDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n const activeTile = menu.activeTile\n\n // An item that is selected by\n // menu-index should toggled\n if (\n !this.multiple &&\n activeTile &&\n this.isMenuActive\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n activeTile.click()\n } else {\n // If we make it here,\n // the user has no selected indexes\n // and is probably tabbing out\n this.blur(e)\n }\n },\n onUpDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n e.preventDefault()\n\n // Multiple selects do not cycle their value\n // when pressing up or down, instead activate\n // the menu\n if (this.multiple) return this.activateMenu()\n\n const keyCode = e.keyCode\n\n // Cycle through available values to achieve\n // select native behavior\n menu.isBooted = true\n\n window.requestAnimationFrame(() => {\n menu.getTiles()\n\n if (!menu.hasClickableTiles) return this.activateMenu()\n\n switch (keyCode) {\n case keyCodes.up:\n menu.prevTile()\n break\n case keyCodes.down:\n menu.nextTile()\n break\n case keyCodes.home:\n menu.firstTile()\n break\n case keyCodes.end:\n menu.lastTile()\n break\n }\n this.selectItem(this.allItems[this.getMenuIndex()])\n })\n },\n selectItem (item: object) {\n if (!this.multiple) {\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.isMenuActive = false\n } else {\n const internalValue = (this.internalValue || []).slice()\n const i = this.findExistingIndex(item)\n\n i !== -1 ? internalValue.splice(i, 1) : internalValue.push(item)\n this.setValue(internalValue.map((i: object) => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // There is no item to re-highlight\n // when selections are hidden\n if (this.hideSelected) {\n this.setMenuIndex(-1)\n } else {\n const index = this.computedItems.indexOf(item)\n if (~index) {\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n }\n }\n },\n setMenuIndex (index: number) {\n this.$refs.menu && ((this.$refs.menu as { [key: string]: any }).listIndex = index)\n },\n setSelectedItems () {\n const selectedItems = []\n const values = !this.multiple || !Array.isArray(this.internalValue)\n ? [this.internalValue]\n : this.internalValue\n\n for (const value of values) {\n const index = this.allItems.findIndex(v => this.valueComparator(\n this.getValue(v),\n this.getValue(value)\n ))\n\n if (index > -1) {\n selectedItems.push(this.allItems[index])\n }\n }\n\n this.selectedItems = selectedItems\n },\n setValue (value: any) {\n if (!this.valueComparator(value, this.internalValue)) {\n this.internalValue = value\n this.$emit('update:modelValue', value)\n }\n },\n isAppendInner (target: any) {\n // return true if append inner is present\n // and the target is itself or inside\n const appendInner = this.$refs['append-inner']\n\n return appendInner && (appendInner === target || appendInner.contains(target))\n },\n },\n})\n"],"sourceRoot":"","file":"VSelect.js"}
1
+ {"version":3,"sources":["../../../src/components/VSelect/VSelect.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../VTextField/VTextField.sass'\nimport './VSelect.sass'\n\n// Components\nimport VChip from '../VChip'\nimport VMenu from '../VMenu'\nimport VSelectList from './VSelectList'\n\n// Extensions\nimport VInput from '../VInput'\nimport VTextField from '../VTextField/VTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Dependent from '../../mixins/dependent'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport { getPropertyFromItem, getObjectValueByPath, keyCodes } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, VNodeDirective, PropType, VNodeData } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { SelectItemKey } from 'vuetify/types'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n disableKeys: true,\n openOnClick: false,\n maxHeight: 304,\n}\n\n// Types\nconst baseMixins = mixins(\n VTextField,\n Comparable,\n Dependent,\n Filterable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n menu: InstanceType<typeof VMenu>\n content: HTMLElement\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n 'append-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-select',\n\n directives: {\n ClickOutside,\n },\n\n props: {\n appendIcon: {\n type: String,\n default: '$dropdown',\n },\n attach: {\n type: null as unknown as PropType<string | boolean | Element | VNode>,\n default: false,\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n disableLookup: Boolean,\n eager: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemColor: {\n type: String,\n default: 'primary',\n },\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n menuProps: {\n type: [String, Array, Object],\n default: () => defaultMenuProps,\n },\n multiple: Boolean,\n openOnClear: Boolean,\n returnObject: Boolean,\n smallChips: Boolean,\n },\n\n data () {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n menuIsBooted: false,\n isMenuActive: false,\n lastItem: 20,\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n lazyValue: this.value !== undefined\n ? this.value\n : this.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [] as any[],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0,\n }\n },\n\n computed: {\n /* All items that the select has */\n allItems (): object[] {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes (): object {\n return {\n ...VTextField.options.computed.classes.call(this),\n 'v-select': true,\n 'v-select--chips': this.hasChips,\n 'v-select--chips--small': this.smallChips,\n 'v-select--is-menu-active': this.isMenuActive,\n 'v-select--is-multi': this.multiple,\n }\n },\n /* Used by other components to overwrite */\n computedItems (): object[] {\n return this.allItems\n },\n computedOwns (): string {\n return `list-${this._uid}`\n },\n computedCounterValue (): number {\n const value = this.multiple\n ? this.selectedItems\n : (this.getText(this.selectedItems[0]) ?? '').toString()\n\n if (typeof this.counterValue === 'function') {\n return this.counterValue(value)\n }\n\n return value.length\n },\n directives (): VNodeDirective[] | undefined {\n return this.isFocused ? [{\n name: 'click-outside',\n value: {\n handler: this.blur,\n closeConditional: this.closeConditional,\n include: () => this.getOpenDependentElements(),\n },\n }] : undefined\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n hasSlot (): boolean {\n return Boolean(this.hasChips || this.$scopedSlots.selection)\n },\n isDirty (): boolean {\n return this.selectedItems.length > 0\n },\n listData (): object {\n const scopeId = this.$vnode && (this.$vnode.context!.$options as { [key: string]: any })._scopeId\n const attrs = scopeId ? {\n [scopeId]: true,\n } : {}\n\n return {\n attrs: {\n ...attrs,\n id: this.computedOwns,\n },\n props: {\n action: this.multiple,\n color: this.itemColor,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n itemDisabled: this.itemDisabled,\n itemText: this.itemText,\n itemValue: this.itemValue,\n noDataText: this.$vuetify.lang.t(this.noDataText),\n selectedItems: this.selectedItems,\n },\n on: {\n select: this.selectItem,\n },\n scopedSlots: {\n item: this.$scopedSlots.item,\n },\n }\n },\n staticList (): VNode {\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n consoleError('assert: staticList should not be called if slots are used')\n }\n\n return this.$createElement(VSelectList, this.listData)\n },\n virtualizedItems (): object[] {\n return (this.$_menuProps as any).auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow: () => true,\n $_menuProps (): object {\n let normalisedProps = typeof this.menuProps === 'string'\n ? this.menuProps.split(',')\n : this.menuProps\n\n if (Array.isArray(normalisedProps)) {\n normalisedProps = normalisedProps.reduce((acc, p) => {\n acc[p.trim()] = true\n return acc\n }, {})\n }\n\n return {\n ...defaultMenuProps,\n eager: this.eager,\n value: this.menuCanShow && this.isMenuActive,\n nudgeBottom: normalisedProps.offsetY ? 1 : 0, // convert to int\n ...normalisedProps,\n }\n },\n },\n\n watch: {\n internalValue (val) {\n this.initialValue = val\n this.setSelectedItems()\n\n if (this.multiple) {\n this.$nextTick(() => {\n this.$refs.menu?.updateDimensions()\n })\n }\n if (this.hideSelected) {\n this.$nextTick(() => {\n this.onScroll()\n })\n }\n },\n isMenuActive (val) {\n window.setTimeout(() => this.onMenuActiveChange(val))\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n // Breaks vue-test-utils if\n // this isn't calculated\n // on the next tick\n this.$nextTick(() => {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n })\n }\n\n this.setSelectedItems()\n },\n },\n },\n\n methods: {\n /** @public */\n blur (e?: Event) {\n VTextField.options.methods.blur.call(this, e)\n this.isMenuActive = false\n this.isFocused = false\n this.selectedIndex = -1\n this.setMenuIndex(-1)\n },\n /** @public */\n activateMenu () {\n if (\n !this.isInteractive ||\n this.isMenuActive\n ) return\n\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : null)\n this.setMenuIndex(-1)\n this.$nextTick(() => this.$refs.input && this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e: Event) {\n if (!this.isMenuActive) return true\n\n return (\n !this._isDestroyed &&\n\n // Click originates from outside the menu content\n // Multiple selects don't close when an item is clicked\n (!this.getContent() ||\n !this.getContent().contains(e.target as Node)) &&\n\n // Click originates from outside the element\n this.$el &&\n !this.$el.contains(e.target as Node) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr: any[]) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n\n // Do not return null values if existant (#14421)\n if (item == null) {\n continue\n }\n // Do not deduplicate headers or dividers (#12517)\n if (item.header || item.divider) {\n uniqueValues.set(item, item)\n continue\n }\n\n const val = this.getValue(item)\n\n // TODO: comparator\n !uniqueValues.has(val) && uniqueValues.set(val, item)\n }\n return Array.from(uniqueValues.values())\n },\n findExistingIndex (item: object) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex((i: object) => this.valueComparator(this.getValue(i), itemValue))\n },\n getContent () {\n return this.$refs.menu && this.$refs.menu.$refs.content\n },\n genChipSelection (item: object, index: number) {\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n const isInteractive = !isDisabled && this.isInteractive\n\n return this.$createElement(VChip, {\n staticClass: 'v-chip--select',\n attrs: { tabindex: -1 },\n props: {\n close: this.deletableChips && isInteractive,\n disabled: isDisabled,\n inputValue: index === this.selectedIndex,\n small: this.smallChips,\n },\n on: {\n click: (e: MouseEvent) => {\n if (!isInteractive) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n 'click:close': () => this.onChipInput(item),\n },\n key: JSON.stringify(this.getValue(item)),\n }, this.getText(item))\n },\n genCommaSelection (item: object, index: number, last: boolean) {\n const color = index === this.selectedIndex && this.computedColor\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n\n return this.$createElement('div', this.setTextColor(color, {\n staticClass: 'v-select__selection v-select__selection--comma',\n class: {\n 'v-select__selection--disabled': isDisabled,\n },\n key: JSON.stringify(this.getValue(item)),\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot (): (VNode | VNode[] | null)[] {\n const selections = this.genSelections()\n const input = this.genInput()\n\n // If the return is an empty array\n // push the input\n if (Array.isArray(selections)) {\n selections.push(input)\n // Otherwise push it into children\n } else {\n selections.children = selections.children || []\n selections.children.push(input)\n }\n\n return [\n this.genFieldset(),\n this.$createElement('div', {\n staticClass: 'v-select__slot',\n directives: this.directives,\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n selections,\n this.suffix ? this.genAffix('suffix') : null,\n this.genClearIcon(),\n this.genIconSlot(),\n this.genHiddenInput(),\n ]),\n this.genMenu(),\n this.genProgress(),\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData?: VNodeData\n ) {\n const icon = VInput.options.methods.genIcon.call(this, type, cb, extraData)\n\n if (type === 'append') {\n // Don't allow the dropdown icon to be focused\n icon.children![0].data = mergeData(icon.children![0].data!, {\n attrs: {\n tabindex: icon.children![0].componentOptions!.listeners && '-1',\n 'aria-hidden': 'true',\n 'aria-label': undefined,\n },\n })\n }\n\n return icon\n },\n genInput (): VNode {\n const input = VTextField.options.methods.genInput.call(this)\n\n delete input.data!.attrs!.name\n\n input.data = mergeData(input.data!, {\n domProps: { value: null },\n attrs: {\n readonly: true,\n type: 'text',\n 'aria-readonly': String(this.isReadonly),\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n placeholder: (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) ? this.placeholder : undefined,\n },\n on: { keypress: this.onKeyPress },\n })\n\n return input\n },\n genHiddenInput (): VNode {\n return this.$createElement('input', {\n domProps: { value: this.lazyValue },\n attrs: {\n type: 'hidden',\n name: this.attrs$.name,\n },\n })\n },\n genInputSlot (): VNode {\n const render = VTextField.options.methods.genInputSlot.call(this)\n\n render.data!.attrs = {\n ...render.data!.attrs,\n role: 'button',\n 'aria-haspopup': 'listbox',\n 'aria-expanded': String(this.isMenuActive),\n 'aria-owns': this.computedOwns,\n }\n\n return render\n },\n genList (): VNode {\n // If there's no slots, we can use a cached VNode to improve performance\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n return this.genListWithSlot()\n } else {\n return this.staticList\n }\n },\n genListWithSlot (): VNode {\n const slots = ['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => this.$createElement('template', {\n slot: slotName,\n }, this.$slots[slotName]))\n // Requires destructuring due to Vue\n // modifying the `on` property when passed\n // as a referenced object\n return this.$createElement(VSelectList, {\n ...this.listData,\n }, slots)\n },\n genMenu (): VNode {\n const props = this.$_menuProps as any\n props.activator = this.$refs['input-slot']\n\n if ('attach' in props) void 0\n else if (\n // TODO: make this a computed property or helper or something\n this.attach === '' || // If used as a boolean prop (<v-menu attach>)\n this.attach === true || // If bound to a boolean (<v-menu :attach=\"true\">)\n this.attach === 'attach' // If bound as boolean prop in pug (v-menu(attach))\n ) {\n // Attach to root el so that\n // menu covers prepend/append icons\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return this.$createElement(VMenu, {\n attrs: { role: undefined },\n props,\n on: {\n input: (val: boolean) => {\n this.isMenuActive = val\n this.isFocused = val\n },\n scroll: this.onScroll,\n },\n ref: 'menu',\n }, [this.genList()])\n },\n genSelections (): VNode {\n let length = this.selectedItems.length\n const children = new Array(length)\n\n let genSelection\n if (this.$scopedSlots.selection) {\n genSelection = this.genSlotSelection\n } else if (this.hasChips) {\n genSelection = this.genChipSelection\n } else {\n genSelection = this.genCommaSelection\n }\n\n while (length--) {\n children[length] = genSelection(\n this.selectedItems[length],\n length,\n length === children.length - 1\n )\n }\n\n return this.$createElement('div', {\n staticClass: 'v-select__selections',\n }, children)\n },\n genSlotSelection (item: object, index: number): VNode[] | undefined {\n return this.$scopedSlots.selection!({\n attrs: {\n class: 'v-chip--select',\n },\n parent: this,\n item,\n index,\n select: (e: Event) => {\n e.stopPropagation()\n this.selectedIndex = index\n },\n selected: index === this.selectedIndex,\n disabled: !this.isInteractive,\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? (this.$refs.menu as { [key: string]: any }).listIndex : -1\n },\n getDisabled (item: object) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item: object) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e?: Event) {\n e && this.$emit('blur', e)\n },\n onChipInput (item: object) {\n if (this.multiple) this.selectItem(item)\n else this.setValue(null)\n // If all items have been deleted,\n // open `v-menu`\n if (this.selectedItems.length === 0) {\n this.isMenuActive = true\n } else {\n this.isMenuActive = false\n }\n this.selectedIndex = -1\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n if (!this.isAppendInner(e.target)) {\n this.isMenuActive = true\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n\n this.$emit('click', e)\n },\n onEscDown (e: Event) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e: KeyboardEvent) {\n if (\n this.multiple ||\n !this.isInteractive ||\n this.disableLookup ||\n e.key.length > 1 ||\n e.ctrlKey || e.metaKey || e.altKey\n ) return\n\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n const now = performance.now()\n if (now - this.keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n this.keyboardLookupPrefix = ''\n }\n this.keyboardLookupPrefix += e.key.toLowerCase()\n this.keyboardLookupLastTime = now\n\n const index = this.allItems.findIndex(item => {\n const text = (this.getText(item) ?? '').toString()\n\n return text.toLowerCase().startsWith(this.keyboardLookupPrefix)\n })\n const item = this.allItems[index]\n if (index !== -1) {\n this.lastItem = Math.max(this.lastItem, index + 5)\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.isReadonly && e.keyCode !== keyCodes.tab) return\n\n const keyCode = e.keyCode\n const menu = this.$refs.menu\n\n this.$emit('keydown', e)\n\n if (!menu) return\n\n // If menu is active, allow default\n // listIndex change from menu\n if (this.isMenuActive && [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end, keyCodes.enter].includes(keyCode)) {\n this.$nextTick(() => {\n menu.changeListIndex(e)\n this.$emit('update:list-index', menu.listIndex)\n })\n }\n\n // If enter, space, open menu\n if ([\n keyCodes.enter,\n keyCodes.space,\n ].includes(keyCode)) this.activateMenu()\n\n // If menu is not active, up/down/home/end can do\n // one of 2 things. If multiple, opens the\n // menu, if not, will cycle through all\n // available options\n if (\n !this.isMenuActive &&\n [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end].includes(keyCode)\n ) return this.onUpDown(e)\n\n // If escape deactivate the menu\n if (keyCode === keyCodes.esc) return this.onEscDown(e)\n\n // If tab - select item or close menu\n if (keyCode === keyCodes.tab) return this.onTabDown(e)\n\n // If space preventDefault\n if (keyCode === keyCodes.space) return this.onSpaceDown(e)\n },\n onMenuActiveChange (val: boolean) {\n // If menu is closing and mulitple\n // or menuIndex is already set\n // skip menu index recalculation\n if (\n (this.multiple && !val) ||\n this.getMenuIndex() > -1\n ) return\n\n const menu = this.$refs.menu\n\n if (!menu || !this.isDirty) return\n\n // When menu opens, set index of first active item\n this.$refs.menu.getTiles()\n for (let i = 0; i < menu.tiles.length; i++) {\n if (menu.tiles[i].getAttribute('aria-selected') === 'true') {\n this.setMenuIndex(i)\n break\n }\n }\n },\n onMouseUp (e: MouseEvent) {\n // eslint-disable-next-line sonarjs/no-collapsible-if\n if (\n this.hasMouseDown &&\n e.which !== 3 &&\n this.isInteractive\n ) {\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isAppendInner(e.target)) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n }\n }\n\n VTextField.options.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => {\n const content = this.getContent()\n if (content) content.scrollTop = 0\n })\n } else {\n if (this.lastItem > this.computedItems.length) return\n\n const showMoreItems = (\n this.getContent().scrollHeight -\n (this.getContent().scrollTop +\n this.getContent().clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onSpaceDown (e: KeyboardEvent) {\n e.preventDefault()\n },\n onTabDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n const activeTile = menu.activeTile\n\n // An item that is selected by\n // menu-index should toggled\n if (\n !this.multiple &&\n activeTile &&\n this.isMenuActive\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n activeTile.click()\n } else {\n // If we make it here,\n // the user has no selected indexes\n // and is probably tabbing out\n this.blur(e)\n }\n },\n onUpDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n e.preventDefault()\n\n // Multiple selects do not cycle their value\n // when pressing up or down, instead activate\n // the menu\n if (this.multiple) return this.activateMenu()\n\n const keyCode = e.keyCode\n\n // Cycle through available values to achieve\n // select native behavior\n menu.isBooted = true\n\n window.requestAnimationFrame(() => {\n menu.getTiles()\n\n if (!menu.hasClickableTiles) return this.activateMenu()\n\n switch (keyCode) {\n case keyCodes.up:\n menu.prevTile()\n break\n case keyCodes.down:\n menu.nextTile()\n break\n case keyCodes.home:\n menu.firstTile()\n break\n case keyCodes.end:\n menu.lastTile()\n break\n }\n this.selectItem(this.allItems[this.getMenuIndex()])\n })\n },\n selectItem (item: object) {\n if (!this.multiple) {\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.isMenuActive = false\n } else {\n const internalValue = (this.internalValue || []).slice()\n const i = this.findExistingIndex(item)\n\n i !== -1 ? internalValue.splice(i, 1) : internalValue.push(item)\n this.setValue(internalValue.map((i: object) => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // There is no item to re-highlight\n // when selections are hidden\n if (this.hideSelected) {\n this.setMenuIndex(-1)\n } else {\n const index = this.computedItems.indexOf(item)\n if (~index) {\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n }\n }\n },\n setMenuIndex (index: number) {\n this.$refs.menu && ((this.$refs.menu as { [key: string]: any }).listIndex = index)\n },\n setSelectedItems () {\n const selectedItems = []\n const values = !this.multiple || !Array.isArray(this.internalValue)\n ? [this.internalValue]\n : this.internalValue\n\n for (const value of values) {\n const index = this.allItems.findIndex(v => this.valueComparator(\n this.getValue(v),\n this.getValue(value)\n ))\n\n if (index > -1) {\n selectedItems.push(this.allItems[index])\n }\n }\n\n this.selectedItems = selectedItems\n },\n setValue (value: any) {\n if (!this.valueComparator(value, this.internalValue)) {\n this.internalValue = value\n this.$emit('change', value)\n }\n },\n isAppendInner (target: any) {\n // return true if append inner is present\n // and the target is itself or inside\n const appendInner = this.$refs['append-inner']\n\n return appendInner && (appendInner === target || appendInner.contains(target))\n },\n },\n})\n"],"sourceRoot":"","file":"VSelect.js"}