@dimailn/vuetify 2.7.2-alpha14 → 2.7.2-alpha15

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 (57) hide show
  1. package/dist/vuetify.js +116 -116
  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/VAppBar/VAppBar.js +7 -12
  6. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  7. package/es5/components/VGrid/VContainer.js +3 -1
  8. package/es5/components/VGrid/VContainer.js.map +1 -1
  9. package/es5/components/VItemGroup/VItem.js +17 -18
  10. package/es5/components/VItemGroup/VItem.js.map +1 -1
  11. package/es5/components/VTextField/VTextField.js +4 -1
  12. package/es5/components/VTextField/VTextField.js.map +1 -1
  13. package/es5/components/VToolbar/VToolbar.js +2 -3
  14. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  15. package/es5/directives/intersect/index.js +20 -7
  16. package/es5/directives/intersect/index.js.map +1 -1
  17. package/es5/directives/mutate/index.js +13 -13
  18. package/es5/directives/mutate/index.js.map +1 -1
  19. package/es5/directives/resize/index.js +8 -8
  20. package/es5/directives/resize/index.js.map +1 -1
  21. package/es5/directives/scroll/index.js +10 -9
  22. package/es5/directives/scroll/index.js.map +1 -1
  23. package/es5/directives/touch/index.js +4 -4
  24. package/es5/directives/touch/index.js.map +1 -1
  25. package/es5/framework.js +1 -1
  26. package/lib/components/VAppBar/VAppBar.js +7 -11
  27. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  28. package/lib/components/VGrid/VContainer.js +3 -1
  29. package/lib/components/VGrid/VContainer.js.map +1 -1
  30. package/lib/components/VItemGroup/VItem.js +20 -18
  31. package/lib/components/VItemGroup/VItem.js.map +1 -1
  32. package/lib/components/VTextField/VTextField.js +4 -1
  33. package/lib/components/VTextField/VTextField.js.map +1 -1
  34. package/lib/components/VToolbar/VToolbar.js +4 -3
  35. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  36. package/lib/directives/intersect/index.js +20 -7
  37. package/lib/directives/intersect/index.js.map +1 -1
  38. package/lib/directives/mutate/index.js +13 -13
  39. package/lib/directives/mutate/index.js.map +1 -1
  40. package/lib/directives/resize/index.js +8 -8
  41. package/lib/directives/resize/index.js.map +1 -1
  42. package/lib/directives/scroll/index.js +10 -9
  43. package/lib/directives/scroll/index.js.map +1 -1
  44. package/lib/directives/touch/index.js +4 -4
  45. package/lib/directives/touch/index.js.map +1 -1
  46. package/lib/framework.js +1 -1
  47. package/package.json +1 -1
  48. package/src/components/VAppBar/VAppBar.ts +11 -13
  49. package/src/components/VGrid/VContainer.ts +1 -1
  50. package/src/components/VItemGroup/VItem.ts +25 -23
  51. package/src/components/VTextField/VTextField.ts +3 -2
  52. package/src/components/VToolbar/VToolbar.ts +4 -5
  53. package/src/directives/intersect/index.ts +81 -42
  54. package/src/directives/mutate/index.ts +58 -49
  55. package/src/directives/resize/index.ts +33 -14
  56. package/src/directives/scroll/index.ts +36 -20
  57. package/src/directives/touch/index.ts +37 -27
@@ -1,4 +1,4 @@
1
- import { VNodeDirective, VNode } from 'vue/types/vnode'
1
+ import { DirectiveBinding, VNode, ObjectDirective } from 'vue'
2
2
  import { keys } from '../../util/helpers'
3
3
  import { TouchHandlers, TouchValue, TouchWrapper } from 'vuetify/types'
4
4
  import makeDirectiveActivatable from '../../util/make-directive-activatable'
@@ -9,10 +9,6 @@ export interface TouchStoredHandlers {
9
9
  touchmove: (e: TouchEvent) => void
10
10
  }
11
11
 
12
- interface TouchVNodeDirective extends VNodeDirective {
13
- value?: TouchValue
14
- }
15
-
16
12
  const handleGesture = (wrapper: TouchWrapper) => {
17
13
  const { touchstartX, touchendX, touchstartY, touchendY } = wrapper
18
14
  const dirRatio = 0.5
@@ -21,13 +17,19 @@ const handleGesture = (wrapper: TouchWrapper) => {
21
17
  wrapper.offsetY = touchendY - touchstartY
22
18
 
23
19
  if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {
24
- wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)
25
- wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)
20
+ wrapper.left &&
21
+ touchendX < touchstartX - minDistance &&
22
+ wrapper.left(wrapper)
23
+ wrapper.right &&
24
+ touchendX > touchstartX + minDistance &&
25
+ wrapper.right(wrapper)
26
26
  }
27
27
 
28
28
  if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {
29
- wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)
30
- wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)
29
+ wrapper.up && touchendY < touchstartY - minDistance && wrapper.up(wrapper)
30
+ wrapper.down &&
31
+ touchendY > touchstartY + minDistance &&
32
+ wrapper.down(wrapper)
31
33
  }
32
34
  }
33
35
 
@@ -36,8 +38,7 @@ function touchstart (event: TouchEvent, wrapper: TouchWrapper) {
36
38
  wrapper.touchstartX = touch.clientX
37
39
  wrapper.touchstartY = touch.clientY
38
40
 
39
- wrapper.start &&
40
- wrapper.start(Object.assign(event, wrapper))
41
+ wrapper.start && wrapper.start(Object.assign(event, wrapper))
41
42
  }
42
43
 
43
44
  function touchend (event: TouchEvent, wrapper: TouchWrapper) {
@@ -45,8 +46,7 @@ function touchend (event: TouchEvent, wrapper: TouchWrapper) {
45
46
  wrapper.touchendX = touch.clientX
46
47
  wrapper.touchendY = touch.clientY
47
48
 
48
- wrapper.end &&
49
- wrapper.end(Object.assign(event, wrapper))
49
+ wrapper.end && wrapper.end(Object.assign(event, wrapper))
50
50
 
51
51
  handleGesture(wrapper)
52
52
  }
@@ -85,39 +85,49 @@ function createHandlers (value: TouchHandlers): TouchStoredHandlers {
85
85
  }
86
86
  }
87
87
 
88
- function inserted (el: HTMLElement, binding: TouchVNodeDirective, vnode: VNode) {
89
- const value = binding.value!
88
+ function mounted (
89
+ el: HTMLElement,
90
+ binding: DirectiveBinding<TouchValue>,
91
+ vnode: VNode
92
+ ) {
93
+ const value = binding.value
90
94
  const target = value.parent ? el.parentElement : el
91
95
  const options = value.options || { passive: true }
92
96
 
93
97
  // Needed to pass unit tests
94
98
  if (!target) return
95
99
 
96
- const handlers = createHandlers(binding.value!)
100
+ const handlers = createHandlers(binding.value)
97
101
  target._touchHandlers = Object(target._touchHandlers)
98
- target._touchHandlers![vnode.ctx.uid] = handlers
102
+ target._touchHandlers![vnode.ctx!.uid] = handlers
99
103
 
100
104
  keys(handlers).forEach(eventName => {
101
- target.addEventListener(eventName, handlers[eventName] as EventListener, options)
105
+ target.addEventListener(
106
+ eventName,
107
+ handlers[eventName] as EventListener,
108
+ options
109
+ )
102
110
  })
103
111
  }
104
112
 
105
- function unbind (el: HTMLElement, binding: TouchVNodeDirective, vnode: VNode) {
106
- const target = binding.value!.parent ? el.parentElement : el
113
+ function unmounted (
114
+ el: HTMLElement,
115
+ binding: DirectiveBinding<TouchValue>,
116
+ vnode: VNode
117
+ ) {
118
+ const target = binding.value.parent ? el.parentElement : el
107
119
  if (!target || !target._touchHandlers) return
108
120
 
109
- const handlers = target._touchHandlers[vnode.ctx.uid]
121
+ const handlers = target._touchHandlers[vnode.ctx!.uid]
110
122
  keys(handlers).forEach(eventName => {
111
123
  target.removeEventListener(eventName, handlers[eventName])
112
124
  })
113
- delete target._touchHandlers[vnode.ctx.uid]
125
+ delete target._touchHandlers[vnode.ctx!.uid]
114
126
  }
115
127
 
116
- export const Touch = {
117
- mounted: inserted,
118
- unmounted: unbind,
128
+ export const Touch: ObjectDirective<HTMLElement, TouchValue> = {
129
+ mounted,
130
+ unmounted,
119
131
  }
120
132
 
121
-
122
-
123
133
  export default makeDirectiveActivatable(Touch)