vuetify 2.0.19 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (537) hide show
  1. package/dist/json/attributes.json +208 -16
  2. package/dist/json/tags.json +58 -0
  3. package/dist/vuetify.css +548 -57
  4. package/dist/vuetify.css.map +1 -1
  5. package/dist/vuetify.js +917 -249
  6. package/dist/vuetify.js.map +1 -1
  7. package/dist/vuetify.min.css +2 -2
  8. package/dist/vuetify.min.js +3 -3
  9. package/es5/components/VAlert/VAlert.js +3 -18
  10. package/es5/components/VAlert/VAlert.js.map +1 -1
  11. package/es5/components/VAppBar/VAppBarNavIcon.js +1 -1
  12. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  13. package/es5/components/VAutocomplete/VAutocomplete.js +20 -0
  14. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  15. package/es5/components/VBtn/VBtn.js +2 -0
  16. package/es5/components/VBtn/VBtn.js.map +1 -1
  17. package/es5/components/VBtnToggle/VBtnToggle.js +16 -3
  18. package/es5/components/VBtnToggle/VBtnToggle.js.map +1 -1
  19. package/es5/components/VCard/VCard.js +4 -2
  20. package/es5/components/VCard/VCard.js.map +1 -1
  21. package/es5/components/VCarousel/VCarousel.js +1 -1
  22. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  23. package/es5/components/VCheckbox/VCheckbox.js +3 -3
  24. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  25. package/es5/components/VCheckbox/VSimpleCheckbox.js +3 -3
  26. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  27. package/es5/components/VChip/VChip.js +2 -2
  28. package/es5/components/VChip/VChip.js.map +1 -1
  29. package/es5/components/VColorPicker/VColorPickerEdit.js +1 -1
  30. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  31. package/es5/components/VColorPicker/VColorPickerSwatches.js +1 -1
  32. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  33. package/es5/components/VCombobox/VCombobox.js +16 -0
  34. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  35. package/es5/components/VDataIterator/VDataFooter.js +10 -6
  36. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  37. package/es5/components/VDataIterator/VDataIterator.js +3 -0
  38. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  39. package/es5/components/VDataTable/VDataTable.js +5 -5
  40. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  41. package/es5/components/VDataTable/mixins/header.js +1 -1
  42. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  43. package/es5/components/VDatePicker/VDatePicker.js +55 -16
  44. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  45. package/es5/components/VDatePicker/VDatePickerHeader.js +2 -2
  46. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  47. package/es5/components/VDialog/VDialog.js +3 -0
  48. package/es5/components/VDialog/VDialog.js.map +1 -1
  49. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +1 -1
  50. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  51. package/es5/components/VFileInput/VFileInput.js +1 -1
  52. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  53. package/es5/components/VGrid/VCol.js +8 -1
  54. package/es5/components/VGrid/VCol.js.map +1 -1
  55. package/es5/components/VImg/VImg.js +34 -7
  56. package/es5/components/VImg/VImg.js.map +1 -1
  57. package/es5/components/VInput/VInput.js +6 -1
  58. package/es5/components/VInput/VInput.js.map +1 -1
  59. package/es5/components/VLazy/VLazy.js +90 -0
  60. package/es5/components/VLazy/VLazy.js.map +1 -0
  61. package/es5/components/VLazy/index.js +20 -0
  62. package/es5/components/VLazy/index.js.map +1 -0
  63. package/es5/components/VList/VListGroup.js +2 -2
  64. package/es5/components/VList/VListGroup.js.map +1 -1
  65. package/es5/components/VList/VListItem.js +4 -0
  66. package/es5/components/VList/VListItem.js.map +1 -1
  67. package/es5/components/VMenu/VMenu.js +3 -0
  68. package/es5/components/VMenu/VMenu.js.map +1 -1
  69. package/es5/components/VPagination/VPagination.js +2 -2
  70. package/es5/components/VPagination/VPagination.js.map +1 -1
  71. package/es5/components/VRadioGroup/VRadio.js +2 -2
  72. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  73. package/es5/components/VRating/VRating.js +3 -3
  74. package/es5/components/VRating/VRating.js.map +1 -1
  75. package/es5/components/VSelect/VSelect.js +1 -2
  76. package/es5/components/VSelect/VSelect.js.map +1 -1
  77. package/es5/components/VSkeletonLoader/VSkeletonLoader.js +193 -0
  78. package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -0
  79. package/es5/components/VSkeletonLoader/index.js +20 -0
  80. package/es5/components/VSkeletonLoader/index.js.map +1 -0
  81. package/es5/components/VSlideGroup/VSlideGroup.js +2 -2
  82. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  83. package/es5/components/VStepper/VStepperStep.js +3 -3
  84. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  85. package/es5/components/VTabs/VTabs.js +2 -2
  86. package/es5/components/VTabs/VTabs.js.map +1 -1
  87. package/es5/components/VTextField/VTextField.js +1 -1
  88. package/es5/components/VTextField/VTextField.js.map +1 -1
  89. package/es5/components/VTimePicker/VTimePicker.js +1 -1
  90. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  91. package/es5/components/VTimePicker/VTimePickerTitle.js +1 -1
  92. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  93. package/es5/components/VTooltip/VTooltip.js +2 -1
  94. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  95. package/es5/components/VTreeview/VTreeviewNode.js +5 -5
  96. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  97. package/es5/components/VWindow/VWindow.js +2 -2
  98. package/es5/components/VWindow/VWindow.js.map +1 -1
  99. package/es5/components/index.js +24 -0
  100. package/es5/components/index.js.map +1 -1
  101. package/es5/directives/index.js +16 -0
  102. package/es5/directives/index.js.map +1 -1
  103. package/es5/directives/intersect/index.js +61 -0
  104. package/es5/directives/intersect/index.js.map +1 -0
  105. package/es5/directives/mutate/index.js +71 -0
  106. package/es5/directives/mutate/index.js.map +1 -0
  107. package/es5/framework.js +1 -1
  108. package/es5/locale/af.js +6 -2
  109. package/es5/locale/af.js.map +1 -1
  110. package/es5/locale/ar.js +6 -2
  111. package/es5/locale/ar.js.map +1 -1
  112. package/es5/locale/ca.js +6 -2
  113. package/es5/locale/ca.js.map +1 -1
  114. package/es5/locale/cs.js +52 -0
  115. package/es5/locale/cs.js.map +1 -0
  116. package/es5/locale/de.js +6 -2
  117. package/es5/locale/de.js.map +1 -1
  118. package/es5/locale/el.js +6 -2
  119. package/es5/locale/el.js.map +1 -1
  120. package/es5/locale/en.js +6 -2
  121. package/es5/locale/en.js.map +1 -1
  122. package/es5/locale/es.js +6 -2
  123. package/es5/locale/es.js.map +1 -1
  124. package/es5/locale/et.js +14 -10
  125. package/es5/locale/et.js.map +1 -1
  126. package/es5/locale/fa.js +6 -2
  127. package/es5/locale/fa.js.map +1 -1
  128. package/es5/locale/fr.js +6 -2
  129. package/es5/locale/fr.js.map +1 -1
  130. package/es5/locale/he.js +6 -2
  131. package/es5/locale/he.js.map +1 -1
  132. package/es5/locale/hr.js +20 -16
  133. package/es5/locale/hr.js.map +1 -1
  134. package/es5/locale/hu.js +6 -2
  135. package/es5/locale/hu.js.map +1 -1
  136. package/es5/locale/id.js +6 -2
  137. package/es5/locale/id.js.map +1 -1
  138. package/es5/locale/index.js +24 -0
  139. package/es5/locale/index.js.map +1 -1
  140. package/es5/locale/it.js +6 -2
  141. package/es5/locale/it.js.map +1 -1
  142. package/es5/locale/ja.js +6 -2
  143. package/es5/locale/ja.js.map +1 -1
  144. package/es5/locale/ko.js +6 -2
  145. package/es5/locale/ko.js.map +1 -1
  146. package/es5/locale/lt.js +52 -0
  147. package/es5/locale/lt.js.map +1 -0
  148. package/es5/locale/lv.js +6 -2
  149. package/es5/locale/lv.js.map +1 -1
  150. package/es5/locale/nl.js +6 -2
  151. package/es5/locale/nl.js.map +1 -1
  152. package/es5/locale/no.js +6 -2
  153. package/es5/locale/no.js.map +1 -1
  154. package/es5/locale/pl.js +6 -2
  155. package/es5/locale/pl.js.map +1 -1
  156. package/es5/locale/pt.js +6 -2
  157. package/es5/locale/pt.js.map +1 -1
  158. package/es5/locale/ro.js +6 -2
  159. package/es5/locale/ro.js.map +1 -1
  160. package/es5/locale/ru.js +6 -2
  161. package/es5/locale/ru.js.map +1 -1
  162. package/es5/locale/sl.js +14 -10
  163. package/es5/locale/sl.js.map +1 -1
  164. package/es5/locale/sr-Cyrl.js +6 -2
  165. package/es5/locale/sr-Cyrl.js.map +1 -1
  166. package/es5/locale/sv.js +52 -0
  167. package/es5/locale/sv.js.map +1 -0
  168. package/es5/locale/th.js +6 -2
  169. package/es5/locale/th.js.map +1 -1
  170. package/es5/locale/tr.js +6 -2
  171. package/es5/locale/tr.js.map +1 -1
  172. package/es5/locale/uk.js +6 -2
  173. package/es5/locale/uk.js.map +1 -1
  174. package/es5/locale/zh-Hans.js +6 -2
  175. package/es5/locale/zh-Hans.js.map +1 -1
  176. package/es5/locale/zh-Hant.js +6 -2
  177. package/es5/locale/zh-Hant.js.map +1 -1
  178. package/es5/mixins/overlayable/index.js +6 -2
  179. package/es5/mixins/overlayable/index.js.map +1 -1
  180. package/es5/services/lang/index.js +7 -2
  181. package/es5/services/lang/index.js.map +1 -1
  182. package/es5/util/helpers.js +5 -5
  183. package/es5/util/helpers.js.map +1 -1
  184. package/lib/components/VAlert/VAlert.js +3 -18
  185. package/lib/components/VAlert/VAlert.js.map +1 -1
  186. package/lib/components/VAppBar/VAppBarNavIcon.js +1 -1
  187. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  188. package/lib/components/VAutocomplete/VAutocomplete.js +22 -0
  189. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  190. package/lib/components/VBtn/VBtn.js +2 -0
  191. package/lib/components/VBtn/VBtn.js.map +1 -1
  192. package/lib/components/VBtnToggle/VBtnToggle.js +15 -2
  193. package/lib/components/VBtnToggle/VBtnToggle.js.map +1 -1
  194. package/lib/components/VCard/VCard.js +3 -1
  195. package/lib/components/VCard/VCard.js.map +1 -1
  196. package/lib/components/VCarousel/VCarousel.js +1 -1
  197. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  198. package/lib/components/VCheckbox/VCheckbox.js +3 -3
  199. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  200. package/lib/components/VCheckbox/VSimpleCheckbox.js +3 -3
  201. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  202. package/lib/components/VChip/VChip.js +2 -2
  203. package/lib/components/VChip/VChip.js.map +1 -1
  204. package/lib/components/VColorPicker/VColorPickerEdit.js +1 -1
  205. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  206. package/lib/components/VColorPicker/VColorPickerSwatches.js +1 -1
  207. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  208. package/lib/components/VCombobox/VCombobox.js +16 -0
  209. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  210. package/lib/components/VDataIterator/VDataFooter.js +10 -6
  211. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  212. package/lib/components/VDataIterator/VDataIterator.js +3 -0
  213. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  214. package/lib/components/VDataTable/VDataTable.js +5 -5
  215. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  216. package/lib/components/VDataTable/mixins/header.js +1 -1
  217. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  218. package/lib/components/VDatePicker/VDatePicker.js +39 -16
  219. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  220. package/lib/components/VDatePicker/VDatePickerHeader.js +2 -2
  221. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  222. package/lib/components/VDialog/VDialog.js +3 -0
  223. package/lib/components/VDialog/VDialog.js.map +1 -1
  224. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +1 -1
  225. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  226. package/lib/components/VFileInput/VFileInput.js +1 -1
  227. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  228. package/lib/components/VGrid/VCol.js +7 -1
  229. package/lib/components/VGrid/VCol.js.map +1 -1
  230. package/lib/components/VImg/VImg.js +30 -8
  231. package/lib/components/VImg/VImg.js.map +1 -1
  232. package/lib/components/VInput/VInput.js +5 -0
  233. package/lib/components/VInput/VInput.js.map +1 -1
  234. package/lib/components/VLazy/VLazy.js +76 -0
  235. package/lib/components/VLazy/VLazy.js.map +1 -0
  236. package/lib/components/VLazy/index.js +4 -0
  237. package/lib/components/VLazy/index.js.map +1 -0
  238. package/lib/components/VList/VListGroup.js +2 -2
  239. package/lib/components/VList/VListGroup.js.map +1 -1
  240. package/lib/components/VList/VListItem.js +4 -0
  241. package/lib/components/VList/VListItem.js.map +1 -1
  242. package/lib/components/VMenu/VMenu.js +3 -0
  243. package/lib/components/VMenu/VMenu.js.map +1 -1
  244. package/lib/components/VPagination/VPagination.js +2 -2
  245. package/lib/components/VPagination/VPagination.js.map +1 -1
  246. package/lib/components/VRadioGroup/VRadio.js +2 -2
  247. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  248. package/lib/components/VRating/VRating.js +3 -3
  249. package/lib/components/VRating/VRating.js.map +1 -1
  250. package/lib/components/VSelect/VSelect.js +1 -2
  251. package/lib/components/VSelect/VSelect.js.map +1 -1
  252. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +170 -0
  253. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -0
  254. package/lib/components/VSkeletonLoader/index.js +4 -0
  255. package/lib/components/VSkeletonLoader/index.js.map +1 -0
  256. package/lib/components/VSlideGroup/VSlideGroup.js +2 -2
  257. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  258. package/lib/components/VStepper/VStepperStep.js +3 -3
  259. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  260. package/lib/components/VTabs/VTabs.js +2 -2
  261. package/lib/components/VTabs/VTabs.js.map +1 -1
  262. package/lib/components/VTextField/VTextField.js +1 -1
  263. package/lib/components/VTextField/VTextField.js.map +1 -1
  264. package/lib/components/VTimePicker/VTimePicker.js +1 -1
  265. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  266. package/lib/components/VTimePicker/VTimePickerTitle.js +1 -1
  267. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  268. package/lib/components/VTooltip/VTooltip.js +2 -1
  269. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  270. package/lib/components/VTreeview/VTreeviewNode.js +5 -5
  271. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  272. package/lib/components/VWindow/VWindow.js +2 -2
  273. package/lib/components/VWindow/VWindow.js.map +1 -1
  274. package/lib/components/index.js +2 -0
  275. package/lib/components/index.js.map +1 -1
  276. package/lib/directives/index.js +2 -0
  277. package/lib/directives/index.js.map +1 -1
  278. package/lib/directives/intersect/index.js +45 -0
  279. package/lib/directives/intersect/index.js.map +1 -0
  280. package/lib/directives/mutate/index.js +56 -0
  281. package/lib/directives/mutate/index.js.map +1 -0
  282. package/lib/framework.js +1 -1
  283. package/lib/locale/af.js +6 -2
  284. package/lib/locale/af.js.map +1 -1
  285. package/lib/locale/ar.js +6 -2
  286. package/lib/locale/ar.js.map +1 -1
  287. package/lib/locale/ca.js +6 -2
  288. package/lib/locale/ca.js.map +1 -1
  289. package/lib/locale/cs.js +45 -0
  290. package/lib/locale/cs.js.map +1 -0
  291. package/lib/locale/de.js +6 -2
  292. package/lib/locale/de.js.map +1 -1
  293. package/lib/locale/el.js +6 -2
  294. package/lib/locale/el.js.map +1 -1
  295. package/lib/locale/en.js +6 -2
  296. package/lib/locale/en.js.map +1 -1
  297. package/lib/locale/es.js +6 -2
  298. package/lib/locale/es.js.map +1 -1
  299. package/lib/locale/et.js +14 -10
  300. package/lib/locale/et.js.map +1 -1
  301. package/lib/locale/fa.js +6 -2
  302. package/lib/locale/fa.js.map +1 -1
  303. package/lib/locale/fr.js +6 -2
  304. package/lib/locale/fr.js.map +1 -1
  305. package/lib/locale/he.js +6 -2
  306. package/lib/locale/he.js.map +1 -1
  307. package/lib/locale/hr.js +20 -16
  308. package/lib/locale/hr.js.map +1 -1
  309. package/lib/locale/hu.js +6 -2
  310. package/lib/locale/hu.js.map +1 -1
  311. package/lib/locale/id.js +6 -2
  312. package/lib/locale/id.js.map +1 -1
  313. package/lib/locale/index.js +3 -0
  314. package/lib/locale/index.js.map +1 -1
  315. package/lib/locale/it.js +6 -2
  316. package/lib/locale/it.js.map +1 -1
  317. package/lib/locale/ja.js +6 -2
  318. package/lib/locale/ja.js.map +1 -1
  319. package/lib/locale/ko.js +6 -2
  320. package/lib/locale/ko.js.map +1 -1
  321. package/lib/locale/lt.js +45 -0
  322. package/lib/locale/lt.js.map +1 -0
  323. package/lib/locale/lv.js +6 -2
  324. package/lib/locale/lv.js.map +1 -1
  325. package/lib/locale/nl.js +6 -2
  326. package/lib/locale/nl.js.map +1 -1
  327. package/lib/locale/no.js +6 -2
  328. package/lib/locale/no.js.map +1 -1
  329. package/lib/locale/pl.js +6 -2
  330. package/lib/locale/pl.js.map +1 -1
  331. package/lib/locale/pt.js +6 -2
  332. package/lib/locale/pt.js.map +1 -1
  333. package/lib/locale/ro.js +6 -2
  334. package/lib/locale/ro.js.map +1 -1
  335. package/lib/locale/ru.js +6 -2
  336. package/lib/locale/ru.js.map +1 -1
  337. package/lib/locale/sl.js +14 -10
  338. package/lib/locale/sl.js.map +1 -1
  339. package/lib/locale/sr-Cyrl.js +6 -2
  340. package/lib/locale/sr-Cyrl.js.map +1 -1
  341. package/lib/locale/sv.js +45 -0
  342. package/lib/locale/sv.js.map +1 -0
  343. package/lib/locale/th.js +6 -2
  344. package/lib/locale/th.js.map +1 -1
  345. package/lib/locale/tr.js +6 -2
  346. package/lib/locale/tr.js.map +1 -1
  347. package/lib/locale/uk.js +6 -2
  348. package/lib/locale/uk.js.map +1 -1
  349. package/lib/locale/zh-Hans.js +6 -2
  350. package/lib/locale/zh-Hans.js.map +1 -1
  351. package/lib/locale/zh-Hant.js +6 -2
  352. package/lib/locale/zh-Hant.js.map +1 -1
  353. package/lib/mixins/overlayable/index.js +6 -2
  354. package/lib/mixins/overlayable/index.js.map +1 -1
  355. package/lib/services/lang/index.js +6 -2
  356. package/lib/services/lang/index.js.map +1 -1
  357. package/lib/util/helpers.js +3 -4
  358. package/lib/util/helpers.js.map +1 -1
  359. package/package.json +2 -2
  360. package/src/components/VAlert/VAlert.sass +4 -0
  361. package/src/components/VAlert/VAlert.ts +3 -8
  362. package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +2 -2
  363. package/src/components/VAlert/_variables.scss +1 -0
  364. package/src/components/VAppBar/VAppBarNavIcon.ts +1 -1
  365. package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +1 -1
  366. package/src/components/VAutocomplete/VAutocomplete.ts +19 -0
  367. package/src/components/VAutocomplete/__tests__/VAutocomplete3.spec.ts +54 -0
  368. package/src/components/VBtn/VBtn.ts +2 -0
  369. package/src/components/VBtn/__tests__/VBtn.spec.ts +20 -0
  370. package/src/components/VBtn/_variables.scss +1 -1
  371. package/src/components/VBtnToggle/VBtnToggle.sass +50 -24
  372. package/src/components/VBtnToggle/VBtnToggle.ts +16 -1
  373. package/src/components/VBtnToggle/__tests__/VBtnToggle.spec.ts +10 -3
  374. package/src/components/VBtnToggle/_variables.scss +7 -0
  375. package/src/components/VCalendar/VCalendarWeekly.sass +3 -0
  376. package/src/components/VCalendar/_variables.scss +1 -1
  377. package/src/components/VCard/VCard.sass +7 -0
  378. package/src/components/VCard/VCard.ts +2 -0
  379. package/src/components/VCard/_variables.scss +2 -0
  380. package/src/components/VCarousel/VCarousel.ts +1 -1
  381. package/src/components/VCheckbox/VCheckbox.ts +3 -3
  382. package/src/components/VCheckbox/VSimpleCheckbox.ts +3 -3
  383. package/src/components/VCheckbox/__tests__/__snapshots__/VCheckbox.spec.ts.snap +1 -1
  384. package/src/components/VChip/VChip.ts +2 -2
  385. package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +1 -1
  386. package/src/components/VChip/_variables.scss +1 -1
  387. package/src/components/VColorPicker/VColorPicker.sass +2 -0
  388. package/src/components/VColorPicker/VColorPickerEdit.sass +2 -1
  389. package/src/components/VColorPicker/VColorPickerEdit.ts +1 -1
  390. package/src/components/VColorPicker/VColorPickerSwatches.ts +1 -1
  391. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +5 -5
  392. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +5 -5
  393. package/src/components/VColorPicker/_variables.scss +1 -0
  394. package/src/components/VCombobox/VCombobox.ts +16 -0
  395. package/src/components/VCombobox/__tests__/VCombobox-multiple.spec.ts +41 -0
  396. package/src/components/VDataIterator/VDataFooter.ts +9 -5
  397. package/src/components/VDataIterator/VDataIterator.ts +1 -0
  398. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +3 -0
  399. package/src/components/VDataTable/VDataTable.ts +5 -5
  400. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +71 -0
  401. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +1408 -446
  402. package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +35 -35
  403. package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +3 -3
  404. package/src/components/VDataTable/mixins/header.ts +2 -1
  405. package/src/components/VDatePicker/VDatePicker.ts +40 -16
  406. package/src/components/VDatePicker/VDatePickerHeader.ts +2 -2
  407. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +20 -0
  408. package/src/components/VDialog/VDialog.sass +4 -7
  409. package/src/components/VDialog/VDialog.ts +6 -0
  410. package/src/components/VDialog/_variables.scss +1 -1
  411. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +1 -1
  412. package/src/components/VExpansionPanel/__tests__/__snapshots__/VExpansionPanel.spec.ts.snap +1 -1
  413. package/src/components/VExpansionPanel/_variables.scss +1 -1
  414. package/src/components/VFileInput/VFileInput.sass +4 -0
  415. package/src/components/VFileInput/VFileInput.ts +1 -1
  416. package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +16 -16
  417. package/src/components/VGrid/VCol.ts +6 -0
  418. package/src/components/VGrid/__tests__/VCol.spec.ts +13 -0
  419. package/src/components/VIcon/__tests__/VIcon.spec.ts +11 -11
  420. package/src/components/VImg/VImg.ts +35 -6
  421. package/src/components/VImg/__tests__/VImg.spec.ts +4 -1
  422. package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +23 -46
  423. package/src/components/VInput/VInput.sass +3 -0
  424. package/src/components/VInput/VInput.ts +5 -0
  425. package/src/components/VInput/__tests__/__snapshots__/VInput.spec.ts.snap +3 -1
  426. package/src/components/VLazy/VLazy.ts +80 -0
  427. package/src/components/VLazy/__tests__/VLazy.spec.ts +78 -0
  428. package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +14 -0
  429. package/src/components/VLazy/index.ts +4 -0
  430. package/src/components/VList/VList.sass +2 -1
  431. package/src/components/VList/VListGroup.ts +2 -2
  432. package/src/components/VList/VListItem.sass +3 -0
  433. package/src/components/VList/VListItem.ts +4 -0
  434. package/src/components/VList/__tests__/VListItem.spec.ts +10 -0
  435. package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +1 -1
  436. package/src/components/VList/_variables.scss +1 -1
  437. package/src/components/VMenu/VMenu.sass +3 -8
  438. package/src/components/VMenu/VMenu.ts +6 -0
  439. package/src/components/VMenu/_variables.scss +1 -1
  440. package/src/components/VOverflowBtn/VOverflowBtn.sass +4 -0
  441. package/src/components/VOverflowBtn/__tests__/__snapshots__/VOverflowBtn.spec.ts.snap +2 -2
  442. package/src/components/VPagination/VPagination.sass +3 -3
  443. package/src/components/VPagination/VPagination.ts +2 -2
  444. package/src/components/VPagination/_variables.scss +1 -0
  445. package/src/components/VPicker/_variables.scss +1 -1
  446. package/src/components/VProgressLinear/VProgressLinear.sass +1 -1
  447. package/src/components/VProgressLinear/_variables.scss +1 -0
  448. package/src/components/VRadioGroup/VRadio.ts +2 -2
  449. package/src/components/VRadioGroup/__tests__/__snapshots__/VRadio.spec.ts.snap +3 -3
  450. package/src/components/VRating/VRating.ts +3 -3
  451. package/src/components/VSelect/VSelect.sass +17 -0
  452. package/src/components/VSelect/VSelect.ts +1 -2
  453. package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +7 -7
  454. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +5 -5
  455. package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +1 -1
  456. package/src/components/VSheet/VSheet.sass +0 -11
  457. package/src/components/VSkeletonLoader/VSkeletonLoader.sass +364 -0
  458. package/src/components/VSkeletonLoader/VSkeletonLoader.ts +179 -0
  459. package/src/components/VSkeletonLoader/__tests__/VSkeletonLoader.spec.ts +84 -0
  460. package/src/components/VSkeletonLoader/__tests__/__snapshots__/VSkeletonLoader.spec.ts.snap +994 -0
  461. package/src/components/VSkeletonLoader/_variables.scss +9 -0
  462. package/src/components/VSkeletonLoader/index.ts +4 -0
  463. package/src/components/VSlideGroup/VSlideGroup.ts +2 -2
  464. package/src/components/VSlideGroup/__tests__/__snapshots__/VSlideGroup.spec.ts.snap +4 -4
  465. package/src/components/VSnackbar/VSnackbar.sass +1 -1
  466. package/src/components/VSnackbar/_variables.scss +1 -0
  467. package/src/components/VStepper/VStepper.sass +2 -1
  468. package/src/components/VStepper/VStepperStep.ts +3 -3
  469. package/src/components/VStepper/_variables.scss +1 -0
  470. package/src/components/VTabs/VTabs.ts +2 -2
  471. package/src/components/VTextField/VTextField.sass +55 -13
  472. package/src/components/VTextField/VTextField.ts +1 -1
  473. package/src/components/VTextField/_mixins.sass +18 -0
  474. package/src/components/VTextField/_variables.scss +1 -0
  475. package/src/components/VTimePicker/VTimePicker.ts +2 -2
  476. package/src/components/VTimePicker/VTimePickerTitle.ts +2 -2
  477. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +5 -0
  478. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +6 -0
  479. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePickerTitle.spec.ts.snap +8 -8
  480. package/src/components/VTooltip/VTooltip.sass +5 -2
  481. package/src/components/VTooltip/VTooltip.ts +4 -0
  482. package/src/components/VTooltip/_variables.sass +1 -1
  483. package/src/components/VTreeview/VTreeviewNode.ts +5 -5
  484. package/src/components/VTreeview/__tests__/VTreeviewNode.spec.ts +2 -2
  485. package/src/components/VTreeview/__tests__/__snapshots__/VTreeview.spec.ts.snap +1 -1
  486. package/src/components/VWindow/VWindow.ts +2 -2
  487. package/src/components/index.ts +2 -0
  488. package/src/directives/index.ts +2 -0
  489. package/src/directives/intersect/__tests__/intersect.spec.ts +47 -0
  490. package/src/directives/intersect/index.ts +57 -0
  491. package/src/directives/mutate/__tests__/mutate.spec.ts +130 -0
  492. package/src/directives/mutate/index.ts +63 -0
  493. package/src/globals.d.ts +7 -0
  494. package/src/locale/af.ts +5 -1
  495. package/src/locale/ar.ts +5 -1
  496. package/src/locale/ca.ts +5 -1
  497. package/src/locale/cs.ts +44 -0
  498. package/src/locale/de.ts +5 -1
  499. package/src/locale/el.ts +5 -1
  500. package/src/locale/en.ts +5 -1
  501. package/src/locale/es.ts +5 -1
  502. package/src/locale/et.ts +13 -9
  503. package/src/locale/fa.ts +5 -1
  504. package/src/locale/fr.ts +5 -1
  505. package/src/locale/he.ts +5 -1
  506. package/src/locale/hr.ts +20 -16
  507. package/src/locale/hu.ts +5 -1
  508. package/src/locale/id.ts +5 -1
  509. package/src/locale/index.ts +3 -0
  510. package/src/locale/it.ts +5 -1
  511. package/src/locale/ja.ts +5 -1
  512. package/src/locale/ko.ts +5 -1
  513. package/src/locale/lt.ts +44 -0
  514. package/src/locale/lv.ts +5 -1
  515. package/src/locale/nl.ts +5 -1
  516. package/src/locale/no.ts +5 -1
  517. package/src/locale/pl.ts +5 -1
  518. package/src/locale/pt.ts +5 -1
  519. package/src/locale/ro.ts +5 -1
  520. package/src/locale/ru.ts +5 -1
  521. package/src/locale/sl.ts +13 -9
  522. package/src/locale/sr-Cyrl.ts +5 -1
  523. package/src/locale/sv.ts +44 -0
  524. package/src/locale/th.ts +5 -1
  525. package/src/locale/tr.ts +5 -1
  526. package/src/locale/uk.ts +5 -1
  527. package/src/locale/zh-Hans.ts +5 -1
  528. package/src/locale/zh-Hant.ts +5 -1
  529. package/src/mixins/overlayable/index.ts +4 -0
  530. package/src/services/lang/__tests__/lang.spec.ts +8 -0
  531. package/src/services/lang/index.ts +6 -2
  532. package/src/styles/settings/_dark.scss +1 -0
  533. package/src/styles/settings/_light.scss +1 -0
  534. package/src/styles/settings/_variables.scss +4 -3
  535. package/src/util/helpers.ts +3 -5
  536. package/src/components/VBtnToggle/_variables.sass +0 -6
  537. package/src/components/VSheet/_variables.scss +0 -1
@@ -27,7 +27,7 @@ exports[`VDataTableHeader.ts desktop should render 1`] = `
27
27
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
28
28
  style="font-size: 18px;"
29
29
  >
30
- $vuetify.icons.sort
30
+ $sort
31
31
  </i>
32
32
  </th>
33
33
  <th role="columnheader"
@@ -44,7 +44,7 @@ exports[`VDataTableHeader.ts desktop should render 1`] = `
44
44
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
45
45
  style="font-size: 18px;"
46
46
  >
47
- $vuetify.icons.sort
47
+ $sort
48
48
  </i>
49
49
  </th>
50
50
  <th role="columnheader"
@@ -60,7 +60,7 @@ exports[`VDataTableHeader.ts desktop should render 1`] = `
60
60
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
61
61
  style="font-size: 18px;"
62
62
  >
63
- $vuetify.icons.sort
63
+ $sort
64
64
  </i>
65
65
  </th>
66
66
  <th role="columnheader"
@@ -76,7 +76,7 @@ exports[`VDataTableHeader.ts desktop should render 1`] = `
76
76
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
77
77
  style="font-size: 18px;"
78
78
  >
79
- $vuetify.icons.sort
79
+ $sort
80
80
  </i>
81
81
  </th>
82
82
  <th role="columnheader"
@@ -92,7 +92,7 @@ exports[`VDataTableHeader.ts desktop should render 1`] = `
92
92
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
93
93
  style="font-size: 18px;"
94
94
  >
95
- $vuetify.icons.sort
95
+ $sort
96
96
  </i>
97
97
  </th>
98
98
  </tr>
@@ -126,7 +126,7 @@ exports[`VDataTableHeader.ts desktop should work with multiSort 1`] = `
126
126
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
127
127
  style="font-size: 18px;"
128
128
  >
129
- $vuetify.icons.sort
129
+ $sort
130
130
  </i>
131
131
  </th>
132
132
  <th role="columnheader"
@@ -143,7 +143,7 @@ exports[`VDataTableHeader.ts desktop should work with multiSort 1`] = `
143
143
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
144
144
  style="font-size: 18px;"
145
145
  >
146
- $vuetify.icons.sort
146
+ $sort
147
147
  </i>
148
148
  </th>
149
149
  <th role="columnheader"
@@ -159,7 +159,7 @@ exports[`VDataTableHeader.ts desktop should work with multiSort 1`] = `
159
159
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
160
160
  style="font-size: 18px;"
161
161
  >
162
- $vuetify.icons.sort
162
+ $sort
163
163
  </i>
164
164
  </th>
165
165
  <th role="columnheader"
@@ -175,7 +175,7 @@ exports[`VDataTableHeader.ts desktop should work with multiSort 1`] = `
175
175
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
176
176
  style="font-size: 18px;"
177
177
  >
178
- $vuetify.icons.sort
178
+ $sort
179
179
  </i>
180
180
  </th>
181
181
  <th role="columnheader"
@@ -191,7 +191,7 @@ exports[`VDataTableHeader.ts desktop should work with multiSort 1`] = `
191
191
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
192
192
  style="font-size: 18px;"
193
193
  >
194
- $vuetify.icons.sort
194
+ $sort
195
195
  </i>
196
196
  <span class="v-data-table-header__sort-badge">
197
197
  1
@@ -231,7 +231,7 @@ exports[`VDataTableHeader.ts desktop should work with showGroupBy 1`] = `
231
231
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
232
232
  style="font-size: 18px;"
233
233
  >
234
- $vuetify.icons.sort
234
+ $sort
235
235
  </i>
236
236
  <span>
237
237
  group
@@ -251,7 +251,7 @@ exports[`VDataTableHeader.ts desktop should work with showGroupBy 1`] = `
251
251
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
252
252
  style="font-size: 18px;"
253
253
  >
254
- $vuetify.icons.sort
254
+ $sort
255
255
  </i>
256
256
  <span>
257
257
  group
@@ -270,7 +270,7 @@ exports[`VDataTableHeader.ts desktop should work with showGroupBy 1`] = `
270
270
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
271
271
  style="font-size: 18px;"
272
272
  >
273
- $vuetify.icons.sort
273
+ $sort
274
274
  </i>
275
275
  <span>
276
276
  group
@@ -289,7 +289,7 @@ exports[`VDataTableHeader.ts desktop should work with showGroupBy 1`] = `
289
289
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
290
290
  style="font-size: 18px;"
291
291
  >
292
- $vuetify.icons.sort
292
+ $sort
293
293
  </i>
294
294
  <span>
295
295
  group
@@ -308,7 +308,7 @@ exports[`VDataTableHeader.ts desktop should work with showGroupBy 1`] = `
308
308
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
309
309
  style="font-size: 18px;"
310
310
  >
311
- $vuetify.icons.sort
311
+ $sort
312
312
  </i>
313
313
  <span>
314
314
  group
@@ -345,7 +345,7 @@ exports[`VDataTableHeader.ts desktop should work with sortBy correctly 1`] = `
345
345
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
346
346
  style="font-size: 18px;"
347
347
  >
348
- $vuetify.icons.sort
348
+ $sort
349
349
  </i>
350
350
  </th>
351
351
  <th role="columnheader"
@@ -362,7 +362,7 @@ exports[`VDataTableHeader.ts desktop should work with sortBy correctly 1`] = `
362
362
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
363
363
  style="font-size: 18px;"
364
364
  >
365
- $vuetify.icons.sort
365
+ $sort
366
366
  </i>
367
367
  </th>
368
368
  <th role="columnheader"
@@ -378,7 +378,7 @@ exports[`VDataTableHeader.ts desktop should work with sortBy correctly 1`] = `
378
378
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
379
379
  style="font-size: 18px;"
380
380
  >
381
- $vuetify.icons.sort
381
+ $sort
382
382
  </i>
383
383
  </th>
384
384
  <th role="columnheader"
@@ -394,7 +394,7 @@ exports[`VDataTableHeader.ts desktop should work with sortBy correctly 1`] = `
394
394
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
395
395
  style="font-size: 18px;"
396
396
  >
397
- $vuetify.icons.sort
397
+ $sort
398
398
  </i>
399
399
  </th>
400
400
  <th role="columnheader"
@@ -410,7 +410,7 @@ exports[`VDataTableHeader.ts desktop should work with sortBy correctly 1`] = `
410
410
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
411
411
  style="font-size: 18px;"
412
412
  >
413
- $vuetify.icons.sort
413
+ $sort
414
414
  </i>
415
415
  </th>
416
416
  </tr>
@@ -444,7 +444,7 @@ exports[`VDataTableHeader.ts desktop should work with sortDesc correctly 1`] = `
444
444
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
445
445
  style="font-size: 18px;"
446
446
  >
447
- $vuetify.icons.sort
447
+ $sort
448
448
  </i>
449
449
  </th>
450
450
  <th role="columnheader"
@@ -461,7 +461,7 @@ exports[`VDataTableHeader.ts desktop should work with sortDesc correctly 1`] = `
461
461
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
462
462
  style="font-size: 18px;"
463
463
  >
464
- $vuetify.icons.sort
464
+ $sort
465
465
  </i>
466
466
  </th>
467
467
  <th role="columnheader"
@@ -477,7 +477,7 @@ exports[`VDataTableHeader.ts desktop should work with sortDesc correctly 1`] = `
477
477
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
478
478
  style="font-size: 18px;"
479
479
  >
480
- $vuetify.icons.sort
480
+ $sort
481
481
  </i>
482
482
  </th>
483
483
  <th role="columnheader"
@@ -493,7 +493,7 @@ exports[`VDataTableHeader.ts desktop should work with sortDesc correctly 1`] = `
493
493
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
494
494
  style="font-size: 18px;"
495
495
  >
496
- $vuetify.icons.sort
496
+ $sort
497
497
  </i>
498
498
  </th>
499
499
  <th role="columnheader"
@@ -509,7 +509,7 @@ exports[`VDataTableHeader.ts desktop should work with sortDesc correctly 1`] = `
509
509
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
510
510
  style="font-size: 18px;"
511
511
  >
512
- $vuetify.icons.sort
512
+ $sort
513
513
  </i>
514
514
  </th>
515
515
  </tr>
@@ -548,7 +548,7 @@ exports[`VDataTableHeader.ts mobile should render 1`] = `
548
548
  <i aria-hidden="true"
549
549
  class="v-icon notranslate material-icons theme--light"
550
550
  >
551
- $vuetify.icons.dropdown
551
+ $dropdown
552
552
  </i>
553
553
  </div>
554
554
  </div>
@@ -580,7 +580,7 @@ exports[`VDataTableHeader.ts mobile should render with data-table-select header
580
580
  <i aria-hidden="true"
581
581
  class="v-icon notranslate material-icons theme--light"
582
582
  >
583
- $vuetify.icons.checkboxOff
583
+ $checkboxOff
584
584
  </i>
585
585
  </div>
586
586
  </div>
@@ -611,7 +611,7 @@ exports[`VDataTableHeader.ts mobile should render with data-table-select header
611
611
  <i aria-hidden="true"
612
612
  class="v-icon notranslate material-icons theme--light"
613
613
  >
614
- $vuetify.icons.dropdown
614
+ $dropdown
615
615
  </i>
616
616
  </div>
617
617
  </div>
@@ -660,7 +660,7 @@ exports[`VDataTableHeader.ts mobile should work with multiSort 1`] = `
660
660
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
661
661
  style="font-size: 18px;"
662
662
  >
663
- $vuetify.icons.sort
663
+ $sort
664
664
  </i>
665
665
  </div>
666
666
  </span>
@@ -676,7 +676,7 @@ exports[`VDataTableHeader.ts mobile should work with multiSort 1`] = `
676
676
  <i aria-hidden="true"
677
677
  class="v-icon notranslate material-icons theme--light"
678
678
  >
679
- $vuetify.icons.dropdown
679
+ $dropdown
680
680
  </i>
681
681
  </div>
682
682
  </div>
@@ -728,7 +728,7 @@ exports[`VDataTableHeader.ts mobile should work with showGroupBy 1`] = `
728
728
  <i aria-hidden="true"
729
729
  class="v-icon notranslate material-icons theme--light"
730
730
  >
731
- $vuetify.icons.dropdown
731
+ $dropdown
732
732
  </i>
733
733
  </div>
734
734
  </div>
@@ -777,7 +777,7 @@ exports[`VDataTableHeader.ts mobile should work with sortBy correctly 1`] = `
777
777
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
778
778
  style="font-size: 18px;"
779
779
  >
780
- $vuetify.icons.sort
780
+ $sort
781
781
  </i>
782
782
  </div>
783
783
  </span>
@@ -793,7 +793,7 @@ exports[`VDataTableHeader.ts mobile should work with sortBy correctly 1`] = `
793
793
  <i aria-hidden="true"
794
794
  class="v-icon notranslate material-icons theme--light"
795
795
  >
796
- $vuetify.icons.dropdown
796
+ $dropdown
797
797
  </i>
798
798
  </div>
799
799
  </div>
@@ -842,7 +842,7 @@ exports[`VDataTableHeader.ts mobile should work with sortDesc correctly 1`] = `
842
842
  class="v-icon notranslate v-data-table-header__icon material-icons theme--light"
843
843
  style="font-size: 18px;"
844
844
  >
845
- $vuetify.icons.sort
845
+ $sort
846
846
  </i>
847
847
  </div>
848
848
  </span>
@@ -858,7 +858,7 @@ exports[`VDataTableHeader.ts mobile should work with sortDesc correctly 1`] = `
858
858
  <i aria-hidden="true"
859
859
  class="v-icon notranslate material-icons theme--light"
860
860
  >
861
- $vuetify.icons.dropdown
861
+ $dropdown
862
862
  </i>
863
863
  </div>
864
864
  </div>
@@ -8,7 +8,7 @@ exports[`VDataTable/header.ts should generate select 1`] = `
8
8
  <i aria-hidden="true"
9
9
  class="v-icon notranslate material-icons theme--light"
10
10
  >
11
- $vuetify.icons.checkboxOff
11
+ $checkboxOff
12
12
  </i>
13
13
  </div>
14
14
  </div>
@@ -22,7 +22,7 @@ exports[`VDataTable/header.ts should generate select 2`] = `
22
22
  <i aria-hidden="true"
23
23
  class="v-icon notranslate material-icons theme--light"
24
24
  >
25
- $vuetify.icons.checkboxOn
25
+ $checkboxOn
26
26
  </i>
27
27
  </div>
28
28
  </div>
@@ -36,7 +36,7 @@ exports[`VDataTable/header.ts should generate select 3`] = `
36
36
  <i aria-hidden="true"
37
37
  class="v-icon notranslate material-icons theme--light"
38
38
  >
39
- $vuetify.icons.checkboxIndeterminate
39
+ $checkboxIndeterminate
40
40
  </i>
41
41
  </div>
42
42
  </div>
@@ -13,6 +13,7 @@ export interface TableHeader {
13
13
  value: string
14
14
  align?: 'start' | 'center' | 'end'
15
15
  sortable?: boolean
16
+ filterable?: boolean
16
17
  divider?: boolean
17
18
  class?: string | string[]
18
19
  width?: string | number
@@ -52,7 +53,7 @@ export default mixins<options>().extend({
52
53
  },
53
54
  sortIcon: {
54
55
  type: String,
55
- default: '$vuetify.icons.sort',
56
+ default: '$sort',
56
57
  },
57
58
  everyItem: Boolean,
58
59
  someItems: Boolean,
@@ -72,13 +72,14 @@ export default mixins(
72
72
  multiple: Boolean,
73
73
  nextIcon: {
74
74
  type: String,
75
- default: '$vuetify.icons.next',
75
+ default: '$next',
76
76
  },
77
77
  pickerDate: String,
78
78
  prevIcon: {
79
79
  type: String,
80
- default: '$vuetify.icons.prev',
80
+ default: '$prev',
81
81
  },
82
+ range: Boolean,
82
83
  reactive: Boolean,
83
84
  readonly: Boolean,
84
85
  scrollable: Boolean,
@@ -120,7 +121,7 @@ export default mixins(
120
121
  return this.pickerDate
121
122
  }
122
123
 
123
- const date = (this.multiple ? (this.value as string[])[(this.value as string[]).length - 1] : this.value) ||
124
+ const date = (this.multiple || this.range ? (this.value as string[])[(this.value as string[]).length - 1] : this.value) ||
124
125
  `${now.getFullYear()}-${now.getMonth() + 1}`
125
126
  return sanitizeDateString(date as string, this.type === 'date' ? 'month' : 'year')
126
127
  })(),
@@ -128,13 +129,16 @@ export default mixins(
128
129
  },
129
130
 
130
131
  computed: {
132
+ isMultiple (): boolean {
133
+ return this.multiple || this.range
134
+ },
131
135
  lastValue (): string | null {
132
- return this.multiple ? (this.value as string[])[(this.value as string[]).length - 1] : (this.value as string | null)
136
+ return this.isMultiple ? (this.value as string[])[(this.value as string[]).length - 1] : (this.value as string | null)
133
137
  },
134
138
  selectedMonths (): string | string[] | undefined {
135
139
  if (!this.value || !this.value.length || this.type === 'month') {
136
140
  return this.value
137
- } else if (this.multiple) {
141
+ } else if (this.isMultiple) {
138
142
  return (this.value as string[]).map(val => val.substr(0, 7))
139
143
  } else {
140
144
  return (this.value as string).substr(0, 7)
@@ -173,7 +177,8 @@ export default mixins(
173
177
  formatters (): Formatters {
174
178
  return {
175
179
  year: this.yearFormat || createNativeLocaleFormatter(this.currentLocale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 }),
176
- titleDate: this.titleDateFormat || (this.multiple ? this.defaultTitleMultipleDateFormatter : this.defaultTitleDateFormatter),
180
+ titleDate: this.titleDateFormat ||
181
+ (this.isMultiple ? this.defaultTitleMultipleDateFormatter : this.defaultTitleDateFormatter),
177
182
  }
178
183
  },
179
184
  defaultTitleMultipleDateFormatter (): DatePickerMultipleFormatter {
@@ -230,9 +235,9 @@ export default mixins(
230
235
  this.checkMultipleProp()
231
236
  this.setInputDate()
232
237
 
233
- if (!this.multiple && this.value && !this.pickerDate) {
238
+ if (!this.isMultiple && this.value && !this.pickerDate) {
234
239
  this.tableDate = sanitizeDateString(this.inputDate, this.type === 'month' ? 'year' : 'month')
235
- } else if (this.multiple && (this.value as string[]).length && !(oldValue as string[]).length && !this.pickerDate) {
240
+ } else if (this.isMultiple && (this.value as string[]).length && !(oldValue as string[]).length && !this.pickerDate) {
236
241
  this.tableDate = sanitizeDateString(this.inputDate, this.type === 'month' ? 'year' : 'month')
237
242
  }
238
243
  },
@@ -240,10 +245,10 @@ export default mixins(
240
245
  this.activePicker = type.toUpperCase()
241
246
 
242
247
  if (this.value && this.value.length) {
243
- const output = (this.multiple ? (this.value as string[]) : [this.value as string])
248
+ const output = (this.isMultiple ? (this.value as string[]) : [this.value as string])
244
249
  .map((val: string) => sanitizeDateString(val, type))
245
250
  .filter(this.isDateAllowed)
246
- this.$emit('input', this.multiple ? output : output[0])
251
+ this.$emit('input', this.isMultiple ? output : output[0])
247
252
  }
248
253
  },
249
254
  },
@@ -259,6 +264,13 @@ export default mixins(
259
264
 
260
265
  methods: {
261
266
  emitInput (newInput: string) {
267
+ if (this.range && this.value) {
268
+ this.value.length === 2
269
+ ? this.$emit('input', [newInput])
270
+ : this.$emit('input', [...this.value, newInput])
271
+ return
272
+ }
273
+
262
274
  const output = this.multiple
263
275
  ? (
264
276
  (this.value as string[]).indexOf(newInput) === -1
@@ -273,9 +285,9 @@ export default mixins(
273
285
  checkMultipleProp () {
274
286
  if (this.value == null) return
275
287
  const valueType = this.value.constructor.name
276
- const expected = this.multiple ? 'Array' : 'String'
288
+ const expected = this.isMultiple ? 'Array' : 'String'
277
289
  if (valueType !== expected) {
278
- consoleWarn(`Value must be ${this.multiple ? 'an' : 'a'} ${expected}, got ${valueType}`, this)
290
+ consoleWarn(`Value must be ${this.isMultiple ? 'an' : 'a'} ${expected}, got ${valueType}`, this)
279
291
  }
280
292
  },
281
293
  isDateAllowed (value: string) {
@@ -289,7 +301,7 @@ export default mixins(
289
301
  this.tableDate = `${value}-${pad((this.tableMonth || 0) + 1)}`
290
302
  }
291
303
  this.activePicker = 'MONTH'
292
- if (this.reactive && !this.readonly && !this.multiple && this.isDateAllowed(this.inputDate)) {
304
+ if (this.reactive && !this.readonly && !this.isMultiple && this.isDateAllowed(this.inputDate)) {
293
305
  this.$emit('input', this.inputDate)
294
306
  }
295
307
  },
@@ -303,7 +315,7 @@ export default mixins(
303
315
 
304
316
  this.tableDate = value
305
317
  this.activePicker = 'DATE'
306
- if (this.reactive && !this.readonly && !this.multiple && this.isDateAllowed(this.inputDate)) {
318
+ if (this.reactive && !this.readonly && !this.isMultiple && this.isDateAllowed(this.inputDate)) {
307
319
  this.$emit('input', this.inputDate)
308
320
  }
309
321
  } else {
@@ -325,7 +337,7 @@ export default mixins(
325
337
  selectingYear: this.activePicker === 'YEAR',
326
338
  year: this.formatters.year(this.value ? `${this.inputYear}` : this.tableDate),
327
339
  yearIcon: this.yearIcon,
328
- value: this.multiple ? (this.value as string[])[0] : this.value,
340
+ value: this.isMultiple ? (this.value as string[])[0] : this.value,
329
341
  },
330
342
  slot: 'title',
331
343
  on: {
@@ -356,6 +368,18 @@ export default mixins(
356
368
  })
357
369
  },
358
370
  genDateTable () {
371
+ let proxyValue = this.value
372
+
373
+ if (this.range && this.value && this.value.length === 2) {
374
+ proxyValue = []
375
+ const [rangeFrom, rangeTo] = [this.value[0], this.value[1]].map(x => new Date(`${x}T00:00:00+00:00`)).sort((a, b) => a > b ? 1 : -1)
376
+ const diffDays = Math.ceil((rangeTo.getTime() - rangeFrom.getTime()) / (1000 * 60 * 60 * 24))
377
+ for (let i = 0; i <= diffDays; i++) {
378
+ const current = new Date(+rangeFrom + i * 864e5)
379
+ proxyValue.push(current.toISOString().substring(0, 10))
380
+ }
381
+ }
382
+
359
383
  return this.$createElement(VDatePickerDateTable, {
360
384
  props: {
361
385
  allowedDates: this.allowedDates,
@@ -375,7 +399,7 @@ export default mixins(
375
399
  scrollable: this.scrollable,
376
400
  showWeek: this.showWeek,
377
401
  tableDate: `${pad(this.tableYear, 4)}-${pad(this.tableMonth + 1)}`,
378
- value: this.value,
402
+ value: proxyValue,
379
403
  weekdayFormat: this.weekdayFormat,
380
404
  },
381
405
  ref: 'table',
@@ -33,11 +33,11 @@ export default mixins(
33
33
  max: String,
34
34
  nextIcon: {
35
35
  type: String,
36
- default: '$vuetify.icons.next',
36
+ default: '$next',
37
37
  },
38
38
  prevIcon: {
39
39
  type: String,
40
- default: '$vuetify.icons.prev',
40
+ default: '$prev',
41
41
  },
42
42
  readonly: Boolean,
43
43
  value: {
@@ -633,4 +633,24 @@ describe('VDatePicker.ts', () => { // eslint-disable-line max-statements
633
633
  wrapper.findAll('.v-date-picker-table--date tbody tr+tr td:first-child button').at(0).trigger('dblclick')
634
634
  expect(dblclick).toHaveBeenCalledWith('2013-05-05')
635
635
  })
636
+
637
+ it('should handle date range select', async () => {
638
+ const cb = jest.fn()
639
+ const wrapper = mountFunction({
640
+ propsData: {
641
+ range: true,
642
+ value: ['2019-01-01', '2019-01-02'],
643
+ },
644
+ })
645
+
646
+ wrapper.vm.$on('input', cb)
647
+ wrapper.findAll('.v-date-picker-table--date tbody tr+tr td:first-child button').at(0).trigger('click')
648
+ expect(cb.mock.calls[0][0]).toEqual(
649
+ expect.arrayContaining(['2019-01-06'])
650
+ )
651
+
652
+ wrapper.findAll('.v-date-picker-table--date tbody tr+tr td button').at(2).trigger('click')
653
+ expect(cb.mock.calls[0][0][0]).toBe('2019-01-06')
654
+ expect(cb.mock.calls[1][0][0]).toBe('2019-01-08')
655
+ })
636
656
  })
@@ -43,14 +43,11 @@
43
43
  z-index: 6
44
44
  outline: none
45
45
 
46
- .v-dialog__activator
47
- cursor: pointer
48
-
49
- *
50
- cursor: pointer
51
-
52
46
  .v-dialog__container
53
- display: inline
47
+ display: none
48
+
49
+ &--attached
50
+ display: inline
54
51
 
55
52
  // Modifier
56
53
  .v-dialog--animated
@@ -314,6 +314,12 @@ export default baseMixins.extend({
314
314
 
315
315
  return h('div', {
316
316
  staticClass: 'v-dialog__container',
317
+ class: {
318
+ 'v-dialog__container--attached':
319
+ this.attach === '' ||
320
+ this.attach === true ||
321
+ this.attach === 'attach',
322
+ },
317
323
  attrs: { role: 'dialog' },
318
324
  }, children)
319
325
  },
@@ -1 +1 @@
1
- $dialog-border-radius: 4px !default;
1
+ $dialog-border-radius: $border-radius-root !default;
@@ -34,7 +34,7 @@ export default baseMixins.extend<options>().extend({
34
34
  disableIconRotate: Boolean,
35
35
  expandIcon: {
36
36
  type: String,
37
- default: '$vuetify.icons.expand',
37
+ default: '$expand',
38
38
  },
39
39
  hideActions: Boolean,
40
40
  ripple: {
@@ -26,7 +26,7 @@ exports[`VExpansionPanel should hide actions and match snapshot 2`] = `
26
26
  <i aria-hidden="true"
27
27
  class="v-icon notranslate material-icons theme--light"
28
28
  >
29
- $vuetify.icons.expand
29
+ $expand
30
30
  </i>
31
31
  </div>
32
32
  </button>
@@ -1,4 +1,4 @@
1
- $expansion-panel-border-radius: 4px !default;
1
+ $expansion-panel-border-radius: $border-radius-root !default;
2
2
  $expansion-panel-active-margin: 16px !default;
3
3
  $expansion-panel-header-font-size: 0.9375rem !default;
4
4
  $expansion-panel-header-min-height: 48px !default;
@@ -35,3 +35,7 @@
35
35
  .v-file-input.v-text-field--outlined
36
36
  .v-text-field__slot
37
37
  padding: 6px 0
38
+
39
+ &.v-input--dense
40
+ .v-text-field__slot
41
+ padding: 3px 0
@@ -39,7 +39,7 @@ export default VTextField.extend({
39
39
  placeholder: String,
40
40
  prependIcon: {
41
41
  type: String,
42
- default: '$vuetify.icons.file',
42
+ default: '$file',
43
43
  },
44
44
  readonly: {
45
45
  type: Boolean,