@dimailn/vuetify 2.7.2-alpha0 → 2.7.2-alpha10

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 (224) hide show
  1. package/dist/vuetify.css +45 -45
  2. package/dist/vuetify.css.map +1 -1
  3. package/dist/vuetify.js +127 -90
  4. package/dist/vuetify.js.map +1 -1
  5. package/dist/vuetify.min.css +2 -2
  6. package/dist/vuetify.min.js +2 -2
  7. package/es5/components/VAutocomplete/VAutocomplete.js +1 -1
  8. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  9. package/es5/components/VBadge/VBadge.js +3 -1
  10. package/es5/components/VBadge/VBadge.js.map +1 -1
  11. package/es5/components/VData/VData.js +14 -2
  12. package/es5/components/VData/VData.js.map +1 -1
  13. package/es5/components/VDataIterator/VDataIterator.js +1 -1
  14. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  15. package/es5/components/VDataTable/VDataTable.js +1 -1
  16. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  17. package/es5/components/VDataTable/VVirtualTable.js +1 -1
  18. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  19. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  20. package/es5/components/VDialog/VDialog.js +1 -1
  21. package/es5/components/VDialog/VDialog.js.map +1 -1
  22. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +1 -1
  23. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  24. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +1 -1
  25. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  26. package/es5/components/VForm/VForm.js +1 -1
  27. package/es5/components/VForm/VForm.js.map +1 -1
  28. package/es5/components/VGrid/VCol.js +3 -3
  29. package/es5/components/VGrid/VCol.js.map +1 -1
  30. package/es5/components/VImg/VImg.js +1 -1
  31. package/es5/components/VImg/VImg.js.map +1 -1
  32. package/es5/components/VInput/VInput.js +1 -1
  33. package/es5/components/VInput/VInput.js.map +1 -1
  34. package/es5/components/VItemGroup/VItemGroup.js +1 -1
  35. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  36. package/es5/components/VList/VListGroup.js +1 -1
  37. package/es5/components/VList/VListGroup.js.map +1 -1
  38. package/es5/components/VMenu/VMenu.js +1 -1
  39. package/es5/components/VMenu/VMenu.js.map +1 -1
  40. package/es5/components/VOverlay/VOverlay.js +1 -1
  41. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  42. package/es5/components/VRadioGroup/VRadioGroup.js +2 -2
  43. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  44. package/es5/components/VSelect/VSelect.js +5 -6
  45. package/es5/components/VSelect/VSelect.js.map +1 -1
  46. package/es5/components/VSheet/VSheet.js +4 -4
  47. package/es5/components/VSheet/VSheet.js.map +1 -1
  48. package/es5/components/VStepper/VStepperContent.js +1 -1
  49. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  50. package/es5/components/VStepper/VStepperStep.js +1 -1
  51. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  52. package/es5/components/VSubheader/VSubheader.js +3 -3
  53. package/es5/components/VSubheader/VSubheader.js.map +1 -1
  54. package/es5/components/VTabs/VTab.js.map +1 -1
  55. package/es5/components/VTabs/VTabs.js +0 -1
  56. package/es5/components/VTabs/VTabs.js.map +1 -1
  57. package/es5/components/VTextField/VTextField.js +1 -1
  58. package/es5/components/VTextField/VTextField.js.map +1 -1
  59. package/es5/components/VTreeview/VTreeviewNode.js +1 -1
  60. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  61. package/es5/components/transitions/createTransition.js +9 -4
  62. package/es5/components/transitions/createTransition.js.map +1 -1
  63. package/es5/components/transitions/expand-transition.js +7 -7
  64. package/es5/components/transitions/expand-transition.js.map +1 -1
  65. package/es5/framework.js +1 -1
  66. package/es5/mixins/activatable/index.js +15 -8
  67. package/es5/mixins/activatable/index.js.map +1 -1
  68. package/es5/mixins/applicationable/index.js +1 -1
  69. package/es5/mixins/applicationable/index.js.map +1 -1
  70. package/es5/mixins/binds-attrs/index.js +1 -1
  71. package/es5/mixins/binds-attrs/index.js.map +1 -1
  72. package/es5/mixins/detachable/index.js +3 -3
  73. package/es5/mixins/detachable/index.js.map +1 -1
  74. package/es5/mixins/groupable/index.js +1 -1
  75. package/es5/mixins/groupable/index.js.map +1 -1
  76. package/es5/mixins/intersectable/index.js +2 -2
  77. package/es5/mixins/intersectable/index.js.map +1 -1
  78. package/es5/mixins/menuable/index.js +4 -1
  79. package/es5/mixins/menuable/index.js.map +1 -1
  80. package/es5/mixins/mouse/index.js +0 -1
  81. package/es5/mixins/mouse/index.js.map +1 -1
  82. package/es5/mixins/overlayable/index.js +5 -4
  83. package/es5/mixins/overlayable/index.js.map +1 -1
  84. package/es5/mixins/proxyable/index.js +0 -4
  85. package/es5/mixins/proxyable/index.js.map +1 -1
  86. package/es5/mixins/translatable/index.js +1 -1
  87. package/es5/mixins/translatable/index.js.map +1 -1
  88. package/es5/mixins/validatable/index.js +2 -2
  89. package/es5/mixins/validatable/index.js.map +1 -1
  90. package/es5/services/breakpoint/index.js +3 -1
  91. package/es5/services/breakpoint/index.js.map +1 -1
  92. package/lib/components/VAutocomplete/VAutocomplete.js +1 -1
  93. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  94. package/lib/components/VBadge/VBadge.js +5 -5
  95. package/lib/components/VBadge/VBadge.js.map +1 -1
  96. package/lib/components/VData/VData.js +15 -2
  97. package/lib/components/VData/VData.js.map +1 -1
  98. package/lib/components/VDataIterator/VDataIterator.js +1 -1
  99. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  100. package/lib/components/VDataTable/VDataTable.js +1 -1
  101. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  102. package/lib/components/VDataTable/VVirtualTable.js +1 -1
  103. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  104. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  105. package/lib/components/VDialog/VDialog.js +1 -1
  106. package/lib/components/VDialog/VDialog.js.map +1 -1
  107. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +1 -1
  108. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  109. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +1 -1
  110. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  111. package/lib/components/VForm/VForm.js +1 -1
  112. package/lib/components/VForm/VForm.js.map +1 -1
  113. package/lib/components/VGrid/VCol.js +3 -3
  114. package/lib/components/VGrid/VCol.js.map +1 -1
  115. package/lib/components/VImg/VImg.js +1 -1
  116. package/lib/components/VImg/VImg.js.map +1 -1
  117. package/lib/components/VInput/VInput.js +1 -1
  118. package/lib/components/VInput/VInput.js.map +1 -1
  119. package/lib/components/VItemGroup/VItemGroup.js +1 -1
  120. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  121. package/lib/components/VList/VListGroup.js +1 -1
  122. package/lib/components/VList/VListGroup.js.map +1 -1
  123. package/lib/components/VMenu/VMenu.js +1 -1
  124. package/lib/components/VMenu/VMenu.js.map +1 -1
  125. package/lib/components/VOverlay/VOverlay.js +1 -1
  126. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  127. package/lib/components/VRadioGroup/VRadioGroup.js +2 -2
  128. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  129. package/lib/components/VSelect/VSelect.js +5 -5
  130. package/lib/components/VSelect/VSelect.js.map +1 -1
  131. package/lib/components/VSheet/VSheet.js +1 -1
  132. package/lib/components/VSheet/VSheet.js.map +1 -1
  133. package/lib/components/VStepper/VStepperContent.js +1 -1
  134. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  135. package/lib/components/VStepper/VStepperStep.js +1 -1
  136. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  137. package/lib/components/VSubheader/VSubheader.js +2 -3
  138. package/lib/components/VSubheader/VSubheader.js.map +1 -1
  139. package/lib/components/VTabs/VTab.js.map +1 -1
  140. package/lib/components/VTabs/VTabs.js +0 -1
  141. package/lib/components/VTabs/VTabs.js.map +1 -1
  142. package/lib/components/VTextField/VTextField.js +1 -1
  143. package/lib/components/VTextField/VTextField.js.map +1 -1
  144. package/lib/components/VTreeview/VTreeviewNode.js +1 -1
  145. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  146. package/lib/components/transitions/createTransition.js +1 -1
  147. package/lib/components/transitions/createTransition.js.map +1 -1
  148. package/lib/components/transitions/expand-transition.js +7 -7
  149. package/lib/components/transitions/expand-transition.js.map +1 -1
  150. package/lib/framework.js +1 -1
  151. package/lib/mixins/activatable/index.js +17 -7
  152. package/lib/mixins/activatable/index.js.map +1 -1
  153. package/lib/mixins/applicationable/index.js +1 -1
  154. package/lib/mixins/applicationable/index.js.map +1 -1
  155. package/lib/mixins/binds-attrs/index.js +1 -1
  156. package/lib/mixins/binds-attrs/index.js.map +1 -1
  157. package/lib/mixins/detachable/index.js +3 -3
  158. package/lib/mixins/detachable/index.js.map +1 -1
  159. package/lib/mixins/groupable/index.js +1 -1
  160. package/lib/mixins/groupable/index.js.map +1 -1
  161. package/lib/mixins/intersectable/index.js +2 -2
  162. package/lib/mixins/intersectable/index.js.map +1 -1
  163. package/lib/mixins/menuable/index.js +5 -1
  164. package/lib/mixins/menuable/index.js.map +1 -1
  165. package/lib/mixins/mouse/index.js +0 -1
  166. package/lib/mixins/mouse/index.js.map +1 -1
  167. package/lib/mixins/overlayable/index.js +5 -4
  168. package/lib/mixins/overlayable/index.js.map +1 -1
  169. package/lib/mixins/proxyable/index.js +0 -4
  170. package/lib/mixins/proxyable/index.js.map +1 -1
  171. package/lib/mixins/translatable/index.js +1 -1
  172. package/lib/mixins/translatable/index.js.map +1 -1
  173. package/lib/mixins/validatable/index.js +2 -2
  174. package/lib/mixins/validatable/index.js.map +1 -1
  175. package/lib/services/breakpoint/index.js +3 -1
  176. package/lib/services/breakpoint/index.js.map +1 -1
  177. package/package.json +1 -1
  178. package/src/components/VAutocomplete/VAutocomplete.ts +1 -1
  179. package/src/components/VBadge/VBadge.ts +5 -5
  180. package/src/components/VBottomSheet/VBottomSheet.sass +1 -1
  181. package/src/components/VData/VData.ts +12 -1
  182. package/src/components/VDataIterator/VDataIterator.ts +1 -1
  183. package/src/components/VDataTable/VDataTable.ts +1 -1
  184. package/src/components/VDataTable/VVirtualTable.ts +1 -1
  185. package/src/components/VDataTable/mixins/header.ts +2 -2
  186. package/src/components/VDialog/VDialog.ts +1 -1
  187. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +1 -1
  188. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +1 -1
  189. package/src/components/VForm/VForm.ts +1 -1
  190. package/src/components/VGrid/VCol.ts +2 -2
  191. package/src/components/VImg/VImg.ts +1 -1
  192. package/src/components/VInput/VInput.ts +1 -1
  193. package/src/components/VItemGroup/VItemGroup.ts +3 -3
  194. package/src/components/VList/VListGroup.ts +1 -1
  195. package/src/components/VMenu/VMenu.sass +2 -2
  196. package/src/components/VMenu/VMenu.ts +1 -0
  197. package/src/components/VOverlay/VOverlay.ts +1 -1
  198. package/src/components/VRadioGroup/VRadioGroup.ts +2 -2
  199. package/src/components/VSelect/VSelect.ts +2 -6
  200. package/src/components/VSheet/VSheet.ts +1 -1
  201. package/src/components/VSnackbar/VSnackbar.sass +2 -2
  202. package/src/components/VStepper/VStepperContent.ts +1 -1
  203. package/src/components/VStepper/VStepperStep.ts +1 -1
  204. package/src/components/VSubheader/VSubheader.ts +2 -2
  205. package/src/components/VTabs/VTab.ts +1 -1
  206. package/src/components/VTabs/VTabs.ts +0 -1
  207. package/src/components/VTextField/VTextField.ts +1 -1
  208. package/src/components/VTreeview/VTreeviewNode.ts +1 -1
  209. package/src/components/transitions/createTransition.ts +1 -2
  210. package/src/components/transitions/expand-transition.ts +7 -7
  211. package/src/mixins/activatable/index.ts +16 -8
  212. package/src/mixins/applicationable/index.ts +1 -1
  213. package/src/mixins/binds-attrs/index.ts +1 -1
  214. package/src/mixins/detachable/index.ts +5 -5
  215. package/src/mixins/groupable/index.ts +1 -1
  216. package/src/mixins/intersectable/index.ts +2 -2
  217. package/src/mixins/menuable/index.ts +4 -1
  218. package/src/mixins/mouse/index.ts +0 -1
  219. package/src/mixins/overlayable/index.ts +4 -5
  220. package/src/mixins/proxyable/index.ts +0 -5
  221. package/src/mixins/translatable/index.ts +1 -1
  222. package/src/mixins/validatable/index.ts +2 -2
  223. package/src/services/breakpoint/index.ts +5 -0
  224. package/src/styles/generic/_transitions.scss +38 -38
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTextField/VTextField.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VTextField.sass'\n\n// Extensions\nimport VInput from '../VInput'\n\n// Components\nimport VCounter from '../VCounter'\nimport VLabel from '../VLabel'\n\n// Mixins\nimport Intersectable from '../../mixins/intersectable'\nimport Loadable from '../../mixins/loadable'\nimport Validatable from '../../mixins/validatable'\n\n// Directives\nimport resize from '../../directives/resize'\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { attachedRoot } from '../../util/dom'\nimport { convertToUnit, getSlot, keyCodes } from '../../util/helpers'\nimport { breaking, consoleWarn } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, PropType } from 'vue/types'\nimport { withDirectives, h } from 'vue'\n\nconst baseMixins = mixins(\n VInput,\n Intersectable({\n onVisible: [\n 'onResize',\n 'tryAutofocus',\n ],\n }),\n Loadable,\n)\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\nconst dirtyTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month']\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-text-field',\n\n directives: {\n resize,\n ripple,\n },\n\n props: {\n appendOuterIcon: String,\n autofocus: Boolean,\n clearable: Boolean,\n clearIcon: {\n type: String,\n default: '$clear',\n },\n counter: [Boolean, Number, String],\n counterValue: Function as PropType<(value: any) => number>,\n filled: Boolean,\n flat: Boolean,\n fullWidth: Boolean,\n label: String,\n outlined: Boolean,\n placeholder: String,\n prefix: String,\n prependInnerIcon: String,\n persistentPlaceholder: Boolean,\n reverse: Boolean,\n rounded: Boolean,\n shaped: Boolean,\n singleLine: Boolean,\n solo: Boolean,\n soloInverted: Boolean,\n suffix: String,\n type: {\n type: String,\n default: 'text',\n },\n },\n\n data: () => ({\n badInput: false,\n labelWidth: 0,\n prefixWidth: 0,\n prependWidth: 0,\n initialValue: null,\n isBooted: false,\n isClearing: false,\n }),\n\n computed: {\n classes (): object {\n return {\n ...VInput.computed.classes.call(this),\n 'v-text-field': true,\n 'v-text-field--full-width': this.fullWidth,\n 'v-text-field--prefix': this.prefix,\n 'v-text-field--single-line': this.isSingle,\n 'v-text-field--solo': this.isSolo,\n 'v-text-field--solo-inverted': this.soloInverted,\n 'v-text-field--solo-flat': this.flat,\n 'v-text-field--filled': this.filled,\n 'v-text-field--is-booted': this.isBooted,\n 'v-text-field--enclosed': this.isEnclosed,\n 'v-text-field--reverse': this.reverse,\n 'v-text-field--outlined': this.outlined,\n 'v-text-field--placeholder': this.placeholder,\n 'v-text-field--rounded': this.rounded,\n 'v-text-field--shaped': this.shaped,\n }\n },\n computedColor (): string | undefined {\n const computedColor = Validatable.computed.computedColor.call(this)\n\n if (!this.soloInverted || !this.isFocused) return computedColor\n\n return this.color || 'primary'\n },\n computedCounterValue (): number {\n if (typeof this.counterValue === 'function') {\n return this.counterValue(this.internalValue)\n }\n return [...(this.internalValue || '').toString()].length\n },\n hasCounter (): boolean {\n return this.counter !== false && this.counter != null\n },\n hasDetails (): boolean {\n return VInput.computed.hasDetails.call(this) || this.hasCounter\n },\n internalValue: {\n get (): any {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n this.$emit('update:modelValue', this.lazyValue)\n },\n },\n isDirty (): boolean {\n return this.lazyValue?.toString().length > 0 || this.badInput\n },\n isEnclosed (): boolean {\n return (\n this.filled ||\n this.isSolo ||\n this.outlined\n )\n },\n isLabelActive (): boolean {\n return this.isDirty || dirtyTypes.includes(this.type)\n },\n isSingle (): boolean {\n return (\n this.isSolo ||\n this.singleLine ||\n this.fullWidth ||\n // https://material.io/components/text-fields/#filled-text-field\n (this.filled && !this.hasLabel)\n )\n },\n isSolo (): boolean {\n return this.solo || this.soloInverted\n },\n labelPosition (): Record<'left' | 'right', string | number | undefined> {\n let offset = (this.prefix && !this.labelValue) ? this.prefixWidth : 0\n\n if (this.labelValue && this.prependWidth) offset -= this.prependWidth\n\n return (this.$vuetify.rtl === this.reverse) ? {\n left: offset,\n right: 'auto',\n } : {\n left: 'auto',\n right: offset,\n }\n },\n showLabel (): boolean {\n return this.hasLabel && !(this.isSingle && this.labelValue)\n },\n labelValue (): boolean {\n return this.isFocused || this.isLabelActive || this.persistentPlaceholder\n },\n },\n\n watch: {\n // labelValue: 'setLabelWidth', // moved to mounted, see #11533\n outlined: 'setLabelWidth',\n label () {\n this.$nextTick(this.setLabelWidth)\n },\n prefix () {\n this.$nextTick(this.setPrefixWidth)\n },\n isFocused: 'updateValue',\n value (val) {\n this.lazyValue = val\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('box')) {\n breaking('box', 'filled', this)\n }\n\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('browser-autocomplete')) {\n breaking('browser-autocomplete', 'autocomplete', this)\n }\n\n /* istanbul ignore if */\n if (this.shaped && !(this.filled || this.outlined || this.isSolo)) {\n consoleWarn('shaped should be used with either filled or outlined', this)\n }\n },\n\n mounted () {\n // #11533\n this.$watch(() => this.labelValue, this.setLabelWidth)\n this.autofocus && this.tryAutofocus()\n requestAnimationFrame(() => {\n this.isBooted = true\n requestAnimationFrame(() => {\n if (!this.isIntersecting) {\n this.onResize()\n }\n })\n })\n },\n\n methods: {\n /** @public */\n focus () {\n this.onFocus()\n },\n /** @public */\n blur (e?: Event) {\n // https://github.com/vuetifyjs/vuetify/issues/5913\n // Safari tab order gets broken if called synchronous\n window.requestAnimationFrame(() => {\n this.$refs.input && this.$refs.input.blur()\n })\n },\n clearableCallback () {\n this.$refs.input && this.$refs.input.focus()\n this.$nextTick(() => this.internalValue = null)\n },\n genAppendSlot () {\n const slot = []\n\n if (this.$slots['append-outer']) {\n slot.push(this.$slots['append-outer'] as VNode[])\n } else if (this.appendOuterIcon) {\n slot.push(this.genIcon('appendOuter'))\n }\n\n return this.genSlot('append', 'outer', slot)\n },\n genPrependInnerSlot () {\n const slot = []\n\n if (this.$slots['prepend-inner']) {\n slot.push(this.$slots['prepend-inner']() as VNode[])\n } else if (this.prependInnerIcon) {\n slot.push(this.genIcon('prependInner'))\n }\n\n return this.genSlot('prepend', 'inner', slot)\n },\n genIconSlot () {\n const slot = []\n\n if (this.$slots.append) {\n slot.push(this.$slots.append as VNode[])\n } else if (this.appendIcon) {\n slot.push(this.genIcon('append'))\n }\n\n return this.genSlot('append', 'inner', slot)\n },\n genInputSlot () {\n const input = VInput.methods.genInputSlot.call(this)\n\n const prepend = this.genPrependInnerSlot()\n\n if (prepend) {\n input.children = input.children || []\n input.children.unshift(prepend)\n }\n\n return input\n },\n genClearIcon () {\n if (!this.clearable) return null\n\n // if the text field has no content then don't display the clear icon.\n // We add an empty div because other controls depend on a ref to append inner\n if (!this.isDirty) {\n return this.genSlot('append', 'inner', [\n h('div'),\n ])\n }\n\n return this.genSlot('append', 'inner', [\n this.genIcon('clear', this.clearableCallback),\n ])\n },\n genCounter () {\n if (!this.hasCounter) return null\n\n const max = this.counter === true ? this.attrs$.maxlength : this.counter\n\n const props = {\n dark: this.dark,\n light: this.light,\n max,\n value: this.computedCounterValue,\n }\n\n return this.$slots.counter?.({ props }) ?? h(VCounter, props)\n },\n genControl () {\n return VInput.methods.genControl.call(this)\n },\n genDefaultSlot () {\n return [\n this.genFieldset(),\n this.genTextFieldSlot(),\n this.genClearIcon(),\n this.genIconSlot(),\n this.genProgress(),\n ]\n },\n genFieldset () {\n if (!this.outlined) return null\n\n return h('fieldset', {\n 'aria-hidden': true\n }, [this.genLegend()])\n },\n genLabel () {\n if (!this.showLabel) return null\n\n const data = {\n absolute: true,\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n focused: !this.isSingle && (this.isFocused || !!this.validationState),\n for: this.computedId,\n left: this.labelPosition.left,\n light: this.light,\n right: this.labelPosition.right,\n value: this.labelValue\n }\n\n return h(VLabel, data, getSlot(this, 'label') || this.label)\n },\n genLegend () {\n const width = !this.singleLine && (this.labelValue || this.isDirty) ? this.labelWidth : 0\n const span = h('span', {\n innerHTML: '&#8203;',\n class: 'notranslate',\n })\n\n return h('legend', {\n style: {\n width: !this.isSingle ? convertToUnit(width) : undefined,\n },\n }, [span])\n },\n genInput () {\n const listeners = Object.assign({}, this.listeners$)\n delete listeners.change // Change should not be bound externally\n const { title, ...inputAttrs } = this.attrs$\n\n const node = h('input', {\n style: {},\n value: (this.type === 'number' && Object.is(this.lazyValue, -0)) ? '-0' : this.lazyValue,\n ...inputAttrs,\n autofocus: this.autofocus,\n disabled: this.isDisabled,\n id: this.computedId,\n placeholder: this.persistentPlaceholder || this.isFocused || !this.hasLabel ? this.placeholder : undefined,\n readonly: this.isReadonly,\n type: this.type,\n onBlur: this.onBlur,\n onInput: this.onInput,\n onFocus: this.onFocus,\n onKeydown: this.onKeyDown,\n ...listeners,\n ref: 'input'\n })\n\n return withDirectives(node, [\n [\n resize,\n this.onResize,\n '',\n { quiet: true }\n ]\n ])\n },\n genMessages () {\n if (!this.showDetails) return null\n\n const messagesNode = VInput.methods.genMessages.call(this)\n const counterNode = this.genCounter()\n\n return h('div', {\n class: 'v-text-field__details',\n }, [\n messagesNode,\n counterNode,\n ])\n },\n genTextFieldSlot () {\n return h('div', {\n class: 'v-text-field__slot',\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n this.genInput(),\n this.suffix ? this.genAffix('suffix') : null,\n ])\n },\n genAffix (type: 'prefix' | 'suffix') {\n return h('div', {\n class: `v-text-field__${type}`,\n ref: type,\n }, this[type])\n },\n onBlur (e?: Event) {\n this.isFocused = false\n e && this.$nextTick(() => this.$emit('blur', e))\n },\n onClick () {\n if (this.isFocused || this.isDisabled || !this.$refs.input) return\n\n this.$refs.input.focus()\n },\n onFocus (e?: Event) {\n if (!this.$refs.input) return\n\n const root = attachedRoot(this.$el)\n if (!root) return\n\n if (root.activeElement !== this.$refs.input) {\n return this.$refs.input.focus()\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n e && this.$emit('focus', e)\n }\n },\n onInput (e: Event) {\n const target = e.target as HTMLInputElement\n this.internalValue = target.value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n if (\n e.keyCode === keyCodes.enter &&\n this.lazyValue !== this.initialValue\n ) {\n this.initialValue = this.lazyValue\n this.$emit('update:modelValue', this.initialValue)\n }\n\n this.$emit('keydown', e)\n },\n onMouseDown (e: Event) {\n // Prevent input from being blurred\n if (e.target !== this.$refs.input) {\n e.preventDefault()\n e.stopPropagation()\n }\n\n VInput.methods.onMouseDown.call(this, e)\n },\n onMouseUp (e: Event) {\n if (this.hasMouseDown) this.focus()\n\n VInput.methods.onMouseUp.call(this, e)\n },\n setLabelWidth () {\n if (!this.outlined) return\n\n this.labelWidth = this.$refs.label\n ? Math.min(this.$refs.label.scrollWidth * 0.75 + 6, (this.$el as HTMLElement).offsetWidth - 24)\n : 0\n },\n setPrefixWidth () {\n if (!this.$refs.prefix) return\n\n this.prefixWidth = this.$refs.prefix.offsetWidth\n },\n setPrependWidth () {\n if (!this.outlined || !this.$refs['prepend-inner']) return\n\n this.prependWidth = this.$refs['prepend-inner'].offsetWidth\n },\n tryAutofocus () {\n if (\n !this.autofocus ||\n typeof document === 'undefined' ||\n !this.$refs.input) return false\n\n const root = attachedRoot(this.$el)\n if (!root || root.activeElement === this.$refs.input) return false\n\n this.$refs.input.focus()\n\n return true\n },\n updateValue (val: boolean) {\n // Sets validationState from validatable\n this.hasColor = val\n\n if (val) {\n this.initialValue = this.lazyValue\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('update:modelValue', this.lazyValue)\n }\n },\n onResize () {\n this.setLabelWidth()\n this.setPrefixWidth()\n this.setPrependWidth()\n },\n },\n})\n"],"sourceRoot":"","file":"VTextField.js"}
1
+ {"version":3,"sources":["../../../src/components/VTextField/VTextField.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VTextField.sass'\n\n// Extensions\nimport VInput from '../VInput'\n\n// Components\nimport VCounter from '../VCounter'\nimport VLabel from '../VLabel'\n\n// Mixins\nimport Intersectable from '../../mixins/intersectable'\nimport Loadable from '../../mixins/loadable'\nimport Validatable from '../../mixins/validatable'\n\n// Directives\nimport resize from '../../directives/resize'\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { attachedRoot } from '../../util/dom'\nimport { convertToUnit, getSlot, keyCodes } from '../../util/helpers'\nimport { breaking, consoleWarn } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, PropType } from 'vue/types'\nimport { withDirectives, h } from 'vue'\n\nconst baseMixins = mixins(\n VInput,\n Intersectable({\n onVisible: [\n 'onResize',\n 'tryAutofocus',\n ],\n }),\n Loadable,\n)\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\nconst dirtyTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month']\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-text-field',\n\n directives: {\n resize,\n ripple,\n },\n\n props: {\n appendOuterIcon: String,\n autofocus: Boolean,\n clearable: Boolean,\n clearIcon: {\n type: String,\n default: '$clear',\n },\n counter: [Boolean, Number, String],\n counterValue: Function as PropType<(value: any) => number>,\n filled: Boolean,\n flat: Boolean,\n fullWidth: Boolean,\n label: String,\n outlined: Boolean,\n placeholder: String,\n prefix: String,\n prependInnerIcon: String,\n persistentPlaceholder: Boolean,\n reverse: Boolean,\n rounded: Boolean,\n shaped: Boolean,\n singleLine: Boolean,\n solo: Boolean,\n soloInverted: Boolean,\n suffix: String,\n type: {\n type: String,\n default: 'text',\n },\n },\n\n data: () => ({\n badInput: false,\n labelWidth: 0,\n prefixWidth: 0,\n prependWidth: 0,\n initialValue: null,\n isBooted: false,\n isClearing: false,\n }),\n\n computed: {\n classes (): object {\n return {\n ...VInput.computed.classes.call(this),\n 'v-text-field': true,\n 'v-text-field--full-width': this.fullWidth,\n 'v-text-field--prefix': this.prefix,\n 'v-text-field--single-line': this.isSingle,\n 'v-text-field--solo': this.isSolo,\n 'v-text-field--solo-inverted': this.soloInverted,\n 'v-text-field--solo-flat': this.flat,\n 'v-text-field--filled': this.filled,\n 'v-text-field--is-booted': this.isBooted,\n 'v-text-field--enclosed': this.isEnclosed,\n 'v-text-field--reverse': this.reverse,\n 'v-text-field--outlined': this.outlined,\n 'v-text-field--placeholder': this.placeholder,\n 'v-text-field--rounded': this.rounded,\n 'v-text-field--shaped': this.shaped,\n }\n },\n computedColor (): string | undefined {\n const computedColor = Validatable.computed.computedColor.call(this)\n\n if (!this.soloInverted || !this.isFocused) return computedColor\n\n return this.color || 'primary'\n },\n computedCounterValue (): number {\n if (typeof this.counterValue === 'function') {\n return this.counterValue(this.internalValue)\n }\n return [...(this.internalValue || '').toString()].length\n },\n hasCounter (): boolean {\n return this.counter !== false && this.counter != null\n },\n hasDetails (): boolean {\n return VInput.computed.hasDetails.call(this) || this.hasCounter\n },\n internalValue: {\n get (): any {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n this.$emit('update:modelValue', this.lazyValue)\n },\n },\n isDirty (): boolean {\n return this.lazyValue?.toString().length > 0 || this.badInput\n },\n isEnclosed (): boolean {\n return (\n this.filled ||\n this.isSolo ||\n this.outlined\n )\n },\n isLabelActive (): boolean {\n return this.isDirty || dirtyTypes.includes(this.type)\n },\n isSingle (): boolean {\n return (\n this.isSolo ||\n this.singleLine ||\n this.fullWidth ||\n // https://material.io/components/text-fields/#filled-text-field\n (this.filled && !this.hasLabel)\n )\n },\n isSolo (): boolean {\n return this.solo || this.soloInverted\n },\n labelPosition (): Record<'left' | 'right', string | number | undefined> {\n let offset = (this.prefix && !this.labelValue) ? this.prefixWidth : 0\n\n if (this.labelValue && this.prependWidth) offset -= this.prependWidth\n\n return (this.$vuetify.rtl === this.reverse) ? {\n left: offset,\n right: 'auto',\n } : {\n left: 'auto',\n right: offset,\n }\n },\n showLabel (): boolean {\n return this.hasLabel && !(this.isSingle && this.labelValue)\n },\n labelValue (): boolean {\n return this.isFocused || this.isLabelActive || this.persistentPlaceholder\n },\n },\n\n watch: {\n // labelValue: 'setLabelWidth', // moved to mounted, see #11533\n outlined: 'setLabelWidth',\n label () {\n this.$nextTick(this.setLabelWidth)\n },\n prefix () {\n this.$nextTick(this.setPrefixWidth)\n },\n isFocused: 'updateValue',\n modelValue (val) {\n this.lazyValue = val\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('box')) {\n breaking('box', 'filled', this)\n }\n\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('browser-autocomplete')) {\n breaking('browser-autocomplete', 'autocomplete', this)\n }\n\n /* istanbul ignore if */\n if (this.shaped && !(this.filled || this.outlined || this.isSolo)) {\n consoleWarn('shaped should be used with either filled or outlined', this)\n }\n },\n\n mounted () {\n // #11533\n this.$watch(() => this.labelValue, this.setLabelWidth)\n this.autofocus && this.tryAutofocus()\n requestAnimationFrame(() => {\n this.isBooted = true\n requestAnimationFrame(() => {\n if (!this.isIntersecting) {\n this.onResize()\n }\n })\n })\n },\n\n methods: {\n /** @public */\n focus () {\n this.onFocus()\n },\n /** @public */\n blur (e?: Event) {\n // https://github.com/vuetifyjs/vuetify/issues/5913\n // Safari tab order gets broken if called synchronous\n window.requestAnimationFrame(() => {\n this.$refs.input && this.$refs.input.blur()\n })\n },\n clearableCallback () {\n this.$refs.input && this.$refs.input.focus()\n this.$nextTick(() => this.internalValue = null)\n },\n genAppendSlot () {\n const slot = []\n\n if (this.$slots['append-outer']) {\n slot.push(this.$slots['append-outer'] as VNode[])\n } else if (this.appendOuterIcon) {\n slot.push(this.genIcon('appendOuter'))\n }\n\n return this.genSlot('append', 'outer', slot)\n },\n genPrependInnerSlot () {\n const slot = []\n\n if (this.$slots['prepend-inner']) {\n slot.push(this.$slots['prepend-inner']() as VNode[])\n } else if (this.prependInnerIcon) {\n slot.push(this.genIcon('prependInner'))\n }\n\n return this.genSlot('prepend', 'inner', slot)\n },\n genIconSlot () {\n const slot = []\n\n if (this.$slots.append) {\n slot.push(this.$slots.append as VNode[])\n } else if (this.appendIcon) {\n slot.push(this.genIcon('append'))\n }\n\n return this.genSlot('append', 'inner', slot)\n },\n genInputSlot () {\n const input = VInput.methods.genInputSlot.call(this)\n\n const prepend = this.genPrependInnerSlot()\n\n if (prepend) {\n input.children = input.children || []\n input.children.unshift(prepend)\n }\n\n return input\n },\n genClearIcon () {\n if (!this.clearable) return null\n\n // if the text field has no content then don't display the clear icon.\n // We add an empty div because other controls depend on a ref to append inner\n if (!this.isDirty) {\n return this.genSlot('append', 'inner', [\n h('div'),\n ])\n }\n\n return this.genSlot('append', 'inner', [\n this.genIcon('clear', this.clearableCallback),\n ])\n },\n genCounter () {\n if (!this.hasCounter) return null\n\n const max = this.counter === true ? this.attrs$.maxlength : this.counter\n\n const props = {\n dark: this.dark,\n light: this.light,\n max,\n value: this.computedCounterValue,\n }\n\n return this.$slots.counter?.({ props }) ?? h(VCounter, props)\n },\n genControl () {\n return VInput.methods.genControl.call(this)\n },\n genDefaultSlot () {\n return [\n this.genFieldset(),\n this.genTextFieldSlot(),\n this.genClearIcon(),\n this.genIconSlot(),\n this.genProgress(),\n ]\n },\n genFieldset () {\n if (!this.outlined) return null\n\n return h('fieldset', {\n 'aria-hidden': true\n }, [this.genLegend()])\n },\n genLabel () {\n if (!this.showLabel) return null\n\n const data = {\n absolute: true,\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n focused: !this.isSingle && (this.isFocused || !!this.validationState),\n for: this.computedId,\n left: this.labelPosition.left,\n light: this.light,\n right: this.labelPosition.right,\n value: this.labelValue\n }\n\n return h(VLabel, data, getSlot(this, 'label') || this.label)\n },\n genLegend () {\n const width = !this.singleLine && (this.labelValue || this.isDirty) ? this.labelWidth : 0\n const span = h('span', {\n innerHTML: '&#8203;',\n class: 'notranslate',\n })\n\n return h('legend', {\n style: {\n width: !this.isSingle ? convertToUnit(width) : undefined,\n },\n }, [span])\n },\n genInput () {\n const listeners = Object.assign({}, this.listeners$)\n delete listeners.change // Change should not be bound externally\n const { title, ...inputAttrs } = this.attrs$\n\n const node = h('input', {\n style: {},\n value: (this.type === 'number' && Object.is(this.lazyValue, -0)) ? '-0' : this.lazyValue,\n ...inputAttrs,\n autofocus: this.autofocus,\n disabled: this.isDisabled,\n id: this.computedId,\n placeholder: this.persistentPlaceholder || this.isFocused || !this.hasLabel ? this.placeholder : undefined,\n readonly: this.isReadonly,\n type: this.type,\n onBlur: this.onBlur,\n onInput: this.onInput,\n onFocus: this.onFocus,\n onKeydown: this.onKeyDown,\n ...listeners,\n ref: 'input'\n })\n\n return withDirectives(node, [\n [\n resize,\n this.onResize,\n '',\n { quiet: true }\n ]\n ])\n },\n genMessages () {\n if (!this.showDetails) return null\n\n const messagesNode = VInput.methods.genMessages.call(this)\n const counterNode = this.genCounter()\n\n return h('div', {\n class: 'v-text-field__details',\n }, [\n messagesNode,\n counterNode,\n ])\n },\n genTextFieldSlot () {\n return h('div', {\n class: 'v-text-field__slot',\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n this.genInput(),\n this.suffix ? this.genAffix('suffix') : null,\n ])\n },\n genAffix (type: 'prefix' | 'suffix') {\n return h('div', {\n class: `v-text-field__${type}`,\n ref: type,\n }, this[type])\n },\n onBlur (e?: Event) {\n this.isFocused = false\n e && this.$nextTick(() => this.$emit('blur', e))\n },\n onClick () {\n if (this.isFocused || this.isDisabled || !this.$refs.input) return\n\n this.$refs.input.focus()\n },\n onFocus (e?: Event) {\n if (!this.$refs.input) return\n\n const root = attachedRoot(this.$el)\n if (!root) return\n\n if (root.activeElement !== this.$refs.input) {\n return this.$refs.input.focus()\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n e && this.$emit('focus', e)\n }\n },\n onInput (e: Event) {\n const target = e.target as HTMLInputElement\n this.internalValue = target.value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n if (\n e.keyCode === keyCodes.enter &&\n this.lazyValue !== this.initialValue\n ) {\n this.initialValue = this.lazyValue\n this.$emit('update:modelValue', this.initialValue)\n }\n\n this.$emit('keydown', e)\n },\n onMouseDown (e: Event) {\n // Prevent input from being blurred\n if (e.target !== this.$refs.input) {\n e.preventDefault()\n e.stopPropagation()\n }\n\n VInput.methods.onMouseDown.call(this, e)\n },\n onMouseUp (e: Event) {\n if (this.hasMouseDown) this.focus()\n\n VInput.methods.onMouseUp.call(this, e)\n },\n setLabelWidth () {\n if (!this.outlined) return\n\n this.labelWidth = this.$refs.label\n ? Math.min(this.$refs.label.scrollWidth * 0.75 + 6, (this.$el as HTMLElement).offsetWidth - 24)\n : 0\n },\n setPrefixWidth () {\n if (!this.$refs.prefix) return\n\n this.prefixWidth = this.$refs.prefix.offsetWidth\n },\n setPrependWidth () {\n if (!this.outlined || !this.$refs['prepend-inner']) return\n\n this.prependWidth = this.$refs['prepend-inner'].offsetWidth\n },\n tryAutofocus () {\n if (\n !this.autofocus ||\n typeof document === 'undefined' ||\n !this.$refs.input) return false\n\n const root = attachedRoot(this.$el)\n if (!root || root.activeElement === this.$refs.input) return false\n\n this.$refs.input.focus()\n\n return true\n },\n updateValue (val: boolean) {\n // Sets validationState from validatable\n this.hasColor = val\n\n if (val) {\n this.initialValue = this.lazyValue\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('update:modelValue', this.lazyValue)\n }\n },\n onResize () {\n this.setLabelWidth()\n this.setPrefixWidth()\n this.setPrependWidth()\n },\n },\n})\n"],"sourceRoot":"","file":"VTextField.js"}
@@ -142,7 +142,7 @@ const VTreeviewNode = baseMixins.extend({
142
142
  this.treeview.register(this);
143
143
  },
144
144
 
145
- beforeDestroy() {
145
+ beforeUnmount() {
146
146
  this.treeview.unregister(this);
147
147
  },
148
148
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTreeview/VTreeviewNode.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Components\nimport { VExpandTransition } from '../transitions'\nimport { VIcon } from '../VIcon'\nimport VTreeview from './VTreeview'\n\n// Mixins\nimport { inject as RegistrableInject } from '../../mixins/registrable'\nimport Colorable from '../../mixins/colorable'\n\n// Utils\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { getObjectValueByPath, createRange } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeChildren, PropType } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ntype VTreeViewInstance = InstanceType<typeof VTreeview>\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject('treeview')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n treeview: VTreeViewInstance\n}\n\nexport const VTreeviewNodeProps = {\n activatable: Boolean,\n activeClass: {\n type: String,\n default: 'v-treeview-node--active',\n },\n color: {\n type: String,\n default: 'primary',\n },\n disablePerNode: Boolean,\n expandIcon: {\n type: String,\n default: '$subgroup',\n },\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n itemChildren: {\n type: String,\n default: 'children',\n },\n itemDisabled: {\n type: String,\n default: 'disabled',\n },\n itemKey: {\n type: String,\n default: 'id',\n },\n itemText: {\n type: String,\n default: 'name',\n },\n loadChildren: Function as PropType<(item: any) => Promise<void>>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n openOnClick: Boolean,\n rounded: Boolean,\n selectable: Boolean,\n selectedColor: {\n type: String,\n default: 'accent',\n },\n shaped: Boolean,\n transition: Boolean,\n selectionType: {\n type: String as PropType<'leaf' | 'independent'>,\n default: 'leaf',\n validator: (v: string) => ['leaf', 'independent'].includes(v),\n },\n}\n\n/* @vue/component */\nconst VTreeviewNode = baseMixins.extend({\n name: 'v-treeview-node',\n\n inject: {\n treeview: {\n default: null,\n },\n },\n\n props: {\n level: Number,\n item: {\n type: Object,\n default: () => null,\n } as PropValidator<Record<string, unknown> | null>,\n parentIsDisabled: Boolean,\n ...VTreeviewNodeProps,\n },\n\n data: () => ({\n hasLoaded: false,\n isActive: false, // Node is selected (row)\n isIndeterminate: false, // Node has at least one selected child\n isLoading: false,\n isOpen: false, // Node is open/expanded\n isSelected: false, // Node is selected (checkbox)\n }),\n\n computed: {\n disabled (): boolean {\n return (\n getObjectValueByPath(this.item, this.itemDisabled) ||\n (!this.disablePerNode && (this.parentIsDisabled && this.selectionType === 'leaf'))\n )\n },\n key (): string {\n return getObjectValueByPath(this.item, this.itemKey)\n },\n children (): any[] | null {\n const children = getObjectValueByPath(this.item, this.itemChildren)\n return children && children.filter((child: any) => !this.treeview.isExcluded(getObjectValueByPath(child, this.itemKey)))\n },\n text (): string {\n return getObjectValueByPath(this.item, this.itemText)\n },\n scopedProps (): object {\n return {\n item: this.item,\n leaf: !this.children,\n selected: this.isSelected,\n indeterminate: this.isIndeterminate,\n active: this.isActive,\n open: this.isOpen,\n }\n },\n computedIcon (): string {\n if (this.isIndeterminate) return this.indeterminateIcon\n else if (this.isSelected) return this.onIcon\n else return this.offIcon\n },\n hasChildren (): boolean {\n return !!this.children && (!!this.children.length || !!this.loadChildren)\n },\n },\n\n created () {\n this.treeview.register(this)\n },\n\n beforeDestroy () {\n this.treeview.unregister(this)\n },\n\n methods: {\n checkChildren (): Promise<void> {\n return new Promise<void>(resolve => {\n // TODO: Potential issue with always trying\n // to load children if response is empty?\n if (!this.children || this.children.length || !this.loadChildren || this.hasLoaded) return resolve()\n\n this.isLoading = true\n resolve(this.loadChildren(this.item))\n }).then(() => {\n this.isLoading = false\n this.hasLoaded = true\n })\n },\n open () {\n this.isOpen = !this.isOpen\n this.treeview.updateOpen(this.key, this.isOpen)\n this.treeview.emitOpen()\n },\n genLabel () {\n const children = []\n\n if (this.$slots.label) children.push(this.$slots.label(this.scopedProps))\n else children.push(this.text)\n\n return h('div', {\n slot: 'label',\n class: 'v-treeview-node__label',\n }, children)\n },\n genPrependSlot () {\n if (!this.$slots.prepend) return null\n\n return h('div', {\n class: 'v-treeview-node__prepend',\n }, this.$slots.prepend(this.scopedProps))\n },\n genAppendSlot () {\n if (!this.$slots.append) return null\n\n return h('div', {\n class: 'v-treeview-node__append',\n }, this.$slots.append(this.scopedProps))\n },\n genContent () {\n const children = [\n this.genPrependSlot(),\n this.genLabel(),\n this.genAppendSlot(),\n ]\n\n return h('div', {\n class: 'v-treeview-node__content',\n }, children)\n },\n genToggle () {\n return h(VIcon, {\n class: ['v-treeview-node__toggle', {\n 'v-treeview-node__toggle--open': this.isOpen,\n 'v-treeview-node__toggle--loading': this.isLoading,\n }],\n slot: 'prepend',\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => this.open())\n }\n }, [this.isLoading ? this.loadingIcon : this.expandIcon])\n },\n genCheckbox () {\n return h(VIcon, {\n class: 'v-treeview-node__checkbox',\n color: this.isSelected || this.isIndeterminate ? this.selectedColor : undefined,\n disabled: this.disabled,\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => {\n // We nextTick here so that items watch in VTreeview has a chance to run first\n this.$nextTick(() => {\n this.isSelected = !this.isSelected\n this.isIndeterminate = false\n\n this.treeview.updateSelected(this.key, this.isSelected)\n this.treeview.emitSelected()\n })\n })\n },\n }, [this.computedIcon])\n },\n genLevel (level: number) {\n return createRange(level).map(() => h('div', {\n class: 'v-treeview-node__level',\n }))\n },\n genNode () {\n const children = [this.genContent()]\n\n if (this.selectable) children.unshift(this.genCheckbox())\n\n if (this.hasChildren) {\n children.unshift(this.genToggle())\n } else {\n children.unshift(...this.genLevel(1))\n }\n\n children.unshift(...this.genLevel(this.level))\n\n return h('div', this.setTextColor(this.isActive && this.color, {\n class: ['v-treeview-node__root', {\n [this.activeClass]: this.isActive,\n }],\n onClick: () => {\n if (this.openOnClick && this.hasChildren) {\n this.checkChildren().then(this.open)\n } else if (this.activatable && !this.disabled) {\n this.isActive = !this.isActive\n this.treeview.updateActive(this.key, this.isActive)\n this.treeview.emitActive()\n }\n }\n }), children)\n },\n genChild (item: any, parentIsDisabled: boolean) {\n return h(VTreeviewNode, {\n key: getObjectValueByPath(item, this.itemKey),\n activatable: this.activatable,\n activeClass: this.activeClass,\n item,\n selectable: this.selectable,\n selectedColor: this.selectedColor,\n color: this.color,\n disablePerNode: this.disablePerNode,\n expandIcon: this.expandIcon,\n indeterminateIcon: this.indeterminateIcon,\n offIcon: this.offIcon,\n onIcon: this.onIcon,\n loadingIcon: this.loadingIcon,\n itemKey: this.itemKey,\n itemText: this.itemText,\n itemDisabled: this.itemDisabled,\n itemChildren: this.itemChildren,\n loadChildren: this.loadChildren,\n transition: this.transition,\n openOnClick: this.openOnClick,\n rounded: this.rounded,\n shaped: this.shaped,\n level: this.level + 1,\n selectionType: this.selectionType,\n parentIsDisabled,\n }, this.$slots)\n },\n genChildrenWrapper () {\n if (!this.isOpen || !this.children) return null\n\n const children = [this.children.map(c => this.genChild(c, this.disabled))]\n\n return h('div', {\n class: 'v-treeview-node__children',\n }, children)\n },\n genTransition () {\n return h(VExpandTransition, [this.genChildrenWrapper()])\n },\n },\n\n render (): VNode {\n const children: VNodeChildren = [this.genNode()]\n\n if (this.transition) children.push(this.genTransition())\n else children.push(this.genChildrenWrapper())\n\n return h('div', {\n class: ['v-treeview-node', {\n 'v-treeview-node--leaf': !this.hasChildren,\n 'v-treeview-node--click': this.openOnClick,\n 'v-treeview-node--disabled': this.disabled,\n 'v-treeview-node--rounded': this.rounded,\n 'v-treeview-node--shaped': this.shaped,\n 'v-treeview-node--selected': this.isSelected,\n }],\n 'aria-expanded': String(this.isOpen),\n }, children)\n },\n})\n\nexport default VTreeviewNode\n"],"sourceRoot":"","file":"VTreeviewNode.js"}
1
+ {"version":3,"sources":["../../../src/components/VTreeview/VTreeviewNode.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Components\nimport { VExpandTransition } from '../transitions'\nimport { VIcon } from '../VIcon'\nimport VTreeview from './VTreeview'\n\n// Mixins\nimport { inject as RegistrableInject } from '../../mixins/registrable'\nimport Colorable from '../../mixins/colorable'\n\n// Utils\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { getObjectValueByPath, createRange } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeChildren, PropType } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ntype VTreeViewInstance = InstanceType<typeof VTreeview>\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject('treeview')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n treeview: VTreeViewInstance\n}\n\nexport const VTreeviewNodeProps = {\n activatable: Boolean,\n activeClass: {\n type: String,\n default: 'v-treeview-node--active',\n },\n color: {\n type: String,\n default: 'primary',\n },\n disablePerNode: Boolean,\n expandIcon: {\n type: String,\n default: '$subgroup',\n },\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n itemChildren: {\n type: String,\n default: 'children',\n },\n itemDisabled: {\n type: String,\n default: 'disabled',\n },\n itemKey: {\n type: String,\n default: 'id',\n },\n itemText: {\n type: String,\n default: 'name',\n },\n loadChildren: Function as PropType<(item: any) => Promise<void>>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n openOnClick: Boolean,\n rounded: Boolean,\n selectable: Boolean,\n selectedColor: {\n type: String,\n default: 'accent',\n },\n shaped: Boolean,\n transition: Boolean,\n selectionType: {\n type: String as PropType<'leaf' | 'independent'>,\n default: 'leaf',\n validator: (v: string) => ['leaf', 'independent'].includes(v),\n },\n}\n\n/* @vue/component */\nconst VTreeviewNode = baseMixins.extend({\n name: 'v-treeview-node',\n\n inject: {\n treeview: {\n default: null,\n },\n },\n\n props: {\n level: Number,\n item: {\n type: Object,\n default: () => null,\n } as PropValidator<Record<string, unknown> | null>,\n parentIsDisabled: Boolean,\n ...VTreeviewNodeProps,\n },\n\n data: () => ({\n hasLoaded: false,\n isActive: false, // Node is selected (row)\n isIndeterminate: false, // Node has at least one selected child\n isLoading: false,\n isOpen: false, // Node is open/expanded\n isSelected: false, // Node is selected (checkbox)\n }),\n\n computed: {\n disabled (): boolean {\n return (\n getObjectValueByPath(this.item, this.itemDisabled) ||\n (!this.disablePerNode && (this.parentIsDisabled && this.selectionType === 'leaf'))\n )\n },\n key (): string {\n return getObjectValueByPath(this.item, this.itemKey)\n },\n children (): any[] | null {\n const children = getObjectValueByPath(this.item, this.itemChildren)\n return children && children.filter((child: any) => !this.treeview.isExcluded(getObjectValueByPath(child, this.itemKey)))\n },\n text (): string {\n return getObjectValueByPath(this.item, this.itemText)\n },\n scopedProps (): object {\n return {\n item: this.item,\n leaf: !this.children,\n selected: this.isSelected,\n indeterminate: this.isIndeterminate,\n active: this.isActive,\n open: this.isOpen,\n }\n },\n computedIcon (): string {\n if (this.isIndeterminate) return this.indeterminateIcon\n else if (this.isSelected) return this.onIcon\n else return this.offIcon\n },\n hasChildren (): boolean {\n return !!this.children && (!!this.children.length || !!this.loadChildren)\n },\n },\n\n created () {\n this.treeview.register(this)\n },\n\n beforeUnmount () {\n this.treeview.unregister(this)\n },\n\n methods: {\n checkChildren (): Promise<void> {\n return new Promise<void>(resolve => {\n // TODO: Potential issue with always trying\n // to load children if response is empty?\n if (!this.children || this.children.length || !this.loadChildren || this.hasLoaded) return resolve()\n\n this.isLoading = true\n resolve(this.loadChildren(this.item))\n }).then(() => {\n this.isLoading = false\n this.hasLoaded = true\n })\n },\n open () {\n this.isOpen = !this.isOpen\n this.treeview.updateOpen(this.key, this.isOpen)\n this.treeview.emitOpen()\n },\n genLabel () {\n const children = []\n\n if (this.$slots.label) children.push(this.$slots.label(this.scopedProps))\n else children.push(this.text)\n\n return h('div', {\n slot: 'label',\n class: 'v-treeview-node__label',\n }, children)\n },\n genPrependSlot () {\n if (!this.$slots.prepend) return null\n\n return h('div', {\n class: 'v-treeview-node__prepend',\n }, this.$slots.prepend(this.scopedProps))\n },\n genAppendSlot () {\n if (!this.$slots.append) return null\n\n return h('div', {\n class: 'v-treeview-node__append',\n }, this.$slots.append(this.scopedProps))\n },\n genContent () {\n const children = [\n this.genPrependSlot(),\n this.genLabel(),\n this.genAppendSlot(),\n ]\n\n return h('div', {\n class: 'v-treeview-node__content',\n }, children)\n },\n genToggle () {\n return h(VIcon, {\n class: ['v-treeview-node__toggle', {\n 'v-treeview-node__toggle--open': this.isOpen,\n 'v-treeview-node__toggle--loading': this.isLoading,\n }],\n slot: 'prepend',\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => this.open())\n }\n }, [this.isLoading ? this.loadingIcon : this.expandIcon])\n },\n genCheckbox () {\n return h(VIcon, {\n class: 'v-treeview-node__checkbox',\n color: this.isSelected || this.isIndeterminate ? this.selectedColor : undefined,\n disabled: this.disabled,\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => {\n // We nextTick here so that items watch in VTreeview has a chance to run first\n this.$nextTick(() => {\n this.isSelected = !this.isSelected\n this.isIndeterminate = false\n\n this.treeview.updateSelected(this.key, this.isSelected)\n this.treeview.emitSelected()\n })\n })\n },\n }, [this.computedIcon])\n },\n genLevel (level: number) {\n return createRange(level).map(() => h('div', {\n class: 'v-treeview-node__level',\n }))\n },\n genNode () {\n const children = [this.genContent()]\n\n if (this.selectable) children.unshift(this.genCheckbox())\n\n if (this.hasChildren) {\n children.unshift(this.genToggle())\n } else {\n children.unshift(...this.genLevel(1))\n }\n\n children.unshift(...this.genLevel(this.level))\n\n return h('div', this.setTextColor(this.isActive && this.color, {\n class: ['v-treeview-node__root', {\n [this.activeClass]: this.isActive,\n }],\n onClick: () => {\n if (this.openOnClick && this.hasChildren) {\n this.checkChildren().then(this.open)\n } else if (this.activatable && !this.disabled) {\n this.isActive = !this.isActive\n this.treeview.updateActive(this.key, this.isActive)\n this.treeview.emitActive()\n }\n }\n }), children)\n },\n genChild (item: any, parentIsDisabled: boolean) {\n return h(VTreeviewNode, {\n key: getObjectValueByPath(item, this.itemKey),\n activatable: this.activatable,\n activeClass: this.activeClass,\n item,\n selectable: this.selectable,\n selectedColor: this.selectedColor,\n color: this.color,\n disablePerNode: this.disablePerNode,\n expandIcon: this.expandIcon,\n indeterminateIcon: this.indeterminateIcon,\n offIcon: this.offIcon,\n onIcon: this.onIcon,\n loadingIcon: this.loadingIcon,\n itemKey: this.itemKey,\n itemText: this.itemText,\n itemDisabled: this.itemDisabled,\n itemChildren: this.itemChildren,\n loadChildren: this.loadChildren,\n transition: this.transition,\n openOnClick: this.openOnClick,\n rounded: this.rounded,\n shaped: this.shaped,\n level: this.level + 1,\n selectionType: this.selectionType,\n parentIsDisabled,\n }, this.$slots)\n },\n genChildrenWrapper () {\n if (!this.isOpen || !this.children) return null\n\n const children = [this.children.map(c => this.genChild(c, this.disabled))]\n\n return h('div', {\n class: 'v-treeview-node__children',\n }, children)\n },\n genTransition () {\n return h(VExpandTransition, [this.genChildrenWrapper()])\n },\n },\n\n render (): VNode {\n const children: VNodeChildren = [this.genNode()]\n\n if (this.transition) children.push(this.genTransition())\n else children.push(this.genChildrenWrapper())\n\n return h('div', {\n class: ['v-treeview-node', {\n 'v-treeview-node--leaf': !this.hasChildren,\n 'v-treeview-node--click': this.openOnClick,\n 'v-treeview-node--disabled': this.disabled,\n 'v-treeview-node--rounded': this.rounded,\n 'v-treeview-node--shaped': this.shaped,\n 'v-treeview-node--selected': this.isSelected,\n }],\n 'aria-expanded': String(this.isOpen),\n }, children)\n },\n})\n\nexport default VTreeviewNode\n"],"sourceRoot":"","file":"VTreeviewNode.js"}
@@ -110,7 +110,7 @@ export function createJavascriptTransition(name, functions, mode = 'in-out') {
110
110
  render() {
111
111
  return h(Transition, mergeData(this.$attrs, {
112
112
  name,
113
- functions
113
+ ...functions
114
114
  }), this.$slots.default());
115
115
  }
116
116
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/transitions/createTransition.ts"],"names":[],"mappings":"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","sourcesContent":["import { FunctionalComponentOptions, VNode, VNodeData, Transition, TransitionGroup } from 'vue'\nimport mergeData from '../../util/mergeData'\nimport {h} from 'vue'\n\nfunction mergeTransitions (\n dest: Function | Function[] = [],\n ...transitions: (Function | Function[])[]\n) {\n /* eslint-disable-next-line no-array-constructor */\n return Array<Function>().concat(dest, ...transitions)\n}\n\nexport function createSimpleTransition (\n name: string,\n origin = 'top center 0',\n mode?: string\n): FunctionalComponentOptions {\n return {\n name,\n\n functional: true,\n\n props: {\n group: {\n type: Boolean,\n default: false,\n },\n hideOnLeave: {\n type: Boolean,\n default: false,\n },\n leaveAbsolute: {\n type: Boolean,\n default: false,\n },\n mode: {\n type: String,\n default: mode,\n },\n origin: {\n type: String,\n default: origin,\n },\n },\n\n render (): VNode {\n const tag = this.$props.group ? TransitionGroup : Transition\n\n const data: VNodeData = {\n name,\n mode: this.$props.mode,\n onBeforeEnter: (el: HTMLElement) => {\n el.style.transformOrigin = this.$props.origin\n el.style.webkitTransformOrigin = this.$props.origin\n }\n }\n\n if (this.$props.leaveAbsolute) {\n data.onLeave = mergeTransitions(data.onLeave, (el: HTMLElement) => {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = offsetTop + 'px'\n el.style.left = offsetLeft + 'px'\n el.style.width = offsetWidth + 'px'\n el.style.height = offsetHeight + 'px'\n })\n data.onAfterLeave = mergeTransitions(data.onAfterLeave, (el?: HTMLElement) => {\n if (el && el._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n })\n }\n if (this.$props.hideOnLeave) {\n data.onLeave = mergeTransitions(data.onLeave, (el: HTMLElement) => {\n el.style.setProperty('display', 'none', 'important')\n })\n }\n\n return h(tag, mergeData(this.$attrs, data), this.$slots.default())\n },\n }\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record<string, any>,\n mode = 'in-out'\n): FunctionalComponentOptions {\n return {\n name,\n\n functional: true,\n\n props: {\n mode: {\n type: String,\n default: mode,\n },\n },\n\n render (): VNode {\n return h(\n Transition,\n mergeData(this.$attrs, {\n name,\n functions,\n }),\n this.$slots.default()\n )\n },\n }\n}\n"],"sourceRoot":"","file":"createTransition.js"}
1
+ {"version":3,"sources":["../../../src/components/transitions/createTransition.ts"],"names":[],"mappings":"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","sourcesContent":["import { FunctionalComponentOptions, VNode, VNodeData, Transition, TransitionGroup } from 'vue'\nimport mergeData from '../../util/mergeData'\nimport {h} from 'vue'\n\nfunction mergeTransitions (\n dest: Function | Function[] = [],\n ...transitions: (Function | Function[])[]\n) {\n /* eslint-disable-next-line no-array-constructor */\n return Array<Function>().concat(dest, ...transitions)\n}\n\nexport function createSimpleTransition (\n name: string,\n origin = 'top center 0',\n mode?: string\n): FunctionalComponentOptions {\n return {\n name,\n\n functional: true,\n\n props: {\n group: {\n type: Boolean,\n default: false,\n },\n hideOnLeave: {\n type: Boolean,\n default: false,\n },\n leaveAbsolute: {\n type: Boolean,\n default: false,\n },\n mode: {\n type: String,\n default: mode,\n },\n origin: {\n type: String,\n default: origin,\n },\n },\n\n render (): VNode {\n const tag = this.$props.group ? TransitionGroup : Transition\n\n const data: VNodeData = {\n name,\n mode: this.$props.mode,\n onBeforeEnter: (el: HTMLElement) => {\n el.style.transformOrigin = this.$props.origin\n el.style.webkitTransformOrigin = this.$props.origin\n }\n }\n\n if (this.$props.leaveAbsolute) {\n data.onLeave = mergeTransitions(data.onLeave, (el: HTMLElement) => {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = offsetTop + 'px'\n el.style.left = offsetLeft + 'px'\n el.style.width = offsetWidth + 'px'\n el.style.height = offsetHeight + 'px'\n })\n data.onAfterLeave = mergeTransitions(data.onAfterLeave, (el?: HTMLElement) => {\n if (el && el._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n })\n }\n if (this.$props.hideOnLeave) {\n data.onLeave = mergeTransitions(data.onLeave, (el: HTMLElement) => {\n el.style.setProperty('display', 'none', 'important')\n })\n }\n return h(tag, mergeData(this.$attrs, data), this.$slots.default())\n },\n }\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record<string, any>,\n mode = 'in-out'\n): FunctionalComponentOptions {\n return {\n name,\n\n functional: true,\n\n props: {\n mode: {\n type: String,\n default: mode,\n },\n },\n\n render (): VNode {\n return h(\n Transition,\n mergeData(this.$attrs, {\n name,\n ...functions,\n }),\n this.$slots.default()\n )\n },\n }\n}\n"],"sourceRoot":"","file":"createTransition.js"}
@@ -3,7 +3,7 @@ export default function (expandedParentClass = '', x = false) {
3
3
  const sizeProperty = x ? 'width' : 'height';
4
4
  const offsetProperty = `offset${upperFirst(sizeProperty)}`;
5
5
  return {
6
- beforeEnter(el) {
6
+ onBeforeEnter(el) {
7
7
  el._parent = el.parentNode;
8
8
  el._initialStyle = {
9
9
  transition: el.style.transition,
@@ -12,7 +12,7 @@ export default function (expandedParentClass = '', x = false) {
12
12
  };
13
13
  },
14
14
 
15
- enter(el) {
15
+ onEnter(el) {
16
16
  const initialStyle = el._initialStyle;
17
17
  el.style.setProperty('transition', 'none', 'important'); // Hide overflow to account for collapsed margins in the calculated height
18
18
 
@@ -32,10 +32,10 @@ export default function (expandedParentClass = '', x = false) {
32
32
  });
33
33
  },
34
34
 
35
- afterEnter: resetStyles,
36
- enterCancelled: resetStyles,
35
+ onAfterEnter: resetStyles,
36
+ onEnterCancelled: resetStyles,
37
37
 
38
- leave(el) {
38
+ onLeave(el) {
39
39
  el._initialStyle = {
40
40
  transition: '',
41
41
  overflow: el.style.overflow,
@@ -48,8 +48,8 @@ export default function (expandedParentClass = '', x = false) {
48
48
  requestAnimationFrame(() => el.style[sizeProperty] = '0');
49
49
  },
50
50
 
51
- afterLeave,
52
- leaveCancelled: afterLeave
51
+ onAfterLeave: afterLeave,
52
+ onLeaveCancelled: afterLeave
53
53
  };
54
54
 
55
55
  function afterLeave(el) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/transitions/expand-transition.ts"],"names":[],"mappings":"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","sourcesContent":["import { upperFirst } from '../../util/helpers'\n\ninterface HTMLExpandElement extends HTMLElement {\n _parent?: (Node & ParentNode & HTMLElement) | null\n _initialStyle?: {\n transition: string\n overflow: string\n height?: string | null\n width?: string | null\n }\n}\n\nexport default function (expandedParentClass = '', x = false) {\n const sizeProperty = x ? 'width' : 'height' as 'width' | 'height'\n const offsetProperty = `offset${upperFirst(sizeProperty)}` as 'offsetHeight' | 'offsetWidth'\n\n return {\n beforeEnter (el: HTMLExpandElement) {\n el._parent = el.parentNode as (Node & ParentNode & HTMLElement) | null\n el._initialStyle = {\n transition: el.style.transition,\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n },\n\n enter (el: HTMLExpandElement) {\n const initialStyle = el._initialStyle!\n\n el.style.setProperty('transition', 'none', 'important')\n // Hide overflow to account for collapsed margins in the calculated height\n el.style.overflow = 'hidden'\n const offset = `${el[offsetProperty]}px`\n\n el.style[sizeProperty] = '0'\n\n void el.offsetHeight // force reflow\n\n el.style.transition = initialStyle.transition\n\n if (expandedParentClass && el._parent) {\n el._parent.classList.add(expandedParentClass)\n }\n\n requestAnimationFrame(() => {\n el.style[sizeProperty] = offset\n })\n },\n\n afterEnter: resetStyles,\n enterCancelled: resetStyles,\n\n leave (el: HTMLExpandElement) {\n el._initialStyle = {\n transition: '',\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n\n el.style.overflow = 'hidden'\n el.style[sizeProperty] = `${el[offsetProperty]}px`\n void el.offsetHeight // force reflow\n\n requestAnimationFrame(() => (el.style[sizeProperty] = '0'))\n },\n\n afterLeave,\n leaveCancelled: afterLeave,\n }\n\n function afterLeave (el: HTMLExpandElement) {\n if (expandedParentClass && el._parent) {\n el._parent.classList.remove(expandedParentClass)\n }\n resetStyles(el)\n }\n\n function resetStyles (el: HTMLExpandElement) {\n const size = el._initialStyle![sizeProperty]\n el.style.overflow = el._initialStyle!.overflow\n if (size != null) el.style[sizeProperty] = size\n delete el._initialStyle\n }\n}\n"],"sourceRoot":"","file":"expand-transition.js"}
1
+ {"version":3,"sources":["../../../src/components/transitions/expand-transition.ts"],"names":[],"mappings":"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","sourcesContent":["import { upperFirst } from '../../util/helpers'\n\ninterface HTMLExpandElement extends HTMLElement {\n _parent?: (Node & ParentNode & HTMLElement) | null\n _initialStyle?: {\n transition: string\n overflow: string\n height?: string | null\n width?: string | null\n }\n}\n\nexport default function (expandedParentClass = '', x = false) {\n const sizeProperty = x ? 'width' : 'height' as 'width' | 'height'\n const offsetProperty = `offset${upperFirst(sizeProperty)}` as 'offsetHeight' | 'offsetWidth'\n\n return {\n onBeforeEnter (el: HTMLExpandElement) {\n el._parent = el.parentNode as (Node & ParentNode & HTMLElement) | null\n el._initialStyle = {\n transition: el.style.transition,\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n },\n\n onEnter (el: HTMLExpandElement) {\n const initialStyle = el._initialStyle!\n\n el.style.setProperty('transition', 'none', 'important')\n // Hide overflow to account for collapsed margins in the calculated height\n el.style.overflow = 'hidden'\n const offset = `${el[offsetProperty]}px`\n\n el.style[sizeProperty] = '0'\n\n void el.offsetHeight // force reflow\n\n el.style.transition = initialStyle.transition\n\n if (expandedParentClass && el._parent) {\n el._parent.classList.add(expandedParentClass)\n }\n\n requestAnimationFrame(() => {\n el.style[sizeProperty] = offset\n })\n },\n\n onAfterEnter: resetStyles,\n onEnterCancelled: resetStyles,\n\n onLeave (el: HTMLExpandElement) {\n el._initialStyle = {\n transition: '',\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n\n el.style.overflow = 'hidden'\n el.style[sizeProperty] = `${el[offsetProperty]}px`\n void el.offsetHeight // force reflow\n\n requestAnimationFrame(() => (el.style[sizeProperty] = '0'))\n },\n\n onAfterLeave: afterLeave,\n onLeaveCancelled: afterLeave,\n }\n\n function afterLeave (el: HTMLExpandElement) {\n if (expandedParentClass && el._parent) {\n el._parent.classList.remove(expandedParentClass)\n }\n resetStyles(el)\n }\n\n function resetStyles (el: HTMLExpandElement) {\n const size = el._initialStyle![sizeProperty]\n el.style.overflow = el._initialStyle!.overflow\n if (size != null) el.style[sizeProperty] = size\n delete el._initialStyle\n }\n}\n"],"sourceRoot":"","file":"expand-transition.js"}
package/lib/framework.js CHANGED
@@ -46,7 +46,7 @@ export default class Vuetify {
46
46
  }
47
47
  Vuetify.install = install;
48
48
  Vuetify.installed = false;
49
- Vuetify.version = "2.7.2-alpha0";
49
+ Vuetify.version = "2.7.2-alpha10";
50
50
  Vuetify.config = {
51
51
  silent: false
52
52
  };
@@ -49,10 +49,16 @@ export default baseMixins.extend({
49
49
  this.addActivatorEvents();
50
50
  },
51
51
 
52
- beforeDestroy() {
52
+ beforeUnmount() {
53
53
  this.removeActivatorEvents();
54
54
  },
55
55
 
56
+ computed: {
57
+ isActivatable() {
58
+ return true;
59
+ }
60
+
61
+ },
56
62
  methods: {
57
63
  addActivatorEvents() {
58
64
  if (!this.activator || this.disabled || !this.getActivator()) return;
@@ -65,12 +71,15 @@ export default baseMixins.extend({
65
71
  },
66
72
 
67
73
  genActivator() {
68
- const node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {
74
+ let node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {
69
75
  attrs: { ...this.genActivatorListeners(),
70
76
  ...this.genActivatorAttributes()
71
77
  }
72
78
  })) || [];
73
- this.activatorNode = node;
79
+ node = Array.isArray(node) ? node : [node];
80
+ this.activatorNode = node.flatMap(node => {
81
+ return node.type === Symbol.for('v-fgt') ? node.children : node;
82
+ });
74
83
  return node;
75
84
  },
76
85
 
@@ -117,7 +126,9 @@ export default baseMixins.extend({
117
126
  },
118
127
 
119
128
  getActivator(e) {
120
- // If we've already fetched the activator, re-use
129
+ var _a; // If we've already fetched the activator, re-use
130
+
131
+
121
132
  if (this.activatorElement) return this.activatorElement;
122
133
  let activator = null;
123
134
 
@@ -138,10 +149,9 @@ export default baseMixins.extend({
138
149
  // Use the contents of the activator slot
139
150
  // There's either only one element in it or we
140
151
  // don't have a click event to use as a last resort
141
- const vm = this.activatorNode[0].component.ctx;
152
+ const vm = (_a = this.activatorNode[0].component) === null || _a === void 0 ? void 0 : _a.ctx;
142
153
 
143
- if (vm && vm.$options.mixins && // Activatable is indirectly used via Menuable
144
- vm.$options.mixins.some(m => m.options && ['activatable', 'menuable'].includes(m.options.name))) {
154
+ if (vm && (vm.isActivatable !== undefined || vm.isMenuable !== undefined)) {
145
155
  // Activator is actually another activatible component, use its activator (#8846)
146
156
  activator = vm.getActivator();
147
157
  } else {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/activatable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Delayable from '../delayable'\nimport Toggleable from '../toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { getSlot, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport { VNode, PropType } from 'vue'\n\ntype Listeners = Dictionary<(e: MouseEvent & KeyboardEvent & FocusEvent) => void>\n\nconst baseMixins = mixins(\n Delayable,\n Toggleable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'activatable',\n\n props: {\n activator: {\n default: null as unknown as PropType<string | HTMLElement | VNode | Element | null>,\n validator: (val: string | object) => {\n return ['string', 'object'].includes(typeof val)\n },\n },\n disabled: Boolean,\n internalActivator: Boolean,\n openOnClick: {\n type: Boolean,\n default: true,\n },\n openOnHover: Boolean,\n openOnFocus: Boolean,\n },\n\n data: () => ({\n // Do not use this directly, call getActivator() instead\n activatorElement: null as HTMLElement | null,\n activatorNode: [] as VNode[],\n events: ['click', 'mouseenter', 'mouseleave', 'focus'],\n listeners: {} as Listeners,\n }),\n\n watch: {\n activator: 'resetActivator',\n openOnFocus: 'resetActivator',\n openOnHover: 'resetActivator',\n },\n\n mounted () {\n const slotType = getSlotType(this, 'activator', true)\n\n if (slotType && ['v-slot', 'normal'].includes(slotType)) {\n consoleError(`The activator slot must be bound, try '<template v-slot:activator=\"{ on }\"><v-btn v-on=\"on\">'`, this)\n }\n\n this.addActivatorEvents()\n },\n\n beforeDestroy () {\n this.removeActivatorEvents()\n },\n\n methods: {\n addActivatorEvents () {\n if (\n !this.activator ||\n this.disabled ||\n !this.getActivator()\n ) return\n\n this.listeners = this.genActivatorListeners()\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n this.getActivator()!.addEventListener(key, this.listeners[key] as any)\n }\n },\n genActivator () {\n const node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {\n attrs: {\n ...this.genActivatorListeners(),\n ...this.genActivatorAttributes(),\n }\n\n })) || []\n\n this.activatorNode = node\n\n return node\n },\n genActivatorAttributes () {\n return {\n role: (this.openOnClick && !this.openOnHover) ? 'button' : undefined,\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genActivatorListeners () {\n if (this.disabled) return {}\n\n const listeners: Listeners = {}\n\n if (this.openOnHover) {\n listeners.onMouseenter = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.onMouseleave = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n } else if (this.openOnClick) {\n listeners.onClick = (e: MouseEvent) => {\n const activator = this.getActivator(e)\n if (activator) activator.focus()\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n if (this.openOnFocus) {\n listeners.onFocus = (e: FocusEvent) => {\n this.getActivator(e)\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n return listeners\n },\n getActivator (e?: Event): HTMLElement | null {\n // If we've already fetched the activator, re-use\n if (this.activatorElement) return this.activatorElement\n\n let activator = null\n\n if (this.activator) {\n const target = this.internalActivator ? this.$el : document\n\n if (typeof this.activator === 'string') {\n // Selector\n activator = target.querySelector(this.activator)\n } else if ((this.activator as any).$el) {\n // Component (ref)\n activator = (this.activator as any).$el\n } else {\n // HTMLElement | Element\n activator = this.activator\n }\n } else if (this.activatorNode.length === 1 || (this.activatorNode.length && !e)) {\n\n // Use the contents of the activator slot\n // There's either only one element in it or we\n // don't have a click event to use as a last resort\n const vm = this.activatorNode[0].component.ctx\n if (\n vm &&\n vm.$options.mixins && // Activatable is indirectly used via Menuable\n vm.$options.mixins.some((m: any) => m.options && ['activatable', 'menuable'].includes(m.options.name))\n ) {\n // Activator is actually another activatible component, use its activator (#8846)\n activator = (vm as any).getActivator()\n } else {\n activator = this.activatorNode[0].el as HTMLElement\n }\n } else if (e) {\n // Activated by a click or focus event\n activator = (e.currentTarget || e.target) as HTMLElement\n }\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n this.activatorElement = activator?.nodeType === Node.ELEMENT_NODE ? activator : null\n\n return this.activatorElement\n },\n getContentSlot () {\n return getSlot(this, 'default', this.getValueProxy(), true)\n },\n getValueProxy (): object {\n const self = this\n return {\n get value () {\n return self.isActive\n },\n set value (isActive: boolean) {\n self.isActive = isActive\n },\n }\n },\n removeActivatorEvents () {\n if (\n !this.activator ||\n !this.activatorElement\n ) return\n\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n (this.activatorElement as any).removeEventListener(key, this.listeners[key])\n }\n\n this.listeners = {}\n },\n resetActivator () {\n this.removeActivatorEvents()\n this.activatorElement = null\n this.getActivator()\n this.addActivatorEvents()\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/activatable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Delayable from '../delayable'\nimport Toggleable from '../toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { getSlot, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport { VNode, PropType } from 'vue'\n\ntype Listeners = Dictionary<(e: MouseEvent & KeyboardEvent & FocusEvent) => void>\n\nconst baseMixins = mixins(\n Delayable,\n Toggleable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'activatable',\n\n props: {\n activator: {\n default: null as unknown as PropType<string | HTMLElement | VNode | Element | null>,\n validator: (val: string | object) => {\n return ['string', 'object'].includes(typeof val)\n },\n },\n disabled: Boolean,\n internalActivator: Boolean,\n openOnClick: {\n type: Boolean,\n default: true,\n },\n openOnHover: Boolean,\n openOnFocus: Boolean,\n },\n\n data: () => ({\n // Do not use this directly, call getActivator() instead\n activatorElement: null as HTMLElement | null,\n activatorNode: [] as VNode[],\n events: ['click', 'mouseenter', 'mouseleave', 'focus'],\n listeners: {} as Listeners,\n }),\n\n watch: {\n activator: 'resetActivator',\n openOnFocus: 'resetActivator',\n openOnHover: 'resetActivator',\n },\n\n mounted () {\n const slotType = getSlotType(this, 'activator', true)\n\n if (slotType && ['v-slot', 'normal'].includes(slotType)) {\n consoleError(`The activator slot must be bound, try '<template v-slot:activator=\"{ on }\"><v-btn v-on=\"on\">'`, this)\n }\n\n this.addActivatorEvents()\n },\n\n beforeUnmount () {\n this.removeActivatorEvents()\n },\n\n computed: {\n isActivatable() {\n return true\n }\n },\n\n methods: {\n addActivatorEvents () {\n if (\n !this.activator ||\n this.disabled ||\n !this.getActivator()\n ) return\n\n this.listeners = this.genActivatorListeners()\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n this.getActivator()!.addEventListener(key, this.listeners[key] as any)\n }\n },\n genActivator () {\n let node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {\n attrs: {\n ...this.genActivatorListeners(),\n ...this.genActivatorAttributes(),\n }\n })) || []\n\n node = Array.isArray(node) ? node : [node]\n\n this.activatorNode = node.flatMap(node => {\n return node.type === Symbol.for('v-fgt') ? node.children : node\n })\n\n return node\n },\n genActivatorAttributes () {\n return {\n role: (this.openOnClick && !this.openOnHover) ? 'button' : undefined,\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genActivatorListeners () {\n if (this.disabled) return {}\n\n const listeners: Listeners = {}\n\n if (this.openOnHover) {\n listeners.onMouseenter = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.onMouseleave = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n } else if (this.openOnClick) {\n listeners.onClick = (e: MouseEvent) => {\n const activator = this.getActivator(e)\n if (activator) activator.focus()\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n if (this.openOnFocus) {\n listeners.onFocus = (e: FocusEvent) => {\n this.getActivator(e)\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n return listeners\n },\n getActivator (e?: Event): HTMLElement | null {\n // If we've already fetched the activator, re-use\n if (this.activatorElement) return this.activatorElement\n\n let activator = null\n\n if (this.activator) {\n const target = this.internalActivator ? this.$el : document\n\n if (typeof this.activator === 'string') {\n // Selector\n activator = target.querySelector(this.activator)\n } else if ((this.activator as any).$el) {\n // Component (ref)\n activator = (this.activator as any).$el\n } else {\n // HTMLElement | Element\n activator = this.activator\n }\n } else if (this.activatorNode.length === 1 || (this.activatorNode.length && !e)) {\n\n // Use the contents of the activator slot\n // There's either only one element in it or we\n // don't have a click event to use as a last resort\n const vm = this.activatorNode[0].component?.ctx\n if (\n vm &&\n (vm.isActivatable !== undefined || vm.isMenuable !== undefined)\n ) {\n // Activator is actually another activatible component, use its activator (#8846)\n activator = (vm as any).getActivator()\n } else {\n activator = this.activatorNode[0].el as HTMLElement\n }\n } else if (e) {\n // Activated by a click or focus event\n activator = (e.currentTarget || e.target) as HTMLElement\n }\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n this.activatorElement = activator?.nodeType === Node.ELEMENT_NODE ? activator : null\n\n return this.activatorElement\n },\n getContentSlot () {\n return getSlot(this, 'default', this.getValueProxy(), true)\n },\n getValueProxy (): object {\n const self = this\n return {\n get value () {\n return self.isActive\n },\n set value (isActive: boolean) {\n self.isActive = isActive\n },\n }\n },\n removeActivatorEvents () {\n if (\n !this.activator ||\n !this.activatorElement\n ) return\n\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n (this.activatorElement as any).removeEventListener(key, this.listeners[key])\n }\n\n this.listeners = {}\n },\n resetActivator () {\n this.removeActivatorEvents()\n this.activatorElement = null\n this.getActivator()\n this.addActivatorEvents()\n }\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -47,7 +47,7 @@ export default function applicationable(value, events = []) {
47
47
  this.removeApplication();
48
48
  },
49
49
 
50
- destroyed() {
50
+ unmounted() {
51
51
  this.removeApplication();
52
52
  },
53
53
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/applicationable/index.ts"],"names":[],"mappings":"AAAA,SAAS,OAAO,IAAI,mBAApB,QAA+C,iBAA/C,C,CAGA;;AACA,OAAO,MAAP,MAAmB,mBAAnB;AAEA,eAAc,SAAU,eAAV,CAA2B,KAA3B,EAA8C,MAAA,GAAmB,EAAjE,EAAmE;AAC/E;AACA,SAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,UAAD,EAAa,OAAb,CAAD,CAApB,CAAN,CAAmD,MAAnD,CAA0D;AAC/D,IAAA,IAAI,EAAE,iBADyD;AAG/D,IAAA,KAAK,EAAE;AACL,MAAA,GAAG,EAAE;AADA,KAHwD;AAO/D,IAAA,QAAQ,EAAE;AACR,MAAA,mBAAmB,GAAA;AACjB,eAAO,KAAP;AACD;;AAHO,KAPqD;AAa/D,IAAA,KAAK,EAAE;AACL;AACA;AACA,MAAA,GAAG,CAAE,CAAF,EAAc,IAAd,EAA2B;AAC5B,QAAA,IAAI,GACA,KAAK,iBAAL,CAAuB,IAAvB,CADA,GAEA,KAAK,UAAL,EAFJ;AAGD,OAPI;;AAQL,MAAA,mBAAmB,CAAE,MAAF,EAAU,MAAV,EAAgB;AACjC,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CAAqC,KAAK,IAA1C,EAAgD,MAAhD;AACD;;AAVI,KAbwD;;AA0B/D,IAAA,SAAS,GAAA;AACP,WAAK,UAAL;AACD,KA5B8D;;AA8B/D,IAAA,OAAO,GAAA;AACL,WAAK,IAAI,CAAC,GAAG,CAAR,EAAW,MAAM,GAAG,MAAM,CAAC,MAAhC,EAAwC,CAAC,GAAG,MAA5C,EAAoD,CAAC,EAArD,EAAyD;AACvD,aAAK,MAAL,CAAY,MAAM,CAAC,CAAD,CAAlB,EAAuB,KAAK,UAA5B;AACD;;AACD,WAAK,UAAL;AACD,KAnC8D;;AAqC/D,IAAA,OAAO,GAAA;AACL,WAAK,UAAL;AACD,KAvC8D;;AAyC/D,IAAA,WAAW,GAAA;AACT,WAAK,iBAAL;AACD,KA3C8D;;AA6C/D,IAAA,SAAS,GAAA;AACP,WAAK,iBAAL;AACD,KA/C8D;;AAiD/D,IAAA,OAAO,EAAE;AACP,MAAA,UAAU,GAAA;AACR,YAAI,CAAC,KAAK,GAAV,EAAe;AAEf,aAAK,QAAL,CAAc,WAAd,CAA0B,QAA1B,CACE,KAAK,IADP,EAEE,KAAK,mBAFP,EAGE,KAAK,iBAAL,EAHF;AAKD,OATM;;AAUP,MAAA,iBAAiB,CAAE,KAAK,GAAG,KAAV,EAAe;AAC9B,YAAI,CAAC,KAAD,IAAU,CAAC,KAAK,GAApB,EAAyB;AAEzB,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CACE,KAAK,IADP,EAEE,KAAK,mBAFP;AAID,OAjBM;;AAkBP,MAAA,iBAAiB,EAAE,MAAM;AAlBlB;AAjDsD,GAA1D,CAAP;AAsED","sourcesContent":["import { factory as PositionableFactory } from '../positionable'\nimport { TargetProp } from 'vuetify/types/services/application'\n\n// Util\nimport mixins from '../../util/mixins'\n\nexport default function applicationable (value: TargetProp, events: string[] = []) {\n /* @vue/component */\n return mixins(PositionableFactory(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n\n props: {\n app: Boolean,\n },\n\n computed: {\n applicationProperty (): TargetProp {\n return value\n },\n },\n\n watch: {\n // If previous value was app\n // reset the provided prop\n app (x: boolean, prev: boolean) {\n prev\n ? this.removeApplication(true)\n : this.callUpdate()\n },\n applicationProperty (newVal, oldVal) {\n this.$vuetify.application.unregister(this._uid, oldVal)\n },\n },\n\n activated () {\n this.callUpdate()\n },\n\n created () {\n for (let i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate)\n }\n this.callUpdate()\n },\n\n mounted () {\n this.callUpdate()\n },\n\n deactivated () {\n this.removeApplication()\n },\n\n destroyed () {\n this.removeApplication()\n },\n\n methods: {\n callUpdate () {\n if (!this.app) return\n\n this.$vuetify.application.register(\n this._uid,\n this.applicationProperty,\n this.updateApplication()\n )\n },\n removeApplication (force = false) {\n if (!force && !this.app) return\n\n this.$vuetify.application.unregister(\n this._uid,\n this.applicationProperty\n )\n },\n updateApplication: () => 0,\n },\n })\n}\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/applicationable/index.ts"],"names":[],"mappings":"AAAA,SAAS,OAAO,IAAI,mBAApB,QAA+C,iBAA/C,C,CAGA;;AACA,OAAO,MAAP,MAAmB,mBAAnB;AAEA,eAAc,SAAU,eAAV,CAA2B,KAA3B,EAA8C,MAAA,GAAmB,EAAjE,EAAmE;AAC/E;AACA,SAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,UAAD,EAAa,OAAb,CAAD,CAApB,CAAN,CAAmD,MAAnD,CAA0D;AAC/D,IAAA,IAAI,EAAE,iBADyD;AAG/D,IAAA,KAAK,EAAE;AACL,MAAA,GAAG,EAAE;AADA,KAHwD;AAO/D,IAAA,QAAQ,EAAE;AACR,MAAA,mBAAmB,GAAA;AACjB,eAAO,KAAP;AACD;;AAHO,KAPqD;AAa/D,IAAA,KAAK,EAAE;AACL;AACA;AACA,MAAA,GAAG,CAAE,CAAF,EAAc,IAAd,EAA2B;AAC5B,QAAA,IAAI,GACA,KAAK,iBAAL,CAAuB,IAAvB,CADA,GAEA,KAAK,UAAL,EAFJ;AAGD,OAPI;;AAQL,MAAA,mBAAmB,CAAE,MAAF,EAAU,MAAV,EAAgB;AACjC,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CAAqC,KAAK,IAA1C,EAAgD,MAAhD;AACD;;AAVI,KAbwD;;AA0B/D,IAAA,SAAS,GAAA;AACP,WAAK,UAAL;AACD,KA5B8D;;AA8B/D,IAAA,OAAO,GAAA;AACL,WAAK,IAAI,CAAC,GAAG,CAAR,EAAW,MAAM,GAAG,MAAM,CAAC,MAAhC,EAAwC,CAAC,GAAG,MAA5C,EAAoD,CAAC,EAArD,EAAyD;AACvD,aAAK,MAAL,CAAY,MAAM,CAAC,CAAD,CAAlB,EAAuB,KAAK,UAA5B;AACD;;AACD,WAAK,UAAL;AACD,KAnC8D;;AAqC/D,IAAA,OAAO,GAAA;AACL,WAAK,UAAL;AACD,KAvC8D;;AAyC/D,IAAA,WAAW,GAAA;AACT,WAAK,iBAAL;AACD,KA3C8D;;AA6C/D,IAAA,SAAS,GAAA;AACP,WAAK,iBAAL;AACD,KA/C8D;;AAiD/D,IAAA,OAAO,EAAE;AACP,MAAA,UAAU,GAAA;AACR,YAAI,CAAC,KAAK,GAAV,EAAe;AAEf,aAAK,QAAL,CAAc,WAAd,CAA0B,QAA1B,CACE,KAAK,IADP,EAEE,KAAK,mBAFP,EAGE,KAAK,iBAAL,EAHF;AAKD,OATM;;AAUP,MAAA,iBAAiB,CAAE,KAAK,GAAG,KAAV,EAAe;AAC9B,YAAI,CAAC,KAAD,IAAU,CAAC,KAAK,GAApB,EAAyB;AAEzB,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CACE,KAAK,IADP,EAEE,KAAK,mBAFP;AAID,OAjBM;;AAkBP,MAAA,iBAAiB,EAAE,MAAM;AAlBlB;AAjDsD,GAA1D,CAAP;AAsED","sourcesContent":["import { factory as PositionableFactory } from '../positionable'\nimport { TargetProp } from 'vuetify/types/services/application'\n\n// Util\nimport mixins from '../../util/mixins'\n\nexport default function applicationable (value: TargetProp, events: string[] = []) {\n /* @vue/component */\n return mixins(PositionableFactory(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n\n props: {\n app: Boolean,\n },\n\n computed: {\n applicationProperty (): TargetProp {\n return value\n },\n },\n\n watch: {\n // If previous value was app\n // reset the provided prop\n app (x: boolean, prev: boolean) {\n prev\n ? this.removeApplication(true)\n : this.callUpdate()\n },\n applicationProperty (newVal, oldVal) {\n this.$vuetify.application.unregister(this._uid, oldVal)\n },\n },\n\n activated () {\n this.callUpdate()\n },\n\n created () {\n for (let i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate)\n }\n this.callUpdate()\n },\n\n mounted () {\n this.callUpdate()\n },\n\n deactivated () {\n this.removeApplication()\n },\n\n unmounted () {\n this.removeApplication()\n },\n\n methods: {\n callUpdate () {\n if (!this.app) return\n\n this.$vuetify.application.register(\n this._uid,\n this.applicationProperty,\n this.updateApplication()\n )\n },\n removeApplication (force = false) {\n if (!force && !this.app) return\n\n this.$vuetify.application.unregister(\n this._uid,\n this.applicationProperty\n )\n },\n updateApplication: () => 0,\n },\n })\n}\n"],"sourceRoot":"","file":"index.js"}
@@ -8,7 +8,7 @@ function makeWatcher(property) {
8
8
  return function (val, oldVal) {
9
9
  for (const attr in oldVal) {
10
10
  if (!Object.prototype.hasOwnProperty.call(val, attr)) {
11
- this.$delete(this.$data[property], attr);
11
+ delete this.$data[property][attr];
12
12
  }
13
13
  }
14
14
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/binds-attrs/index.ts"],"names":[],"mappings":"AAAA,SAAQ,eAAR,QAA8B,KAA9B;AAEA;;;AAGG;;AAEH,SAAS,WAAT,CAAsB,QAAtB,EAAsC;AACpC,SAAO,UAAqB,GAArB,EAA0B,MAA1B,EAAgC;AACrC,SAAK,MAAM,IAAX,IAAmB,MAAnB,EAA2B;AACzB,UAAI,CAAC,MAAM,CAAC,SAAP,CAAiB,cAAjB,CAAgC,IAAhC,CAAqC,GAArC,EAA0C,IAA1C,CAAL,EAAsD;AACpD,aAAK,OAAL,CAAa,KAAK,KAAL,CAAW,QAAX,CAAb,EAAmC,IAAnC;AACD;AACF;;AACD,SAAK,MAAM,IAAX,IAAmB,GAAnB,EAAwB;AACtB,WAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,IAA6B,GAAG,CAAC,IAAD,CAAhC;AACD;AACF,GATD;AAUD;;AAED,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,MAAM,EAAE,EADG;AAEX,IAAA,UAAU,EAAE;AAFD,GAAP,CADuB;;AAM7B,EAAA,OAAO,GAAA;AACL;AACA;AACA,SAAK,MAAL,CAAY,QAAZ,EAAsB,WAAW,CAAC,QAAD,CAAjC,EAA6C;AAAE,MAAA,SAAS,EAAE;AAAb,KAA7C;AACA,SAAK,MAAL,CAAY,YAAZ,EAA0B,WAAW,CAAC,YAAD,CAArC,EAAqD;AAAE,MAAA,SAAS,EAAE;AAAb,KAArD;AACD;;AAX4B,CAAD,CAA9B","sourcesContent":["import {defineComponent} from 'vue'\n\n/**\n * This mixin provides `attrs$` and `listeners$` to work around\n * vue bug https://github.com/vuejs/vue/issues/10115\n */\n\nfunction makeWatcher (property: string): ThisType<Vue> & ((val: any, oldVal: any) => void) {\n return function (this: Vue, val, oldVal) {\n for (const attr in oldVal) {\n if (!Object.prototype.hasOwnProperty.call(val, attr)) {\n this.$delete(this.$data[property], attr)\n }\n }\n for (const attr in val) {\n this.$data[property][attr] = val[attr]\n }\n }\n}\n\nexport default defineComponent({\n data: () => ({\n attrs$: {} as Dictionary<string>,\n listeners$: {} as Dictionary<Function | Function[]>,\n }),\n\n created () {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n // Make sure to use `attrs$` instead of `$attrs` (confusing right?)\n this.$watch('$attrs', makeWatcher('attrs$'), { immediate: true })\n this.$watch('$listeners', makeWatcher('listeners$'), { immediate: true })\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/binds-attrs/index.ts"],"names":[],"mappings":"AAAA,SAAQ,eAAR,QAA8B,KAA9B;AAEA;;;AAGG;;AAEH,SAAS,WAAT,CAAsB,QAAtB,EAAsC;AACpC,SAAO,UAAqB,GAArB,EAA0B,MAA1B,EAAgC;AACrC,SAAK,MAAM,IAAX,IAAmB,MAAnB,EAA2B;AACzB,UAAI,CAAC,MAAM,CAAC,SAAP,CAAiB,cAAjB,CAAgC,IAAhC,CAAqC,GAArC,EAA0C,IAA1C,CAAL,EAAsD;AACpD,eAAO,KAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,CAAP;AACD;AACF;;AACD,SAAK,MAAM,IAAX,IAAmB,GAAnB,EAAwB;AACtB,WAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,IAA6B,GAAG,CAAC,IAAD,CAAhC;AACD;AACF,GATD;AAUD;;AAED,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,MAAM,EAAE,EADG;AAEX,IAAA,UAAU,EAAE;AAFD,GAAP,CADuB;;AAM7B,EAAA,OAAO,GAAA;AACL;AACA;AACA,SAAK,MAAL,CAAY,QAAZ,EAAsB,WAAW,CAAC,QAAD,CAAjC,EAA6C;AAAE,MAAA,SAAS,EAAE;AAAb,KAA7C;AACA,SAAK,MAAL,CAAY,YAAZ,EAA0B,WAAW,CAAC,YAAD,CAArC,EAAqD;AAAE,MAAA,SAAS,EAAE;AAAb,KAArD;AACD;;AAX4B,CAAD,CAA9B","sourcesContent":["import {defineComponent} from 'vue'\n\n/**\n * This mixin provides `attrs$` and `listeners$` to work around\n * vue bug https://github.com/vuejs/vue/issues/10115\n */\n\nfunction makeWatcher (property: string): ThisType<Vue> & ((val: any, oldVal: any) => void) {\n return function (this: Vue, val, oldVal) {\n for (const attr in oldVal) {\n if (!Object.prototype.hasOwnProperty.call(val, attr)) {\n delete this.$data[property][attr]\n }\n }\n for (const attr in val) {\n this.$data[property][attr] = val[attr]\n }\n }\n}\n\nexport default defineComponent({\n data: () => ({\n attrs$: {} as Dictionary<string>,\n listeners$: {} as Dictionary<Function | Function[]>,\n }),\n\n created () {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n // Make sure to use `attrs$` instead of `$attrs` (confusing right?)\n this.$watch('$attrs', makeWatcher('attrs$'), { immediate: true })\n this.$watch('$listeners', makeWatcher('listeners$'), { immediate: true })\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -13,7 +13,7 @@ function validateAttachTarget(val) {
13
13
 
14
14
  function removeActivator(activator) {
15
15
  activator.forEach(node => {
16
- node.elm && node.elm.parentNode && node.elm.parentNode.removeChild(node.elm);
16
+ node.el && node.el.parentNode && node.el.parentNode.removeChild(node.el);
17
17
  });
18
18
  }
19
19
  /* @vue/component */
@@ -69,13 +69,13 @@ export default mixins(Bootable).extend({
69
69
  this.isActive = false;
70
70
  },
71
71
 
72
- beforeDestroy() {
72
+ beforeUnmount() {
73
73
  if (this.$refs.content && this.$refs.content.parentNode) {
74
74
  this.$refs.content.parentNode.removeChild(this.$refs.content);
75
75
  }
76
76
  },
77
77
 
78
- destroyed() {
78
+ unmounted() {
79
79
  if (this.activatorNode) {
80
80
  const activator = Array.isArray(this.activatorNode) ? this.activatorNode : [this.activatorNode];
81
81