vuetify 2.1.0-beta.1 → 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 (230) hide show
  1. package/dist/vuetify.css +50 -28
  2. package/dist/vuetify.css.map +1 -1
  3. package/dist/vuetify.js +177 -93
  4. package/dist/vuetify.js.map +1 -1
  5. package/dist/vuetify.min.css +2 -2
  6. package/dist/vuetify.min.js +3 -3
  7. package/es5/components/VAlert/VAlert.js +3 -18
  8. package/es5/components/VAlert/VAlert.js.map +1 -1
  9. package/es5/components/VAppBar/VAppBarNavIcon.js +1 -1
  10. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  11. package/es5/components/VCarousel/VCarousel.js +1 -1
  12. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  13. package/es5/components/VCheckbox/VCheckbox.js +3 -3
  14. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  15. package/es5/components/VCheckbox/VSimpleCheckbox.js +3 -3
  16. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  17. package/es5/components/VChip/VChip.js +2 -2
  18. package/es5/components/VChip/VChip.js.map +1 -1
  19. package/es5/components/VColorPicker/VColorPickerEdit.js +1 -1
  20. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  21. package/es5/components/VColorPicker/VColorPickerSwatches.js +1 -1
  22. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  23. package/es5/components/VDataIterator/VDataFooter.js +4 -4
  24. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  25. package/es5/components/VDataTable/VDataTable.js +3 -3
  26. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  27. package/es5/components/VDataTable/mixins/header.js +1 -1
  28. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  29. package/es5/components/VDatePicker/VDatePicker.js +2 -2
  30. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  31. package/es5/components/VDatePicker/VDatePickerHeader.js +2 -2
  32. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  33. package/es5/components/VDialog/VDialog.js +3 -0
  34. package/es5/components/VDialog/VDialog.js.map +1 -1
  35. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +1 -1
  36. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  37. package/es5/components/VFileInput/VFileInput.js +1 -1
  38. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  39. package/es5/components/VInput/VInput.js +3 -0
  40. package/es5/components/VInput/VInput.js.map +1 -1
  41. package/es5/components/VLazy/VLazy.js +4 -2
  42. package/es5/components/VLazy/VLazy.js.map +1 -1
  43. package/es5/components/VList/VListGroup.js +2 -2
  44. package/es5/components/VList/VListGroup.js.map +1 -1
  45. package/es5/components/VMenu/VMenu.js +3 -0
  46. package/es5/components/VMenu/VMenu.js.map +1 -1
  47. package/es5/components/VPagination/VPagination.js +2 -2
  48. package/es5/components/VPagination/VPagination.js.map +1 -1
  49. package/es5/components/VRadioGroup/VRadio.js +2 -2
  50. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  51. package/es5/components/VRating/VRating.js +3 -3
  52. package/es5/components/VRating/VRating.js.map +1 -1
  53. package/es5/components/VSelect/VSelect.js +1 -1
  54. package/es5/components/VSelect/VSelect.js.map +1 -1
  55. package/es5/components/VSlideGroup/VSlideGroup.js +2 -2
  56. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  57. package/es5/components/VStepper/VStepperStep.js +3 -3
  58. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  59. package/es5/components/VTabs/VTabs.js +2 -2
  60. package/es5/components/VTabs/VTabs.js.map +1 -1
  61. package/es5/components/VTextField/VTextField.js +2 -2
  62. package/es5/components/VTextField/VTextField.js.map +1 -1
  63. package/es5/components/VTooltip/VTooltip.js +2 -1
  64. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  65. package/es5/components/VTreeview/VTreeviewNode.js +5 -5
  66. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  67. package/es5/components/VWindow/VWindow.js +2 -2
  68. package/es5/components/VWindow/VWindow.js.map +1 -1
  69. package/es5/directives/index.js +8 -0
  70. package/es5/directives/index.js.map +1 -1
  71. package/es5/directives/intersect/index.js +7 -6
  72. package/es5/directives/intersect/index.js.map +1 -1
  73. package/es5/directives/mutate/index.js +71 -0
  74. package/es5/directives/mutate/index.js.map +1 -0
  75. package/es5/framework.js +1 -1
  76. package/es5/locale/et.js +8 -8
  77. package/es5/locale/et.js.map +1 -1
  78. package/es5/locale/hr.js +15 -15
  79. package/es5/locale/hr.js.map +1 -1
  80. package/es5/locale/sl.js +8 -8
  81. package/es5/locale/sl.js.map +1 -1
  82. package/es5/util/helpers.js +5 -5
  83. package/es5/util/helpers.js.map +1 -1
  84. package/lib/components/VAlert/VAlert.js +3 -18
  85. package/lib/components/VAlert/VAlert.js.map +1 -1
  86. package/lib/components/VAppBar/VAppBarNavIcon.js +1 -1
  87. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  88. package/lib/components/VCarousel/VCarousel.js +1 -1
  89. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  90. package/lib/components/VCheckbox/VCheckbox.js +3 -3
  91. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  92. package/lib/components/VCheckbox/VSimpleCheckbox.js +3 -3
  93. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  94. package/lib/components/VChip/VChip.js +2 -2
  95. package/lib/components/VChip/VChip.js.map +1 -1
  96. package/lib/components/VColorPicker/VColorPickerEdit.js +1 -1
  97. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  98. package/lib/components/VColorPicker/VColorPickerSwatches.js +1 -1
  99. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  100. package/lib/components/VDataIterator/VDataFooter.js +4 -4
  101. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  102. package/lib/components/VDataTable/VDataTable.js +3 -3
  103. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  104. package/lib/components/VDataTable/mixins/header.js +1 -1
  105. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  106. package/lib/components/VDatePicker/VDatePicker.js +2 -2
  107. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  108. package/lib/components/VDatePicker/VDatePickerHeader.js +2 -2
  109. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  110. package/lib/components/VDialog/VDialog.js +3 -0
  111. package/lib/components/VDialog/VDialog.js.map +1 -1
  112. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +1 -1
  113. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  114. package/lib/components/VFileInput/VFileInput.js +1 -1
  115. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  116. package/lib/components/VInput/VInput.js +3 -0
  117. package/lib/components/VInput/VInput.js.map +1 -1
  118. package/lib/components/VLazy/VLazy.js +4 -2
  119. package/lib/components/VLazy/VLazy.js.map +1 -1
  120. package/lib/components/VList/VListGroup.js +2 -2
  121. package/lib/components/VList/VListGroup.js.map +1 -1
  122. package/lib/components/VMenu/VMenu.js +3 -0
  123. package/lib/components/VMenu/VMenu.js.map +1 -1
  124. package/lib/components/VPagination/VPagination.js +2 -2
  125. package/lib/components/VPagination/VPagination.js.map +1 -1
  126. package/lib/components/VRadioGroup/VRadio.js +2 -2
  127. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  128. package/lib/components/VRating/VRating.js +3 -3
  129. package/lib/components/VRating/VRating.js.map +1 -1
  130. package/lib/components/VSelect/VSelect.js +1 -1
  131. package/lib/components/VSelect/VSelect.js.map +1 -1
  132. package/lib/components/VSlideGroup/VSlideGroup.js +2 -2
  133. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  134. package/lib/components/VStepper/VStepperStep.js +3 -3
  135. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  136. package/lib/components/VTabs/VTabs.js +2 -2
  137. package/lib/components/VTabs/VTabs.js.map +1 -1
  138. package/lib/components/VTextField/VTextField.js +2 -2
  139. package/lib/components/VTextField/VTextField.js.map +1 -1
  140. package/lib/components/VTooltip/VTooltip.js +2 -1
  141. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  142. package/lib/components/VTreeview/VTreeviewNode.js +5 -5
  143. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  144. package/lib/components/VWindow/VWindow.js +2 -2
  145. package/lib/components/VWindow/VWindow.js.map +1 -1
  146. package/lib/directives/index.js +1 -0
  147. package/lib/directives/index.js.map +1 -1
  148. package/lib/directives/intersect/index.js +5 -6
  149. package/lib/directives/intersect/index.js.map +1 -1
  150. package/lib/directives/mutate/index.js +56 -0
  151. package/lib/directives/mutate/index.js.map +1 -0
  152. package/lib/framework.js +1 -1
  153. package/lib/locale/et.js +8 -8
  154. package/lib/locale/et.js.map +1 -1
  155. package/lib/locale/hr.js +15 -15
  156. package/lib/locale/hr.js.map +1 -1
  157. package/lib/locale/sl.js +8 -8
  158. package/lib/locale/sl.js.map +1 -1
  159. package/lib/util/helpers.js +3 -4
  160. package/lib/util/helpers.js.map +1 -1
  161. package/package.json +2 -2
  162. package/src/components/VAlert/VAlert.ts +3 -8
  163. package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +2 -2
  164. package/src/components/VAppBar/VAppBarNavIcon.ts +1 -1
  165. package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +1 -1
  166. package/src/components/VCalendar/VCalendarWeekly.sass +3 -0
  167. package/src/components/VCarousel/VCarousel.ts +1 -1
  168. package/src/components/VCheckbox/VCheckbox.ts +3 -3
  169. package/src/components/VCheckbox/VSimpleCheckbox.ts +3 -3
  170. package/src/components/VCheckbox/__tests__/__snapshots__/VCheckbox.spec.ts.snap +1 -1
  171. package/src/components/VChip/VChip.ts +2 -2
  172. package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +1 -1
  173. package/src/components/VColorPicker/VColorPickerEdit.ts +1 -1
  174. package/src/components/VColorPicker/VColorPickerSwatches.ts +1 -1
  175. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +5 -5
  176. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +5 -5
  177. package/src/components/VDataIterator/VDataFooter.ts +4 -4
  178. package/src/components/VDataTable/VDataTable.ts +3 -3
  179. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +191 -191
  180. package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +35 -35
  181. package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +3 -3
  182. package/src/components/VDataTable/mixins/header.ts +1 -1
  183. package/src/components/VDatePicker/VDatePicker.ts +2 -2
  184. package/src/components/VDatePicker/VDatePickerHeader.ts +2 -2
  185. package/src/components/VDialog/VDialog.sass +4 -7
  186. package/src/components/VDialog/VDialog.ts +6 -0
  187. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +1 -1
  188. package/src/components/VExpansionPanel/__tests__/__snapshots__/VExpansionPanel.spec.ts.snap +1 -1
  189. package/src/components/VFileInput/VFileInput.ts +1 -1
  190. package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +16 -16
  191. package/src/components/VIcon/__tests__/VIcon.spec.ts +11 -11
  192. package/src/components/VInput/VInput.sass +3 -0
  193. package/src/components/VInput/VInput.ts +3 -0
  194. package/src/components/VInput/__tests__/__snapshots__/VInput.spec.ts.snap +3 -1
  195. package/src/components/VLazy/VLazy.ts +4 -2
  196. package/src/components/VList/VListGroup.ts +2 -2
  197. package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +1 -1
  198. package/src/components/VMenu/VMenu.sass +3 -8
  199. package/src/components/VMenu/VMenu.ts +6 -0
  200. package/src/components/VOverflowBtn/__tests__/__snapshots__/VOverflowBtn.spec.ts.snap +2 -2
  201. package/src/components/VPagination/VPagination.ts +2 -2
  202. package/src/components/VRadioGroup/VRadio.ts +2 -2
  203. package/src/components/VRadioGroup/__tests__/__snapshots__/VRadio.spec.ts.snap +3 -3
  204. package/src/components/VRating/VRating.ts +3 -3
  205. package/src/components/VSelect/VSelect.ts +1 -1
  206. package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +7 -7
  207. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +5 -5
  208. package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +1 -1
  209. package/src/components/VSlideGroup/VSlideGroup.ts +2 -2
  210. package/src/components/VSlideGroup/__tests__/__snapshots__/VSlideGroup.spec.ts.snap +4 -4
  211. package/src/components/VStepper/VStepperStep.ts +3 -3
  212. package/src/components/VTabs/VTabs.ts +2 -2
  213. package/src/components/VTextField/VTextField.sass +35 -11
  214. package/src/components/VTextField/VTextField.ts +2 -2
  215. package/src/components/VTooltip/VTooltip.sass +5 -2
  216. package/src/components/VTooltip/VTooltip.ts +4 -0
  217. package/src/components/VTreeview/VTreeviewNode.ts +5 -5
  218. package/src/components/VTreeview/__tests__/VTreeviewNode.spec.ts +2 -2
  219. package/src/components/VTreeview/__tests__/__snapshots__/VTreeview.spec.ts.snap +1 -1
  220. package/src/components/VWindow/VWindow.ts +2 -2
  221. package/src/directives/index.ts +1 -0
  222. package/src/directives/intersect/index.ts +6 -5
  223. package/src/directives/mutate/__tests__/mutate.spec.ts +130 -0
  224. package/src/directives/mutate/index.ts +63 -0
  225. package/src/globals.d.ts +3 -0
  226. package/src/locale/et.ts +8 -8
  227. package/src/locale/hr.ts +15 -15
  228. package/src/locale/sl.ts +8 -8
  229. package/src/styles/settings/_variables.scss +3 -3
  230. package/src/util/helpers.ts +3 -5
@@ -64,7 +64,9 @@ exports[`VInput.ts should be in an error state 2`] = `
64
64
  <div class="v-input__control">
65
65
  <div class="v-input__slot">
66
66
  </div>
67
- <div class="v-messages theme--light error--text">
67
+ <div class="v-messages theme--light error--text"
68
+ role="alert"
69
+ >
68
70
  <span name="message-transition"
69
71
  tag="div"
70
72
  class="v-messages__wrapper"
@@ -68,8 +68,10 @@ export default mixins(Toggleable).extend({
68
68
  attrs: this.$attrs,
69
69
  directives: [{
70
70
  name: 'intersect',
71
- options: this.options,
72
- value: this.onObserve,
71
+ value: {
72
+ handler: this.onObserve,
73
+ options: this.options,
74
+ },
73
75
  }] as any,
74
76
  on: this.$listeners,
75
77
  style: this.styles,
@@ -57,7 +57,7 @@ export default baseMixins.extend<options>().extend({
57
57
  },
58
58
  appendIcon: {
59
59
  type: String,
60
- default: '$vuetify.icons.expand',
60
+ default: '$expand',
61
61
  },
62
62
  color: {
63
63
  type: String,
@@ -175,7 +175,7 @@ export default baseMixins.extend<options>().extend({
175
175
  const icon = this.prependIcon
176
176
  ? this.prependIcon
177
177
  : this.subGroup
178
- ? '$vuetify.icons.subgroup'
178
+ ? '$subgroup'
179
179
  : false
180
180
 
181
181
  if (!icon && !this.$slots.prependIcon) return null
@@ -11,7 +11,7 @@ exports[`VListGroup.ts should render component and match snapshot 1`] = `
11
11
  <i aria-hidden="true"
12
12
  class="v-icon notranslate material-icons theme--light"
13
13
  >
14
- $vuetify.icons.expand
14
+ $expand
15
15
  </i>
16
16
  </div>
17
17
  </div>
@@ -2,15 +2,10 @@
2
2
  @import './_variables.scss'
3
3
 
4
4
  .v-menu
5
- display: inline
5
+ display: none
6
6
 
7
- &__activator
8
- align-items: center
9
- cursor: pointer
10
- display: flex
11
-
12
- *
13
- cursor: pointer
7
+ &--attached
8
+ display: inline
14
9
 
15
10
  &__content
16
11
  position: absolute
@@ -438,6 +438,12 @@ export default baseMixins.extend({
438
438
  render (h): VNode {
439
439
  const data = {
440
440
  staticClass: 'v-menu',
441
+ class: {
442
+ 'v-menu--attached':
443
+ this.attach === '' ||
444
+ this.attach === true ||
445
+ this.attach === 'attach',
446
+ },
441
447
  directives: [{
442
448
  arg: '500',
443
449
  name: 'resize',
@@ -24,7 +24,7 @@ exports[`VOverflowBtn.js should use default autocomplete selections 1`] = `
24
24
  <i aria-hidden="true"
25
25
  class="v-icon notranslate material-icons theme--light"
26
26
  >
27
- $vuetify.icons.dropdown
27
+ $dropdown
28
28
  </i>
29
29
  </div>
30
30
  </div>
@@ -73,7 +73,7 @@ exports[`VOverflowBtn.js should use default autocomplete selections 2`] = `
73
73
  <i aria-hidden="true"
74
74
  class="v-icon notranslate material-icons theme--light"
75
75
  >
76
- $vuetify.icons.dropdown
76
+ $dropdown
77
77
  </i>
78
78
  </div>
79
79
  </div>
@@ -29,11 +29,11 @@ export default mixins(Colorable, Themeable).extend({
29
29
  },
30
30
  nextIcon: {
31
31
  type: String,
32
- default: '$vuetify.icons.next',
32
+ default: '$next',
33
33
  },
34
34
  prevIcon: {
35
35
  type: String,
36
- default: '$vuetify.icons.prev',
36
+ default: '$prev',
37
37
  },
38
38
  totalVisible: [Number, String],
39
39
  value: {
@@ -47,11 +47,11 @@ export default baseMixins.extend<options>().extend({
47
47
  name: String,
48
48
  offIcon: {
49
49
  type: String,
50
- default: '$vuetify.icons.radioOff',
50
+ default: '$radioOff',
51
51
  },
52
52
  onIcon: {
53
53
  type: String,
54
- default: '$vuetify.icons.radioOn',
54
+ default: '$radioOn',
55
55
  },
56
56
  readonly: Boolean,
57
57
  value: {
@@ -14,7 +14,7 @@ exports[`VRadio.ts should not render aria-label attribute with no label value on
14
14
  <i aria-hidden="true"
15
15
  class="v-icon notranslate material-icons theme--light"
16
16
  >
17
- $vuetify.icons.radioOff
17
+ $radioOff
18
18
  </i>
19
19
  </div>
20
20
  </div>
@@ -35,7 +35,7 @@ exports[`VRadio.ts should render proper input name 1`] = `
35
35
  <i aria-hidden="true"
36
36
  class="v-icon notranslate material-icons theme--light"
37
37
  >
38
- $vuetify.icons.radioOff
38
+ $radioOff
39
39
  </i>
40
40
  </div>
41
41
  </div>
@@ -55,7 +55,7 @@ exports[`VRadio.ts should render role and aria-checked attributes on input group
55
55
  <i aria-hidden="true"
56
56
  class="v-icon notranslate material-icons theme--light accent--text"
57
57
  >
58
- $vuetify.icons.radioOn
58
+ $radioOn
59
59
  </i>
60
60
  </div>
61
61
  </div>
@@ -51,15 +51,15 @@ export default mixins(
51
51
  dense: Boolean,
52
52
  emptyIcon: {
53
53
  type: String,
54
- default: '$vuetify.icons.ratingEmpty',
54
+ default: '$ratingEmpty',
55
55
  },
56
56
  fullIcon: {
57
57
  type: String,
58
- default: '$vuetify.icons.ratingFull',
58
+ default: '$ratingFull',
59
59
  },
60
60
  halfIcon: {
61
61
  type: String,
62
- default: '$vuetify.icons.ratingHalf',
62
+ default: '$ratingHalf',
63
63
  },
64
64
  halfIncrements: Boolean,
65
65
  hover: Boolean,
@@ -64,7 +64,7 @@ export default baseMixins.extend<options>().extend({
64
64
  props: {
65
65
  appendIcon: {
66
66
  type: String,
67
- default: '$vuetify.icons.dropdown',
67
+ default: '$dropdown',
68
68
  },
69
69
  attach: {
70
70
  default: false,
@@ -33,7 +33,7 @@ exports[`VSelect.ts should only show items if they are in items 1`] = `
33
33
  <i aria-hidden="true"
34
34
  class="v-icon notranslate material-icons theme--light"
35
35
  >
36
- $vuetify.icons.dropdown
36
+ $dropdown
37
37
  </i>
38
38
  </div>
39
39
  </div>
@@ -80,7 +80,7 @@ exports[`VSelect.ts should only show items if they are in items 2`] = `
80
80
  <i aria-hidden="true"
81
81
  class="v-icon notranslate material-icons theme--light"
82
82
  >
83
- $vuetify.icons.dropdown
83
+ $dropdown
84
84
  </i>
85
85
  </div>
86
86
  </div>
@@ -130,7 +130,7 @@ exports[`VSelect.ts should only show items if they are in items 3`] = `
130
130
  <i aria-hidden="true"
131
131
  class="v-icon notranslate material-icons theme--light"
132
132
  >
133
- $vuetify.icons.dropdown
133
+ $dropdown
134
134
  </i>
135
135
  </div>
136
136
  </div>
@@ -183,7 +183,7 @@ exports[`VSelect.ts should only show items if they are in items 4`] = `
183
183
  <i aria-hidden="true"
184
184
  class="v-icon notranslate material-icons theme--light"
185
185
  >
186
- $vuetify.icons.dropdown
186
+ $dropdown
187
187
  </i>
188
188
  </div>
189
189
  </div>
@@ -230,7 +230,7 @@ exports[`VSelect.ts should render v-select correctly when not using scope slot 1
230
230
  <i aria-hidden="true"
231
231
  class="v-icon notranslate material-icons theme--light"
232
232
  >
233
- $vuetify.icons.dropdown
233
+ $dropdown
234
234
  </i>
235
235
  </div>
236
236
  </div>
@@ -277,7 +277,7 @@ exports[`VSelect.ts should render v-select correctly when not using v-list-item
277
277
  <i aria-hidden="true"
278
278
  class="v-icon notranslate material-icons theme--light"
279
279
  >
280
- $vuetify.icons.dropdown
280
+ $dropdown
281
281
  </i>
282
282
  </div>
283
283
  </div>
@@ -324,7 +324,7 @@ exports[`VSelect.ts should render v-select correctly when using v-list-item in i
324
324
  <i aria-hidden="true"
325
325
  class="v-icon notranslate material-icons theme--light"
326
326
  >
327
- $vuetify.icons.dropdown
327
+ $dropdown
328
328
  </i>
329
329
  </div>
330
330
  </div>
@@ -25,7 +25,7 @@ exports[`VSelect.ts should be clearable with prop, dirty and multi select 1`] =
25
25
  <i role="button"
26
26
  class="v-icon notranslate v-icon--link material-icons theme--light"
27
27
  >
28
- $vuetify.icons.clear
28
+ $clear
29
29
  </i>
30
30
  </div>
31
31
  </div>
@@ -34,7 +34,7 @@ exports[`VSelect.ts should be clearable with prop, dirty and multi select 1`] =
34
34
  <i aria-hidden="true"
35
35
  class="v-icon notranslate material-icons theme--light"
36
36
  >
37
- $vuetify.icons.dropdown
37
+ $dropdown
38
38
  </i>
39
39
  </div>
40
40
  </div>
@@ -84,7 +84,7 @@ exports[`VSelect.ts should be clearable with prop, dirty and single select 1`] =
84
84
  <i role="button"
85
85
  class="v-icon notranslate v-icon--link material-icons theme--light"
86
86
  >
87
- $vuetify.icons.clear
87
+ $clear
88
88
  </i>
89
89
  </div>
90
90
  </div>
@@ -93,7 +93,7 @@ exports[`VSelect.ts should be clearable with prop, dirty and single select 1`] =
93
93
  <i aria-hidden="true"
94
94
  class="v-icon notranslate material-icons theme--light"
95
95
  >
96
- $vuetify.icons.dropdown
96
+ $dropdown
97
97
  </i>
98
98
  </div>
99
99
  </div>
@@ -143,7 +143,7 @@ exports[`VSelect.ts should use scoped slot for selection generation 1`] = `
143
143
  <i aria-hidden="true"
144
144
  class="v-icon notranslate material-icons theme--light"
145
145
  >
146
- $vuetify.icons.dropdown
146
+ $dropdown
147
147
  </i>
148
148
  </div>
149
149
  </div>
@@ -25,7 +25,7 @@ exports[`VSelect.ts should add color to selected index 1`] = `
25
25
  <i aria-hidden="true"
26
26
  class="v-icon notranslate material-icons theme--light"
27
27
  >
28
- $vuetify.icons.dropdown
28
+ $dropdown
29
29
  </i>
30
30
  </div>
31
31
  </div>
@@ -59,7 +59,7 @@ export const BaseSlideGroup = mixins<options &
59
59
  centerActive: Boolean,
60
60
  nextIcon: {
61
61
  type: String,
62
- default: '$vuetify.icons.next',
62
+ default: '$next',
63
63
  },
64
64
  mobileBreakPoint: {
65
65
  type: [Number, String],
@@ -68,7 +68,7 @@ export const BaseSlideGroup = mixins<options &
68
68
  },
69
69
  prevIcon: {
70
70
  type: String,
71
- default: '$vuetify.icons.prev',
71
+ default: '$prev',
72
72
  },
73
73
  showArrows: Boolean,
74
74
  },
@@ -5,7 +5,7 @@ exports[`VSlideGroup.ts should match snapshot in rtl 1`] = `
5
5
  <div class="v-slide-group__prev">
6
6
  <fade-transition-stub origin="top center 0">
7
7
  <vuecomponent-stub>
8
- $vuetify.icons.next
8
+ $next
9
9
  </vuecomponent-stub>
10
10
  </fade-transition-stub>
11
11
  </div>
@@ -16,7 +16,7 @@ exports[`VSlideGroup.ts should match snapshot in rtl 1`] = `
16
16
  <div class="v-slide-group__next">
17
17
  <fade-transition-stub origin="top center 0">
18
18
  <vuecomponent-stub>
19
- $vuetify.icons.prev
19
+ $prev
20
20
  </vuecomponent-stub>
21
21
  </fade-transition-stub>
22
22
  </div>
@@ -28,7 +28,7 @@ exports[`VSlideGroup.ts should match snapshot in rtl 2`] = `
28
28
  <div class="v-slide-group__prev">
29
29
  <fade-transition-stub origin="top center 0">
30
30
  <vuecomponent-stub>
31
- $vuetify.icons.prev
31
+ $prev
32
32
  </vuecomponent-stub>
33
33
  </fade-transition-stub>
34
34
  </div>
@@ -39,7 +39,7 @@ exports[`VSlideGroup.ts should match snapshot in rtl 2`] = `
39
39
  <div class="v-slide-group__next">
40
40
  <fade-transition-stub origin="top center 0">
41
41
  <vuecomponent-stub>
42
- $vuetify.icons.next
42
+ $next
43
43
  </vuecomponent-stub>
44
44
  </fade-transition-stub>
45
45
  </div>
@@ -41,16 +41,16 @@ export default baseMixins.extend<options>().extend({
41
41
  complete: Boolean,
42
42
  completeIcon: {
43
43
  type: String,
44
- default: '$vuetify.icons.complete',
44
+ default: '$complete',
45
45
  },
46
46
  editable: Boolean,
47
47
  editIcon: {
48
48
  type: String,
49
- default: '$vuetify.icons.edit',
49
+ default: '$edit',
50
50
  },
51
51
  errorIcon: {
52
52
  type: String,
53
- default: '$vuetify.icons.error',
53
+ default: '$error',
54
54
  },
55
55
  rules: {
56
56
  type: Array,
@@ -64,12 +64,12 @@ export default baseMixins.extend<options>().extend({
64
64
  },
65
65
  nextIcon: {
66
66
  type: String,
67
- default: '$vuetify.icons.next',
67
+ default: '$next',
68
68
  },
69
69
  optional: Boolean,
70
70
  prevIcon: {
71
71
  type: String,
72
- default: '$vuetify.icons.prev',
72
+ default: '$prev',
73
73
  },
74
74
  right: Boolean,
75
75
  showArrows: Boolean,
@@ -59,9 +59,6 @@
59
59
  padding-top: $text-field-active-label-height
60
60
  margin-top: $input-top-spacing - $text-field-active-label-height
61
61
 
62
- &.v-input--dense
63
- padding-top: 0px
64
-
65
62
  input
66
63
  flex: 1 1 auto
67
64
  line-height: 20px
@@ -70,6 +67,13 @@
70
67
  min-width: 0px
71
68
  width: 100%
72
69
 
70
+ &.v-input--dense
71
+ padding-top: 0
72
+
73
+ &:not(.v-text-field--outlined):not(.v-text-field--solo)
74
+ input
75
+ padding: 4px 0 8px
76
+
73
77
  &[type=text]::-ms-clear
74
78
  display: none
75
79
 
@@ -208,21 +212,31 @@
208
212
  align-items: stretch
209
213
  min-height: 56px
210
214
 
211
- &.v-input--dense > .v-input__control > .v-input__slot
212
- min-height: 38px
215
+ &.v-input--dense
216
+ > .v-input__control > .v-input__slot
217
+ min-height: 44px
218
+
219
+ &.v-text-field--single-line,
220
+ &.v-text-field--outlined
221
+ > .v-input__control > .v-input__slot
222
+ min-height: 40px
213
223
 
214
224
  &--filled,
215
225
  &--full-width
216
226
  input
217
227
  margin-top: 22px
218
228
 
229
+ &.v-input--dense
230
+ input
231
+ margin-top: 20px
232
+
219
233
  &.v-text-field--single-line
220
234
  input
221
235
  margin-top: 12px
222
236
 
223
237
  &.v-input--dense
224
238
  input
225
- margin-top: 3px
239
+ margin-top: 6px
226
240
 
227
241
  .v-label
228
242
  top: 18px
@@ -231,8 +245,12 @@
231
245
  transform: translateY(-6px) scale(.75)
232
246
 
233
247
  &.v-input--dense
234
- .v-label
235
- top: 10px
248
+ .v-label--active
249
+ transform: translateY(-10px) scale(.75)
250
+
251
+ &.v-text-field--single-line
252
+ .v-label
253
+ top: 11px
236
254
 
237
255
  &--filled > .v-input__control > .v-input__slot
238
256
  border-top-left-radius: 4px
@@ -254,7 +272,13 @@
254
272
  +prepend-append-margin-top(16px)
255
273
 
256
274
  &.v-input--dense:not(.v-text-field--solo)
257
- +prepend-append-margin-top(7px)
275
+ +prepend-append-margin-top(14px)
276
+
277
+ &.v-text-field--single-line
278
+ +prepend-append-margin-top(9px)
279
+
280
+ &.v-text-field--outlined
281
+ +prepend-append-margin-top(7px)
258
282
 
259
283
  .v-text-field__details,
260
284
  & > .v-input__control > .v-input__slot
@@ -290,7 +314,7 @@
290
314
  +label-position(18px, -24px)
291
315
 
292
316
  &.v-input--dense
293
- +label-position(9px, -16px)
317
+ +label-position(10px, -16px)
294
318
 
295
319
  fieldset
296
320
  border-style: solid
@@ -384,7 +408,7 @@
384
408
  padding: 0
385
409
 
386
410
  &.v-input--dense > .v-input__control
387
- min-height: 36px
411
+ min-height: 38px
388
412
 
389
413
  &:not(.v-text-field--solo-flat) > .v-input__control > .v-input__slot
390
414
  +elevation(2)
@@ -52,7 +52,7 @@ export default baseMixins.extend<options>().extend({
52
52
  clearable: Boolean,
53
53
  clearIcon: {
54
54
  type: String,
55
- default: '$vuetify.icons.clear',
55
+ default: '$clear',
56
56
  },
57
57
  counter: [Boolean, Number, String],
58
58
  filled: Boolean,
@@ -136,7 +136,7 @@ export default baseMixins.extend<options>().extend({
136
136
  return this.isDirty || dirtyTypes.includes(this.type)
137
137
  },
138
138
  isSingle (): boolean {
139
- return this.isSolo || this.singleLine || this.fullWidth || (this.dense && !this.outlined)
139
+ return this.isSolo || this.singleLine || this.fullWidth
140
140
  },
141
141
  isSolo (): boolean {
142
142
  return this.solo || this.soloInverted
@@ -2,7 +2,10 @@
2
2
  @import ./_variables
3
3
 
4
4
  .v-tooltip
5
- display: inline
5
+ display: none
6
+
7
+ &--attached
8
+ display: inline
6
9
 
7
10
  &__content
8
11
  background: $tooltip-background-color
@@ -17,7 +20,7 @@
17
20
  width: auto
18
21
  opacity: 1
19
22
  pointer-events: none
20
-
23
+
21
24
  &--fixed
22
25
  position: fixed
23
26
 
@@ -110,6 +110,10 @@ export default mixins(Colorable, Delayable, Dependent, Detachable, Menuable, Tog
110
110
  'v-tooltip--right': this.right,
111
111
  'v-tooltip--bottom': this.bottom,
112
112
  'v-tooltip--left': this.left,
113
+ 'v-tooltip--attached':
114
+ this.attach === '' ||
115
+ this.attach === true ||
116
+ this.attach === 'attach',
113
117
  }
114
118
  },
115
119
  computedTransition (): string {
@@ -39,11 +39,11 @@ export const VTreeviewNodeProps = {
39
39
  },
40
40
  expandIcon: {
41
41
  type: String,
42
- default: '$vuetify.icons.subgroup',
42
+ default: '$subgroup',
43
43
  },
44
44
  indeterminateIcon: {
45
45
  type: String,
46
- default: '$vuetify.icons.checkboxIndeterminate',
46
+ default: '$checkboxIndeterminate',
47
47
  },
48
48
  itemChildren: {
49
49
  type: String,
@@ -64,15 +64,15 @@ export const VTreeviewNodeProps = {
64
64
  loadChildren: Function as PropValidator<(item: any) => Promise<void>>,
65
65
  loadingIcon: {
66
66
  type: String,
67
- default: '$vuetify.icons.loading',
67
+ default: '$loading',
68
68
  },
69
69
  offIcon: {
70
70
  type: String,
71
- default: '$vuetify.icons.checkboxOff',
71
+ default: '$checkboxOff',
72
72
  },
73
73
  onIcon: {
74
74
  type: String,
75
- default: '$vuetify.icons.checkboxOn',
75
+ default: '$checkboxOn',
76
76
  },
77
77
  openOnClick: Boolean,
78
78
  rounded: Boolean,
@@ -69,11 +69,11 @@ describe('VTreeViewNode.ts', () => {
69
69
  provide: { treeview },
70
70
  })
71
71
 
72
- expect(wrapper.vm.computedIcon).toBe('$vuetify.icons.checkboxOff')
72
+ expect(wrapper.vm.computedIcon).toBe('$checkboxOff')
73
73
 
74
74
  wrapper.setData({ isIndeterminate: true })
75
75
 
76
- expect(wrapper.vm.computedIcon).toBe('$vuetify.icons.checkboxIndeterminate')
76
+ expect(wrapper.vm.computedIcon).toBe('$checkboxIndeterminate')
77
77
  })
78
78
 
79
79
  it('should use scoped slots', () => {
@@ -730,7 +730,7 @@ exports[`VTreeView.ts should select only leaf nodes 1`] = `
730
730
  <i role="button"
731
731
  class="v-icon notranslate v-treeview-node__checkbox v-icon--link material-icons theme--light"
732
732
  >
733
- $vuetify.icons.checkboxIndeterminate
733
+ $checkboxIndeterminate
734
734
  </i>
735
735
  <div class="v-treeview-node__content">
736
736
  <div class="v-treeview-node__label">
@@ -36,11 +36,11 @@ export default BaseItemGroup.extend({
36
36
  },
37
37
  nextIcon: {
38
38
  type: [Boolean, String],
39
- default: '$vuetify.icons.next',
39
+ default: '$next',
40
40
  },
41
41
  prevIcon: {
42
42
  type: [Boolean, String],
43
- default: '$vuetify.icons.prev',
43
+ default: '$prev',
44
44
  },
45
45
  reverse: {
46
46
  type: Boolean,
@@ -1,5 +1,6 @@
1
1
  export { ClickOutside } from './click-outside'
2
2
  export { Intersect } from './intersect'
3
+ export { Mutate } from './mutate'
3
4
  export { Resize } from './resize'
4
5
  export { Ripple } from './ripple'
5
6
  export { Scroll } from './scroll'
@@ -1,13 +1,15 @@
1
1
  import { VNodeDirective } from 'vue/types/vnode'
2
2
 
3
3
  interface ObserveVNodeDirective extends VNodeDirective {
4
- options?: undefined | IntersectionObserverInit
4
+ options?: IntersectionObserverInit
5
5
  }
6
6
 
7
7
  function inserted (el: HTMLElement, binding: ObserveVNodeDirective) {
8
8
  const modifiers = binding.modifiers || /* istanbul ignore next */ {}
9
- const callback = binding.value!
10
- const callbackWrapper = (
9
+ const value = binding.value
10
+ const isObject = typeof value === 'object'
11
+ const callback = isObject ? value.handler : value
12
+ const observer = new IntersectionObserver((
11
13
  entries: IntersectionObserverEntry[] = [],
12
14
  observer: IntersectionObserver
13
15
  ) => {
@@ -32,8 +34,7 @@ function inserted (el: HTMLElement, binding: ObserveVNodeDirective) {
32
34
  if (el._observe.init && modifiers.once) unbind(el)
33
35
  // Otherwise, mark the observer as initted
34
36
  else (el._observe.init = true)
35
- }
36
- const observer = new IntersectionObserver(callbackWrapper, binding.options || {})
37
+ }, value.options || {})
37
38
 
38
39
  el._observe = { init: false, observer }
39
40