vuetify 2.6.16 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/dist/json/attributes.json +33 -1
  2. package/dist/json/tags.json +8 -0
  3. package/dist/json/web-types.json +140 -21
  4. package/dist/vuetify.css +53 -10
  5. package/dist/vuetify.css.map +1 -1
  6. package/dist/vuetify.js +685 -258
  7. package/dist/vuetify.js.map +1 -1
  8. package/dist/vuetify.min.css +2 -2
  9. package/dist/vuetify.min.js +2 -2
  10. package/es5/components/VCalendar/mixins/calendar-base.js +1 -1
  11. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  12. package/es5/components/VDataTable/VDataTable.js +96 -61
  13. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  14. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +3 -1
  15. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  16. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +3 -1
  17. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  18. package/es5/components/VInput/VInput.js +12 -1
  19. package/es5/components/VInput/VInput.js.map +1 -1
  20. package/es5/components/VItemGroup/VItem.js +18 -2
  21. package/es5/components/VItemGroup/VItem.js.map +1 -1
  22. package/es5/components/VMenu/VMenu.js +11 -3
  23. package/es5/components/VMenu/VMenu.js.map +1 -1
  24. package/es5/components/VPagination/VPagination.js +8 -2
  25. package/es5/components/VPagination/VPagination.js.map +1 -1
  26. package/es5/components/VRadioGroup/VRadio.js +14 -4
  27. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  28. package/es5/components/VSkeletonLoader/VSkeletonLoader.js +10 -5
  29. package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  30. package/es5/components/VSlideGroup/VSlideGroup.js +5 -1
  31. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  32. package/es5/components/VTabs/VTab.js +4 -0
  33. package/es5/components/VTabs/VTab.js.map +1 -1
  34. package/es5/components/VTimePicker/VTimePicker.js +17 -0
  35. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  36. package/es5/framework.js +1 -1
  37. package/es5/locale/af.js +7 -1
  38. package/es5/locale/af.js.map +1 -1
  39. package/es5/locale/ar.js +7 -1
  40. package/es5/locale/ar.js.map +1 -1
  41. package/es5/locale/az.js +7 -1
  42. package/es5/locale/az.js.map +1 -1
  43. package/es5/locale/bg.js +7 -1
  44. package/es5/locale/bg.js.map +1 -1
  45. package/es5/locale/ca.js +7 -1
  46. package/es5/locale/ca.js.map +1 -1
  47. package/es5/locale/ckb.js +7 -1
  48. package/es5/locale/ckb.js.map +1 -1
  49. package/es5/locale/cs.js +7 -1
  50. package/es5/locale/cs.js.map +1 -1
  51. package/es5/locale/da.js +7 -1
  52. package/es5/locale/da.js.map +1 -1
  53. package/es5/locale/de.js +7 -1
  54. package/es5/locale/de.js.map +1 -1
  55. package/es5/locale/el.js +7 -1
  56. package/es5/locale/el.js.map +1 -1
  57. package/es5/locale/en.js +7 -1
  58. package/es5/locale/en.js.map +1 -1
  59. package/es5/locale/es.js +7 -1
  60. package/es5/locale/es.js.map +1 -1
  61. package/es5/locale/et.js +7 -1
  62. package/es5/locale/et.js.map +1 -1
  63. package/es5/locale/fa.js +7 -1
  64. package/es5/locale/fa.js.map +1 -1
  65. package/es5/locale/fi.js +7 -1
  66. package/es5/locale/fi.js.map +1 -1
  67. package/es5/locale/fr.js +7 -1
  68. package/es5/locale/fr.js.map +1 -1
  69. package/es5/locale/he.js +7 -1
  70. package/es5/locale/he.js.map +1 -1
  71. package/es5/locale/hr.js +7 -1
  72. package/es5/locale/hr.js.map +1 -1
  73. package/es5/locale/hu.js +7 -1
  74. package/es5/locale/hu.js.map +1 -1
  75. package/es5/locale/id.js +7 -1
  76. package/es5/locale/id.js.map +1 -1
  77. package/es5/locale/it.js +7 -1
  78. package/es5/locale/it.js.map +1 -1
  79. package/es5/locale/ja.js +7 -1
  80. package/es5/locale/ja.js.map +1 -1
  81. package/es5/locale/ko.js +7 -1
  82. package/es5/locale/ko.js.map +1 -1
  83. package/es5/locale/lt.js +7 -1
  84. package/es5/locale/lt.js.map +1 -1
  85. package/es5/locale/lv.js +7 -1
  86. package/es5/locale/lv.js.map +1 -1
  87. package/es5/locale/nl.js +7 -1
  88. package/es5/locale/nl.js.map +1 -1
  89. package/es5/locale/no.js +7 -1
  90. package/es5/locale/no.js.map +1 -1
  91. package/es5/locale/pl.js +7 -1
  92. package/es5/locale/pl.js.map +1 -1
  93. package/es5/locale/pt.js +7 -1
  94. package/es5/locale/pt.js.map +1 -1
  95. package/es5/locale/ro.js +7 -1
  96. package/es5/locale/ro.js.map +1 -1
  97. package/es5/locale/ru.js +7 -1
  98. package/es5/locale/ru.js.map +1 -1
  99. package/es5/locale/sk.js +7 -1
  100. package/es5/locale/sk.js.map +1 -1
  101. package/es5/locale/sl.js +7 -1
  102. package/es5/locale/sl.js.map +1 -1
  103. package/es5/locale/sr-Cyrl.js +7 -1
  104. package/es5/locale/sr-Cyrl.js.map +1 -1
  105. package/es5/locale/sr-Latn.js +7 -1
  106. package/es5/locale/sr-Latn.js.map +1 -1
  107. package/es5/locale/sv.js +7 -1
  108. package/es5/locale/sv.js.map +1 -1
  109. package/es5/locale/th.js +7 -1
  110. package/es5/locale/th.js.map +1 -1
  111. package/es5/locale/tr.js +7 -1
  112. package/es5/locale/tr.js.map +1 -1
  113. package/es5/locale/uk.js +7 -1
  114. package/es5/locale/uk.js.map +1 -1
  115. package/es5/locale/vi.js +7 -1
  116. package/es5/locale/vi.js.map +1 -1
  117. package/es5/locale/zh-Hans.js +7 -1
  118. package/es5/locale/zh-Hans.js.map +1 -1
  119. package/es5/locale/zh-Hant.js +7 -1
  120. package/es5/locale/zh-Hant.js.map +1 -1
  121. package/es5/mixins/groupable/index.js +9 -1
  122. package/es5/mixins/groupable/index.js.map +1 -1
  123. package/es5/{components/VCalendar/mixins/mouse.js → mixins/mouse/index.js} +14 -6
  124. package/es5/mixins/mouse/index.js.map +1 -0
  125. package/es5/mixins/validatable/index.js +14 -4
  126. package/es5/mixins/validatable/index.js.map +1 -1
  127. package/lib/components/VCalendar/mixins/calendar-base.js +1 -1
  128. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  129. package/lib/components/VDataTable/VDataTable.js +56 -24
  130. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  131. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +3 -1
  132. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  133. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +3 -1
  134. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  135. package/lib/components/VInput/VInput.js +11 -1
  136. package/lib/components/VInput/VInput.js.map +1 -1
  137. package/lib/components/VItemGroup/VItem.js +14 -3
  138. package/lib/components/VItemGroup/VItem.js.map +1 -1
  139. package/lib/components/VMenu/VMenu.js +7 -0
  140. package/lib/components/VMenu/VMenu.js.map +1 -1
  141. package/lib/components/VPagination/VPagination.js +8 -2
  142. package/lib/components/VPagination/VPagination.js.map +1 -1
  143. package/lib/components/VRadioGroup/VRadio.js +14 -4
  144. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  145. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +10 -5
  146. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  147. package/lib/components/VSlideGroup/VSlideGroup.js +5 -1
  148. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  149. package/lib/components/VTabs/VTab.js +4 -0
  150. package/lib/components/VTabs/VTab.js.map +1 -1
  151. package/lib/components/VTimePicker/VTimePicker.js +19 -0
  152. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  153. package/lib/framework.js +1 -1
  154. package/lib/locale/af.js +7 -1
  155. package/lib/locale/af.js.map +1 -1
  156. package/lib/locale/ar.js +7 -1
  157. package/lib/locale/ar.js.map +1 -1
  158. package/lib/locale/az.js +7 -1
  159. package/lib/locale/az.js.map +1 -1
  160. package/lib/locale/bg.js +7 -1
  161. package/lib/locale/bg.js.map +1 -1
  162. package/lib/locale/ca.js +7 -1
  163. package/lib/locale/ca.js.map +1 -1
  164. package/lib/locale/ckb.js +7 -1
  165. package/lib/locale/ckb.js.map +1 -1
  166. package/lib/locale/cs.js +7 -1
  167. package/lib/locale/cs.js.map +1 -1
  168. package/lib/locale/da.js +7 -1
  169. package/lib/locale/da.js.map +1 -1
  170. package/lib/locale/de.js +7 -1
  171. package/lib/locale/de.js.map +1 -1
  172. package/lib/locale/el.js +7 -1
  173. package/lib/locale/el.js.map +1 -1
  174. package/lib/locale/en.js +7 -1
  175. package/lib/locale/en.js.map +1 -1
  176. package/lib/locale/es.js +7 -1
  177. package/lib/locale/es.js.map +1 -1
  178. package/lib/locale/et.js +7 -1
  179. package/lib/locale/et.js.map +1 -1
  180. package/lib/locale/fa.js +7 -1
  181. package/lib/locale/fa.js.map +1 -1
  182. package/lib/locale/fi.js +7 -1
  183. package/lib/locale/fi.js.map +1 -1
  184. package/lib/locale/fr.js +7 -1
  185. package/lib/locale/fr.js.map +1 -1
  186. package/lib/locale/he.js +7 -1
  187. package/lib/locale/he.js.map +1 -1
  188. package/lib/locale/hr.js +7 -1
  189. package/lib/locale/hr.js.map +1 -1
  190. package/lib/locale/hu.js +7 -1
  191. package/lib/locale/hu.js.map +1 -1
  192. package/lib/locale/id.js +7 -1
  193. package/lib/locale/id.js.map +1 -1
  194. package/lib/locale/it.js +7 -1
  195. package/lib/locale/it.js.map +1 -1
  196. package/lib/locale/ja.js +7 -1
  197. package/lib/locale/ja.js.map +1 -1
  198. package/lib/locale/ko.js +7 -1
  199. package/lib/locale/ko.js.map +1 -1
  200. package/lib/locale/lt.js +7 -1
  201. package/lib/locale/lt.js.map +1 -1
  202. package/lib/locale/lv.js +7 -1
  203. package/lib/locale/lv.js.map +1 -1
  204. package/lib/locale/nl.js +7 -1
  205. package/lib/locale/nl.js.map +1 -1
  206. package/lib/locale/no.js +7 -1
  207. package/lib/locale/no.js.map +1 -1
  208. package/lib/locale/pl.js +7 -1
  209. package/lib/locale/pl.js.map +1 -1
  210. package/lib/locale/pt.js +7 -1
  211. package/lib/locale/pt.js.map +1 -1
  212. package/lib/locale/ro.js +7 -1
  213. package/lib/locale/ro.js.map +1 -1
  214. package/lib/locale/ru.js +7 -1
  215. package/lib/locale/ru.js.map +1 -1
  216. package/lib/locale/sk.js +7 -1
  217. package/lib/locale/sk.js.map +1 -1
  218. package/lib/locale/sl.js +7 -1
  219. package/lib/locale/sl.js.map +1 -1
  220. package/lib/locale/sr-Cyrl.js +7 -1
  221. package/lib/locale/sr-Cyrl.js.map +1 -1
  222. package/lib/locale/sr-Latn.js +7 -1
  223. package/lib/locale/sr-Latn.js.map +1 -1
  224. package/lib/locale/sv.js +7 -1
  225. package/lib/locale/sv.js.map +1 -1
  226. package/lib/locale/th.js +7 -1
  227. package/lib/locale/th.js.map +1 -1
  228. package/lib/locale/tr.js +7 -1
  229. package/lib/locale/tr.js.map +1 -1
  230. package/lib/locale/uk.js +7 -1
  231. package/lib/locale/uk.js.map +1 -1
  232. package/lib/locale/vi.js +7 -1
  233. package/lib/locale/vi.js.map +1 -1
  234. package/lib/locale/zh-Hans.js +7 -1
  235. package/lib/locale/zh-Hans.js.map +1 -1
  236. package/lib/locale/zh-Hant.js +7 -1
  237. package/lib/locale/zh-Hant.js.map +1 -1
  238. package/lib/mixins/groupable/index.js +9 -1
  239. package/lib/mixins/groupable/index.js.map +1 -1
  240. package/lib/{components/VCalendar/mixins/mouse.js → mixins/mouse/index.js} +12 -6
  241. package/lib/mixins/mouse/index.js.map +1 -0
  242. package/lib/mixins/validatable/index.js +14 -4
  243. package/lib/mixins/validatable/index.js.map +1 -1
  244. package/package.json +2 -2
  245. package/src/components/VCalendar/mixins/calendar-base.ts +1 -1
  246. package/src/components/VDataTable/VDataTable.ts +69 -21
  247. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +28 -0
  248. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +15 -15
  249. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +1 -1
  250. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +1 -1
  251. package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +18 -18
  252. package/src/components/VForm/__tests__/VForm.spec.ts +22 -1
  253. package/src/components/VInput/VInput.ts +12 -1
  254. package/src/components/VInput/__tests__/VInput.spec.ts +7 -0
  255. package/src/components/VItemGroup/VItem.sass +4 -0
  256. package/src/components/VItemGroup/VItem.ts +12 -1
  257. package/src/components/VMenu/VMenu.ts +8 -1
  258. package/src/components/VMenu/__tests__/VMenu.spec.ts +130 -0
  259. package/src/components/VPagination/VPagination.ts +17 -12
  260. package/src/components/VRadioGroup/VRadio.ts +10 -4
  261. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +2 -2
  262. package/src/components/VSkeletonLoader/VSkeletonLoader.ts +10 -5
  263. package/src/components/VSkeletonLoader/__tests__/VSkeletonLoader.spec.ts +7 -0
  264. package/src/components/VSkeletonLoader/__tests__/__snapshots__/VSkeletonLoader.spec.ts.snap +31 -0
  265. package/src/components/VSlideGroup/VSlideGroup.ts +4 -0
  266. package/src/components/VTabs/VTab.ts +5 -0
  267. package/src/components/VTabs/VTabs.sass +1 -1
  268. package/src/components/VTabs/__tests__/VTabs.spec.ts +22 -0
  269. package/src/components/VTabs/_variables.scss +1 -0
  270. package/src/components/VTextField/__tests__/VTextField.spec.ts +15 -8
  271. package/src/components/VTimePicker/VTimePicker.ts +18 -0
  272. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +65 -0
  273. package/src/locale/af.ts +6 -0
  274. package/src/locale/ar.ts +6 -0
  275. package/src/locale/az.ts +6 -0
  276. package/src/locale/bg.ts +6 -0
  277. package/src/locale/ca.ts +6 -0
  278. package/src/locale/ckb.ts +6 -0
  279. package/src/locale/cs.ts +6 -0
  280. package/src/locale/da.ts +6 -0
  281. package/src/locale/de.ts +6 -0
  282. package/src/locale/el.ts +6 -0
  283. package/src/locale/en.ts +6 -0
  284. package/src/locale/es.ts +6 -0
  285. package/src/locale/et.ts +6 -0
  286. package/src/locale/fa.ts +6 -0
  287. package/src/locale/fi.ts +6 -0
  288. package/src/locale/fr.ts +6 -0
  289. package/src/locale/he.ts +6 -0
  290. package/src/locale/hr.ts +6 -0
  291. package/src/locale/hu.ts +6 -0
  292. package/src/locale/id.ts +6 -0
  293. package/src/locale/it.ts +6 -0
  294. package/src/locale/ja.ts +6 -0
  295. package/src/locale/ko.ts +6 -0
  296. package/src/locale/lt.ts +6 -0
  297. package/src/locale/lv.ts +6 -0
  298. package/src/locale/nl.ts +6 -0
  299. package/src/locale/no.ts +6 -0
  300. package/src/locale/pl.ts +6 -0
  301. package/src/locale/pt.ts +6 -0
  302. package/src/locale/ro.ts +6 -0
  303. package/src/locale/ru.ts +6 -0
  304. package/src/locale/sk.ts +6 -0
  305. package/src/locale/sl.ts +6 -0
  306. package/src/locale/sr-Cyrl.ts +6 -0
  307. package/src/locale/sr-Latn.ts +6 -0
  308. package/src/locale/sv.ts +6 -0
  309. package/src/locale/th.ts +6 -0
  310. package/src/locale/tr.ts +6 -0
  311. package/src/locale/uk.ts +6 -0
  312. package/src/locale/vi.ts +6 -0
  313. package/src/locale/zh-Hans.ts +6 -0
  314. package/src/locale/zh-Hant.ts +6 -0
  315. package/src/mixins/groupable/index.ts +9 -2
  316. package/src/{components/VCalendar/mixins → mixins/mouse}/__tests__/mouse.spec.ts +2 -2
  317. package/src/{components/VCalendar/mixins/mouse.ts → mixins/mouse/index.ts} +10 -4
  318. package/src/mixins/validatable/index.ts +10 -4
  319. package/src/services/presets/__tests__/__snapshots__/presets.spec.ts.snap +2 -2
  320. package/src/styles/settings/_variables.scss +3 -2
  321. package/types/index.d.ts +6 -0
  322. package/es5/components/VCalendar/mixins/mouse.js.map +0 -1
  323. package/lib/components/VCalendar/mixins/mouse.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanelHeader.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport { VFadeTransition } from '../transitions'\nimport VExpansionPanel from './VExpansionPanel'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor<Vue>>('expansionPanel', 'v-expansion-panel-header', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n expansionPanel: InstanceType<typeof VExpansionPanel>\n}\n\nexport default baseMixins.extend<options>().extend({\n name: 'v-expansion-panel-header',\n\n directives: { ripple },\n\n props: {\n disableIconRotate: Boolean,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n data: () => ({\n hasMousedown: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel-header--active': this.isActive,\n 'v-expansion-panel-header--mousedown': this.hasMousedown,\n }\n },\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n isDisabled (): boolean {\n return this.expansionPanel.isDisabled\n },\n isReadonly (): boolean {\n return this.expansionPanel.isReadonly\n },\n },\n\n created () {\n this.expansionPanel.registerHeader(this)\n },\n\n beforeDestroy () {\n this.expansionPanel.unregisterHeader()\n },\n\n methods: {\n onClick (e: MouseEvent) {\n this.$emit('click', e)\n },\n genIcon () {\n const icon = getSlot(this, 'actions') ||\n [this.$createElement(VIcon, this.expandIcon)]\n\n return this.$createElement(VFadeTransition, [\n this.$createElement('div', {\n staticClass: 'v-expansion-panel-header__icon',\n class: {\n 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate,\n },\n directives: [{\n name: 'show',\n value: !this.isDisabled,\n }],\n }, icon),\n ])\n },\n },\n\n render (h): VNode {\n return h('button', this.setBackgroundColor(this.color, {\n staticClass: 'v-expansion-panel-header',\n class: this.classes,\n attrs: {\n tabindex: this.isDisabled ? -1 : null,\n type: 'button',\n 'aria-expanded': this.isActive,\n },\n directives: [{\n name: 'ripple',\n value: this.ripple,\n }],\n on: {\n ...this.$listeners,\n click: this.onClick,\n mousedown: () => (this.hasMousedown = true),\n mouseup: () => (this.hasMousedown = false),\n },\n }), [\n getSlot(this, 'default', { open: this.isActive }, true),\n this.hideActions || this.genIcon(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanelHeader.js"}
1
+ {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanelHeader.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport { VFadeTransition } from '../transitions'\nimport VExpansionPanel from './VExpansionPanel'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor<Vue>>('expansionPanel', 'v-expansion-panel-header', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n expansionPanel: InstanceType<typeof VExpansionPanel>\n}\n\nexport default baseMixins.extend<options>().extend({\n name: 'v-expansion-panel-header',\n\n directives: { ripple },\n\n props: {\n disableIconRotate: Boolean,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n data: () => ({\n hasMousedown: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel-header--active': this.isActive,\n 'v-expansion-panel-header--mousedown': this.hasMousedown,\n }\n },\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n isDisabled (): boolean {\n return this.expansionPanel.isDisabled\n },\n isReadonly (): boolean {\n return this.expansionPanel.isReadonly\n },\n },\n\n created () {\n this.expansionPanel.registerHeader(this)\n },\n\n beforeDestroy () {\n this.expansionPanel.unregisterHeader()\n },\n\n methods: {\n onClick (e: MouseEvent) {\n this.$emit('click', e)\n },\n genIcon () {\n const icon = getSlot(this, 'actions', { open: this.isActive }) ||\n [this.$createElement(VIcon, this.expandIcon)]\n\n return this.$createElement(VFadeTransition, [\n this.$createElement('div', {\n staticClass: 'v-expansion-panel-header__icon',\n class: {\n 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate,\n },\n directives: [{\n name: 'show',\n value: !this.isDisabled,\n }],\n }, icon),\n ])\n },\n },\n\n render (h): VNode {\n return h('button', this.setBackgroundColor(this.color, {\n staticClass: 'v-expansion-panel-header',\n class: this.classes,\n attrs: {\n tabindex: this.isDisabled ? -1 : null,\n type: 'button',\n 'aria-expanded': this.isActive,\n },\n directives: [{\n name: 'ripple',\n value: this.ripple,\n }],\n on: {\n ...this.$listeners,\n click: this.onClick,\n mousedown: () => (this.hasMousedown = true),\n mouseup: () => (this.hasMousedown = false),\n },\n }), [\n getSlot(this, 'default', { open: this.isActive }, true),\n this.hideActions || this.genIcon(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanelHeader.js"}
@@ -154,12 +154,23 @@ var _default2 = baseMixins.extend().extend({
154
154
  var _this2 = this;
155
155
 
156
156
  var extraData = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
157
+
158
+ var _a;
159
+
157
160
  var icon = this["".concat(type, "Icon")];
158
161
  var eventName = "click:".concat((0, _helpers.kebabCase)(type));
159
162
  var hasListener = !!(this.listeners$[eventName] || cb);
163
+ var localeKey = {
164
+ prepend: 'prependAction',
165
+ prependInner: 'prependAction',
166
+ append: 'appendAction',
167
+ appendOuter: 'appendAction',
168
+ clear: 'clear'
169
+ }[type];
170
+ var label = hasListener && localeKey ? this.$vuetify.lang.t("$vuetify.input.".concat(localeKey), (_a = this.label) !== null && _a !== void 0 ? _a : '') : undefined;
160
171
  var data = (0, _mergeData.default)({
161
172
  attrs: {
162
- 'aria-label': hasListener ? (0, _helpers.kebabCase)(type).split('-')[0] + ' icon' : undefined,
173
+ 'aria-label': label,
163
174
  color: this.validationState,
164
175
  dark: this.dark,
165
176
  disabled: this.isDisabled,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VInput/VInput.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VInput.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport VLabel from '../VLabel'\nimport VMessages from '../VMessages'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Validatable from '../../mixins/validatable'\n\n// Utilities\nimport {\n convertToUnit,\n getSlot,\n kebabCase,\n} from '../../util/helpers'\nimport mergeData from '../../util/mergeData'\n\n// Types\nimport { VNode, VNodeData, PropType } from 'vue'\nimport mixins from '../../util/mixins'\nimport { InputValidationRule } from 'vuetify/types'\n\nconst baseMixins = mixins(\n BindsAttrs,\n Validatable,\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n /* eslint-disable-next-line camelcase */\n $_modelEvent: string\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-input',\n\n inheritAttrs: false,\n\n props: {\n appendIcon: String,\n backgroundColor: {\n type: String,\n default: '',\n },\n dense: Boolean,\n height: [Number, String],\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n hideSpinButtons: Boolean,\n hint: String,\n id: String,\n label: String,\n loading: Boolean,\n persistentHint: Boolean,\n prependIcon: String,\n value: null as any as PropType<any>,\n },\n\n data () {\n return {\n lazyValue: this.value,\n hasMouseDown: false,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-input--has-state': this.hasState,\n 'v-input--hide-details': !this.showDetails,\n 'v-input--is-label-active': this.isLabelActive,\n 'v-input--is-dirty': this.isDirty,\n 'v-input--is-disabled': this.isDisabled,\n 'v-input--is-focused': this.isFocused,\n // <v-switch loading>.loading === '' so we can't just cast to boolean\n 'v-input--is-loading': this.loading !== false && this.loading != null,\n 'v-input--is-readonly': this.isReadonly,\n 'v-input--dense': this.dense,\n 'v-input--hide-spin-buttons': this.hideSpinButtons,\n ...this.themeClasses,\n }\n },\n computedId (): string {\n return this.id || `input-${this._uid}`\n },\n hasDetails (): boolean {\n return this.messagesToDisplay.length > 0\n },\n hasHint (): boolean {\n return !this.hasMessages &&\n !!this.hint &&\n (this.persistentHint || this.isFocused)\n },\n hasLabel (): boolean {\n return !!(this.$slots.label || this.label)\n },\n // Proxy for `lazyValue`\n // This allows an input\n // to function without\n // a provided model\n internalValue: {\n get (): any {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n this.$emit(this.$_modelEvent, val)\n },\n },\n isDirty (): boolean {\n return !!this.lazyValue\n },\n isLabelActive (): boolean {\n return this.isDirty\n },\n messagesToDisplay (): string[] {\n if (this.hasHint) return [this.hint]\n\n if (!this.hasMessages) return []\n\n return this.validations.map((validation: string | InputValidationRule) => {\n if (typeof validation === 'string') return validation\n\n const validationResult = validation(this.internalValue)\n\n return typeof validationResult === 'string' ? validationResult : ''\n }).filter(message => message !== '')\n },\n showDetails (): boolean {\n return this.hideDetails === false || (this.hideDetails === 'auto' && this.hasDetails)\n },\n },\n\n watch: {\n value (val) {\n this.lazyValue = val\n },\n },\n\n beforeCreate () {\n // v-radio-group needs to emit a different event\n // https://github.com/vuetifyjs/vuetify/issues/4752\n this.$_modelEvent = (this.$options.model && this.$options.model.event) || 'input'\n },\n\n methods: {\n genContent () {\n return [\n this.genPrependSlot(),\n this.genControl(),\n this.genAppendSlot(),\n ]\n },\n genControl () {\n return this.$createElement('div', {\n staticClass: 'v-input__control',\n attrs: { title: this.attrs$.title },\n }, [\n this.genInputSlot(),\n this.genMessages(),\n ])\n },\n genDefaultSlot () {\n return [\n this.genLabel(),\n this.$slots.default,\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData: VNodeData = {}\n ) {\n const icon = (this as any)[`${type}Icon`]\n const eventName = `click:${kebabCase(type)}`\n const hasListener = !!(this.listeners$[eventName] || cb)\n\n const data = mergeData({\n attrs: {\n 'aria-label': hasListener ? kebabCase(type).split('-')[0] + ' icon' : undefined,\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n light: this.light,\n tabindex: type === 'clear' ? -1 : undefined,\n },\n on: !hasListener\n ? undefined\n : {\n click: (e: Event) => {\n e.preventDefault()\n e.stopPropagation()\n\n this.$emit(eventName, e)\n cb && cb(e)\n },\n // Container has g event that will\n // trigger menu open if enclosed\n mouseup: (e: Event) => {\n e.preventDefault()\n e.stopPropagation()\n },\n },\n }, extraData)\n\n return this.$createElement('div', {\n staticClass: `v-input__icon`,\n class: type ? `v-input__icon--${kebabCase(type)}` : undefined,\n }, [\n this.$createElement(\n VIcon,\n data,\n icon\n ),\n ])\n },\n genInputSlot () {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor, {\n staticClass: 'v-input__slot',\n style: { height: convertToUnit(this.height) },\n on: {\n click: this.onClick,\n mousedown: this.onMouseDown,\n mouseup: this.onMouseUp,\n },\n ref: 'input-slot',\n }), [this.genDefaultSlot()])\n },\n genLabel () {\n if (!this.hasLabel) return null\n\n return this.$createElement(VLabel, {\n props: {\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n focused: this.hasState,\n for: this.computedId,\n light: this.light,\n },\n }, this.$slots.label || this.label)\n },\n genMessages () {\n if (!this.showDetails) return null\n\n return this.$createElement(VMessages, {\n props: {\n color: this.hasHint ? '' : this.validationState,\n dark: this.dark,\n light: this.light,\n value: this.messagesToDisplay,\n },\n attrs: {\n role: this.hasMessages ? 'alert' : null,\n },\n scopedSlots: {\n default: props => getSlot(this, 'message', props),\n },\n })\n },\n genSlot (\n type: string,\n location: string,\n slot: (VNode | VNode[])[]\n ) {\n if (!slot.length) return null\n\n const ref = `${type}-${location}`\n\n return this.$createElement('div', {\n staticClass: `v-input__${ref}`,\n ref,\n }, slot)\n },\n genPrependSlot () {\n const slot = []\n\n if (this.$slots.prepend) {\n slot.push(this.$slots.prepend)\n } else if (this.prependIcon) {\n slot.push(this.genIcon('prepend'))\n }\n\n return this.genSlot('prepend', 'outer', slot)\n },\n genAppendSlot () {\n const slot = []\n\n // Append icon for text field was really\n // an appended inner icon, v-text-field\n // will overwrite this method in order to obtain\n // backwards compat\n if (this.$slots.append) {\n slot.push(this.$slots.append)\n } else if (this.appendIcon) {\n slot.push(this.genIcon('append'))\n }\n\n return this.genSlot('append', 'outer', slot)\n },\n onClick (e: Event) {\n this.$emit('click', e)\n },\n onMouseDown (e: Event) {\n this.hasMouseDown = true\n this.$emit('mousedown', e)\n },\n onMouseUp (e: Event) {\n this.hasMouseDown = false\n this.$emit('mouseup', e)\n },\n },\n\n render (h): VNode {\n return h('div', this.setTextColor(this.validationState, {\n staticClass: 'v-input',\n class: this.classes,\n }), this.genContent())\n },\n})\n"],"sourceRoot":"","file":"VInput.js"}
1
+ {"version":3,"sources":["../../../src/components/VInput/VInput.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VInput.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport VLabel from '../VLabel'\nimport VMessages from '../VMessages'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Validatable from '../../mixins/validatable'\n\n// Utilities\nimport {\n convertToUnit,\n getSlot,\n kebabCase,\n} from '../../util/helpers'\nimport mergeData from '../../util/mergeData'\n\n// Types\nimport { VNode, VNodeData, PropType } from 'vue'\nimport mixins from '../../util/mixins'\nimport { InputValidationRule } from 'vuetify/types'\n\nconst baseMixins = mixins(\n BindsAttrs,\n Validatable,\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n /* eslint-disable-next-line camelcase */\n $_modelEvent: string\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-input',\n\n inheritAttrs: false,\n\n props: {\n appendIcon: String,\n backgroundColor: {\n type: String,\n default: '',\n },\n dense: Boolean,\n height: [Number, String],\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n hideSpinButtons: Boolean,\n hint: String,\n id: String,\n label: String,\n loading: Boolean,\n persistentHint: Boolean,\n prependIcon: String,\n value: null as any as PropType<any>,\n },\n\n data () {\n return {\n lazyValue: this.value,\n hasMouseDown: false,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-input--has-state': this.hasState,\n 'v-input--hide-details': !this.showDetails,\n 'v-input--is-label-active': this.isLabelActive,\n 'v-input--is-dirty': this.isDirty,\n 'v-input--is-disabled': this.isDisabled,\n 'v-input--is-focused': this.isFocused,\n // <v-switch loading>.loading === '' so we can't just cast to boolean\n 'v-input--is-loading': this.loading !== false && this.loading != null,\n 'v-input--is-readonly': this.isReadonly,\n 'v-input--dense': this.dense,\n 'v-input--hide-spin-buttons': this.hideSpinButtons,\n ...this.themeClasses,\n }\n },\n computedId (): string {\n return this.id || `input-${this._uid}`\n },\n hasDetails (): boolean {\n return this.messagesToDisplay.length > 0\n },\n hasHint (): boolean {\n return !this.hasMessages &&\n !!this.hint &&\n (this.persistentHint || this.isFocused)\n },\n hasLabel (): boolean {\n return !!(this.$slots.label || this.label)\n },\n // Proxy for `lazyValue`\n // This allows an input\n // to function without\n // a provided model\n internalValue: {\n get (): any {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n this.$emit(this.$_modelEvent, val)\n },\n },\n isDirty (): boolean {\n return !!this.lazyValue\n },\n isLabelActive (): boolean {\n return this.isDirty\n },\n messagesToDisplay (): string[] {\n if (this.hasHint) return [this.hint]\n\n if (!this.hasMessages) return []\n\n return this.validations.map((validation: string | InputValidationRule) => {\n if (typeof validation === 'string') return validation\n\n const validationResult = validation(this.internalValue)\n\n return typeof validationResult === 'string' ? validationResult : ''\n }).filter(message => message !== '')\n },\n showDetails (): boolean {\n return this.hideDetails === false || (this.hideDetails === 'auto' && this.hasDetails)\n },\n },\n\n watch: {\n value (val) {\n this.lazyValue = val\n },\n },\n\n beforeCreate () {\n // v-radio-group needs to emit a different event\n // https://github.com/vuetifyjs/vuetify/issues/4752\n this.$_modelEvent = (this.$options.model && this.$options.model.event) || 'input'\n },\n\n methods: {\n genContent () {\n return [\n this.genPrependSlot(),\n this.genControl(),\n this.genAppendSlot(),\n ]\n },\n genControl () {\n return this.$createElement('div', {\n staticClass: 'v-input__control',\n attrs: { title: this.attrs$.title },\n }, [\n this.genInputSlot(),\n this.genMessages(),\n ])\n },\n genDefaultSlot () {\n return [\n this.genLabel(),\n this.$slots.default,\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData: VNodeData = {}\n ) {\n const icon = (this as any)[`${type}Icon`]\n const eventName = `click:${kebabCase(type)}`\n const hasListener = !!(this.listeners$[eventName] || cb)\n\n const localeKey = {\n prepend: 'prependAction',\n prependInner: 'prependAction',\n append: 'appendAction',\n appendOuter: 'appendAction',\n clear: 'clear',\n }[type]\n const label = hasListener && localeKey\n ? this.$vuetify.lang.t(`$vuetify.input.${localeKey}`, this.label ?? '')\n : undefined\n\n const data = mergeData({\n attrs: {\n 'aria-label': label,\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n light: this.light,\n tabindex: type === 'clear' ? -1 : undefined,\n },\n on: !hasListener\n ? undefined\n : {\n click: (e: Event) => {\n e.preventDefault()\n e.stopPropagation()\n\n this.$emit(eventName, e)\n cb && cb(e)\n },\n // Container has g event that will\n // trigger menu open if enclosed\n mouseup: (e: Event) => {\n e.preventDefault()\n e.stopPropagation()\n },\n },\n }, extraData)\n\n return this.$createElement('div', {\n staticClass: `v-input__icon`,\n class: type ? `v-input__icon--${kebabCase(type)}` : undefined,\n }, [\n this.$createElement(\n VIcon,\n data,\n icon\n ),\n ])\n },\n genInputSlot () {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor, {\n staticClass: 'v-input__slot',\n style: { height: convertToUnit(this.height) },\n on: {\n click: this.onClick,\n mousedown: this.onMouseDown,\n mouseup: this.onMouseUp,\n },\n ref: 'input-slot',\n }), [this.genDefaultSlot()])\n },\n genLabel () {\n if (!this.hasLabel) return null\n\n return this.$createElement(VLabel, {\n props: {\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n focused: this.hasState,\n for: this.computedId,\n light: this.light,\n },\n }, this.$slots.label || this.label)\n },\n genMessages () {\n if (!this.showDetails) return null\n\n return this.$createElement(VMessages, {\n props: {\n color: this.hasHint ? '' : this.validationState,\n dark: this.dark,\n light: this.light,\n value: this.messagesToDisplay,\n },\n attrs: {\n role: this.hasMessages ? 'alert' : null,\n },\n scopedSlots: {\n default: props => getSlot(this, 'message', props),\n },\n })\n },\n genSlot (\n type: string,\n location: string,\n slot: (VNode | VNode[])[]\n ) {\n if (!slot.length) return null\n\n const ref = `${type}-${location}`\n\n return this.$createElement('div', {\n staticClass: `v-input__${ref}`,\n ref,\n }, slot)\n },\n genPrependSlot () {\n const slot = []\n\n if (this.$slots.prepend) {\n slot.push(this.$slots.prepend)\n } else if (this.prependIcon) {\n slot.push(this.genIcon('prepend'))\n }\n\n return this.genSlot('prepend', 'outer', slot)\n },\n genAppendSlot () {\n const slot = []\n\n // Append icon for text field was really\n // an appended inner icon, v-text-field\n // will overwrite this method in order to obtain\n // backwards compat\n if (this.$slots.append) {\n slot.push(this.$slots.append)\n } else if (this.appendIcon) {\n slot.push(this.genIcon('append'))\n }\n\n return this.genSlot('append', 'outer', slot)\n },\n onClick (e: Event) {\n this.$emit('click', e)\n },\n onMouseDown (e: Event) {\n this.hasMouseDown = true\n this.$emit('mousedown', e)\n },\n onMouseUp (e: Event) {\n this.hasMouseDown = false\n this.$emit('mouseup', e)\n },\n },\n\n render (h): VNode {\n return h('div', this.setTextColor(this.validationState, {\n staticClass: 'v-input',\n class: this.classes,\n }), this.genContent())\n },\n})\n"],"sourceRoot":"","file":"VInput.js"}
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = exports.BaseItem = void 0;
7
7
 
8
+ require("../../../src/components/VItemGroup/VItem.sass");
9
+
8
10
  var _groupable = require("../../mixins/groupable");
9
11
 
10
12
  var _mixins = _interopRequireDefault(require("../../util/mixins"));
@@ -15,6 +17,10 @@ var _vue = _interopRequireDefault(require("vue"));
15
17
 
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
20
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
21
+
22
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
23
+
18
24
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
25
 
20
26
  /* @vue/component */
@@ -23,7 +29,8 @@ var BaseItem = _vue.default.extend({
23
29
  activeClass: String,
24
30
  value: {
25
31
  required: false
26
- }
32
+ },
33
+ disabled: Boolean
27
34
  },
28
35
  data: function data() {
29
36
  return {
@@ -36,6 +43,8 @@ var BaseItem = _vue.default.extend({
36
43
  }
37
44
  },
38
45
  render: function render() {
46
+ var _class;
47
+
39
48
  if (!this.$scopedSlots.default) {
40
49
  (0, _console.consoleWarn)('v-item is missing a default scopedSlot', this);
41
50
  return null;
@@ -61,8 +70,15 @@ var BaseItem = _vue.default.extend({
61
70
  }
62
71
 
63
72
  element.data = this._b(element.data || {}, element.tag, {
64
- class: _defineProperty({}, this.activeClass, this.isActive)
73
+ class: (_class = {}, _defineProperty(_class, this.activeClass, this.isActive), _defineProperty(_class, 'v-item--disabled', this.disabled), _class)
65
74
  });
75
+
76
+ if (this.disabled) {
77
+ element.data.attrs = _objectSpread(_objectSpread({}, element.data.attrs), {}, {
78
+ tabindex: -1
79
+ });
80
+ }
81
+
66
82
  return element;
67
83
  }
68
84
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VItemGroup/VItem.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;AAGA;;;;;;AAGA;AACO,IAAM,QAAQ,GAAG,aAAI,MAAJ,CAAW;AACjC,EAAA,KAAK,EAAE;AACL,IAAA,WAAW,EAAE,MADR;AAEL,IAAA,KAAK,EAAE;AACL,MAAA,QAAQ,EAAE;AADL;AAFF,GAD0B;AAQjC,EAAA,IAAI,EAAE;AAAA,WAAO;AACX,MAAA,QAAQ,EAAE;AADC,KAAP;AAAA,GAR2B;AAYjC,EAAA,OAAO,EAAE;AACP,IAAA,MADO,oBACD;AACJ,WAAK,QAAL,GAAgB,CAAC,KAAK,QAAtB;AACD;AAHM,GAZwB;AAkBjC,EAAA,MAlBiC,oBAkB3B;AACJ,QAAI,CAAC,KAAK,YAAL,CAAkB,OAAvB,EAAgC;AAC9B,gCAAY,wCAAZ,EAAsD,IAAtD;AAEA,aAAO,IAAP;AACD;;AAED,QAAI,OAAJ;AAEA;;AACA,QAAI,KAAK,YAAL,CAAkB,OAAtB,EAA+B;AAC7B,MAAA,OAAO,GAAG,KAAK,YAAL,CAAkB,OAAlB,CAA0B;AAClC,QAAA,MAAM,EAAE,KAAK,QADqB;AAElC,QAAA,MAAM,EAAE,KAAK;AAFqB,OAA1B,CAAV;AAID;;AAED,QAAI,KAAK,CAAC,OAAN,CAAc,OAAd,KAA0B,OAAO,CAAC,MAAR,KAAmB,CAAjD,EAAoD;AAClD,MAAA,OAAO,GAAG,OAAO,CAAC,CAAD,CAAjB;AACD;;AAED,QAAI,CAAC,OAAD,IAAY,KAAK,CAAC,OAAN,CAAc,OAAd,CAAZ,IAAsC,CAAC,OAAO,CAAC,GAAnD,EAAwD;AACtD,gCAAY,6CAAZ,EAA2D,IAA3D;AAEA,aAAO,OAAP;AACD;;AAED,IAAA,OAAO,CAAC,IAAR,GAAe,KAAK,EAAL,CAAQ,OAAO,CAAC,IAAR,IAAgB,EAAxB,EAA4B,OAAO,CAAC,GAApC,EAA0C;AACvD,MAAA,KAAK,sBAAK,KAAK,WAAV,EAAwB,KAAK,QAA7B;AADkD,KAA1C,CAAf;AAIA,WAAO,OAAP;AACD;AAlDgC,CAAX,CAAjB;;;;eAqDQ,qBACb,QADa,EAEb,wBAAiB,WAAjB,EAA8B,QAA9B,EAAwC,cAAxC,CAFa,EAGb,MAHa,CAGN;AACP,EAAA,IAAI,EAAE;AADC,CAHM,C","sourcesContent":["// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport Vue from 'vue'\nimport { VNode, ScopedSlotChildren } from 'vue/types/vnode'\n\n/* @vue/component */\nexport const BaseItem = Vue.extend({\n props: {\n activeClass: String,\n value: {\n required: false,\n },\n },\n\n data: () => ({\n isActive: false,\n }),\n\n methods: {\n toggle () {\n this.isActive = !this.isActive\n },\n },\n\n render (): VNode {\n if (!this.$scopedSlots.default) {\n consoleWarn('v-item is missing a default scopedSlot', this)\n\n return null as any\n }\n\n let element: VNode | ScopedSlotChildren\n\n /* istanbul ignore else */\n if (this.$scopedSlots.default) {\n element = this.$scopedSlots.default({\n active: this.isActive,\n toggle: this.toggle,\n })\n }\n\n if (Array.isArray(element) && element.length === 1) {\n element = element[0]\n }\n\n if (!element || Array.isArray(element) || !element.tag) {\n consoleWarn('v-item should only contain a single element', this)\n\n return element as any\n }\n\n element.data = this._b(element.data || {}, element.tag!, {\n class: { [this.activeClass]: this.isActive },\n })\n\n return element\n },\n})\n\nexport default mixins(\n BaseItem,\n GroupableFactory('itemGroup', 'v-item', 'v-item-group')\n).extend({\n name: 'v-item',\n})\n"],"sourceRoot":"","file":"VItem.js"}
1
+ {"version":3,"sources":["../../../src/components/VItemGroup/VItem.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AAGA;;AACA;;AAGA;;;;;;;;;;AAGA;AACO,IAAM,QAAQ,GAAG,aAAI,MAAJ,CAAW;AACjC,EAAA,KAAK,EAAE;AACL,IAAA,WAAW,EAAE,MADR;AAEL,IAAA,KAAK,EAAE;AACL,MAAA,QAAQ,EAAE;AADL,KAFF;AAKL,IAAA,QAAQ,EAAE;AALL,GAD0B;AASjC,EAAA,IAAI,EAAE;AAAA,WAAO;AACX,MAAA,QAAQ,EAAE;AADC,KAAP;AAAA,GAT2B;AAajC,EAAA,OAAO,EAAE;AACP,IAAA,MADO,oBACD;AACJ,WAAK,QAAL,GAAgB,CAAC,KAAK,QAAtB;AACD;AAHM,GAbwB;AAmBjC,EAAA,MAnBiC,oBAmB3B;AAAA;;AACJ,QAAI,CAAC,KAAK,YAAL,CAAkB,OAAvB,EAAgC;AAC9B,gCAAY,wCAAZ,EAAsD,IAAtD;AAEA,aAAO,IAAP;AACD;;AAED,QAAI,OAAJ;AAEA;;AACA,QAAI,KAAK,YAAL,CAAkB,OAAtB,EAA+B;AAC7B,MAAA,OAAO,GAAG,KAAK,YAAL,CAAkB,OAAlB,CAA0B;AAClC,QAAA,MAAM,EAAE,KAAK,QADqB;AAElC,QAAA,MAAM,EAAE,KAAK;AAFqB,OAA1B,CAAV;AAID;;AAED,QAAI,KAAK,CAAC,OAAN,CAAc,OAAd,KAA0B,OAAO,CAAC,MAAR,KAAmB,CAAjD,EAAoD;AAClD,MAAA,OAAO,GAAG,OAAO,CAAC,CAAD,CAAjB;AACD;;AAED,QAAI,CAAC,OAAD,IAAY,KAAK,CAAC,OAAN,CAAc,OAAd,CAAZ,IAAsC,CAAC,OAAO,CAAC,GAAnD,EAAwD;AACtD,gCAAY,6CAAZ,EAA2D,IAA3D;AAEA,aAAO,OAAP;AACD;;AAED,IAAA,OAAO,CAAC,IAAR,GAAe,KAAK,EAAL,CAAQ,OAAO,CAAC,IAAR,IAAgB,EAAxB,EAA4B,OAAO,CAAC,GAApC,EAA0C;AACvD,MAAA,KAAK,wCACF,KAAK,WADH,EACiB,KAAK,QADtB,2BAEH,kBAFG,EAEiB,KAAK,QAFtB;AADkD,KAA1C,CAAf;;AAOA,QAAI,KAAK,QAAT,EAAmB;AACjB,MAAA,OAAO,CAAC,IAAR,CAAa,KAAb,mCAA0B,OAAO,CAAC,IAAR,CAAa,KAAvC;AAA8C,QAAA,QAAQ,EAAE,CAAC;AAAzD;AACD;;AAED,WAAO,OAAP;AACD;AA1DgC,CAAX,CAAjB;;;;eA6DQ,qBACb,QADa,EAEb,wBAAiB,WAAjB,EAA8B,QAA9B,EAAwC,cAAxC,CAFa,EAGb,MAHa,CAGN;AACP,EAAA,IAAI,EAAE;AADC,CAHM,C","sourcesContent":["// Styles\nimport './VItem.sass'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport Vue from 'vue'\nimport { VNode, ScopedSlotChildren } from 'vue/types/vnode'\n\n/* @vue/component */\nexport const BaseItem = Vue.extend({\n props: {\n activeClass: String,\n value: {\n required: false,\n },\n disabled: Boolean,\n },\n\n data: () => ({\n isActive: false,\n }),\n\n methods: {\n toggle () {\n this.isActive = !this.isActive\n },\n },\n\n render (): VNode {\n if (!this.$scopedSlots.default) {\n consoleWarn('v-item is missing a default scopedSlot', this)\n\n return null as any\n }\n\n let element: VNode | ScopedSlotChildren\n\n /* istanbul ignore else */\n if (this.$scopedSlots.default) {\n element = this.$scopedSlots.default({\n active: this.isActive,\n toggle: this.toggle,\n })\n }\n\n if (Array.isArray(element) && element.length === 1) {\n element = element[0]\n }\n\n if (!element || Array.isArray(element) || !element.tag) {\n consoleWarn('v-item should only contain a single element', this)\n\n return element as any\n }\n\n element.data = this._b(element.data || {}, element.tag!, {\n class: {\n [this.activeClass]: this.isActive,\n 'v-item--disabled': this.disabled,\n },\n })\n\n if (this.disabled) {\n element.data.attrs = { ...element.data.attrs, tabindex: -1 }\n }\n\n return element\n },\n})\n\nexport default mixins(\n BaseItem,\n GroupableFactory('itemGroup', 'v-item', 'v-item-group')\n).extend({\n name: 'v-item',\n})\n"],"sourceRoot":"","file":"VItem.js"}
@@ -58,7 +58,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
58
58
  var baseMixins = (0, _mixins.default)(_dependent.default, _delayable.default, _returnable.default, _roundable.default, _themeable.default, _menuable.default);
59
59
  /* @vue/component */
60
60
 
61
- var _default = baseMixins.extend({
61
+ var _default2 = baseMixins.extend({
62
62
  name: 'v-menu',
63
63
  directives: {
64
64
  ClickOutside: _clickOutside.default,
@@ -97,6 +97,12 @@ var _default = baseMixins.extend({
97
97
  transition: {
98
98
  type: [Boolean, String],
99
99
  default: 'v-menu-transition'
100
+ },
101
+ contentProps: {
102
+ type: Object,
103
+ default: function _default() {
104
+ return {};
105
+ }
100
106
  }
101
107
  },
102
108
  data: function data() {
@@ -329,7 +335,7 @@ var _default = baseMixins.extend({
329
335
  var _this3 = this;
330
336
 
331
337
  var options = {
332
- attrs: _objectSpread(_objectSpread({}, this.getScopeIdAttrs()), {}, {
338
+ attrs: _objectSpread(_objectSpread(_objectSpread({}, this.getScopeIdAttrs()), this.contentProps), {}, {
333
339
  role: 'role' in this.$attrs ? this.$attrs.role : 'menu'
334
340
  }),
335
341
  staticClass: 'v-menu__content',
@@ -436,6 +442,8 @@ var _default = baseMixins.extend({
436
442
  onKeyDown: function onKeyDown(e) {
437
443
  var _this6 = this;
438
444
 
445
+ if (this.disableKeys) return;
446
+
439
447
  if (e.keyCode === _helpers.keyCodes.esc) {
440
448
  // Wait for dependent elements to close first
441
449
  setTimeout(function () {
@@ -496,5 +504,5 @@ var _default = baseMixins.extend({
496
504
  }
497
505
  });
498
506
 
499
- exports.default = _default;
507
+ exports.default = _default2;
500
508
  //# sourceMappingURL=VMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VMenu/VMenu.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\nimport Returnable from '../../mixins/returnable'\nimport Roundable from '../../mixins/roundable'\nimport Themeable from '../../mixins/themeable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\nimport Resize from '../../directives/resize'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\nimport goTo from '../../services/goto'\n\n// Types\nimport { VNode, VNodeDirective, VNodeData } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Delayable,\n Returnable,\n Roundable,\n Themeable,\n Menuable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-menu',\n\n directives: {\n ClickOutside,\n Resize,\n },\n\n provide (): object {\n return {\n isInMenu: true,\n // Pass theme through to default slot\n theme: this.theme,\n }\n },\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n closeOnContentClick: {\n type: Boolean,\n default: true,\n },\n disabled: Boolean,\n disableKeys: Boolean,\n maxHeight: {\n type: [Number, String],\n default: 'auto',\n },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left',\n },\n transition: {\n type: [Boolean, String],\n default: 'v-menu-transition',\n },\n },\n\n data () {\n return {\n calculatedTopAuto: 0,\n defaultOffset: 8,\n hasJustFocused: false,\n listIndex: -1,\n resizeTimeout: 0,\n selectedIndex: null as null | number,\n tiles: [] as HTMLElement[],\n }\n },\n\n computed: {\n activeTile (): HTMLElement | undefined {\n return this.tiles[this.listIndex]\n },\n calculatedLeft (): string {\n const menuWidth = Math.max(this.dimensions.content.width, parseFloat(this.calculatedMinWidth))\n\n if (!this.auto) return this.calcLeft(menuWidth) || '0'\n\n return convertToUnit(this.calcXOverflow(this.calcLeftAuto(), menuWidth)) || '0'\n },\n calculatedMaxHeight (): string {\n const height = this.auto\n ? '200px'\n : convertToUnit(this.maxHeight)\n\n return height || '0'\n },\n calculatedMaxWidth (): string {\n return convertToUnit(this.maxWidth) || '0'\n },\n calculatedMinWidth (): string {\n if (this.minWidth) {\n return convertToUnit(this.minWidth) || '0'\n }\n\n const minWidth = Math.min(\n this.dimensions.activator.width +\n Number(this.nudgeWidth) +\n (this.auto ? 16 : 0),\n Math.max(this.pageWidth - 24, 0)\n )\n\n const calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth))\n ? minWidth\n : parseInt(this.calculatedMaxWidth)\n\n return convertToUnit(Math.min(\n calculatedMaxWidth,\n minWidth\n )) || '0'\n },\n calculatedTop (): string {\n const top = !this.auto\n ? this.calcTop()\n : convertToUnit(this.calcYOverflow(this.calculatedTopAuto))\n\n return top || '0'\n },\n hasClickableTiles (): boolean {\n return Boolean(this.tiles.find(tile => tile.tabIndex > -1))\n },\n styles (): object {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n watch: {\n isActive (val) {\n if (!val) this.listIndex = -1\n },\n isContentActive (val) {\n this.hasJustFocused = val\n },\n listIndex (next, prev) {\n if (next in this.tiles) {\n const tile = this.tiles[next]\n tile.classList.add('v-list-item--highlighted')\n const scrollTop = this.$refs.content.scrollTop\n const contentHeight = this.$refs.content.clientHeight\n\n if (scrollTop > tile.offsetTop - 8) {\n goTo(tile.offsetTop - tile.clientHeight, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n } else if (scrollTop + contentHeight < tile.offsetTop + tile.clientHeight + 8) {\n goTo(tile.offsetTop - contentHeight + tile.clientHeight * 2, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n }\n }\n\n prev in this.tiles &&\n this.tiles[prev].classList.remove('v-list-item--highlighted')\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n mounted () {\n this.isActive && this.callActivate()\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(() => {\n // Once transitioning, calculate scroll and top position\n this.startTransition().then(() => {\n if (this.$refs.content) {\n this.calculatedTopAuto = this.calcTopAuto()\n this.auto && (this.$refs.content.scrollTop = this.calcScrollPosition())\n }\n })\n })\n },\n calcScrollPosition () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement\n const maxScrollTop = $el.scrollHeight - $el.offsetHeight\n\n return activeTile\n ? Math.min(maxScrollTop, Math.max(0, activeTile.offsetTop - $el.offsetHeight / 2 + activeTile.offsetHeight / 2))\n : $el.scrollTop\n },\n calcLeftAuto () {\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2)\n },\n calcTopAuto () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement | null\n\n if (!activeTile) {\n this.selectedIndex = null\n }\n\n if (this.offsetY || !activeTile) {\n return this.computedTop\n }\n\n this.selectedIndex = Array.from(this.tiles).indexOf(activeTile)\n\n const tileDistanceFromMenuTop = activeTile.offsetTop - this.calcScrollPosition()\n const firstTileOffsetTop = ($el.querySelector('.v-list-item') as HTMLElement).offsetTop\n\n return this.computedTop - tileDistanceFromMenuTop - firstTileOffsetTop - 1\n },\n changeListIndex (e: KeyboardEvent) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles()\n\n if (!this.isActive || !this.hasClickableTiles) {\n return\n } else if (e.keyCode === keyCodes.tab) {\n this.isActive = false\n return\n } else if (e.keyCode === keyCodes.down) {\n this.nextTile()\n } else if (e.keyCode === keyCodes.up) {\n this.prevTile()\n } else if (e.keyCode === keyCodes.end) {\n this.lastTile()\n } else if (e.keyCode === keyCodes.home) {\n this.firstTile()\n } else if (e.keyCode === keyCodes.enter && this.listIndex !== -1) {\n this.tiles[this.listIndex].click()\n } else { return }\n // One of the conditions was met, prevent default action (#2988)\n e.preventDefault()\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n\n return this.isActive &&\n !this._isDestroyed &&\n this.closeOnClick &&\n !this.$refs.content.contains(target)\n },\n genActivatorAttributes () {\n const attributes = Activatable.options.methods.genActivatorAttributes.call(this)\n\n if (this.activeTile && this.activeTile.id) {\n return {\n ...attributes,\n 'aria-activedescendant': this.activeTile.id,\n }\n }\n\n return attributes\n },\n genActivatorListeners () {\n const listeners = Menuable.options.methods.genActivatorListeners.call(this)\n\n if (!this.disableKeys) {\n listeners.keydown = this.onKeyDown\n }\n\n return listeners\n },\n genTransition (): VNode {\n const content = this.genContent()\n\n if (!this.transition) return content\n\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n }, [content])\n },\n genDirectives (): VNodeDirective[] {\n const directives: VNodeDirective[] = [{\n name: 'show',\n value: this.isContentActive,\n }]\n\n // Do not add click outside for hover menu\n if (!this.openOnHover && this.closeOnClick) {\n directives.push({\n name: 'click-outside',\n value: {\n handler: () => { this.isActive = false },\n closeConditional: this.closeConditional,\n include: () => [this.$el, ...this.getOpenDependentElements()],\n },\n })\n }\n\n return directives\n },\n genContent (): VNode {\n const options = {\n attrs: {\n ...this.getScopeIdAttrs(),\n role: 'role' in this.$attrs ? this.$attrs.role : 'menu',\n },\n staticClass: 'v-menu__content',\n class: {\n ...this.rootThemeClasses,\n ...this.roundedClasses,\n 'v-menu__content--auto': this.auto,\n 'v-menu__content--fixed': this.activatorFixed,\n menuable__content__active: this.isActive,\n [this.contentClass.trim()]: true,\n },\n style: this.styles,\n directives: this.genDirectives(),\n ref: 'content',\n on: {\n click: (e: Event) => {\n const target = e.target as HTMLElement\n\n if (target.getAttribute('disabled')) return\n if (this.closeOnContentClick) this.isActive = false\n },\n keydown: this.onKeyDown,\n },\n } as VNodeData\n\n if (this.$listeners.scroll) {\n options.on = options.on || {}\n options.on.scroll = this.$listeners.scroll\n }\n\n if (!this.disabled && this.openOnHover) {\n options.on = options.on || {}\n options.on.mouseenter = this.mouseEnterHandler\n }\n\n if (this.openOnHover) {\n options.on = options.on || {}\n options.on.mouseleave = this.mouseLeaveHandler\n }\n\n return this.$createElement('div', options, this.getContentSlot())\n },\n getTiles () {\n if (!this.$refs.content) return\n\n this.tiles = Array.from(this.$refs.content.querySelectorAll('.v-list-item, .v-divider, .v-subheader'))\n },\n mouseEnterHandler () {\n this.runDelay('open', () => {\n if (this.hasJustFocused) return\n\n this.hasJustFocused = true\n })\n },\n mouseLeaveHandler (e: MouseEvent) {\n // Prevent accidental re-activation\n this.runDelay('close', () => {\n if (this.$refs.content?.contains(e.relatedTarget as HTMLElement)) return\n\n requestAnimationFrame(() => {\n this.isActive = false\n this.callDeactivate()\n })\n })\n },\n nextTile () {\n const tile = this.tiles[this.listIndex + 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = -1\n this.nextTile()\n\n return\n }\n\n this.listIndex++\n if (tile.tabIndex === -1) this.nextTile()\n },\n prevTile () {\n const tile = this.tiles[this.listIndex - 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = this.tiles.length\n this.prevTile()\n\n return\n }\n\n this.listIndex--\n if (tile.tabIndex === -1) this.prevTile()\n },\n lastTile () {\n const tile = this.tiles[this.tiles.length - 1]\n\n if (!tile) return\n\n this.listIndex = this.tiles.length - 1\n\n if (tile.tabIndex === -1) this.prevTile()\n },\n firstTile () {\n const tile = this.tiles[0]\n\n if (!tile) return\n\n this.listIndex = 0\n\n if (tile.tabIndex === -1) this.nextTile()\n },\n onKeyDown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.esc) {\n // Wait for dependent elements to close first\n setTimeout(() => { this.isActive = false })\n const activator = this.getActivator()\n this.$nextTick(() => activator && activator.focus())\n } else if (\n !this.isActive &&\n [keyCodes.up, keyCodes.down].includes(e.keyCode)\n ) {\n this.isActive = true\n }\n\n // Allow for isActive watcher to generate tile list\n this.$nextTick(() => this.changeListIndex(e))\n },\n onResize () {\n if (!this.isActive) return\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth\n this.updateDimensions()\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout)\n this.resizeTimeout = window.setTimeout(this.updateDimensions, 100)\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-menu',\n class: {\n 'v-menu--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n },\n directives: [{\n arg: '500',\n name: 'resize',\n value: this.onResize,\n }],\n }\n\n return h('div', data, [\n !this.activator && this.genActivator(),\n this.showLazyContent(() => [\n this.$createElement(VThemeProvider, {\n props: {\n root: true,\n light: this.light,\n dark: this.dark,\n },\n }, [this.genTransition()]),\n ]),\n ])\n },\n})\n"],"sourceRoot":"","file":"VMenu.js"}
1
+ {"version":3,"sources":["../../../src/components/VMenu/VMenu.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\nimport Returnable from '../../mixins/returnable'\nimport Roundable from '../../mixins/roundable'\nimport Themeable from '../../mixins/themeable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\nimport Resize from '../../directives/resize'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\nimport goTo from '../../services/goto'\n\n// Types\nimport { VNode, VNodeDirective, VNodeData, PropType } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Delayable,\n Returnable,\n Roundable,\n Themeable,\n Menuable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-menu',\n\n directives: {\n ClickOutside,\n Resize,\n },\n\n provide (): object {\n return {\n isInMenu: true,\n // Pass theme through to default slot\n theme: this.theme,\n }\n },\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n closeOnContentClick: {\n type: Boolean,\n default: true,\n },\n disabled: Boolean,\n disableKeys: Boolean,\n maxHeight: {\n type: [Number, String],\n default: 'auto',\n },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left',\n },\n transition: {\n type: [Boolean, String],\n default: 'v-menu-transition',\n },\n contentProps: {\n type: Object as PropType<Record<string, any>>,\n default: () => ({}),\n },\n },\n\n data () {\n return {\n calculatedTopAuto: 0,\n defaultOffset: 8,\n hasJustFocused: false,\n listIndex: -1,\n resizeTimeout: 0,\n selectedIndex: null as null | number,\n tiles: [] as HTMLElement[],\n }\n },\n\n computed: {\n activeTile (): HTMLElement | undefined {\n return this.tiles[this.listIndex]\n },\n calculatedLeft (): string {\n const menuWidth = Math.max(this.dimensions.content.width, parseFloat(this.calculatedMinWidth))\n\n if (!this.auto) return this.calcLeft(menuWidth) || '0'\n\n return convertToUnit(this.calcXOverflow(this.calcLeftAuto(), menuWidth)) || '0'\n },\n calculatedMaxHeight (): string {\n const height = this.auto\n ? '200px'\n : convertToUnit(this.maxHeight)\n\n return height || '0'\n },\n calculatedMaxWidth (): string {\n return convertToUnit(this.maxWidth) || '0'\n },\n calculatedMinWidth (): string {\n if (this.minWidth) {\n return convertToUnit(this.minWidth) || '0'\n }\n\n const minWidth = Math.min(\n this.dimensions.activator.width +\n Number(this.nudgeWidth) +\n (this.auto ? 16 : 0),\n Math.max(this.pageWidth - 24, 0)\n )\n\n const calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth))\n ? minWidth\n : parseInt(this.calculatedMaxWidth)\n\n return convertToUnit(Math.min(\n calculatedMaxWidth,\n minWidth\n )) || '0'\n },\n calculatedTop (): string {\n const top = !this.auto\n ? this.calcTop()\n : convertToUnit(this.calcYOverflow(this.calculatedTopAuto))\n\n return top || '0'\n },\n hasClickableTiles (): boolean {\n return Boolean(this.tiles.find(tile => tile.tabIndex > -1))\n },\n styles (): object {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n watch: {\n isActive (val) {\n if (!val) this.listIndex = -1\n },\n isContentActive (val) {\n this.hasJustFocused = val\n },\n listIndex (next, prev) {\n if (next in this.tiles) {\n const tile = this.tiles[next]\n tile.classList.add('v-list-item--highlighted')\n const scrollTop = this.$refs.content.scrollTop\n const contentHeight = this.$refs.content.clientHeight\n\n if (scrollTop > tile.offsetTop - 8) {\n goTo(tile.offsetTop - tile.clientHeight, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n } else if (scrollTop + contentHeight < tile.offsetTop + tile.clientHeight + 8) {\n goTo(tile.offsetTop - contentHeight + tile.clientHeight * 2, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n }\n }\n\n prev in this.tiles &&\n this.tiles[prev].classList.remove('v-list-item--highlighted')\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n mounted () {\n this.isActive && this.callActivate()\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(() => {\n // Once transitioning, calculate scroll and top position\n this.startTransition().then(() => {\n if (this.$refs.content) {\n this.calculatedTopAuto = this.calcTopAuto()\n this.auto && (this.$refs.content.scrollTop = this.calcScrollPosition())\n }\n })\n })\n },\n calcScrollPosition () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement\n const maxScrollTop = $el.scrollHeight - $el.offsetHeight\n\n return activeTile\n ? Math.min(maxScrollTop, Math.max(0, activeTile.offsetTop - $el.offsetHeight / 2 + activeTile.offsetHeight / 2))\n : $el.scrollTop\n },\n calcLeftAuto () {\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2)\n },\n calcTopAuto () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement | null\n\n if (!activeTile) {\n this.selectedIndex = null\n }\n\n if (this.offsetY || !activeTile) {\n return this.computedTop\n }\n\n this.selectedIndex = Array.from(this.tiles).indexOf(activeTile)\n\n const tileDistanceFromMenuTop = activeTile.offsetTop - this.calcScrollPosition()\n const firstTileOffsetTop = ($el.querySelector('.v-list-item') as HTMLElement).offsetTop\n\n return this.computedTop - tileDistanceFromMenuTop - firstTileOffsetTop - 1\n },\n changeListIndex (e: KeyboardEvent) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles()\n\n if (!this.isActive || !this.hasClickableTiles) {\n return\n } else if (e.keyCode === keyCodes.tab) {\n this.isActive = false\n return\n } else if (e.keyCode === keyCodes.down) {\n this.nextTile()\n } else if (e.keyCode === keyCodes.up) {\n this.prevTile()\n } else if (e.keyCode === keyCodes.end) {\n this.lastTile()\n } else if (e.keyCode === keyCodes.home) {\n this.firstTile()\n } else if (e.keyCode === keyCodes.enter && this.listIndex !== -1) {\n this.tiles[this.listIndex].click()\n } else { return }\n // One of the conditions was met, prevent default action (#2988)\n e.preventDefault()\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n\n return this.isActive &&\n !this._isDestroyed &&\n this.closeOnClick &&\n !this.$refs.content.contains(target)\n },\n genActivatorAttributes () {\n const attributes = Activatable.options.methods.genActivatorAttributes.call(this)\n\n if (this.activeTile && this.activeTile.id) {\n return {\n ...attributes,\n 'aria-activedescendant': this.activeTile.id,\n }\n }\n\n return attributes\n },\n genActivatorListeners () {\n const listeners = Menuable.options.methods.genActivatorListeners.call(this)\n\n if (!this.disableKeys) {\n listeners.keydown = this.onKeyDown\n }\n\n return listeners\n },\n genTransition (): VNode {\n const content = this.genContent()\n\n if (!this.transition) return content\n\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n }, [content])\n },\n genDirectives (): VNodeDirective[] {\n const directives: VNodeDirective[] = [{\n name: 'show',\n value: this.isContentActive,\n }]\n\n // Do not add click outside for hover menu\n if (!this.openOnHover && this.closeOnClick) {\n directives.push({\n name: 'click-outside',\n value: {\n handler: () => { this.isActive = false },\n closeConditional: this.closeConditional,\n include: () => [this.$el, ...this.getOpenDependentElements()],\n },\n })\n }\n\n return directives\n },\n genContent (): VNode {\n const options = {\n attrs: {\n ...this.getScopeIdAttrs(),\n ...this.contentProps,\n role: 'role' in this.$attrs ? this.$attrs.role : 'menu',\n },\n staticClass: 'v-menu__content',\n class: {\n ...this.rootThemeClasses,\n ...this.roundedClasses,\n 'v-menu__content--auto': this.auto,\n 'v-menu__content--fixed': this.activatorFixed,\n menuable__content__active: this.isActive,\n [this.contentClass.trim()]: true,\n },\n style: this.styles,\n directives: this.genDirectives(),\n ref: 'content',\n on: {\n click: (e: Event) => {\n const target = e.target as HTMLElement\n\n if (target.getAttribute('disabled')) return\n if (this.closeOnContentClick) this.isActive = false\n },\n keydown: this.onKeyDown,\n },\n } as VNodeData\n\n if (this.$listeners.scroll) {\n options.on = options.on || {}\n options.on.scroll = this.$listeners.scroll\n }\n\n if (!this.disabled && this.openOnHover) {\n options.on = options.on || {}\n options.on.mouseenter = this.mouseEnterHandler\n }\n\n if (this.openOnHover) {\n options.on = options.on || {}\n options.on.mouseleave = this.mouseLeaveHandler\n }\n\n return this.$createElement('div', options, this.getContentSlot())\n },\n getTiles () {\n if (!this.$refs.content) return\n\n this.tiles = Array.from(this.$refs.content.querySelectorAll('.v-list-item, .v-divider, .v-subheader'))\n },\n mouseEnterHandler () {\n this.runDelay('open', () => {\n if (this.hasJustFocused) return\n\n this.hasJustFocused = true\n })\n },\n mouseLeaveHandler (e: MouseEvent) {\n // Prevent accidental re-activation\n this.runDelay('close', () => {\n if (this.$refs.content?.contains(e.relatedTarget as HTMLElement)) return\n\n requestAnimationFrame(() => {\n this.isActive = false\n this.callDeactivate()\n })\n })\n },\n nextTile () {\n const tile = this.tiles[this.listIndex + 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = -1\n this.nextTile()\n\n return\n }\n\n this.listIndex++\n if (tile.tabIndex === -1) this.nextTile()\n },\n prevTile () {\n const tile = this.tiles[this.listIndex - 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = this.tiles.length\n this.prevTile()\n\n return\n }\n\n this.listIndex--\n if (tile.tabIndex === -1) this.prevTile()\n },\n lastTile () {\n const tile = this.tiles[this.tiles.length - 1]\n\n if (!tile) return\n\n this.listIndex = this.tiles.length - 1\n\n if (tile.tabIndex === -1) this.prevTile()\n },\n firstTile () {\n const tile = this.tiles[0]\n\n if (!tile) return\n\n this.listIndex = 0\n\n if (tile.tabIndex === -1) this.nextTile()\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.disableKeys) return\n\n if (e.keyCode === keyCodes.esc) {\n // Wait for dependent elements to close first\n setTimeout(() => { this.isActive = false })\n const activator = this.getActivator()\n this.$nextTick(() => activator && activator.focus())\n } else if (\n !this.isActive &&\n [keyCodes.up, keyCodes.down].includes(e.keyCode)\n ) {\n this.isActive = true\n }\n\n // Allow for isActive watcher to generate tile list\n this.$nextTick(() => this.changeListIndex(e))\n },\n onResize () {\n if (!this.isActive) return\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth\n this.updateDimensions()\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout)\n this.resizeTimeout = window.setTimeout(this.updateDimensions, 100)\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-menu',\n class: {\n 'v-menu--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n },\n directives: [{\n arg: '500',\n name: 'resize',\n value: this.onResize,\n }],\n }\n\n return h('div', data, [\n !this.activator && this.genActivator(),\n this.showLazyContent(() => [\n this.$createElement(VThemeProvider, {\n props: {\n root: true,\n light: this.light,\n dark: this.dark,\n },\n }, [this.genTransition()]),\n ]),\n ])\n },\n})\n"],"sourceRoot":"","file":"VMenu.js"}
@@ -50,6 +50,8 @@ var _default = (0, _mixins.default)(_colorable.default, (0, _intersectable.defau
50
50
  props: {
51
51
  circle: Boolean,
52
52
  disabled: Boolean,
53
+ navigationColor: String,
54
+ navigationTextColor: String,
53
55
  length: {
54
56
  type: Number,
55
57
  default: 0,
@@ -188,7 +190,7 @@ var _default = (0, _mixins.default)(_colorable.default, (0, _intersectable.defau
188
190
  return range;
189
191
  },
190
192
  genIcon: function genIcon(h, icon, disabled, fn, label) {
191
- return h('li', [h('button', {
193
+ return h('li', [h('button', this.setBackgroundColor(this.navigationColor, {
192
194
  staticClass: 'v-pagination__navigation',
193
195
  class: {
194
196
  'v-pagination__navigation--disabled': disabled
@@ -201,7 +203,11 @@ var _default = (0, _mixins.default)(_colorable.default, (0, _intersectable.defau
201
203
  on: disabled ? {} : {
202
204
  click: fn
203
205
  }
204
- }, [h(_VIcon.default, [icon])])]);
206
+ }), [h(_VIcon.default, {
207
+ props: {
208
+ color: this.navigationTextColor
209
+ }
210
+ }, [icon])])]);
205
211
  },
206
212
  genItem: function genItem(h, i) {
207
213
  var _this2 = this;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VPagination/VPagination.ts"],"names":[],"mappings":"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","sourcesContent":["import './VPagination.sass'\n\nimport VIcon from '../VIcon'\n\n// Directives\nimport Resize from '../../directives/resize'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Intersectable from '../../mixins/intersectable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode, CreateElement, VNodeChildrenArrayContents } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n Colorable,\n Intersectable({ onVisible: ['init'] }),\n Themeable\n).extend({\n name: 'v-pagination',\n\n directives: { Resize },\n\n props: {\n circle: Boolean,\n disabled: Boolean,\n length: {\n type: Number,\n default: 0,\n validator: (val: number) => val % 1 === 0,\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n prevIcon: {\n type: String,\n default: '$prev',\n },\n totalVisible: [Number, String],\n value: {\n type: Number,\n default: 0,\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n wrapperAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.wrapper',\n },\n },\n\n data () {\n return {\n maxButtons: 0,\n selected: null as number | null,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-pagination': true,\n 'v-pagination--circle': this.circle,\n 'v-pagination--disabled': this.disabled,\n ...this.themeClasses,\n }\n },\n\n items (): (string | number)[] {\n const totalVisible = parseInt(this.totalVisible, 10)\n\n if (totalVisible === 0 || isNaN(this.length) || this.length > Number.MAX_SAFE_INTEGER) {\n return []\n }\n\n const maxLength = Math.min(\n Math.max(0, totalVisible) || this.length,\n Math.max(0, this.maxButtons) || this.length,\n this.length\n )\n\n if (this.length <= maxLength) {\n return this.range(1, this.length)\n }\n\n const even = maxLength % 2 === 0 ? 1 : 0\n const left = Math.floor(maxLength / 2)\n const right = this.length - left + 1 + even\n\n if (this.value > left && this.value < right) {\n const firstItem = 1\n const lastItem = this.length\n const start = this.value - left + 2\n const end = this.value + left - 2 - even\n const secondItem = start - 1 === firstItem + 1 ? 2 : '...'\n const beforeLastItem = end + 1 === lastItem - 1 ? end + 1 : '...'\n\n return [1, secondItem, ...this.range(start, end), beforeLastItem, this.length]\n } else if (this.value === left) {\n const end = this.value + left - 1 - even\n return [...this.range(1, end), '...', this.length]\n } else if (this.value === right) {\n const start = this.value - left + 1\n return [1, '...', ...this.range(start, this.length)]\n } else {\n return [\n ...this.range(1, left),\n '...',\n ...this.range(right, this.length),\n ]\n }\n },\n },\n\n watch: {\n value () {\n this.init()\n },\n },\n\n beforeMount () {\n this.init()\n },\n\n methods: {\n init () {\n this.selected = null\n\n this.onResize()\n this.$nextTick(this.onResize)\n // TODO: Change this (f75dee3a, cbdf7caa)\n setTimeout(() => (this.selected = this.value), 100)\n },\n onResize () {\n const width = this.$el && this.$el.parentElement\n ? this.$el.parentElement.clientWidth\n : window.innerWidth\n\n this.maxButtons = Math.floor((width - 96) / 42)\n },\n next (e: Event) {\n e.preventDefault()\n this.$emit('input', this.value + 1)\n this.$emit('next')\n },\n previous (e: Event) {\n e.preventDefault()\n this.$emit('input', this.value - 1)\n this.$emit('previous')\n },\n range (from: number, to: number) {\n const range = []\n\n from = from > 0 ? from : 1\n\n for (let i = from; i <= to; i++) {\n range.push(i)\n }\n\n return range\n },\n genIcon (h: CreateElement, icon: string, disabled: boolean, fn: EventListener, label: String): VNode {\n return h('li', [\n h('button', {\n staticClass: 'v-pagination__navigation',\n class: {\n 'v-pagination__navigation--disabled': disabled,\n },\n attrs: {\n disabled,\n type: 'button',\n 'aria-label': label,\n },\n on: disabled ? {} : { click: fn },\n }, [h(VIcon, [icon])]),\n ])\n },\n genItem (h: CreateElement, i: string | number): VNode {\n const color: string | false = (i === this.value) && (this.color || 'primary')\n const isCurrentPage = i === this.value\n const ariaLabel = isCurrentPage ? this.currentPageAriaLabel : this.pageAriaLabel\n\n return h('button', this.setBackgroundColor(color, {\n staticClass: 'v-pagination__item',\n class: {\n 'v-pagination__item--active': i === this.value,\n },\n attrs: {\n type: 'button',\n 'aria-current': isCurrentPage,\n 'aria-label': this.$vuetify.lang.t(ariaLabel, i),\n },\n on: {\n click: () => this.$emit('input', i),\n },\n }), [i.toString()])\n },\n genItems (h: CreateElement): VNode[] {\n return this.items.map((i, index) => {\n return h('li', { key: index }, [\n isNaN(Number(i)) ? h('span', { class: 'v-pagination__more' }, [i.toString()]) : this.genItem(h, i),\n ])\n })\n },\n genList (h: CreateElement, children: VNodeChildrenArrayContents): VNode {\n return h('ul', {\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.onResize,\n }],\n class: this.classes,\n }, children)\n },\n },\n\n render (h): VNode {\n const children = [\n this.genIcon(h,\n this.$vuetify.rtl ? this.nextIcon : this.prevIcon,\n this.value <= 1,\n this.previous,\n this.$vuetify.lang.t(this.previousAriaLabel)),\n this.genItems(h),\n this.genIcon(h,\n this.$vuetify.rtl ? this.prevIcon : this.nextIcon,\n this.value >= this.length,\n this.next,\n this.$vuetify.lang.t(this.nextAriaLabel)),\n ]\n\n return h('nav', {\n attrs: {\n role: 'navigation',\n 'aria-label': this.$vuetify.lang.t(this.wrapperAriaLabel),\n },\n }, [this.genList(h, children)])\n },\n})\n"],"sourceRoot":"","file":"VPagination.js"}
1
+ {"version":3,"sources":["../../../src/components/VPagination/VPagination.ts"],"names":[],"mappings":"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","sourcesContent":["import './VPagination.sass'\n\nimport VIcon from '../VIcon'\n\n// Directives\nimport Resize from '../../directives/resize'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Intersectable from '../../mixins/intersectable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode, CreateElement, VNodeChildrenArrayContents } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n Colorable,\n Intersectable({ onVisible: ['init'] }),\n Themeable\n).extend({\n name: 'v-pagination',\n\n directives: { Resize },\n\n props: {\n circle: Boolean,\n disabled: Boolean,\n navigationColor: String,\n navigationTextColor: String,\n length: {\n type: Number,\n default: 0,\n validator: (val: number) => val % 1 === 0,\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n prevIcon: {\n type: String,\n default: '$prev',\n },\n totalVisible: [Number, String],\n value: {\n type: Number,\n default: 0,\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n wrapperAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.wrapper',\n },\n },\n\n data () {\n return {\n maxButtons: 0,\n selected: null as number | null,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-pagination': true,\n 'v-pagination--circle': this.circle,\n 'v-pagination--disabled': this.disabled,\n ...this.themeClasses,\n }\n },\n\n items (): (string | number)[] {\n const totalVisible = parseInt(this.totalVisible, 10)\n\n if (totalVisible === 0 || isNaN(this.length) || this.length > Number.MAX_SAFE_INTEGER) {\n return []\n }\n\n const maxLength = Math.min(\n Math.max(0, totalVisible) || this.length,\n Math.max(0, this.maxButtons) || this.length,\n this.length\n )\n\n if (this.length <= maxLength) {\n return this.range(1, this.length)\n }\n\n const even = maxLength % 2 === 0 ? 1 : 0\n const left = Math.floor(maxLength / 2)\n const right = this.length - left + 1 + even\n\n if (this.value > left && this.value < right) {\n const firstItem = 1\n const lastItem = this.length\n const start = this.value - left + 2\n const end = this.value + left - 2 - even\n const secondItem = start - 1 === firstItem + 1 ? 2 : '...'\n const beforeLastItem = end + 1 === lastItem - 1 ? end + 1 : '...'\n\n return [1, secondItem, ...this.range(start, end), beforeLastItem, this.length]\n } else if (this.value === left) {\n const end = this.value + left - 1 - even\n return [...this.range(1, end), '...', this.length]\n } else if (this.value === right) {\n const start = this.value - left + 1\n return [1, '...', ...this.range(start, this.length)]\n } else {\n return [\n ...this.range(1, left),\n '...',\n ...this.range(right, this.length),\n ]\n }\n },\n },\n\n watch: {\n value () {\n this.init()\n },\n },\n\n beforeMount () {\n this.init()\n },\n\n methods: {\n init () {\n this.selected = null\n\n this.onResize()\n this.$nextTick(this.onResize)\n // TODO: Change this (f75dee3a, cbdf7caa)\n setTimeout(() => (this.selected = this.value), 100)\n },\n onResize () {\n const width = this.$el && this.$el.parentElement\n ? this.$el.parentElement.clientWidth\n : window.innerWidth\n\n this.maxButtons = Math.floor((width - 96) / 42)\n },\n next (e: Event) {\n e.preventDefault()\n this.$emit('input', this.value + 1)\n this.$emit('next')\n },\n previous (e: Event) {\n e.preventDefault()\n this.$emit('input', this.value - 1)\n this.$emit('previous')\n },\n range (from: number, to: number) {\n const range = []\n\n from = from > 0 ? from : 1\n\n for (let i = from; i <= to; i++) {\n range.push(i)\n }\n\n return range\n },\n genIcon (h: CreateElement, icon: string, disabled: boolean, fn: EventListener, label: String): VNode {\n return h('li', [\n h('button',\n this.setBackgroundColor(this.navigationColor, {\n staticClass: 'v-pagination__navigation',\n class: {\n 'v-pagination__navigation--disabled': disabled,\n },\n attrs: {\n disabled,\n type: 'button',\n 'aria-label': label,\n },\n on: disabled ? {} : { click: fn },\n }),\n [h(VIcon, { props: { color: this.navigationTextColor } }, [icon])]\n ),\n ])\n },\n genItem (h: CreateElement, i: string | number): VNode {\n const color: string | false = (i === this.value) && (this.color || 'primary')\n const isCurrentPage = i === this.value\n const ariaLabel = isCurrentPage ? this.currentPageAriaLabel : this.pageAriaLabel\n\n return h('button', this.setBackgroundColor(color, {\n staticClass: 'v-pagination__item',\n class: {\n 'v-pagination__item--active': i === this.value,\n },\n attrs: {\n type: 'button',\n 'aria-current': isCurrentPage,\n 'aria-label': this.$vuetify.lang.t(ariaLabel, i),\n },\n on: {\n click: () => this.$emit('input', i),\n },\n }), [i.toString()])\n },\n genItems (h: CreateElement): VNode[] {\n return this.items.map((i, index) => {\n return h('li', { key: index }, [\n isNaN(Number(i)) ? h('span', { class: 'v-pagination__more' }, [i.toString()]) : this.genItem(h, i),\n ])\n })\n },\n genList (h: CreateElement, children: VNodeChildrenArrayContents): VNode {\n return h('ul', {\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.onResize,\n }],\n class: this.classes,\n }, children)\n },\n },\n\n render (h): VNode {\n const children = [\n this.genIcon(h,\n this.$vuetify.rtl ? this.nextIcon : this.prevIcon,\n this.value <= 1,\n this.previous,\n this.$vuetify.lang.t(this.previousAriaLabel)),\n this.genItems(h),\n this.genIcon(h,\n this.$vuetify.rtl ? this.prevIcon : this.nextIcon,\n this.value >= this.length,\n this.next,\n this.$vuetify.lang.t(this.nextAriaLabel)),\n ]\n\n return h('nav', {\n attrs: {\n role: 'navigation',\n 'aria-label': this.$vuetify.lang.t(this.wrapperAriaLabel),\n },\n }, [this.genList(h, children)])\n },\n})\n"],"sourceRoot":"","file":"VPagination.js"}
@@ -56,7 +56,10 @@ var _default = baseMixins.extend().extend({
56
56
  name: 'v-radio',
57
57
  inheritAttrs: false,
58
58
  props: {
59
- disabled: Boolean,
59
+ disabled: {
60
+ type: Boolean,
61
+ default: null
62
+ },
60
63
  id: String,
61
64
  label: String,
62
65
  name: String,
@@ -68,7 +71,10 @@ var _default = baseMixins.extend().extend({
68
71
  type: String,
69
72
  default: '$radioOn'
70
73
  },
71
- readonly: Boolean,
74
+ readonly: {
75
+ type: Boolean,
76
+ default: null
77
+ },
72
78
  value: {
73
79
  default: null
74
80
  }
@@ -100,10 +106,14 @@ var _default = baseMixins.extend().extend({
100
106
  return (this.radioGroup || {}).hasState;
101
107
  },
102
108
  isDisabled: function isDisabled() {
103
- return this.disabled || !!this.radioGroup && this.radioGroup.isDisabled;
109
+ var _a;
110
+
111
+ return (_a = this.disabled) !== null && _a !== void 0 ? _a : !!this.radioGroup && this.radioGroup.isDisabled;
104
112
  },
105
113
  isReadonly: function isReadonly() {
106
- return this.readonly || !!this.radioGroup && this.radioGroup.isReadonly;
114
+ var _a;
115
+
116
+ return (_a = this.readonly) !== null && _a !== void 0 ? _a : !!this.radioGroup && this.radioGroup.isReadonly;
107
117
  },
108
118
  computedName: function computedName() {
109
119
  if (this.name || !this.radioGroup) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VRadioGroup/VRadio.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VRadio.sass'\n\n// Components\nimport VRadioGroup from './VRadioGroup'\nimport VLabel from '../VLabel'\nimport VIcon from '../VIcon'\nimport VInput from '../VInput'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Rippleable from '../../mixins/rippleable'\nimport Themeable from '../../mixins/themeable'\nimport Selectable, { prevent } from '../../mixins/selectable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\nimport mixins from '../../util/mixins'\nimport { mergeListeners } from '../../util/mergeData'\n\nconst baseMixins = mixins(\n BindsAttrs,\n Colorable,\n Rippleable,\n GroupableFactory('radioGroup'),\n Themeable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n radioGroup: InstanceType<typeof VRadioGroup>\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-radio',\n\n inheritAttrs: false,\n\n props: {\n disabled: Boolean,\n id: String,\n label: String,\n name: String,\n offIcon: {\n type: String,\n default: '$radioOff',\n },\n onIcon: {\n type: String,\n default: '$radioOn',\n },\n readonly: Boolean,\n value: {\n default: null,\n },\n },\n\n data: () => ({\n isFocused: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-radio--is-disabled': this.isDisabled,\n 'v-radio--is-focused': this.isFocused,\n ...this.themeClasses,\n ...this.groupClasses,\n }\n },\n computedColor (): string | undefined {\n if (this.isDisabled) return undefined\n return Selectable.options.computed.computedColor.call(this)\n },\n computedIcon (): string {\n return this.isActive\n ? this.onIcon\n : this.offIcon\n },\n computedId (): string {\n return VInput.options.computed.computedId.call(this)\n },\n hasLabel: VInput.options.computed.hasLabel,\n hasState (): boolean {\n return (this.radioGroup || {}).hasState\n },\n isDisabled (): boolean {\n return this.disabled || (\n !!this.radioGroup &&\n this.radioGroup.isDisabled\n )\n },\n isReadonly (): boolean {\n return this.readonly || (\n !!this.radioGroup &&\n this.radioGroup.isReadonly\n )\n },\n computedName (): string {\n if (this.name || !this.radioGroup) {\n return this.name\n }\n\n return this.radioGroup.name || `radio-${this.radioGroup._uid}`\n },\n rippleState (): string | undefined {\n return Selectable.options.computed.rippleState.call(this)\n },\n validationState (): string | undefined {\n return (this.radioGroup || {}).validationState || this.computedColor\n },\n },\n\n methods: {\n genInput (args: any) {\n // We can't actually use the mixin directly because\n // it's made for standalone components, but its\n // genInput method is exactly what we need\n return Selectable.options.methods.genInput.call(this, 'radio', args)\n },\n genLabel () {\n if (!this.hasLabel) return null\n\n return this.$createElement(VLabel, {\n on: {\n // Label shouldn't cause the input to focus\n click: prevent,\n },\n attrs: {\n for: this.computedId,\n },\n props: {\n color: this.validationState,\n focused: this.hasState,\n },\n }, getSlot(this, 'label') || this.label)\n },\n genRadio () {\n const { title, ...radioAttrs } = this.attrs$\n\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.$createElement(VIcon, this.setTextColor(this.validationState, {\n props: {\n dense: this.radioGroup && this.radioGroup.dense,\n },\n }), this.computedIcon),\n this.genInput({\n name: this.computedName,\n value: this.value,\n ...radioAttrs,\n }),\n this.genRipple(this.setTextColor(this.rippleState)),\n ])\n },\n onFocus (e: Event) {\n this.isFocused = true\n this.$emit('focus', e)\n },\n onBlur (e: Event) {\n this.isFocused = false\n this.$emit('blur', e)\n },\n onChange () {\n if (this.isDisabled || this.isReadonly || this.isActive) return\n\n this.toggle()\n },\n onKeydown: () => {}, // Override default with noop\n },\n\n render (h): VNode {\n const data: VNodeData = {\n staticClass: 'v-radio',\n class: this.classes,\n on: mergeListeners({\n click: this.onChange,\n }, this.listeners$),\n attrs: { title: this.attrs$.title },\n }\n\n return h('div', data, [\n this.genRadio(),\n this.genLabel(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VRadio.js"}
1
+ {"version":3,"sources":["../../../src/components/VRadioGroup/VRadio.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VRadio.sass'\n\n// Components\nimport VRadioGroup from './VRadioGroup'\nimport VLabel from '../VLabel'\nimport VIcon from '../VIcon'\nimport VInput from '../VInput'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Rippleable from '../../mixins/rippleable'\nimport Themeable from '../../mixins/themeable'\nimport Selectable, { prevent } from '../../mixins/selectable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\nimport mixins from '../../util/mixins'\nimport { mergeListeners } from '../../util/mergeData'\n\nconst baseMixins = mixins(\n BindsAttrs,\n Colorable,\n Rippleable,\n GroupableFactory('radioGroup'),\n Themeable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n radioGroup: InstanceType<typeof VRadioGroup>\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-radio',\n\n inheritAttrs: false,\n\n props: {\n disabled: {\n type: Boolean,\n default: null,\n },\n id: String,\n label: String,\n name: String,\n offIcon: {\n type: String,\n default: '$radioOff',\n },\n onIcon: {\n type: String,\n default: '$radioOn',\n },\n readonly: {\n type: Boolean,\n default: null,\n },\n value: {\n default: null,\n },\n },\n\n data: () => ({\n isFocused: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-radio--is-disabled': this.isDisabled,\n 'v-radio--is-focused': this.isFocused,\n ...this.themeClasses,\n ...this.groupClasses,\n }\n },\n computedColor (): string | undefined {\n if (this.isDisabled) return undefined\n return Selectable.options.computed.computedColor.call(this)\n },\n computedIcon (): string {\n return this.isActive\n ? this.onIcon\n : this.offIcon\n },\n computedId (): string {\n return VInput.options.computed.computedId.call(this)\n },\n hasLabel: VInput.options.computed.hasLabel,\n hasState (): boolean {\n return (this.radioGroup || {}).hasState\n },\n isDisabled (): boolean {\n return this.disabled ?? (\n !!this.radioGroup &&\n this.radioGroup.isDisabled\n )\n },\n isReadonly (): boolean {\n return this.readonly ?? (\n !!this.radioGroup &&\n this.radioGroup.isReadonly\n )\n },\n computedName (): string {\n if (this.name || !this.radioGroup) {\n return this.name\n }\n\n return this.radioGroup.name || `radio-${this.radioGroup._uid}`\n },\n rippleState (): string | undefined {\n return Selectable.options.computed.rippleState.call(this)\n },\n validationState (): string | undefined {\n return (this.radioGroup || {}).validationState || this.computedColor\n },\n },\n\n methods: {\n genInput (args: any) {\n // We can't actually use the mixin directly because\n // it's made for standalone components, but its\n // genInput method is exactly what we need\n return Selectable.options.methods.genInput.call(this, 'radio', args)\n },\n genLabel () {\n if (!this.hasLabel) return null\n\n return this.$createElement(VLabel, {\n on: {\n // Label shouldn't cause the input to focus\n click: prevent,\n },\n attrs: {\n for: this.computedId,\n },\n props: {\n color: this.validationState,\n focused: this.hasState,\n },\n }, getSlot(this, 'label') || this.label)\n },\n genRadio () {\n const { title, ...radioAttrs } = this.attrs$\n\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.$createElement(VIcon, this.setTextColor(this.validationState, {\n props: {\n dense: this.radioGroup && this.radioGroup.dense,\n },\n }), this.computedIcon),\n this.genInput({\n name: this.computedName,\n value: this.value,\n ...radioAttrs,\n }),\n this.genRipple(this.setTextColor(this.rippleState)),\n ])\n },\n onFocus (e: Event) {\n this.isFocused = true\n this.$emit('focus', e)\n },\n onBlur (e: Event) {\n this.isFocused = false\n this.$emit('blur', e)\n },\n onChange () {\n if (this.isDisabled || this.isReadonly || this.isActive) return\n\n this.toggle()\n },\n onKeydown: () => {}, // Override default with noop\n },\n\n render (h): VNode {\n const data: VNodeData = {\n staticClass: 'v-radio',\n class: this.classes,\n on: mergeListeners({\n click: this.onChange,\n }, this.listeners$),\n attrs: { title: this.attrs$.title },\n }\n\n return h('div', data, [\n this.genRadio(),\n this.genLabel(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VRadio.js"}