@dimailn/vuetify 2.7.2-alpha27 → 2.7.2-alpha29

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 (349) hide show
  1. package/dist/vuetify.js +1493 -325
  2. package/dist/vuetify.js.map +1 -1
  3. package/dist/vuetify.min.css +1 -1
  4. package/dist/vuetify.min.js +2 -2
  5. package/es5/components/VAlert/VAlert.js +38 -9
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VAutocomplete/VAutocomplete.js +1 -0
  8. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  9. package/es5/components/VBadge/VBadge.js +28 -0
  10. package/es5/components/VBadge/VBadge.js.map +1 -1
  11. package/es5/components/VBanner/VBanner.js +34 -6
  12. package/es5/components/VBanner/VBanner.js.map +1 -1
  13. package/es5/components/VBottomNavigation/VBottomNavigation.js +25 -0
  14. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  15. package/es5/components/VCarousel/VCarousel.js +28 -3
  16. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  17. package/es5/components/VCheckbox/VSimpleCheckbox.js +30 -2
  18. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  19. package/es5/components/VChip/VChip.js +1 -0
  20. package/es5/components/VChip/VChip.js.map +1 -1
  21. package/es5/components/VColorPicker/VColorPicker.js +30 -2
  22. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  23. package/es5/components/VCombobox/VCombobox.js +1 -0
  24. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  25. package/es5/components/VDataIterator/VDataFooter.js +16 -7
  26. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  27. package/es5/components/VDataIterator/VDataIterator.js +42 -47
  28. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  29. package/es5/components/VDataTable/RowGroup.js +46 -15
  30. package/es5/components/VDataTable/RowGroup.js.map +1 -1
  31. package/es5/components/VDataTable/VDataTable.js +10 -18
  32. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  33. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  34. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +3 -0
  35. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  36. package/es5/components/VDataTable/VDataTableHeaderMobile.js +28 -37
  37. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  38. package/es5/components/VDataTable/VEditDialog.js +3 -4
  39. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  40. package/es5/components/VDataTable/VSimpleTable.js +1 -1
  41. package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
  42. package/es5/components/VDataTable/VVirtualTable.js +5 -5
  43. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  44. package/es5/components/VDataTable/mixins/header.js +1 -1
  45. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  46. package/es5/components/VDatePicker/VDatePicker.js +21 -9
  47. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  48. package/es5/components/VDatePicker/VDatePickerHeader.js +24 -8
  49. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  50. package/es5/components/VDatePicker/VDatePickerTitle.js +33 -8
  51. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  52. package/es5/components/VDatePicker/VDatePickerYears.js +38 -13
  53. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  54. package/es5/components/VDatePicker/mixins/date-picker-table.js +33 -17
  55. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  56. package/es5/components/VInput/VInput.js +36 -8
  57. package/es5/components/VInput/VInput.js.map +1 -1
  58. package/es5/components/VList/VListGroup.js +47 -21
  59. package/es5/components/VList/VListGroup.js.map +1 -1
  60. package/es5/components/VList/VListItem.js +33 -6
  61. package/es5/components/VList/VListItem.js.map +1 -1
  62. package/es5/components/VMenu/VMenu.js +56 -31
  63. package/es5/components/VMenu/VMenu.js.map +1 -1
  64. package/es5/components/VMessages/VMessages.js +30 -7
  65. package/es5/components/VMessages/VMessages.js.map +1 -1
  66. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +36 -9
  67. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  68. package/es5/components/VOtpInput/VOtpInput.js +36 -0
  69. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  70. package/es5/components/VOverlay/VOverlay.js +28 -0
  71. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  72. package/es5/components/VPagination/VPagination.js +30 -6
  73. package/es5/components/VPagination/VPagination.js.map +1 -1
  74. package/es5/components/VProgressLinear/VProgressLinear.js +28 -0
  75. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  76. package/es5/components/VRadioGroup/VRadioGroup.js +28 -0
  77. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  78. package/es5/components/VRating/VRating.js +45 -17
  79. package/es5/components/VRating/VRating.js.map +1 -1
  80. package/es5/components/VSelect/VSelect.js +112 -84
  81. package/es5/components/VSelect/VSelect.js.map +1 -1
  82. package/es5/components/VSelect/VSelectList.js +73 -19
  83. package/es5/components/VSelect/VSelectList.js.map +1 -1
  84. package/es5/components/VSlider/VSlider.js +42 -16
  85. package/es5/components/VSlider/VSlider.js.map +1 -1
  86. package/es5/components/VSpeedDial/VSpeedDial.js +10 -8
  87. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  88. package/es5/components/VTabs/VTabs.js +45 -17
  89. package/es5/components/VTabs/VTabs.js.map +1 -1
  90. package/es5/components/VTooltip/VTooltip.js +3 -3
  91. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  92. package/es5/components/VTreeview/VTreeview.js +0 -7
  93. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  94. package/es5/framework.js +1 -1
  95. package/es5/mixins/routable/index.js +5 -2
  96. package/es5/mixins/routable/index.js.map +1 -1
  97. package/es5/mixins/validatable/index.js +24 -0
  98. package/es5/mixins/validatable/index.js.map +1 -1
  99. package/es5/util/console.js +49 -18
  100. package/es5/util/console.js.map +1 -1
  101. package/es5/util/helpers.js +5 -1
  102. package/es5/util/helpers.js.map +1 -1
  103. package/lib/components/VAlert/VAlert.js +12 -7
  104. package/lib/components/VAlert/VAlert.js.map +1 -1
  105. package/lib/components/VAutocomplete/VAutocomplete.js +1 -0
  106. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  107. package/lib/components/VBadge/VBadge.js +11 -0
  108. package/lib/components/VBadge/VBadge.js.map +1 -1
  109. package/lib/components/VBanner/VBanner.js +11 -0
  110. package/lib/components/VBanner/VBanner.js.map +1 -1
  111. package/lib/components/VBottomNavigation/VBottomNavigation.js +7 -0
  112. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  113. package/lib/components/VCarousel/VCarousel.js +7 -0
  114. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  115. package/lib/components/VCheckbox/VSimpleCheckbox.js +11 -0
  116. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  117. package/lib/components/VChip/VChip.js +1 -0
  118. package/lib/components/VChip/VChip.js.map +1 -1
  119. package/lib/components/VColorPicker/VColorPicker.js +12 -1
  120. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  121. package/lib/components/VCombobox/VCombobox.js +1 -0
  122. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  123. package/lib/components/VDataIterator/VDataFooter.js +14 -7
  124. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  125. package/lib/components/VDataIterator/VDataIterator.js +26 -31
  126. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  127. package/lib/components/VDataTable/RowGroup.js +30 -14
  128. package/lib/components/VDataTable/RowGroup.js.map +1 -1
  129. package/lib/components/VDataTable/VDataTable.js +8 -15
  130. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  131. package/lib/components/VDataTable/VDataTableHeader.js +1 -1
  132. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  133. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +3 -0
  134. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  135. package/lib/components/VDataTable/VDataTableHeaderMobile.js +17 -25
  136. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  137. package/lib/components/VDataTable/VEditDialog.js +3 -4
  138. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  139. package/lib/components/VDataTable/VSimpleTable.js +1 -1
  140. package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
  141. package/lib/components/VDataTable/VVirtualTable.js +1 -2
  142. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  143. package/lib/components/VDataTable/mixins/header.js +1 -1
  144. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  145. package/lib/components/VDatePicker/VDatePicker.js +7 -1
  146. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  147. package/lib/components/VDatePicker/VDatePickerHeader.js +12 -1
  148. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  149. package/lib/components/VDatePicker/VDatePickerTitle.js +11 -0
  150. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  151. package/lib/components/VDatePicker/VDatePickerYears.js +11 -1
  152. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  153. package/lib/components/VDatePicker/mixins/date-picker-table.js +12 -1
  154. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  155. package/lib/components/VInput/VInput.js +13 -3
  156. package/lib/components/VInput/VInput.js.map +1 -1
  157. package/lib/components/VList/VListGroup.js +16 -8
  158. package/lib/components/VList/VListGroup.js.map +1 -1
  159. package/lib/components/VList/VListItem.js +12 -3
  160. package/lib/components/VList/VListItem.js.map +1 -1
  161. package/lib/components/VMenu/VMenu.js +15 -4
  162. package/lib/components/VMenu/VMenu.js.map +1 -1
  163. package/lib/components/VMessages/VMessages.js +13 -2
  164. package/lib/components/VMessages/VMessages.js.map +1 -1
  165. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +11 -2
  166. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  167. package/lib/components/VOtpInput/VOtpInput.js +48 -0
  168. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  169. package/lib/components/VOverlay/VOverlay.js +11 -0
  170. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  171. package/lib/components/VPagination/VPagination.js +11 -0
  172. package/lib/components/VPagination/VPagination.js.map +1 -1
  173. package/lib/components/VProgressLinear/VProgressLinear.js +11 -0
  174. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  175. package/lib/components/VRadioGroup/VRadioGroup.js +11 -0
  176. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  177. package/lib/components/VRating/VRating.js +11 -0
  178. package/lib/components/VRating/VRating.js.map +1 -1
  179. package/lib/components/VSelect/VSelect.js +52 -36
  180. package/lib/components/VSelect/VSelect.js.map +1 -1
  181. package/lib/components/VSelect/VSelectList.js +32 -8
  182. package/lib/components/VSelect/VSelectList.js.map +1 -1
  183. package/lib/components/VSlider/VSlider.js +11 -1
  184. package/lib/components/VSlider/VSlider.js.map +1 -1
  185. package/lib/components/VSpeedDial/VSpeedDial.js +7 -7
  186. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  187. package/lib/components/VTabs/VTabs.js +11 -0
  188. package/lib/components/VTabs/VTabs.js.map +1 -1
  189. package/lib/components/VTooltip/VTooltip.js +3 -3
  190. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  191. package/lib/components/VTreeview/VTreeview.js +0 -6
  192. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  193. package/lib/framework.js +1 -1
  194. package/lib/mixins/routable/index.js +5 -2
  195. package/lib/mixins/routable/index.js.map +1 -1
  196. package/lib/mixins/validatable/index.js +7 -1
  197. package/lib/mixins/validatable/index.js.map +1 -1
  198. package/lib/util/console.js +47 -17
  199. package/lib/util/console.js.map +1 -1
  200. package/lib/util/helpers.js +5 -1
  201. package/lib/util/helpers.js.map +1 -1
  202. package/package.json +1 -1
  203. package/src/components/VAlert/VAlert.ts +17 -8
  204. package/src/components/VAlert/__tests__/VAlert.spec.ts +78 -50
  205. package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +16 -18
  206. package/src/components/VApp/__tests__/VApp.spec.ts +24 -18
  207. package/src/components/VApp/__tests__/__snapshots__/VApp.spec.ts.snap +4 -4
  208. package/src/components/VAppBar/__tests__/VAppBar.spec.ts +256 -74
  209. package/src/components/VAppBar/__tests__/VAppBarNavIcon.spec.ts +2 -6
  210. package/src/components/VAppBar/__tests__/__snapshots__/VAppBar.spec.ts.snap +13 -4
  211. package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +3 -4
  212. package/src/components/VAutocomplete/VAutocomplete.ts +22 -0
  213. package/src/components/VAutocomplete/__tests__/VAutocomplete.spec.ts +51 -53
  214. package/src/components/VAutocomplete/__tests__/VAutocomplete2.spec.ts +77 -48
  215. package/src/components/VAutocomplete/__tests__/VAutocomplete3.spec.ts +101 -39
  216. package/src/components/VBadge/VBadge.ts +13 -0
  217. package/src/components/VBanner/VBanner.ts +13 -0
  218. package/src/components/VBanner/__tests__/VBanner.spec.ts +35 -36
  219. package/src/components/VBanner/__tests__/__snapshots__/VBanner.spec.ts.snap +1 -1
  220. package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -0
  221. package/src/components/VBtn/__tests__/VBtn.spec.ts +1 -1
  222. package/src/components/VCard/__tests__/VCard.spec.ts +46 -28
  223. package/src/components/VCard/__tests__/__snapshots__/VCard.spec.ts.snap +2 -2
  224. package/src/components/VCarousel/VCarousel.ts +11 -0
  225. package/src/components/VCheckbox/VSimpleCheckbox.ts +13 -0
  226. package/src/components/VCheckbox/__tests__/VCheckbox.spec.ts +157 -152
  227. package/src/components/VChip/VChip.ts +1 -0
  228. package/src/components/VChip/__tests__/VChip.spec.ts +50 -50
  229. package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +4 -4
  230. package/src/components/VChipGroup/__tests__/VChipGroup.spec.ts +14 -21
  231. package/src/components/VColorPicker/VColorPicker.ts +13 -0
  232. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +35 -35
  233. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +10 -10
  234. package/src/components/VCombobox/VCombobox.ts +23 -0
  235. package/src/components/VCombobox/__tests__/VCombobox-multiple.spec.ts +118 -110
  236. package/src/components/VCombobox/__tests__/VCombobox.spec.ts +119 -93
  237. package/src/components/VData/__tests__/VData.spec.ts +69 -90
  238. package/src/components/VDataIterator/VDataFooter.ts +14 -9
  239. package/src/components/VDataIterator/VDataIterator.ts +46 -34
  240. package/src/components/VDataIterator/__tests__/VDataFooter.spec.ts +38 -39
  241. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +90 -122
  242. package/src/components/VDataIterator/__tests__/__snapshots__/VDataFooter.spec.ts.snap +92 -82
  243. package/src/components/VDataIterator/__tests__/__snapshots__/VDataIterator.spec.ts.snap +79 -69
  244. package/src/components/VDataTable/RowGroup.ts +33 -16
  245. package/src/components/VDataTable/VDataTable.ts +8 -15
  246. package/src/components/VDataTable/VDataTableHeader.ts +2 -2
  247. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +4 -0
  248. package/src/components/VDataTable/VDataTableHeaderMobile.ts +16 -25
  249. package/src/components/VDataTable/VEditDialog.ts +3 -3
  250. package/src/components/VDataTable/VSimpleTable.ts +2 -3
  251. package/src/components/VDataTable/VVirtualTable.ts +1 -2
  252. package/src/components/VDataTable/__tests__/MobileRow.spec.ts +55 -66
  253. package/src/components/VDataTable/__tests__/Row.spec.ts +64 -73
  254. package/src/components/VDataTable/__tests__/RowGroup.spec.ts +7 -5
  255. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +916 -998
  256. package/src/components/VDataTable/__tests__/VDataTableHeader.spec.ts +39 -29
  257. package/src/components/VDataTable/__tests__/VEditDialog.spec.ts +33 -24
  258. package/src/components/VDataTable/__tests__/VSimpleTable.spec.ts +55 -29
  259. package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +13 -15
  260. package/src/components/VDataTable/__tests__/__snapshots__/Row.spec.ts.snap +30 -0
  261. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +2543 -2086
  262. package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +115 -144
  263. package/src/components/VDataTable/__tests__/__snapshots__/VEditDialog.spec.ts.snap +6 -6
  264. package/src/components/VDataTable/__tests__/__snapshots__/VSimpleTable.spec.ts.snap +22 -18
  265. package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +10 -13
  266. package/src/components/VDataTable/mixins/__tests__/header.spec.ts +15 -15
  267. package/src/components/VDataTable/mixins/header.ts +1 -1
  268. package/src/components/VDatePicker/VDatePicker.ts +11 -1
  269. package/src/components/VDatePicker/VDatePickerHeader.ts +13 -0
  270. package/src/components/VDatePicker/VDatePickerTitle.ts +12 -0
  271. package/src/components/VDatePicker/VDatePickerYears.ts +13 -0
  272. package/src/components/VDatePicker/mixins/date-picker-table.ts +13 -0
  273. package/src/components/VDivider/__tests__/VDivider.spec.ts +11 -15
  274. package/src/components/VDivider/__tests__/__snapshots__/VDivider.spec.ts.snap +2 -2
  275. package/src/components/VGrid/__tests__/VCol.spec.ts +17 -17
  276. package/src/components/VGrid/__tests__/VContainer.spec.ts +58 -3
  277. package/src/components/VGrid/__tests__/VFlex.spec.ts +3 -3
  278. package/src/components/VGrid/__tests__/VGrid.spec.ts +12 -10
  279. package/src/components/VGrid/__tests__/VLayout.spec.ts +3 -3
  280. package/src/components/VIcon/__tests__/VIcon.spec.ts +176 -70
  281. package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +55 -55
  282. package/src/components/VInput/VInput.ts +18 -5
  283. package/src/components/VItemGroup/__tests__/VItem.spec.ts +22 -37
  284. package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +96 -124
  285. package/src/components/VItemGroup/__tests__/__snapshots__/VItem.spec.ts.snap +2 -0
  286. package/src/components/VLabel/__tests__/VLabel.spec.ts +240 -14
  287. package/src/components/VLazy/__tests__/VLazy.spec.ts +5 -4
  288. package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +2 -1
  289. package/src/components/VList/VListGroup.ts +22 -10
  290. package/src/components/VList/VListItem.ts +19 -4
  291. package/src/components/VList/__tests__/VList.spec.ts +13 -12
  292. package/src/components/VList/__tests__/VListGroup.spec.ts +59 -51
  293. package/src/components/VList/__tests__/VListItem.spec.ts +142 -63
  294. package/src/components/VList/__tests__/VListItemAvatar.spec.ts +5 -2
  295. package/src/components/VList/__tests__/VListItemGroup.spec.ts +5 -2
  296. package/src/components/VList/__tests__/__snapshots__/VList.spec.ts.snap +10 -10
  297. package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +5 -6
  298. package/src/components/VList/__tests__/__snapshots__/VListItem.spec.ts.snap +1 -1
  299. package/src/components/VMain/__tests__/VMain.spec.ts +71 -17
  300. package/src/components/VMenu/VMenu.ts +22 -4
  301. package/src/components/VMenu/__tests__/VMenu.spec.ts +90 -69
  302. package/src/components/VMenu/__tests__/__snapshots__/VMenu.spec.ts.snap +3 -5
  303. package/src/components/VMessages/VMessages.ts +15 -4
  304. package/src/components/VMessages/__tests__/VMessages.spec.ts +55 -16
  305. package/src/components/VMessages/__tests__/__snapshots__/VMessages.spec.ts.snap +16 -25
  306. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +21 -11
  307. package/src/components/VOtpInput/VOtpInput.ts +37 -1
  308. package/src/components/VOverlay/VOverlay.ts +12 -0
  309. package/src/components/VPagination/VPagination.ts +23 -9
  310. package/src/components/VParallax/__tests__/__snapshots__/VParallax.spec.ts.snap +8 -8
  311. package/src/components/VPicker/__tests__/__snapshots__/VPicker.spec.ts.snap +2 -2
  312. package/src/components/VProgressLinear/VProgressLinear.ts +13 -0
  313. package/src/components/VRadioGroup/VRadioGroup.ts +14 -0
  314. package/src/components/VRating/VRating.ts +13 -0
  315. package/src/components/VResponsive/__tests__/__snapshots__/VResponsive.spec.ts.snap +2 -2
  316. package/src/components/VSelect/VSelect.ts +60 -43
  317. package/src/components/VSelect/VSelectList.ts +33 -12
  318. package/src/components/VSelect/__tests__/VSelect.spec.ts +166 -125
  319. package/src/components/VSelect/__tests__/VSelect2.spec.ts +127 -111
  320. package/src/components/VSelect/__tests__/VSelect3.spec.ts +109 -91
  321. package/src/components/VSelect/__tests__/VSelect4.spec.ts +79 -68
  322. package/src/components/VSelect/__tests__/VSelectList.spec.ts +23 -31
  323. package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +58 -62
  324. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +50 -62
  325. package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +10 -14
  326. package/src/components/VSlider/VSlider.ts +14 -1
  327. package/src/components/VSparkline/__tests__/VSparkline.spec.ts +33 -35
  328. package/src/components/VSpeedDial/VSpeedDial.ts +7 -8
  329. package/src/components/VSpeedDial/__tests__/VSpeedDial.spec.ts +21 -13
  330. package/src/components/VSpeedDial/__tests__/__snapshots__/VSpeedDial.spec.ts.snap +6 -6
  331. package/src/components/VStepper/__tests__/VStepper.spec.ts +4 -1
  332. package/src/components/VStepper/__tests__/VStepperContent.spec.ts +104 -110
  333. package/src/components/VStepper/__tests__/VStepperStep.spec.ts +51 -44
  334. package/src/components/VSwitch/__tests__/VSwitch.spec.ts +30 -37
  335. package/src/components/VTabs/VTabs.ts +14 -0
  336. package/src/components/VTabs/__tests__/VTabs.spec.ts +0 -7
  337. package/src/components/VTextField/__tests__/VTextField.spec.ts +342 -246
  338. package/src/components/VTextarea/__tests__/VTextarea.spec.ts +112 -35
  339. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +0 -40
  340. package/src/components/VToolbar/__tests__/VToolbar.spec.ts +49 -25
  341. package/src/components/VTooltip/VTooltip.ts +3 -3
  342. package/src/components/VTooltip/__tests__/__snapshots__/VTooltip.spec.ts.snap +34 -18
  343. package/src/components/VTreeview/VTreeview.ts +0 -5
  344. package/src/mixins/routable/index.ts +6 -4
  345. package/src/mixins/validatable/index.ts +11 -1
  346. package/src/util/__tests__/console.spec.ts +124 -11
  347. package/src/util/__tests__/helpers.spec.ts +59 -31
  348. package/src/util/console.ts +43 -24
  349. package/src/util/helpers.ts +8 -4
@@ -2,30 +2,27 @@
2
2
  import VAlert from '../VAlert'
3
3
 
4
4
  // Utilities
5
- import {
6
- mount,
7
- Wrapper,
8
- } from '@vue/test-utils'
5
+ import { mount, enableAutoUnmount, VueWrapper, config } from '@vue/test-utils'
9
6
 
10
7
  // Types
11
8
  import { ExtractVue } from '../../../util/mixins'
12
9
 
13
10
  describe('VAlert.ts', () => {
14
- type Instance = ExtractVue<typeof VAlert>
15
- let mountFunction: (options?: object) => Wrapper<Instance>
11
+ type Instance = ExtractVue<typeof VAlert>;
12
+ let mountFunction: (options?: object) => VueWrapper<Instance>
13
+
14
+ enableAutoUnmount(afterEach)
16
15
 
17
16
  beforeEach(() => {
18
17
  mountFunction = (options = {}) => {
18
+ console.log('options', options)
19
19
  return mount(VAlert, {
20
20
  ...options,
21
- // https://github.com/vuejs/vue-test-utils/issues/1130
22
- sync: false,
23
- mocks: {
24
- $vuetify: {
25
- lang: {
26
- t: (val: string) => val,
27
- },
21
+ global: {
22
+ mocks: {
23
+ ...config.global.mocks,
28
24
  },
25
+ ...options.global,
29
26
  },
30
27
  })
31
28
  }
@@ -37,16 +34,18 @@ describe('VAlert.ts', () => {
37
34
  expect(wrapper.element.style.display).toBe('')
38
35
  expect(wrapper.html()).toMatchSnapshot()
39
36
 
40
- wrapper.setProps({ value: false })
41
- await wrapper.vm.$nextTick()
37
+ await wrapper.setProps({ modelValue: false })
42
38
 
39
+ // Check that isActive is false
40
+ expect(wrapper.vm.isActive).toBe(false)
41
+ // Check that element is hidden
43
42
  expect(wrapper.element.style.display).toBe('none')
44
43
  expect(wrapper.html()).toMatchSnapshot()
45
44
  })
46
45
 
47
46
  it('should have a close icon', () => {
48
47
  const wrapper = mountFunction({
49
- propsData: { dismissible: true },
48
+ props: { dismissible: true },
50
49
  })
51
50
 
52
51
  expect(wrapper.html()).toMatchSnapshot()
@@ -54,66 +53,61 @@ describe('VAlert.ts', () => {
54
53
 
55
54
  it('should be dismissible', async () => {
56
55
  const wrapper = mountFunction({
57
- propsData: {
56
+ props: {
58
57
  dismissible: true,
59
58
  },
60
59
  })
61
60
 
62
61
  const icon = wrapper.find('.v-alert__dismissible')
63
- const input = jest.fn(show => wrapper.setProps({ show }))
64
-
65
- wrapper.vm.$on('input', input)
66
62
 
67
- icon.trigger('click')
68
- await wrapper.vm.$nextTick()
63
+ await icon.trigger('click')
69
64
 
70
- expect(input).toHaveBeenCalledWith(false)
65
+ expect(wrapper.emitted('update:modelValue')).toBeTruthy()
66
+ expect(wrapper.emitted('update:modelValue')?.[0]).toEqual([false])
71
67
  expect(wrapper.html()).toMatchSnapshot()
72
68
  })
73
69
 
74
70
  it('should have a custom icon', () => {
75
71
  const wrapper = mountFunction({
76
- propsData: {
77
- icon: 'list',
72
+ props: {
73
+ icon: 'mdi-list',
78
74
  },
79
75
  })
80
76
 
81
77
  const icon = wrapper.find('.v-alert__icon')
82
78
 
83
- expect(icon.text()).toBe('list')
79
+ expect(icon.exists()).toBe(true)
80
+ // С component: null иконки рендерятся как font-иконки с содержимым
81
+ expect(icon.classes()).toContain('v-icon')
82
+ expect(icon.classes()).toContain('v-alert__icon')
84
83
  })
85
84
 
86
85
  it('should have no icon', () => {
87
86
  const wrapper = mountFunction()
88
87
 
89
- expect(wrapper.contains('.v-icon')).toBe(false)
88
+ expect(wrapper.find('.v-icon').exists()).toBe(false)
90
89
  })
91
90
 
92
- // TODO: this fails without sync, nextTick doesn't help
93
- // https://github.com/vuejs/vue-test-utils/issues/1130
94
- it.skip('should display contextual colors by type', async () => {
91
+ it('should display contextual colors by type', async () => {
95
92
  const wrapper = mountFunction({
96
- propsData: { type: 'error' },
93
+ props: { type: 'error' },
97
94
  })
98
95
 
99
96
  expect(wrapper.classes('error')).toBe(true)
100
97
 
101
- wrapper.setProps({ type: 'success' })
102
- await wrapper.vm.$nextTick()
98
+ await wrapper.setProps({ type: 'success' })
103
99
  expect(wrapper.classes('success')).toBe(true)
104
100
 
105
- wrapper.setProps({ type: 'warning' })
106
- await wrapper.vm.$nextTick()
101
+ await wrapper.setProps({ type: 'warning' })
107
102
  expect(wrapper.classes('warning')).toBe(true)
108
103
 
109
- wrapper.setProps({ type: 'info' })
110
- await wrapper.vm.$nextTick()
104
+ await wrapper.setProps({ type: 'info' })
111
105
  expect(wrapper.classes('info')).toBe(true)
112
106
  })
113
107
 
114
108
  it('should allow overriding color for contextual alert', () => {
115
109
  const wrapper = mountFunction({
116
- propsData: {
110
+ props: {
117
111
  type: 'error',
118
112
  color: 'primary',
119
113
  },
@@ -124,28 +118,33 @@ describe('VAlert.ts', () => {
124
118
 
125
119
  it('should allow overriding icon for contextual alert', () => {
126
120
  const wrapper = mountFunction({
127
- propsData: {
121
+ props: {
128
122
  type: 'error',
129
- icon: 'block',
123
+ icon: 'mdi-block',
130
124
  },
131
125
  })
132
126
 
133
127
  const icon = wrapper.find('.v-alert__icon')
134
128
 
135
- expect(icon.text()).toBe('block')
129
+ expect(icon.exists()).toBe(true)
130
+ // С component: null иконки рендерятся как font-иконки с содержимым
131
+ expect(icon.classes()).toContain('v-icon')
132
+ expect(icon.classes()).toContain('v-alert__icon')
136
133
  })
137
134
 
138
135
  it('should render custom dismissible icon', () => {
139
136
  const wrapper = mountFunction({
140
- propsData: {
137
+ props: {
141
138
  dismissible: true,
142
- closeIcon: 'foo',
139
+ closeIcon: 'mdi-close',
143
140
  },
144
141
  })
145
142
 
146
- const icon = wrapper.find('.v-alert__content + .v-btn')
143
+ const icon = wrapper.find('.v-alert__content + .v-btn .v-icon')
147
144
 
148
- expect(icon.text()).toBe('foo')
145
+ expect(icon.exists()).toBe(true)
146
+ // С component: null иконки рендерятся как font-иконки с содержимым
147
+ expect(icon.classes()).toContain('v-icon')
149
148
  })
150
149
 
151
150
  it('should show border', async () => {
@@ -155,8 +154,7 @@ describe('VAlert.ts', () => {
155
154
  expect(wrapper.classes('v-alert--border')).toBe(false)
156
155
 
157
156
  for (const border of directions) {
158
- wrapper.setProps({ border })
159
- await wrapper.vm.$nextTick()
157
+ await wrapper.setProps({ border })
160
158
 
161
159
  expect(wrapper.classes('v-alert--border')).toBe(true)
162
160
  expect(wrapper.classes(`v-alert--border-${border}`)).toBe(true)
@@ -165,7 +163,7 @@ describe('VAlert.ts', () => {
165
163
 
166
164
  it('should move color classes to border and icon elements', async () => {
167
165
  const wrapper = mountFunction({
168
- propsData: {
166
+ props: {
169
167
  color: 'pink',
170
168
  border: 'left',
171
169
  },
@@ -175,8 +173,7 @@ describe('VAlert.ts', () => {
175
173
  expect(wrapper.classes('pink')).toBe(true)
176
174
  expect(border.classes('pink')).toBe(false)
177
175
 
178
- wrapper.setProps({ coloredBorder: true })
179
- await wrapper.vm.$nextTick()
176
+ await wrapper.setProps({ coloredBorder: true })
180
177
  expect(wrapper.classes('pink')).toBe(false)
181
178
  expect(border.classes('pink')).toBe(true)
182
179
  expect(border.classes('v-alert__border--has-color')).toBe(true)
@@ -191,4 +188,35 @@ describe('VAlert.ts', () => {
191
188
 
192
189
  expect(wrapper.vm.isActive).toBe(false)
193
190
  })
191
+
192
+ it('should render font icons with proper classes', () => {
193
+ const wrapper = mountFunction({
194
+ props: {
195
+ type: 'error',
196
+ icon: 'mdi-alert',
197
+ },
198
+ })
199
+
200
+ const icon = wrapper.find('.v-alert__icon')
201
+
202
+ expect(icon.exists()).toBe(true)
203
+ // С component: null иконки рендерятся как font-иконки с CSS классами
204
+ // В JSDOM текстовое содержимое не отображается, но классы присутствуют
205
+ expect(icon.classes()).toContain('v-icon')
206
+ expect(icon.classes()).toContain('v-alert__icon')
207
+ expect(icon.classes()).toContain('mdi')
208
+ expect(icon.classes()).toContain('mdi-alert')
209
+ })
210
+
211
+ it('should translate aria-label correctly', () => {
212
+ const wrapper = mountFunction({
213
+ props: { dismissible: true },
214
+ })
215
+
216
+ const button = wrapper.find('.v-alert__dismissible')
217
+
218
+ expect(button.exists()).toBe(true)
219
+ // Проверяем что перевод $vuetify.close работает правильно
220
+ expect(button.element.getAttribute('aria-label')).toBe('Close')
221
+ })
194
222
  })
@@ -1,22 +1,21 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
3
  exports[`VAlert.ts should be dismissible 1`] = `
4
- <div role="alert"
5
- class="v-alert v-sheet theme--light"
4
+ <div class="v-alert v-sheet theme--light"
5
+ role="alert"
6
6
  style="display: none;"
7
7
  >
8
8
  <div class="v-alert__wrapper">
9
9
  <div class="v-alert__content">
10
10
  </div>
11
- <button type="button"
12
- class="v-alert__dismissible v-btn v-btn--icon v-btn--round theme--light v-size--small"
13
- aria-label="$vuetify.close"
11
+ <button class="v-btn v-btn--icon v-btn--round theme--light v-size--small v-alert__dismissible"
12
+ type="button"
13
+ aria-label="Close"
14
14
  >
15
15
  <span class="v-btn__content">
16
16
  <i aria-hidden="true"
17
- class="v-icon notranslate material-icons theme--light"
17
+ class="v-icon notranslate mdi mdi-close-circle theme--light"
18
18
  >
19
- $cancel
20
19
  </i>
21
20
  </span>
22
21
  </button>
@@ -25,8 +24,8 @@ exports[`VAlert.ts should be dismissible 1`] = `
25
24
  `;
26
25
 
27
26
  exports[`VAlert.ts should be open by default 1`] = `
28
- <div role="alert"
29
- class="v-alert v-sheet theme--light"
27
+ <div class="v-alert v-sheet theme--light"
28
+ role="alert"
30
29
  >
31
30
  <div class="v-alert__wrapper">
32
31
  <div class="v-alert__content">
@@ -36,8 +35,8 @@ exports[`VAlert.ts should be open by default 1`] = `
36
35
  `;
37
36
 
38
37
  exports[`VAlert.ts should be open by default 2`] = `
39
- <div role="alert"
40
- class="v-alert v-sheet theme--light"
38
+ <div class="v-alert v-sheet theme--light"
39
+ role="alert"
41
40
  style="display: none;"
42
41
  >
43
42
  <div class="v-alert__wrapper">
@@ -48,21 +47,20 @@ exports[`VAlert.ts should be open by default 2`] = `
48
47
  `;
49
48
 
50
49
  exports[`VAlert.ts should have a close icon 1`] = `
51
- <div role="alert"
52
- class="v-alert v-sheet theme--light"
50
+ <div class="v-alert v-sheet theme--light"
51
+ role="alert"
53
52
  >
54
53
  <div class="v-alert__wrapper">
55
54
  <div class="v-alert__content">
56
55
  </div>
57
- <button type="button"
58
- class="v-alert__dismissible v-btn v-btn--icon v-btn--round theme--light v-size--small"
59
- aria-label="$vuetify.close"
56
+ <button class="v-btn v-btn--icon v-btn--round theme--light v-size--small v-alert__dismissible"
57
+ type="button"
58
+ aria-label="Close"
60
59
  >
61
60
  <span class="v-btn__content">
62
61
  <i aria-hidden="true"
63
- class="v-icon notranslate material-icons theme--light"
62
+ class="v-icon notranslate mdi mdi-close-circle theme--light"
64
63
  >
65
- $cancel
66
64
  </i>
67
65
  </span>
68
66
  </button>
@@ -4,12 +4,12 @@ import VApp from '../VApp'
4
4
  // Utilities
5
5
  import {
6
6
  mount,
7
- Wrapper,
7
+ VueWrapper,
8
8
  } from '@vue/test-utils'
9
9
 
10
10
  describe('VApp.ts', () => {
11
11
  type Instance = InstanceType<typeof VApp>
12
- let mountFunction: (options?: object) => Wrapper<Instance>
12
+ let mountFunction: (options?: object) => VueWrapper<Instance>
13
13
 
14
14
  beforeEach(() => {
15
15
  mountFunction = (options = {}) => {
@@ -21,11 +21,13 @@ describe('VApp.ts', () => {
21
21
 
22
22
  it('should match a snapshot', () => {
23
23
  const wrapper = mountFunction({
24
- mocks: {
25
- $vuetify: {
26
- rtl: false,
27
- theme: {
28
- dark: false,
24
+ global: {
25
+ mocks: {
26
+ $vuetify: {
27
+ rtl: false,
28
+ theme: {
29
+ dark: false,
30
+ },
29
31
  },
30
32
  },
31
33
  },
@@ -36,11 +38,13 @@ describe('VApp.ts', () => {
36
38
 
37
39
  it('should have data-app attribute', () => {
38
40
  const wrapper = mountFunction({
39
- mocks: {
40
- $vuetify: {
41
- rtl: false,
42
- theme: {
43
- dark: false,
41
+ global: {
42
+ mocks: {
43
+ $vuetify: {
44
+ rtl: false,
45
+ theme: {
46
+ dark: false,
47
+ },
44
48
  },
45
49
  },
46
50
  },
@@ -52,14 +56,16 @@ describe('VApp.ts', () => {
52
56
 
53
57
  it('should allow a custom id', () => {
54
58
  const wrapper = mountFunction({
55
- propsData: {
59
+ props: {
56
60
  id: 'inspire',
57
61
  },
58
- mocks: {
59
- $vuetify: {
60
- rtl: false,
61
- theme: {
62
- dark: false,
62
+ global: {
63
+ mocks: {
64
+ $vuetify: {
65
+ rtl: false,
66
+ theme: {
67
+ dark: false,
68
+ },
63
69
  },
64
70
  },
65
71
  },
@@ -1,8 +1,8 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
3
  exports[`VApp.ts should allow a custom id 1`] = `
4
- <div data-app="true"
5
- class="v-application v-application--is-ltr theme--light"
4
+ <div class="v-application v-application--is-ltr theme--light"
5
+ data-app="true"
6
6
  id="inspire"
7
7
  >
8
8
  <div class="v-application--wrap">
@@ -11,8 +11,8 @@ exports[`VApp.ts should allow a custom id 1`] = `
11
11
  `;
12
12
 
13
13
  exports[`VApp.ts should match a snapshot 1`] = `
14
- <div data-app="true"
15
- class="v-application v-application--is-ltr theme--light"
14
+ <div class="v-application v-application--is-ltr theme--light"
15
+ data-app="true"
16
16
  id="app"
17
17
  >
18
18
  <div class="v-application--wrap">