@vuetify/nightly 2.6.7 → 2.6.8-master-20220708.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 (179) hide show
  1. package/CHANGELOG.md +4 -11
  2. package/dist/json/web-types.json +5 -5
  3. package/dist/vuetify.js +308 -224
  4. package/dist/vuetify.js.map +1 -1
  5. package/dist/vuetify.min.css +1 -1
  6. package/dist/vuetify.min.js +2 -2
  7. package/es5/components/VAutocomplete/VAutocomplete.js +3 -3
  8. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  9. package/es5/components/VBtn/VBtn.js +2 -2
  10. package/es5/components/VBtn/VBtn.js.map +1 -1
  11. package/es5/components/VCalendar/mixins/calendar-with-events.js +6 -5
  12. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  13. package/es5/components/VCalendar/mixins/mouse.js +4 -4
  14. package/es5/components/VCalendar/mixins/mouse.js.map +1 -1
  15. package/es5/components/VCombobox/VCombobox.js +2 -2
  16. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  17. package/es5/components/VDataIterator/VDataFooter.js +5 -2
  18. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  19. package/es5/components/VDataTable/Row.js +2 -2
  20. package/es5/components/VDataTable/Row.js.map +1 -1
  21. package/es5/components/VDataTable/VDataTable.js +54 -43
  22. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  23. package/es5/components/VDataTable/mixins/header.js +4 -3
  24. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  25. package/es5/components/VDatePicker/VDatePicker.js +2 -1
  26. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  27. package/es5/components/VDialog/VDialog.js +13 -15
  28. package/es5/components/VDialog/VDialog.js.map +1 -1
  29. package/es5/components/VItemGroup/VItemGroup.js +4 -2
  30. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  31. package/es5/components/VMenu/VMenu.js +2 -2
  32. package/es5/components/VMenu/VMenu.js.map +1 -1
  33. package/es5/components/VOtpInput/VOtpInput.js +8 -7
  34. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  35. package/es5/components/VRadioGroup/VRadio.js +2 -1
  36. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  37. package/es5/components/VRangeSlider/VRangeSlider.js +4 -3
  38. package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
  39. package/es5/components/VSelect/VSelect.js +8 -8
  40. package/es5/components/VSelect/VSelect.js.map +1 -1
  41. package/es5/components/VSelect/VSelectList.js +2 -1
  42. package/es5/components/VSelect/VSelectList.js.map +1 -1
  43. package/es5/components/VSkeletonLoader/VSkeletonLoader.js +4 -4
  44. package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  45. package/es5/components/VSlideGroup/VSlideGroup.js +4 -4
  46. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  47. package/es5/components/VSlider/VSlider.js +8 -11
  48. package/es5/components/VSlider/VSlider.js.map +1 -1
  49. package/es5/components/VSparkline/VSparkline.js +2 -1
  50. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  51. package/es5/components/VTextField/VTextField.js +5 -5
  52. package/es5/components/VTextField/VTextField.js.map +1 -1
  53. package/es5/components/VTextarea/VTextarea.js +2 -2
  54. package/es5/components/VTextarea/VTextarea.js.map +1 -1
  55. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  56. package/es5/components/VTreeview/VTreeview.js +5 -4
  57. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  58. package/es5/components/VTreeview/VTreeviewNode.js +2 -1
  59. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  60. package/es5/components/VWindow/VWindow.js +5 -6
  61. package/es5/components/VWindow/VWindow.js.map +1 -1
  62. package/es5/directives/click-outside/index.js +2 -2
  63. package/es5/directives/click-outside/index.js.map +1 -1
  64. package/es5/directives/intersect/index.js +5 -5
  65. package/es5/directives/intersect/index.js.map +1 -1
  66. package/es5/directives/mutate/index.js +2 -2
  67. package/es5/directives/mutate/index.js.map +1 -1
  68. package/es5/directives/resize/index.js +2 -2
  69. package/es5/directives/resize/index.js.map +1 -1
  70. package/es5/directives/scroll/index.js +2 -2
  71. package/es5/directives/scroll/index.js.map +1 -1
  72. package/es5/framework.js +1 -1
  73. package/es5/mixins/activatable/index.js +1 -3
  74. package/es5/mixins/activatable/index.js.map +1 -1
  75. package/es5/mixins/binds-attrs/index.js.map +1 -1
  76. package/es5/mixins/overlayable/index.js +1 -1
  77. package/es5/mixins/overlayable/index.js.map +1 -1
  78. package/es5/mixins/routable/index.js +2 -2
  79. package/es5/mixins/routable/index.js.map +1 -1
  80. package/es5/util/helpers.js +1 -1
  81. package/es5/util/helpers.js.map +1 -1
  82. package/lib/components/VAutocomplete/VAutocomplete.js +3 -3
  83. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  84. package/lib/components/VBtn/VBtn.js +2 -2
  85. package/lib/components/VBtn/VBtn.js.map +1 -1
  86. package/lib/components/VCalendar/mixins/calendar-with-events.js +4 -4
  87. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  88. package/lib/components/VCalendar/mixins/mouse.js +4 -4
  89. package/lib/components/VCalendar/mixins/mouse.js.map +1 -1
  90. package/lib/components/VCombobox/VCombobox.js +2 -2
  91. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  92. package/lib/components/VDataIterator/VDataFooter.js +5 -2
  93. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  94. package/lib/components/VDataTable/Row.js +2 -2
  95. package/lib/components/VDataTable/Row.js.map +1 -1
  96. package/lib/components/VDataTable/VDataTable.js +15 -5
  97. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  98. package/lib/components/VDataTable/mixins/header.js +2 -2
  99. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  100. package/lib/components/VDatePicker/VDatePicker.js +2 -1
  101. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  102. package/lib/components/VDialog/VDialog.js +11 -13
  103. package/lib/components/VDialog/VDialog.js.map +1 -1
  104. package/lib/components/VItemGroup/VItemGroup.js +2 -2
  105. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  106. package/lib/components/VMenu/VMenu.js +2 -2
  107. package/lib/components/VMenu/VMenu.js.map +1 -1
  108. package/lib/components/VOtpInput/VOtpInput.js +8 -7
  109. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  110. package/lib/components/VRadioGroup/VRadio.js +2 -1
  111. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  112. package/lib/components/VRangeSlider/VRangeSlider.js +2 -2
  113. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  114. package/lib/components/VSelect/VSelect.js +8 -8
  115. package/lib/components/VSelect/VSelect.js.map +1 -1
  116. package/lib/components/VSelect/VSelectList.js +2 -1
  117. package/lib/components/VSelect/VSelectList.js.map +1 -1
  118. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +4 -4
  119. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  120. package/lib/components/VSlideGroup/VSlideGroup.js +4 -4
  121. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  122. package/lib/components/VSlider/VSlider.js +6 -11
  123. package/lib/components/VSlider/VSlider.js.map +1 -1
  124. package/lib/components/VSparkline/VSparkline.js +2 -1
  125. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  126. package/lib/components/VTextField/VTextField.js +5 -5
  127. package/lib/components/VTextField/VTextField.js.map +1 -1
  128. package/lib/components/VTextarea/VTextarea.js +2 -2
  129. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  130. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  131. package/lib/components/VTreeview/VTreeview.js +5 -4
  132. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  133. package/lib/components/VTreeview/VTreeviewNode.js +2 -1
  134. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  135. package/lib/components/VWindow/VWindow.js +3 -3
  136. package/lib/components/VWindow/VWindow.js.map +1 -1
  137. package/lib/directives/click-outside/index.js +2 -2
  138. package/lib/directives/click-outside/index.js.map +1 -1
  139. package/lib/directives/intersect/index.js +4 -4
  140. package/lib/directives/intersect/index.js.map +1 -1
  141. package/lib/directives/mutate/index.js +2 -2
  142. package/lib/directives/mutate/index.js.map +1 -1
  143. package/lib/directives/resize/index.js +2 -2
  144. package/lib/directives/resize/index.js.map +1 -1
  145. package/lib/directives/scroll/index.js +2 -2
  146. package/lib/directives/scroll/index.js.map +1 -1
  147. package/lib/framework.js +1 -1
  148. package/lib/mixins/activatable/index.js +1 -3
  149. package/lib/mixins/activatable/index.js.map +1 -1
  150. package/lib/mixins/binds-attrs/index.js.map +1 -1
  151. package/lib/mixins/overlayable/index.js +1 -1
  152. package/lib/mixins/overlayable/index.js.map +1 -1
  153. package/lib/mixins/routable/index.js +4 -3
  154. package/lib/mixins/routable/index.js.map +1 -1
  155. package/lib/util/helpers.js +1 -1
  156. package/lib/util/helpers.js.map +1 -1
  157. package/package.json +1 -1
  158. package/src/components/VDataTable/VDataTable.ts +4 -1
  159. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +14 -14
  160. package/src/components/VDatePicker/VDatePicker.ts +1 -1
  161. package/src/components/VItemGroup/VItemGroup.ts +2 -2
  162. package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +29 -0
  163. package/src/components/VOverflowBtn/__tests__/__snapshots__/VOverflowBtn.spec.ts.snap +14 -10
  164. package/src/components/VRangeSlider/__tests__/VRangeSlider.spec.ts +2 -2
  165. package/src/components/VRangeSlider/__tests__/__snapshots__/VRangeSlider.spec.ts.snap +2 -2
  166. package/src/components/VSlideGroup/VSlideGroup.ts +1 -1
  167. package/src/components/VSlider/VSlider.ts +1 -7
  168. package/src/components/VSlider/__tests__/VSlider.spec.ts +3 -2
  169. package/src/components/VTimePicker/VTimePicker.ts +1 -1
  170. package/src/globals.d.ts +6 -6
  171. package/src/mixins/applicationable/__tests__/applicationable.spec.ts +1 -1
  172. package/src/mixins/binds-attrs/index.ts +2 -2
  173. package/src/mixins/overlayable/index.ts +7 -7
  174. package/src/util/helpers.ts +2 -2
  175. package/es5/util/component.js +0 -11
  176. package/es5/util/component.js.map +0 -1
  177. package/lib/util/component.js +0 -4
  178. package/lib/util/component.js.map +0 -1
  179. package/src/util/component.ts +0 -21
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VDataIterator/VDataFooter.ts"],"names":[],"mappings":"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","sourcesContent":["import './VDataFooter.sass'\n\n// Components\nimport VSelect from '../VSelect/VSelect'\nimport VIcon from '../VIcon'\nimport VBtn from '../VBtn'\n\n// Types\nimport Vue, { VNode, VNodeChildrenArrayContents, PropType } from 'vue'\nimport { DataPagination, DataOptions, DataItemsPerPageOption } from 'vuetify/types'\nimport { PropValidator } from 'vue/types/options'\nimport { getSlot } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'v-data-footer',\n\n props: {\n options: {\n type: Object as PropType<DataOptions>,\n required: true,\n },\n pagination: {\n type: Object as PropType<DataPagination>,\n required: true,\n },\n itemsPerPageOptions: {\n type: Array,\n default: () => ([5, 10, 15, -1]),\n } as PropValidator<DataItemsPerPageOption[]>,\n prevIcon: {\n type: String,\n default: '$prev',\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n firstIcon: {\n type: String,\n default: '$first',\n },\n lastIcon: {\n type: String,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n itemsPerPageAllText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageAll',\n },\n showFirstLastPage: Boolean,\n showCurrentPage: Boolean,\n disablePagination: Boolean,\n disableItemsPerPage: Boolean,\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n },\n\n computed: {\n disableNextPageIcon (): boolean {\n return this.options.itemsPerPage <= 0 ||\n this.options.page * this.options.itemsPerPage >= this.pagination.itemsLength ||\n this.pagination.pageStop < 0\n },\n computedDataItemsPerPageOptions (): any[] {\n return this.itemsPerPageOptions.map(option => {\n if (typeof option === 'object') return option\n else return this.genDataItemsPerPageOption(option)\n })\n },\n },\n\n methods: {\n updateOptions (obj: object) {\n this.$emit('update:options', Object.assign({}, this.options, obj))\n },\n onFirstPage () {\n this.updateOptions({ page: 1 })\n },\n onPreviousPage () {\n this.updateOptions({ page: this.options.page - 1 })\n },\n onNextPage () {\n this.updateOptions({ page: this.options.page + 1 })\n },\n onLastPage () {\n this.updateOptions({ page: this.pagination.pageCount })\n },\n onChangeItemsPerPage (itemsPerPage: number) {\n this.updateOptions({ itemsPerPage, page: 1 })\n },\n genDataItemsPerPageOption (option: number) {\n return {\n text: option === -1 ? this.$vuetify.lang.t(this.itemsPerPageAllText) : String(option),\n value: option,\n }\n },\n genItemsPerPageSelect () {\n let value = this.options.itemsPerPage\n const computedIPPO = this.computedDataItemsPerPageOptions\n\n if (computedIPPO.length <= 1) return null\n\n if (!computedIPPO.find(ippo => ippo.value === value)) value = computedIPPO[0]\n\n return this.$createElement('div', {\n staticClass: 'v-data-footer__select',\n }, [\n this.$vuetify.lang.t(this.itemsPerPageText),\n this.$createElement(VSelect, {\n attrs: {\n 'aria-label': this.$vuetify.lang.t(this.itemsPerPageText),\n },\n props: {\n disabled: this.disableItemsPerPage,\n items: computedIPPO,\n value,\n hideDetails: true,\n auto: true,\n minWidth: '75px',\n },\n on: {\n input: this.onChangeItemsPerPage,\n },\n }),\n ])\n },\n genPaginationInfo () {\n let children: VNodeChildrenArrayContents = ['–']\n const itemsLength: number = this.pagination.itemsLength\n let pageStart: number = this.pagination.pageStart\n let pageStop: number = this.pagination.pageStop\n\n if (this.pagination.itemsLength && this.pagination.itemsPerPage) {\n pageStart = this.pagination.pageStart + 1\n pageStop = itemsLength < this.pagination.pageStop || this.pagination.pageStop < 0\n ? itemsLength\n : this.pagination.pageStop\n\n children = this.$scopedSlots['page-text']\n ? [this.$scopedSlots['page-text']!({ pageStart, pageStop, itemsLength })]\n : [this.$vuetify.lang.t(this.pageText, pageStart, pageStop, itemsLength)]\n } else if (this.$scopedSlots['page-text']) {\n children = [this.$scopedSlots['page-text']!({ pageStart, pageStop, itemsLength })]\n }\n\n return this.$createElement('div', {\n class: 'v-data-footer__pagination',\n }, children)\n },\n genIcon (click: Function, disabled: boolean, label: string, icon: string): VNode {\n return this.$createElement(VBtn, {\n props: {\n disabled: disabled || this.disablePagination,\n icon: true,\n text: true,\n // dark: this.dark, // TODO: add mixin\n // light: this.light // TODO: add mixin\n },\n on: {\n click,\n },\n attrs: {\n 'aria-label': label, // TODO: Localization\n },\n }, [this.$createElement(VIcon, icon)])\n },\n genIcons () {\n const before: VNodeChildrenArrayContents = []\n const after: VNodeChildrenArrayContents = []\n\n before.push(this.genIcon(\n this.onPreviousPage,\n this.options.page === 1,\n this.$vuetify.lang.t('$vuetify.dataFooter.prevPage'),\n this.$vuetify.rtl ? this.nextIcon : this.prevIcon\n ))\n\n after.push(this.genIcon(\n this.onNextPage,\n this.disableNextPageIcon,\n this.$vuetify.lang.t('$vuetify.dataFooter.nextPage'),\n this.$vuetify.rtl ? this.prevIcon : this.nextIcon\n ))\n\n if (this.showFirstLastPage) {\n before.unshift(this.genIcon(\n this.onFirstPage,\n this.options.page === 1,\n this.$vuetify.lang.t('$vuetify.dataFooter.firstPage'),\n this.$vuetify.rtl ? this.lastIcon : this.firstIcon\n ))\n\n after.push(this.genIcon(\n this.onLastPage,\n this.options.page >= this.pagination.pageCount || this.options.itemsPerPage === -1,\n this.$vuetify.lang.t('$vuetify.dataFooter.lastPage'),\n this.$vuetify.rtl ? this.firstIcon : this.lastIcon\n ))\n }\n\n return [\n this.$createElement('div', {\n staticClass: 'v-data-footer__icons-before',\n }, before),\n this.showCurrentPage && this.$createElement('span', [this.options.page.toString()]),\n this.$createElement('div', {\n staticClass: 'v-data-footer__icons-after',\n }, after),\n ]\n },\n },\n\n render (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-data-footer',\n }, [\n getSlot(this, 'prepend'),\n this.genItemsPerPageSelect(),\n this.genPaginationInfo(),\n this.genIcons(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VDataFooter.js"}
1
+ {"version":3,"sources":["../../../src/components/VDataIterator/VDataFooter.ts"],"names":[],"mappings":"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","sourcesContent":["import './VDataFooter.sass'\n\n// Components\nimport VSelect from '../VSelect/VSelect'\nimport VIcon from '../VIcon'\nimport VBtn from '../VBtn'\n\n// Types\nimport Vue, { VNode, VNodeChildrenArrayContents, PropType } from 'vue'\nimport { DataPagination, DataOptions, DataItemsPerPageOption } from 'vuetify/types'\nimport { PropValidator } from 'vue/types/options'\nimport { getSlot } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'v-data-footer',\n\n props: {\n options: {\n type: Object as PropType<DataOptions>,\n required: true,\n },\n pagination: {\n type: Object as PropType<DataPagination>,\n required: true,\n },\n itemsPerPageOptions: {\n type: Array,\n default: () => ([5, 10, 15, -1]),\n } as PropValidator<DataItemsPerPageOption[]>,\n prevIcon: {\n type: String,\n default: '$prev',\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n firstIcon: {\n type: String,\n default: '$first',\n },\n lastIcon: {\n type: String,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n itemsPerPageAllText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageAll',\n },\n showFirstLastPage: Boolean,\n showCurrentPage: Boolean,\n disablePagination: Boolean,\n disableItemsPerPage: Boolean,\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n },\n\n computed: {\n disableNextPageIcon (): boolean {\n return this.options.itemsPerPage <= 0 ||\n this.options.page * this.options.itemsPerPage >= this.pagination.itemsLength ||\n this.pagination.pageStop < 0\n },\n computedDataItemsPerPageOptions (): any[] {\n return this.itemsPerPageOptions.map(option => {\n if (typeof option === 'object') return option\n else return this.genDataItemsPerPageOption(option)\n })\n },\n },\n\n methods: {\n updateOptions (obj: object) {\n this.$emit('update:options', Object.assign({}, this.options, obj))\n },\n onFirstPage () {\n this.updateOptions({ page: 1 })\n },\n onPreviousPage () {\n this.updateOptions({ page: this.options.page - 1 })\n },\n onNextPage () {\n this.updateOptions({ page: this.options.page + 1 })\n },\n onLastPage () {\n this.updateOptions({ page: this.pagination.pageCount })\n },\n onChangeItemsPerPage (itemsPerPage: number) {\n this.updateOptions({ itemsPerPage, page: 1 })\n },\n genDataItemsPerPageOption (option: number) {\n return {\n text: option === -1 ? this.$vuetify.lang.t(this.itemsPerPageAllText) : String(option),\n value: option,\n }\n },\n genItemsPerPageSelect () {\n let value = this.options.itemsPerPage\n const computedIPPO = this.computedDataItemsPerPageOptions\n\n if (computedIPPO.length <= 1) return null\n\n if (!computedIPPO.find(ippo => ippo.value === value)) value = computedIPPO[0]\n\n return this.$createElement('div', {\n staticClass: 'v-data-footer__select',\n }, [\n this.$vuetify.lang.t(this.itemsPerPageText),\n this.$createElement(VSelect, {\n attrs: {\n 'aria-label': this.$vuetify.lang.t(this.itemsPerPageText),\n },\n props: {\n disabled: this.disableItemsPerPage,\n items: computedIPPO,\n value,\n hideDetails: true,\n auto: true,\n minWidth: '75px',\n },\n on: {\n input: this.onChangeItemsPerPage,\n },\n }),\n ])\n },\n genPaginationInfo () {\n let children: VNodeChildrenArrayContents = ['–']\n const itemsLength: number = this.pagination.itemsLength\n let pageStart: number = this.pagination.pageStart\n let pageStop: number = this.pagination.pageStop\n\n if (this.pagination.itemsLength && this.pagination.itemsPerPage) {\n pageStart = this.pagination.pageStart + 1\n pageStop = itemsLength < this.pagination.pageStop || this.pagination.pageStop < 0\n ? itemsLength\n : this.pagination.pageStop\n\n children = this.$scopedSlots['page-text']\n ? [this.$scopedSlots['page-text']!({ pageStart, pageStop, itemsLength })]\n : [this.$vuetify.lang.t(this.pageText, pageStart, pageStop, itemsLength)]\n } else if (this.$scopedSlots['page-text']) {\n children = [this.$scopedSlots['page-text']!({ pageStart, pageStop, itemsLength })]\n }\n\n return this.$createElement('div', {\n class: 'v-data-footer__pagination',\n }, children)\n },\n genIcon (click: Function, disabled: boolean, label: string, icon: string): VNode {\n return this.$createElement(VBtn, {\n props: {\n disabled: disabled || this.disablePagination,\n icon: true,\n text: true,\n // dark: this.dark, // TODO: add mixin\n // light: this.light // TODO: add mixin\n },\n on: {\n click,\n },\n attrs: {\n 'aria-label': label, // TODO: Localization\n },\n }, [this.$createElement(VIcon, icon)])\n },\n genIcons () {\n const before: VNodeChildrenArrayContents = []\n const after: VNodeChildrenArrayContents = []\n\n before.push(this.genIcon(\n this.onPreviousPage,\n this.options.page === 1,\n this.$vuetify.lang.t('$vuetify.dataFooter.prevPage'),\n this.$vuetify.rtl ? this.nextIcon : this.prevIcon\n ))\n\n after.push(this.genIcon(\n this.onNextPage,\n this.disableNextPageIcon,\n this.$vuetify.lang.t('$vuetify.dataFooter.nextPage'),\n this.$vuetify.rtl ? this.prevIcon : this.nextIcon\n ))\n\n if (this.showFirstLastPage) {\n before.unshift(this.genIcon(\n this.onFirstPage,\n this.options.page === 1,\n this.$vuetify.lang.t('$vuetify.dataFooter.firstPage'),\n this.$vuetify.rtl ? this.lastIcon : this.firstIcon\n ))\n\n after.push(this.genIcon(\n this.onLastPage,\n this.options.page >= this.pagination.pageCount || this.options.itemsPerPage === -1,\n this.$vuetify.lang.t('$vuetify.dataFooter.lastPage'),\n this.$vuetify.rtl ? this.firstIcon : this.lastIcon\n ))\n }\n\n return [\n this.$createElement('div', {\n staticClass: 'v-data-footer__icons-before',\n }, before),\n this.showCurrentPage && this.$createElement('span', [this.options.page.toString()]),\n this.$createElement('div', {\n staticClass: 'v-data-footer__icons-after',\n }, after),\n ]\n },\n },\n\n render (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-data-footer',\n }, [\n getSlot(this, 'prepend'),\n this.genItemsPerPageSelect(),\n this.genPaginationInfo(),\n this.genIcons(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VDataFooter.js"}
@@ -24,9 +24,9 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
24
24
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
25
25
 
26
26
  function needsTd(slot) {
27
- var _slot$;
27
+ var _a;
28
28
 
29
- return slot.length !== 1 || !['td', 'th'].includes((_slot$ = slot[0]) == null ? void 0 : _slot$.tag);
29
+ return slot.length !== 1 || !['td', 'th'].includes((_a = slot[0]) === null || _a === void 0 ? void 0 : _a.tag);
30
30
  }
31
31
 
32
32
  var _default = _vue.default.extend({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VDataTable/Row.ts"],"names":[],"mappings":";;;;;;;AACA;;AAIA;;;;;;;;;;;;;;;;AAEA,SAAS,OAAT,CAAkB,IAAlB,EAA2C;AAAA;;AACzC,SAAO,IAAK,CAAC,MAAN,KAAiB,CAAjB,IACL,CAAC,CAAC,IAAD,EAAO,IAAP,EAAa,QAAb,WAAsB,IAAK,CAAC,CAAD,CAA3B,qBAAsB,OAAU,GAAhC,CADH;AAED;;eAEc,aAAI,MAAJ,CAAW;AACxB,EAAA,IAAI,EAAE,KADkB;AAGxB,EAAA,UAAU,EAAE,IAHY;AAKxB,EAAA,KAAK,EAAE;AACL,IAAA,OAAO,EAAE,KADJ;AAEL,IAAA,KAAK,EAAE,MAFF;AAGL,IAAA,IAAI,EAAE,MAHD;AAIL,IAAA,GAAG,EAAE;AAJA,GALiB;AAYxB,EAAA,MAZwB,kBAYhB,CAZgB,QAYS;AAAA,QAApB,KAAoB,QAApB,KAAoB;AAAA,QAAb,KAAa,QAAb,KAAa;AAAA,QAAN,IAAM,QAAN,IAAM;AAC/B,QAAM,aAAa,GAAG,KAAK,EAA3B;AAEA,QAAM,OAAO,GAAG,KAAK,CAAC,OAAN,CAAc,GAAd,CAAkB,UAAC,MAAD,EAA4B;AAC5D,UAAM,QAAQ,GAAG,EAAjB;AACA,UAAM,KAAK,GAAG,mCAAqB,KAAK,CAAC,IAA3B,EAAiC,MAAM,CAAC,KAAxC,CAAd;AAEA,UAAM,QAAQ,GAAG,MAAM,CAAC,KAAxB;AACA,UAAM,UAAU,GAAG,IAAI,CAAC,WAAL,IAAoB,IAAI,CAAC,WAAL,CAAiB,cAAjB,CAAgC,QAAhC,CAApB,IAAiE,IAAI,CAAC,WAAL,CAAiB,QAAjB,CAApF;AACA,UAAM,WAAW,GAAG,aAAa,CAAC,cAAd,CAA6B,QAA7B,KAA0C,aAAa,CAAC,QAAD,CAA3E;;AAEA,UAAI,UAAJ,EAAgB;AACd,QAAA,QAAQ,CAAC,IAAT,OAAA,QAAQ,qBAAS,0BAAY,UAAU,CAAC;AACtC,UAAA,IAAI,EAAE,KAAK,CAAC,IAD0B;AAEtC,UAAA,QAAQ,EAAE,KAF4B;AAGtC,UAAA,MAAM,EAAN,MAHsC;AAItC,UAAA,KAAK,EAAE,KAAK,CAAC,KAJyB;AAKtC,UAAA,KAAK,EAAL;AALsC,SAAD,CAAtB,CAAT,EAAR;AAOD,OARD,MAQO,IAAI,WAAJ,EAAiB;AACtB,QAAA,QAAQ,CAAC,IAAT,OAAA,QAAQ,qBAAS,0BAAY,WAAZ,CAAT,EAAR;AACD,OAFM,MAEA;AACL,QAAA,QAAQ,CAAC,IAAT,CAAc,KAAK,IAAI,IAAT,GAAgB,KAAhB,GAAwB,MAAM,CAAC,KAAD,CAA5C;AACD;;AAED,UAAM,SAAS,kBAAW,MAAM,CAAC,KAAP,IAAgB,OAA3B,CAAf;AAEA,aAAO,OAAO,CAAC,QAAD,CAAP,GACH,CAAC,CAAC,IAAD,EAAO;AACR,QAAA,KAAK,EAAE,CACL,SADK,EAEL,MAAM,CAAC,SAFF,EAGL;AACE,mCAAyB,MAAM,CAAC;AADlC,SAHK;AADC,OAAP,EAQA,QARA,CADE,GAUH,QAVJ;AAWD,KAnCe,CAAhB;AAqCA,WAAO,CAAC,CAAC,IAAD,EAAO,IAAP,EAAa,OAAb,CAAR;AACD;AArDuB,CAAX,C","sourcesContent":["// Types\nimport Vue, { VNode, PropType } from 'vue'\nimport { DataTableHeader } from 'vuetify/types'\n\n// Utils\nimport { getObjectValueByPath, wrapInArray } from '../../util/helpers'\n\nfunction needsTd (slot: VNode[] | undefined) {\n return slot!.length !== 1 ||\n !['td', 'th'].includes(slot![0]?.tag!)\n}\n\nexport default Vue.extend({\n name: 'row',\n\n functional: true,\n\n props: {\n headers: Array as PropType<DataTableHeader[]>,\n index: Number,\n item: Object,\n rtl: Boolean,\n },\n\n render (h, { props, slots, data }): VNode {\n const computedSlots = slots()\n\n const columns = props.headers.map((header: DataTableHeader) => {\n const children = []\n const value = getObjectValueByPath(props.item, header.value)\n\n const slotName = header.value\n const scopedSlot = data.scopedSlots && data.scopedSlots.hasOwnProperty(slotName) && data.scopedSlots[slotName]\n const regularSlot = computedSlots.hasOwnProperty(slotName) && computedSlots[slotName]\n\n if (scopedSlot) {\n children.push(...wrapInArray(scopedSlot({\n item: props.item,\n isMobile: false,\n header,\n index: props.index,\n value,\n })))\n } else if (regularSlot) {\n children.push(...wrapInArray(regularSlot))\n } else {\n children.push(value == null ? value : String(value))\n }\n\n const textAlign = `text-${header.align || 'start'}`\n\n return needsTd(children)\n ? h('td', {\n class: [\n textAlign,\n header.cellClass,\n {\n 'v-data-table__divider': header.divider,\n },\n ],\n }, children)\n : children\n })\n\n return h('tr', data, columns)\n },\n})\n"],"sourceRoot":"","file":"Row.js"}
1
+ {"version":3,"sources":["../../../src/components/VDataTable/Row.ts"],"names":[],"mappings":";;;;;;;AACA;;AAIA;;;;;;;;;;;;;;;;AAEA,SAAS,OAAT,CAAkB,IAAlB,EAA2C;;;AACzC,SAAO,IAAK,CAAC,MAAN,KAAiB,CAAjB,IACL,CAAC,CAAC,IAAD,EAAO,IAAP,EAAa,QAAb,CAAsB,CAAA,EAAA,GAAA,IAAK,CAAC,CAAD,CAAL,MAAQ,IAAR,IAAQ,EAAA,KAAA,KAAA,CAAR,GAAQ,KAAA,CAAR,GAAQ,EAAA,CAAE,GAAhC,CADH;AAED;;eAEc,aAAI,MAAJ,CAAW;AACxB,EAAA,IAAI,EAAE,KADkB;AAGxB,EAAA,UAAU,EAAE,IAHY;AAKxB,EAAA,KAAK,EAAE;AACL,IAAA,OAAO,EAAE,KADJ;AAEL,IAAA,KAAK,EAAE,MAFF;AAGL,IAAA,IAAI,EAAE,MAHD;AAIL,IAAA,GAAG,EAAE;AAJA,GALiB;AAYxB,EAAA,MAZwB,kBAYhB,CAZgB,QAYS;AAAA,QAApB,KAAoB,QAApB,KAAoB;AAAA,QAAb,KAAa,QAAb,KAAa;AAAA,QAAN,IAAM,QAAN,IAAM;AAC/B,QAAM,aAAa,GAAG,KAAK,EAA3B;AAEA,QAAM,OAAO,GAAG,KAAK,CAAC,OAAN,CAAc,GAAd,CAAkB,UAAC,MAAD,EAA4B;AAC5D,UAAM,QAAQ,GAAG,EAAjB;AACA,UAAM,KAAK,GAAG,mCAAqB,KAAK,CAAC,IAA3B,EAAiC,MAAM,CAAC,KAAxC,CAAd;AAEA,UAAM,QAAQ,GAAG,MAAM,CAAC,KAAxB;AACA,UAAM,UAAU,GAAG,IAAI,CAAC,WAAL,IAAoB,IAAI,CAAC,WAAL,CAAiB,cAAjB,CAAgC,QAAhC,CAApB,IAAiE,IAAI,CAAC,WAAL,CAAiB,QAAjB,CAApF;AACA,UAAM,WAAW,GAAG,aAAa,CAAC,cAAd,CAA6B,QAA7B,KAA0C,aAAa,CAAC,QAAD,CAA3E;;AAEA,UAAI,UAAJ,EAAgB;AACd,QAAA,QAAQ,CAAC,IAAT,OAAA,QAAQ,qBAAS,0BAAY,UAAU,CAAC;AACtC,UAAA,IAAI,EAAE,KAAK,CAAC,IAD0B;AAEtC,UAAA,QAAQ,EAAE,KAF4B;AAGtC,UAAA,MAAM,EAAN,MAHsC;AAItC,UAAA,KAAK,EAAE,KAAK,CAAC,KAJyB;AAKtC,UAAA,KAAK,EAAL;AALsC,SAAD,CAAtB,CAAT,EAAR;AAOD,OARD,MAQO,IAAI,WAAJ,EAAiB;AACtB,QAAA,QAAQ,CAAC,IAAT,OAAA,QAAQ,qBAAS,0BAAY,WAAZ,CAAT,EAAR;AACD,OAFM,MAEA;AACL,QAAA,QAAQ,CAAC,IAAT,CAAc,KAAK,IAAI,IAAT,GAAgB,KAAhB,GAAwB,MAAM,CAAC,KAAD,CAA5C;AACD;;AAED,UAAM,SAAS,kBAAW,MAAM,CAAC,KAAP,IAAgB,OAA3B,CAAf;AAEA,aAAO,OAAO,CAAC,QAAD,CAAP,GACH,CAAC,CAAC,IAAD,EAAO;AACR,QAAA,KAAK,EAAE,CACL,SADK,EAEL,MAAM,CAAC,SAFF,EAGL;AACE,mCAAyB,MAAM,CAAC;AADlC,SAHK;AADC,OAAP,EAQA,QARA,CADE,GAUH,QAVJ;AAWD,KAnCe,CAAhB;AAqCA,WAAO,CAAC,CAAC,IAAD,EAAO,IAAP,EAAa,OAAb,CAAR;AACD;AArDuB,CAAX,C","sourcesContent":["// Types\nimport Vue, { VNode, PropType } from 'vue'\nimport { DataTableHeader } from 'vuetify/types'\n\n// Utils\nimport { getObjectValueByPath, wrapInArray } from '../../util/helpers'\n\nfunction needsTd (slot: VNode[] | undefined) {\n return slot!.length !== 1 ||\n !['td', 'th'].includes(slot![0]?.tag!)\n}\n\nexport default Vue.extend({\n name: 'row',\n\n functional: true,\n\n props: {\n headers: Array as PropType<DataTableHeader[]>,\n index: Number,\n item: Object,\n rtl: Boolean,\n },\n\n render (h, { props, slots, data }): VNode {\n const computedSlots = slots()\n\n const columns = props.headers.map((header: DataTableHeader) => {\n const children = []\n const value = getObjectValueByPath(props.item, header.value)\n\n const slotName = header.value\n const scopedSlot = data.scopedSlots && data.scopedSlots.hasOwnProperty(slotName) && data.scopedSlots[slotName]\n const regularSlot = computedSlots.hasOwnProperty(slotName) && computedSlots[slotName]\n\n if (scopedSlot) {\n children.push(...wrapInArray(scopedSlot({\n item: props.item,\n isMobile: false,\n header,\n index: props.index,\n value,\n })))\n } else if (regularSlot) {\n children.push(...wrapInArray(regularSlot))\n } else {\n children.push(value == null ? value : String(value))\n }\n\n const textAlign = `text-${header.align || 'start'}`\n\n return needsTd(children)\n ? h('td', {\n class: [\n textAlign,\n header.cellClass,\n {\n 'v-data-table__divider': header.divider,\n },\n ],\n }, children)\n : children\n })\n\n return h('tr', data, columns)\n },\n})\n"],"sourceRoot":"","file":"Row.js"}
@@ -209,10 +209,21 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
209
209
  }
210
210
 
211
211
  return itemsPerPage;
212
+ },
213
+ groupByText: function groupByText() {
214
+ var _this2 = this;
215
+
216
+ var _a, _b, _c;
217
+
218
+ return (_c = (_b = (_a = this.headers) === null || _a === void 0 ? void 0 : _a.find(function (header) {
219
+ var _a;
220
+
221
+ return header.value === ((_a = _this2.internalGroupBy) === null || _a === void 0 ? void 0 : _a[0]);
222
+ })) === null || _b === void 0 ? void 0 : _b.text) !== null && _c !== void 0 ? _c : '';
212
223
  }
213
224
  },
214
225
  created: function created() {
215
- var _this2 = this;
226
+ var _this3 = this;
216
227
 
217
228
  var breakingProps = [['sort-icon', 'header-props.sort-icon'], ['hide-headers', 'hide-default-header'], ['select-all', 'show-select']];
218
229
  /* istanbul ignore next */
@@ -222,7 +233,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
222
233
  original = _ref2[0],
223
234
  replacement = _ref2[1];
224
235
 
225
- if (_this2.$attrs.hasOwnProperty(original)) (0, _console.breaking)(original, replacement, _this2);
236
+ if (_this3.$attrs.hasOwnProperty(original)) (0, _console.breaking)(original, replacement, _this3);
226
237
  });
227
238
  },
228
239
  mounted: function mounted() {
@@ -264,10 +275,10 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
264
275
  return (0, _helpers.getSlot)(this, 'caption', props, true);
265
276
  },
266
277
  genColgroup: function genColgroup(props) {
267
- var _this3 = this;
278
+ var _this4 = this;
268
279
 
269
280
  return this.$createElement('colgroup', this.computedHeaders.map(function (header) {
270
- return _this3.$createElement('col', {
281
+ return _this4.$createElement('col', {
271
282
  class: {
272
283
  divider: header.divider
273
284
  }
@@ -331,26 +342,26 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
331
342
  return props.groupedItems ? this.genGroupedRows(props.groupedItems, props) : this.genRows(items, props);
332
343
  },
333
344
  genGroupedRows: function genGroupedRows(groupedItems, props) {
334
- var _this4 = this;
345
+ var _this5 = this;
335
346
 
336
347
  return groupedItems.map(function (group) {
337
- if (!_this4.openCache.hasOwnProperty(group.name)) _this4.$set(_this4.openCache, group.name, true);
348
+ if (!_this5.openCache.hasOwnProperty(group.name)) _this5.$set(_this5.openCache, group.name, true);
338
349
 
339
- if (_this4.$scopedSlots.group) {
340
- return _this4.$scopedSlots.group({
350
+ if (_this5.$scopedSlots.group) {
351
+ return _this5.$scopedSlots.group({
341
352
  group: group.name,
342
353
  options: props.options,
343
- isMobile: _this4.isMobile,
354
+ isMobile: _this5.isMobile,
344
355
  items: group.items,
345
- headers: _this4.computedHeaders
356
+ headers: _this5.computedHeaders
346
357
  });
347
358
  } else {
348
- return _this4.genDefaultGroupedRow(group.name, group.items, props);
359
+ return _this5.genDefaultGroupedRow(group.name, group.items, props);
349
360
  }
350
361
  });
351
362
  },
352
363
  genDefaultGroupedRow: function genDefaultGroupedRow(group, items, props) {
353
- var _this5 = this;
364
+ var _this6 = this;
354
365
 
355
366
  var isOpen = !!this.openCache[group];
356
367
  var children = [this.$createElement('template', {
@@ -358,7 +369,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
358
369
  }, this.genRows(items, props))];
359
370
 
360
371
  var toggleFn = function toggleFn() {
361
- return _this5.$set(_this5.openCache, group, !_this5.openCache[group]);
372
+ return _this6.$set(_this6.openCache, group, !_this6.openCache[group]);
362
373
  };
363
374
 
364
375
  var removeFn = function removeFn() {
@@ -405,7 +416,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
405
416
  var column = this.$createElement('td', {
406
417
  staticClass: 'text-start',
407
418
  attrs: this.colspanAttrs
408
- }, [toggle, "".concat(props.options.groupBy[0], ": ").concat(group), remove]);
419
+ }, [toggle, "".concat(this.groupByText, ": ").concat(group), remove]);
409
420
  children.unshift(this.$createElement('template', {
410
421
  slot: 'column.header'
411
422
  }, [column]));
@@ -457,12 +468,12 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
457
468
  return rows;
458
469
  },
459
470
  genDefaultRows: function genDefaultRows(items, props) {
460
- var _this6 = this;
471
+ var _this7 = this;
461
472
 
462
473
  return this.$scopedSlots['expanded-item'] ? items.map(function (item, index) {
463
- return _this6.genDefaultExpandedRow(item, index);
474
+ return _this7.genDefaultExpandedRow(item, index);
464
475
  }) : items.map(function (item, index) {
465
- return _this6.genDefaultSimpleRow(item, index);
476
+ return _this7.genDefaultSimpleRow(item, index);
466
477
  });
467
478
  },
468
479
  genDefaultExpandedRow: function genDefaultExpandedRow(item, index) {
@@ -489,7 +500,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
489
500
  }, [expandedRow])]);
490
501
  },
491
502
  genDefaultSimpleRow: function genDefaultSimpleRow(item, index) {
492
- var _this7 = this;
503
+ var _this8 = this;
493
504
 
494
505
  var classes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
495
506
  var scopedSlots = (0, _helpers.getPrefixedScopedSlots)('item.', this.$scopedSlots);
@@ -499,17 +510,17 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
499
510
  var slot = scopedSlots['data-table-select'];
500
511
  scopedSlots['data-table-select'] = slot ? function () {
501
512
  return slot(_objectSpread(_objectSpread({}, data), {}, {
502
- isMobile: _this7.isMobile
513
+ isMobile: _this8.isMobile
503
514
  }));
504
515
  } : function () {
505
- var _this7$checkboxColor;
516
+ var _a;
506
517
 
507
- return _this7.$createElement(_VSimpleCheckbox.default, {
518
+ return _this8.$createElement(_VSimpleCheckbox.default, {
508
519
  staticClass: 'v-data-table__checkbox',
509
520
  props: {
510
521
  value: data.isSelected,
511
- disabled: !_this7.isSelectable(item),
512
- color: (_this7$checkboxColor = _this7.checkboxColor) != null ? _this7$checkboxColor : ''
522
+ disabled: !_this8.isSelectable(item),
523
+ color: (_a = _this8.checkboxColor) !== null && _a !== void 0 ? _a : ''
513
524
  },
514
525
  on: {
515
526
  input: function input(val) {
@@ -525,7 +536,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
525
536
  scopedSlots['data-table-expand'] = _slot ? function () {
526
537
  return _slot(data);
527
538
  } : function () {
528
- return _this7.$createElement(_VIcon.default, {
539
+ return _this8.$createElement(_VIcon.default, {
529
540
  staticClass: 'v-data-table__expand-icon',
530
541
  class: {
531
542
  'v-data-table__expand-icon--active': data.isExpanded
@@ -536,7 +547,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
536
547
  data.expand(!data.isExpanded);
537
548
  }
538
549
  }
539
- }, [_this7.expandIcon]);
550
+ }, [_this8.expandIcon]);
540
551
  };
541
552
  }
542
553
 
@@ -557,13 +568,13 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
557
568
  // TODO: for click, the first argument should be the event, and the second argument should be data,
558
569
  // but this is a breaking change so it's for v3
559
570
  click: function click() {
560
- return _this7.$emit('click:row', item, data);
571
+ return _this8.$emit('click:row', item, data);
561
572
  },
562
573
  contextmenu: function contextmenu(event) {
563
- return _this7.$emit('contextmenu:row', event, data);
574
+ return _this8.$emit('contextmenu:row', event, data);
564
575
  },
565
576
  dblclick: function dblclick(event) {
566
- return _this7.$emit('dblclick:row', event, data);
577
+ return _this8.$emit('dblclick:row', event, data);
567
578
  }
568
579
  }
569
580
  });
@@ -585,9 +596,9 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
585
596
  return this.$createElement('tbody', [(0, _helpers.getSlot)(this, 'body.prepend', data, true), this.genItems(props.items, props), (0, _helpers.getSlot)(this, 'body.append', data, true)]);
586
597
  },
587
598
  genFoot: function genFoot(props) {
588
- var _this$$scopedSlots$fo, _this$$scopedSlots;
599
+ var _a, _b;
589
600
 
590
- return (_this$$scopedSlots$fo = (_this$$scopedSlots = this.$scopedSlots).foot) == null ? void 0 : _this$$scopedSlots$fo.call(_this$$scopedSlots, props);
601
+ return (_b = (_a = this.$scopedSlots).foot) === null || _b === void 0 ? void 0 : _b.call(_a, props);
591
602
  },
592
603
  genFooters: function genFooters(props) {
593
604
  var data = {
@@ -653,7 +664,7 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
653
664
  }
654
665
  },
655
666
  render: function render() {
656
- var _this8 = this;
667
+ var _this9 = this;
657
668
 
658
669
  return this.$createElement(_VData.VData, {
659
670
  props: _objectSpread(_objectSpread({}, this.$props), {}, {
@@ -663,37 +674,37 @@ var _default2 = (0, _mixins.default)(_VDataIterator.VDataIterator, _loadable.def
663
674
  }),
664
675
  on: {
665
676
  'update:options': function updateOptions(v, old) {
666
- _this8.internalGroupBy = v.groupBy || [];
667
- !(0, _helpers.deepEqual)(v, old) && _this8.$emit('update:options', v);
677
+ _this9.internalGroupBy = v.groupBy || [];
678
+ !(0, _helpers.deepEqual)(v, old) && _this9.$emit('update:options', v);
668
679
  },
669
680
  'update:page': function updatePage(v) {
670
- return _this8.$emit('update:page', v);
681
+ return _this9.$emit('update:page', v);
671
682
  },
672
683
  'update:items-per-page': function updateItemsPerPage(v) {
673
- return _this8.$emit('update:items-per-page', v);
684
+ return _this9.$emit('update:items-per-page', v);
674
685
  },
675
686
  'update:sort-by': function updateSortBy(v) {
676
- return _this8.$emit('update:sort-by', v);
687
+ return _this9.$emit('update:sort-by', v);
677
688
  },
678
689
  'update:sort-desc': function updateSortDesc(v) {
679
- return _this8.$emit('update:sort-desc', v);
690
+ return _this9.$emit('update:sort-desc', v);
680
691
  },
681
692
  'update:group-by': function updateGroupBy(v) {
682
- return _this8.$emit('update:group-by', v);
693
+ return _this9.$emit('update:group-by', v);
683
694
  },
684
695
  'update:group-desc': function updateGroupDesc(v) {
685
- return _this8.$emit('update:group-desc', v);
696
+ return _this9.$emit('update:group-desc', v);
686
697
  },
687
698
  pagination: function pagination(v, old) {
688
- return !(0, _helpers.deepEqual)(v, old) && _this8.$emit('pagination', v);
699
+ return !(0, _helpers.deepEqual)(v, old) && _this9.$emit('pagination', v);
689
700
  },
690
701
  'current-items': function currentItems(v) {
691
- _this8.internalCurrentItems = v;
702
+ _this9.internalCurrentItems = v;
692
703
 
693
- _this8.$emit('current-items', v);
704
+ _this9.$emit('current-items', v);
694
705
  },
695
706
  'page-count': function pageCount(v) {
696
- return _this8.$emit('page-count', v);
707
+ return _this9.$emit('page-count', v);
697
708
  }
698
709
  },
699
710
  scopedSlots: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VDataTable/VDataTable.ts"],"names":[],"mappings":"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","sourcesContent":["import './VDataTable.sass'\n\n// Types\nimport { VNode, VNodeChildrenArrayContents, VNodeChildren } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport {\n DataTableHeader,\n DataTableFilterFunction,\n DataScopeProps,\n DataOptions,\n DataPagination,\n DataTableCompareFunction,\n DataItemsPerPageOption,\n ItemGroup,\n RowClassFunction,\n DataTableItemProps,\n} from 'vuetify/types'\n\n// Components\nimport { VData } from '../VData'\nimport { VDataFooter, VDataIterator } from '../VDataIterator'\nimport VBtn from '../VBtn'\nimport VDataTableHeader from './VDataTableHeader'\n// import VVirtualTable from './VVirtualTable'\nimport VIcon from '../VIcon'\nimport Row from './Row'\nimport RowGroup from './RowGroup'\nimport VSimpleCheckbox from '../VCheckbox/VSimpleCheckbox'\nimport VSimpleTable from './VSimpleTable'\nimport MobileRow from './MobileRow'\n\n// Mixins\nimport Loadable from '../../mixins/loadable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { deepEqual, getObjectValueByPath, getPrefixedScopedSlots, getSlot, defaultFilter, camelizeObjectKeys, getPropertyFromItem } from '../../util/helpers'\nimport { breaking } from '../../util/console'\nimport { mergeClasses } from '../../util/mergeData'\n\nfunction filterFn (item: any, search: string | null, filter: DataTableFilterFunction) {\n return (header: DataTableHeader) => {\n const value = getObjectValueByPath(item, header.value)\n return header.filter ? header.filter(value, search, item) : filter(value, search, item)\n }\n}\n\nfunction searchTableItems (\n items: any[],\n search: string | null,\n headersWithCustomFilters: DataTableHeader[],\n headersWithoutCustomFilters: DataTableHeader[],\n customFilter: DataTableFilterFunction\n) {\n search = typeof search === 'string' ? search.trim() : null\n\n return items.filter(item => {\n // Headers with custom filters are evaluated whether or not a search term has been provided.\n // We need to match every filter to be included in the results.\n const matchesColumnFilters = headersWithCustomFilters.every(filterFn(item, search, defaultFilter))\n\n // Headers without custom filters are only filtered by the `search` property if it is defined.\n // We only need a single column to match the search term to be included in the results.\n const matchesSearchTerm = !search || headersWithoutCustomFilters.some(filterFn(item, search, customFilter))\n\n return matchesColumnFilters && matchesSearchTerm\n })\n}\n\n/* @vue/component */\nexport default mixins(\n VDataIterator,\n Loadable,\n).extend({\n name: 'v-data-table',\n\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n headers: {\n type: Array,\n default: () => [],\n } as PropValidator<DataTableHeader[]>,\n showSelect: Boolean,\n checkboxColor: String,\n showExpand: Boolean,\n showGroupBy: Boolean,\n // TODO: Fix\n // virtualRows: Boolean,\n height: [Number, String],\n hideDefaultHeader: Boolean,\n caption: String,\n dense: Boolean,\n headerProps: Object,\n calculateWidths: Boolean,\n fixedHeader: Boolean,\n headersLength: Number,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n customFilter: {\n type: Function,\n default: defaultFilter,\n } as PropValidator<typeof defaultFilter>,\n itemClass: {\n type: [String, Function],\n default: () => '',\n } as PropValidator<RowClassFunction | string>,\n loaderHeight: {\n type: [Number, String],\n default: 4,\n },\n },\n\n data () {\n return {\n internalGroupBy: [] as string[],\n openCache: {} as { [key: string]: boolean },\n widths: [] as number[],\n }\n },\n\n computed: {\n computedHeaders (): DataTableHeader[] {\n if (!this.headers) return []\n const headers = this.headers.filter(h => h.value === undefined || !this.internalGroupBy.find(v => v === h.value))\n const defaultHeader = { text: '', sortable: false, width: '1px' }\n\n if (this.showSelect) {\n const index = headers.findIndex(h => h.value === 'data-table-select')\n if (index < 0) headers.unshift({ ...defaultHeader, value: 'data-table-select' })\n else headers.splice(index, 1, { ...defaultHeader, ...headers[index] })\n }\n\n if (this.showExpand) {\n const index = headers.findIndex(h => h.value === 'data-table-expand')\n if (index < 0) headers.unshift({ ...defaultHeader, value: 'data-table-expand' })\n else headers.splice(index, 1, { ...defaultHeader, ...headers[index] })\n }\n\n return headers\n },\n colspanAttrs (): object | undefined {\n return this.isMobile ? undefined : {\n colspan: this.headersLength || this.computedHeaders.length,\n }\n },\n columnSorters (): Record<string, DataTableCompareFunction> {\n return this.computedHeaders.reduce<Record<string, DataTableCompareFunction>>((acc, header) => {\n if (header.sort) acc[header.value] = header.sort\n return acc\n }, {})\n },\n headersWithCustomFilters (): DataTableHeader[] {\n return this.headers.filter(header => header.filter && (!header.hasOwnProperty('filterable') || header.filterable === true))\n },\n headersWithoutCustomFilters (): DataTableHeader[] {\n return this.headers.filter(header => !header.filter && (!header.hasOwnProperty('filterable') || header.filterable === true))\n },\n sanitizedHeaderProps (): Record<string, any> {\n return camelizeObjectKeys(this.headerProps)\n },\n computedItemsPerPage (): number {\n const itemsPerPage = this.options && this.options.itemsPerPage ? this.options.itemsPerPage : this.itemsPerPage\n const itemsPerPageOptions: DataItemsPerPageOption[] | undefined = this.sanitizedFooterProps.itemsPerPageOptions\n\n if (\n itemsPerPageOptions &&\n !itemsPerPageOptions.find(item => typeof item === 'number' ? item === itemsPerPage : item.value === itemsPerPage)\n ) {\n const firstOption = itemsPerPageOptions[0]\n return typeof firstOption === 'object' ? firstOption.value : firstOption\n }\n\n return itemsPerPage\n },\n },\n\n created () {\n const breakingProps = [\n ['sort-icon', 'header-props.sort-icon'],\n ['hide-headers', 'hide-default-header'],\n ['select-all', 'show-select'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n mounted () {\n // if ((!this.sortBy || !this.sortBy.length) && (!this.options.sortBy || !this.options.sortBy.length)) {\n // const firstSortable = this.headers.find(h => !('sortable' in h) || !!h.sortable)\n // if (firstSortable) this.updateOptions({ sortBy: [firstSortable.value], sortDesc: [false] })\n // }\n\n if (this.calculateWidths) {\n window.addEventListener('resize', this.calcWidths)\n this.calcWidths()\n }\n },\n\n beforeDestroy () {\n if (this.calculateWidths) {\n window.removeEventListener('resize', this.calcWidths)\n }\n },\n\n methods: {\n calcWidths () {\n this.widths = Array.from(this.$el.querySelectorAll('th')).map(e => e.clientWidth)\n },\n customFilterWithColumns (items: any[], search: string) {\n return searchTableItems(items, search, this.headersWithCustomFilters, this.headersWithoutCustomFilters, this.customFilter)\n },\n customSortWithHeaders (items: any[], sortBy: string[], sortDesc: boolean[], locale: string) {\n return this.customSort(items, sortBy, sortDesc, locale, this.columnSorters)\n },\n createItemProps (item: any, index: number): DataTableItemProps {\n const props = VDataIterator.options.methods.createItemProps.call(this, item, index)\n\n return Object.assign(props, { headers: this.computedHeaders })\n },\n genCaption (props: DataScopeProps) {\n if (this.caption) return [this.$createElement('caption', [this.caption])]\n\n return getSlot(this, 'caption', props, true)\n },\n genColgroup (props: DataScopeProps) {\n return this.$createElement('colgroup', this.computedHeaders.map(header => {\n return this.$createElement('col', {\n class: {\n divider: header.divider,\n },\n })\n }))\n },\n genLoading () {\n const th = this.$createElement('th', {\n staticClass: 'column',\n attrs: this.colspanAttrs,\n }, [this.genProgress()])\n\n const tr = this.$createElement('tr', {\n staticClass: 'v-data-table__progress',\n }, [th])\n\n return this.$createElement('thead', [tr])\n },\n genHeaders (props: DataScopeProps) {\n const data = {\n props: {\n ...this.sanitizedHeaderProps,\n headers: this.computedHeaders,\n options: props.options,\n mobile: this.isMobile,\n showGroupBy: this.showGroupBy,\n checkboxColor: this.checkboxColor,\n someItems: this.someItems,\n everyItem: this.everyItem,\n singleSelect: this.singleSelect,\n disableSort: this.disableSort,\n },\n on: {\n sort: props.sort,\n group: props.group,\n 'toggle-select-all': this.toggleSelectAll,\n },\n }\n\n // TODO: rename to 'head'? (thead, tbody, tfoot)\n const children: VNodeChildrenArrayContents = [getSlot(this, 'header', {\n ...data,\n isMobile: this.isMobile,\n })]\n\n if (!this.hideDefaultHeader) {\n const scopedSlots = getPrefixedScopedSlots('header.', this.$scopedSlots)\n children.push(this.$createElement(VDataTableHeader, {\n ...data,\n scopedSlots,\n }))\n }\n\n if (this.loading) children.push(this.genLoading())\n\n return children\n },\n genEmptyWrapper (content: VNodeChildrenArrayContents) {\n return this.$createElement('tr', {\n staticClass: 'v-data-table__empty-wrapper',\n }, [\n this.$createElement('td', {\n attrs: this.colspanAttrs,\n }, content),\n ])\n },\n genItems (items: any[], props: DataScopeProps) {\n const empty = this.genEmpty(props.originalItemsLength, props.pagination.itemsLength)\n if (empty) return [empty]\n\n return props.groupedItems\n ? this.genGroupedRows(props.groupedItems, props)\n : this.genRows(items, props)\n },\n genGroupedRows (groupedItems: ItemGroup<any>[], props: DataScopeProps) {\n return groupedItems.map(group => {\n if (!this.openCache.hasOwnProperty(group.name)) this.$set(this.openCache, group.name, true)\n\n if (this.$scopedSlots.group) {\n return this.$scopedSlots.group({\n group: group.name,\n options: props.options,\n isMobile: this.isMobile,\n items: group.items,\n headers: this.computedHeaders,\n })\n } else {\n return this.genDefaultGroupedRow(group.name, group.items, props)\n }\n })\n },\n genDefaultGroupedRow (group: string, items: any[], props: DataScopeProps) {\n const isOpen = !!this.openCache[group]\n const children: VNodeChildren = [\n this.$createElement('template', { slot: 'row.content' }, this.genRows(items, props)),\n ]\n const toggleFn = () => this.$set(this.openCache, group, !this.openCache[group])\n const removeFn = () => props.updateOptions({ groupBy: [], groupDesc: [] })\n\n if (this.$scopedSlots['group.header']) {\n children.unshift(this.$createElement('template', { slot: 'column.header' }, [\n this.$scopedSlots['group.header']!({\n group,\n groupBy: props.options.groupBy,\n isMobile: this.isMobile,\n items,\n headers: this.computedHeaders,\n isOpen,\n toggle: toggleFn,\n remove: removeFn,\n }),\n ]))\n } else {\n const toggle = this.$createElement(VBtn, {\n staticClass: 'ma-0',\n props: {\n icon: true,\n small: true,\n },\n on: {\n click: toggleFn,\n },\n }, [this.$createElement(VIcon, [isOpen ? '$minus' : '$plus'])])\n\n const remove = this.$createElement(VBtn, {\n staticClass: 'ma-0',\n props: {\n icon: true,\n small: true,\n },\n on: {\n click: removeFn,\n },\n }, [this.$createElement(VIcon, ['$close'])])\n\n const column = this.$createElement('td', {\n staticClass: 'text-start',\n attrs: this.colspanAttrs,\n }, [toggle, `${props.options.groupBy[0]}: ${group}`, remove])\n\n children.unshift(this.$createElement('template', { slot: 'column.header' }, [column]))\n }\n\n if (this.$scopedSlots['group.summary']) {\n children.push(this.$createElement('template', { slot: 'column.summary' }, [\n this.$scopedSlots['group.summary']!({\n group,\n groupBy: props.options.groupBy,\n isMobile: this.isMobile,\n items,\n headers: this.computedHeaders,\n isOpen,\n toggle: toggleFn,\n }),\n ]))\n }\n\n return this.$createElement(RowGroup, {\n key: group,\n props: {\n value: isOpen,\n },\n }, children)\n },\n genRows (items: any[], props: DataScopeProps) {\n return this.$scopedSlots.item ? this.genScopedRows(items, props) : this.genDefaultRows(items, props)\n },\n genScopedRows (items: any[], props: DataScopeProps) {\n const rows = []\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n rows.push(this.$scopedSlots.item!({\n ...this.createItemProps(item, i),\n isMobile: this.isMobile,\n }))\n\n if (this.isExpanded(item)) {\n rows.push(this.$scopedSlots['expanded-item']!({\n headers: this.computedHeaders,\n isMobile: this.isMobile,\n index: i,\n item,\n }))\n }\n }\n\n return rows\n },\n genDefaultRows (items: any[], props: DataScopeProps) {\n return this.$scopedSlots['expanded-item']\n ? items.map((item, index) => this.genDefaultExpandedRow(item, index))\n : items.map((item, index) => this.genDefaultSimpleRow(item, index))\n },\n genDefaultExpandedRow (item: any, index: number): VNode {\n const isExpanded = this.isExpanded(item)\n const classes = {\n 'v-data-table__expanded v-data-table__expanded__row': isExpanded,\n }\n const headerRow = this.genDefaultSimpleRow(item, index, classes)\n const expandedRow = this.$createElement('tr', {\n staticClass: 'v-data-table__expanded v-data-table__expanded__content',\n }, [this.$scopedSlots['expanded-item']!({\n headers: this.computedHeaders,\n isMobile: this.isMobile,\n item,\n })])\n\n return this.$createElement(RowGroup, {\n props: {\n value: isExpanded,\n },\n }, [\n this.$createElement('template', { slot: 'row.header' }, [headerRow]),\n this.$createElement('template', { slot: 'row.content' }, [expandedRow]),\n ])\n },\n genDefaultSimpleRow (item: any, index: number, classes: Record<string, boolean> = {}): VNode {\n const scopedSlots = getPrefixedScopedSlots('item.', this.$scopedSlots)\n\n const data = this.createItemProps(item, index)\n\n if (this.showSelect) {\n const slot = scopedSlots['data-table-select']\n scopedSlots['data-table-select'] = slot ? () => slot({\n ...data,\n isMobile: this.isMobile,\n }) : () => this.$createElement(VSimpleCheckbox, {\n staticClass: 'v-data-table__checkbox',\n props: {\n value: data.isSelected,\n disabled: !this.isSelectable(item),\n color: this.checkboxColor ?? '',\n },\n on: {\n input: (val: boolean) => data.select(val),\n },\n })\n }\n\n if (this.showExpand) {\n const slot = scopedSlots['data-table-expand']\n scopedSlots['data-table-expand'] = slot ? () => slot(data) : () => this.$createElement(VIcon, {\n staticClass: 'v-data-table__expand-icon',\n class: {\n 'v-data-table__expand-icon--active': data.isExpanded,\n },\n on: {\n click: (e: MouseEvent) => {\n e.stopPropagation()\n data.expand(!data.isExpanded)\n },\n },\n }, [this.expandIcon])\n }\n\n return this.$createElement(this.isMobile ? MobileRow : Row, {\n key: getObjectValueByPath(item, this.itemKey),\n class: mergeClasses(\n { ...classes, 'v-data-table__selected': data.isSelected },\n getPropertyFromItem(item, this.itemClass)\n ),\n props: {\n headers: this.computedHeaders,\n hideDefaultHeader: this.hideDefaultHeader,\n index,\n item,\n rtl: this.$vuetify.rtl,\n },\n scopedSlots,\n on: {\n // TODO: for click, the first argument should be the event, and the second argument should be data,\n // but this is a breaking change so it's for v3\n click: () => this.$emit('click:row', item, data),\n contextmenu: (event: MouseEvent) => this.$emit('contextmenu:row', event, data),\n dblclick: (event: MouseEvent) => this.$emit('dblclick:row', event, data),\n },\n })\n },\n genBody (props: DataScopeProps): VNode | string | VNodeChildren {\n const data = {\n ...props,\n expand: this.expand,\n headers: this.computedHeaders,\n isExpanded: this.isExpanded,\n isMobile: this.isMobile,\n isSelected: this.isSelected,\n select: this.select,\n }\n\n if (this.$scopedSlots.body) {\n return this.$scopedSlots.body!(data)\n }\n\n return this.$createElement('tbody', [\n getSlot(this, 'body.prepend', data, true),\n this.genItems(props.items, props),\n getSlot(this, 'body.append', data, true),\n ])\n },\n genFoot (props: DataScopeProps): VNode[] | undefined {\n return this.$scopedSlots.foot?.(props)\n },\n genFooters (props: DataScopeProps) {\n const data = {\n props: {\n options: props.options,\n pagination: props.pagination,\n itemsPerPageText: '$vuetify.dataTable.itemsPerPageText',\n ...this.sanitizedFooterProps,\n },\n on: {\n 'update:options': (value: any) => props.updateOptions(value),\n },\n widths: this.widths,\n headers: this.computedHeaders,\n }\n\n const children: VNodeChildren = [\n getSlot(this, 'footer', data, true),\n ]\n\n if (!this.hideDefaultFooter) {\n children.push(this.$createElement(VDataFooter, {\n ...data,\n scopedSlots: getPrefixedScopedSlots('footer.', this.$scopedSlots),\n }))\n }\n\n return children\n },\n genDefaultScopedSlot (props: DataScopeProps): VNode {\n const simpleProps = {\n height: this.height,\n fixedHeader: this.fixedHeader,\n dense: this.dense,\n }\n\n // if (this.virtualRows) {\n // return this.$createElement(VVirtualTable, {\n // props: Object.assign(simpleProps, {\n // items: props.items,\n // height: this.height,\n // rowHeight: this.dense ? 24 : 48,\n // headerHeight: this.dense ? 32 : 48,\n // // TODO: expose rest of props from virtual table?\n // }),\n // scopedSlots: {\n // items: ({ items }) => this.genItems(items, props) as any,\n // },\n // }, [\n // this.proxySlot('body.before', [this.genCaption(props), this.genHeaders(props)]),\n // this.proxySlot('bottom', this.genFooters(props)),\n // ])\n // }\n\n return this.$createElement(VSimpleTable, {\n props: simpleProps,\n class: {\n 'v-data-table--mobile': this.isMobile,\n },\n }, [\n this.proxySlot('top', getSlot(this, 'top', {\n ...props,\n isMobile: this.isMobile,\n }, true)),\n this.genCaption(props),\n this.genColgroup(props),\n this.genHeaders(props),\n this.genBody(props),\n this.genFoot(props),\n this.proxySlot('bottom', this.genFooters(props)),\n ])\n },\n proxySlot (slot: string, content: VNodeChildren) {\n return this.$createElement('template', { slot }, content)\n },\n },\n\n render (): VNode {\n return this.$createElement(VData, {\n props: {\n ...this.$props,\n customFilter: this.customFilterWithColumns,\n customSort: this.customSortWithHeaders,\n itemsPerPage: this.computedItemsPerPage,\n },\n on: {\n 'update:options': (v: DataOptions, old: DataOptions) => {\n this.internalGroupBy = v.groupBy || []\n !deepEqual(v, old) && this.$emit('update:options', v)\n },\n 'update:page': (v: number) => this.$emit('update:page', v),\n 'update:items-per-page': (v: number) => this.$emit('update:items-per-page', v),\n 'update:sort-by': (v: string | string[]) => this.$emit('update:sort-by', v),\n 'update:sort-desc': (v: boolean | boolean[]) => this.$emit('update:sort-desc', v),\n 'update:group-by': (v: string | string[]) => this.$emit('update:group-by', v),\n 'update:group-desc': (v: boolean | boolean[]) => this.$emit('update:group-desc', v),\n pagination: (v: DataPagination, old: DataPagination) => !deepEqual(v, old) && this.$emit('pagination', v),\n 'current-items': (v: any[]) => {\n this.internalCurrentItems = v\n this.$emit('current-items', v)\n },\n 'page-count': (v: number) => this.$emit('page-count', v),\n },\n scopedSlots: {\n default: this.genDefaultScopedSlot,\n },\n })\n },\n})\n"],"sourceRoot":"","file":"VDataTable.js"}
1
+ {"version":3,"sources":["../../../src/components/VDataTable/VDataTable.ts"],"names":[],"mappings":"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","sourcesContent":["import './VDataTable.sass'\n\n// Types\nimport { VNode, VNodeChildrenArrayContents, VNodeChildren } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport {\n DataTableHeader,\n DataTableFilterFunction,\n DataScopeProps,\n DataOptions,\n DataPagination,\n DataTableCompareFunction,\n DataItemsPerPageOption,\n ItemGroup,\n RowClassFunction,\n DataTableItemProps,\n} from 'vuetify/types'\n\n// Components\nimport { VData } from '../VData'\nimport { VDataFooter, VDataIterator } from '../VDataIterator'\nimport VBtn from '../VBtn'\nimport VDataTableHeader from './VDataTableHeader'\n// import VVirtualTable from './VVirtualTable'\nimport VIcon from '../VIcon'\nimport Row from './Row'\nimport RowGroup from './RowGroup'\nimport VSimpleCheckbox from '../VCheckbox/VSimpleCheckbox'\nimport VSimpleTable from './VSimpleTable'\nimport MobileRow from './MobileRow'\n\n// Mixins\nimport Loadable from '../../mixins/loadable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { deepEqual, getObjectValueByPath, getPrefixedScopedSlots, getSlot, defaultFilter, camelizeObjectKeys, getPropertyFromItem } from '../../util/helpers'\nimport { breaking } from '../../util/console'\nimport { mergeClasses } from '../../util/mergeData'\n\nfunction filterFn (item: any, search: string | null, filter: DataTableFilterFunction) {\n return (header: DataTableHeader) => {\n const value = getObjectValueByPath(item, header.value)\n return header.filter ? header.filter(value, search, item) : filter(value, search, item)\n }\n}\n\nfunction searchTableItems (\n items: any[],\n search: string | null,\n headersWithCustomFilters: DataTableHeader[],\n headersWithoutCustomFilters: DataTableHeader[],\n customFilter: DataTableFilterFunction\n) {\n search = typeof search === 'string' ? search.trim() : null\n\n return items.filter(item => {\n // Headers with custom filters are evaluated whether or not a search term has been provided.\n // We need to match every filter to be included in the results.\n const matchesColumnFilters = headersWithCustomFilters.every(filterFn(item, search, defaultFilter))\n\n // Headers without custom filters are only filtered by the `search` property if it is defined.\n // We only need a single column to match the search term to be included in the results.\n const matchesSearchTerm = !search || headersWithoutCustomFilters.some(filterFn(item, search, customFilter))\n\n return matchesColumnFilters && matchesSearchTerm\n })\n}\n\n/* @vue/component */\nexport default mixins(\n VDataIterator,\n Loadable,\n).extend({\n name: 'v-data-table',\n\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n headers: {\n type: Array,\n default: () => [],\n } as PropValidator<DataTableHeader[]>,\n showSelect: Boolean,\n checkboxColor: String,\n showExpand: Boolean,\n showGroupBy: Boolean,\n // TODO: Fix\n // virtualRows: Boolean,\n height: [Number, String],\n hideDefaultHeader: Boolean,\n caption: String,\n dense: Boolean,\n headerProps: Object,\n calculateWidths: Boolean,\n fixedHeader: Boolean,\n headersLength: Number,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n customFilter: {\n type: Function,\n default: defaultFilter,\n } as PropValidator<typeof defaultFilter>,\n itemClass: {\n type: [String, Function],\n default: () => '',\n } as PropValidator<RowClassFunction | string>,\n loaderHeight: {\n type: [Number, String],\n default: 4,\n },\n },\n\n data () {\n return {\n internalGroupBy: [] as string[],\n openCache: {} as { [key: string]: boolean },\n widths: [] as number[],\n }\n },\n\n computed: {\n computedHeaders (): DataTableHeader[] {\n if (!this.headers) return []\n const headers = this.headers.filter(h => h.value === undefined || !this.internalGroupBy.find(v => v === h.value))\n const defaultHeader = { text: '', sortable: false, width: '1px' }\n\n if (this.showSelect) {\n const index = headers.findIndex(h => h.value === 'data-table-select')\n if (index < 0) headers.unshift({ ...defaultHeader, value: 'data-table-select' })\n else headers.splice(index, 1, { ...defaultHeader, ...headers[index] })\n }\n\n if (this.showExpand) {\n const index = headers.findIndex(h => h.value === 'data-table-expand')\n if (index < 0) headers.unshift({ ...defaultHeader, value: 'data-table-expand' })\n else headers.splice(index, 1, { ...defaultHeader, ...headers[index] })\n }\n\n return headers\n },\n colspanAttrs (): object | undefined {\n return this.isMobile ? undefined : {\n colspan: this.headersLength || this.computedHeaders.length,\n }\n },\n columnSorters (): Record<string, DataTableCompareFunction> {\n return this.computedHeaders.reduce<Record<string, DataTableCompareFunction>>((acc, header) => {\n if (header.sort) acc[header.value] = header.sort\n return acc\n }, {})\n },\n headersWithCustomFilters (): DataTableHeader[] {\n return this.headers.filter(header => header.filter && (!header.hasOwnProperty('filterable') || header.filterable === true))\n },\n headersWithoutCustomFilters (): DataTableHeader[] {\n return this.headers.filter(header => !header.filter && (!header.hasOwnProperty('filterable') || header.filterable === true))\n },\n sanitizedHeaderProps (): Record<string, any> {\n return camelizeObjectKeys(this.headerProps)\n },\n computedItemsPerPage (): number {\n const itemsPerPage = this.options && this.options.itemsPerPage ? this.options.itemsPerPage : this.itemsPerPage\n const itemsPerPageOptions: DataItemsPerPageOption[] | undefined = this.sanitizedFooterProps.itemsPerPageOptions\n\n if (\n itemsPerPageOptions &&\n !itemsPerPageOptions.find(item => typeof item === 'number' ? item === itemsPerPage : item.value === itemsPerPage)\n ) {\n const firstOption = itemsPerPageOptions[0]\n return typeof firstOption === 'object' ? firstOption.value : firstOption\n }\n\n return itemsPerPage\n },\n groupByText (): string {\n return this.headers?.find(header => header.value === this.internalGroupBy?.[0])?.text ?? ''\n },\n },\n\n created () {\n const breakingProps = [\n ['sort-icon', 'header-props.sort-icon'],\n ['hide-headers', 'hide-default-header'],\n ['select-all', 'show-select'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n mounted () {\n // if ((!this.sortBy || !this.sortBy.length) && (!this.options.sortBy || !this.options.sortBy.length)) {\n // const firstSortable = this.headers.find(h => !('sortable' in h) || !!h.sortable)\n // if (firstSortable) this.updateOptions({ sortBy: [firstSortable.value], sortDesc: [false] })\n // }\n\n if (this.calculateWidths) {\n window.addEventListener('resize', this.calcWidths)\n this.calcWidths()\n }\n },\n\n beforeDestroy () {\n if (this.calculateWidths) {\n window.removeEventListener('resize', this.calcWidths)\n }\n },\n\n methods: {\n calcWidths () {\n this.widths = Array.from(this.$el.querySelectorAll('th')).map(e => e.clientWidth)\n },\n customFilterWithColumns (items: any[], search: string) {\n return searchTableItems(items, search, this.headersWithCustomFilters, this.headersWithoutCustomFilters, this.customFilter)\n },\n customSortWithHeaders (items: any[], sortBy: string[], sortDesc: boolean[], locale: string) {\n return this.customSort(items, sortBy, sortDesc, locale, this.columnSorters)\n },\n createItemProps (item: any, index: number): DataTableItemProps {\n const props = VDataIterator.options.methods.createItemProps.call(this, item, index)\n\n return Object.assign(props, { headers: this.computedHeaders })\n },\n genCaption (props: DataScopeProps) {\n if (this.caption) return [this.$createElement('caption', [this.caption])]\n\n return getSlot(this, 'caption', props, true)\n },\n genColgroup (props: DataScopeProps) {\n return this.$createElement('colgroup', this.computedHeaders.map(header => {\n return this.$createElement('col', {\n class: {\n divider: header.divider,\n },\n })\n }))\n },\n genLoading () {\n const th = this.$createElement('th', {\n staticClass: 'column',\n attrs: this.colspanAttrs,\n }, [this.genProgress()])\n\n const tr = this.$createElement('tr', {\n staticClass: 'v-data-table__progress',\n }, [th])\n\n return this.$createElement('thead', [tr])\n },\n genHeaders (props: DataScopeProps) {\n const data = {\n props: {\n ...this.sanitizedHeaderProps,\n headers: this.computedHeaders,\n options: props.options,\n mobile: this.isMobile,\n showGroupBy: this.showGroupBy,\n checkboxColor: this.checkboxColor,\n someItems: this.someItems,\n everyItem: this.everyItem,\n singleSelect: this.singleSelect,\n disableSort: this.disableSort,\n },\n on: {\n sort: props.sort,\n group: props.group,\n 'toggle-select-all': this.toggleSelectAll,\n },\n }\n\n // TODO: rename to 'head'? (thead, tbody, tfoot)\n const children: VNodeChildrenArrayContents = [getSlot(this, 'header', {\n ...data,\n isMobile: this.isMobile,\n })]\n\n if (!this.hideDefaultHeader) {\n const scopedSlots = getPrefixedScopedSlots('header.', this.$scopedSlots)\n children.push(this.$createElement(VDataTableHeader, {\n ...data,\n scopedSlots,\n }))\n }\n\n if (this.loading) children.push(this.genLoading())\n\n return children\n },\n genEmptyWrapper (content: VNodeChildrenArrayContents) {\n return this.$createElement('tr', {\n staticClass: 'v-data-table__empty-wrapper',\n }, [\n this.$createElement('td', {\n attrs: this.colspanAttrs,\n }, content),\n ])\n },\n genItems (items: any[], props: DataScopeProps) {\n const empty = this.genEmpty(props.originalItemsLength, props.pagination.itemsLength)\n if (empty) return [empty]\n\n return props.groupedItems\n ? this.genGroupedRows(props.groupedItems, props)\n : this.genRows(items, props)\n },\n genGroupedRows (groupedItems: ItemGroup<any>[], props: DataScopeProps) {\n return groupedItems.map(group => {\n if (!this.openCache.hasOwnProperty(group.name)) this.$set(this.openCache, group.name, true)\n\n if (this.$scopedSlots.group) {\n return this.$scopedSlots.group({\n group: group.name,\n options: props.options,\n isMobile: this.isMobile,\n items: group.items,\n headers: this.computedHeaders,\n })\n } else {\n return this.genDefaultGroupedRow(group.name, group.items, props)\n }\n })\n },\n genDefaultGroupedRow (group: string, items: any[], props: DataScopeProps) {\n const isOpen = !!this.openCache[group]\n const children: VNodeChildren = [\n this.$createElement('template', { slot: 'row.content' }, this.genRows(items, props)),\n ]\n const toggleFn = () => this.$set(this.openCache, group, !this.openCache[group])\n const removeFn = () => props.updateOptions({ groupBy: [], groupDesc: [] })\n\n if (this.$scopedSlots['group.header']) {\n children.unshift(this.$createElement('template', { slot: 'column.header' }, [\n this.$scopedSlots['group.header']!({\n group,\n groupBy: props.options.groupBy,\n isMobile: this.isMobile,\n items,\n headers: this.computedHeaders,\n isOpen,\n toggle: toggleFn,\n remove: removeFn,\n }),\n ]))\n } else {\n const toggle = this.$createElement(VBtn, {\n staticClass: 'ma-0',\n props: {\n icon: true,\n small: true,\n },\n on: {\n click: toggleFn,\n },\n }, [this.$createElement(VIcon, [isOpen ? '$minus' : '$plus'])])\n\n const remove = this.$createElement(VBtn, {\n staticClass: 'ma-0',\n props: {\n icon: true,\n small: true,\n },\n on: {\n click: removeFn,\n },\n }, [this.$createElement(VIcon, ['$close'])])\n\n const column = this.$createElement('td', {\n staticClass: 'text-start',\n attrs: this.colspanAttrs,\n }, [toggle, `${this.groupByText}: ${group}`, remove])\n\n children.unshift(this.$createElement('template', { slot: 'column.header' }, [column]))\n }\n\n if (this.$scopedSlots['group.summary']) {\n children.push(this.$createElement('template', { slot: 'column.summary' }, [\n this.$scopedSlots['group.summary']!({\n group,\n groupBy: props.options.groupBy,\n isMobile: this.isMobile,\n items,\n headers: this.computedHeaders,\n isOpen,\n toggle: toggleFn,\n }),\n ]))\n }\n\n return this.$createElement(RowGroup, {\n key: group,\n props: {\n value: isOpen,\n },\n }, children)\n },\n genRows (items: any[], props: DataScopeProps) {\n return this.$scopedSlots.item ? this.genScopedRows(items, props) : this.genDefaultRows(items, props)\n },\n genScopedRows (items: any[], props: DataScopeProps) {\n const rows = []\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n rows.push(this.$scopedSlots.item!({\n ...this.createItemProps(item, i),\n isMobile: this.isMobile,\n }))\n\n if (this.isExpanded(item)) {\n rows.push(this.$scopedSlots['expanded-item']!({\n headers: this.computedHeaders,\n isMobile: this.isMobile,\n index: i,\n item,\n }))\n }\n }\n\n return rows\n },\n genDefaultRows (items: any[], props: DataScopeProps) {\n return this.$scopedSlots['expanded-item']\n ? items.map((item, index) => this.genDefaultExpandedRow(item, index))\n : items.map((item, index) => this.genDefaultSimpleRow(item, index))\n },\n genDefaultExpandedRow (item: any, index: number): VNode {\n const isExpanded = this.isExpanded(item)\n const classes = {\n 'v-data-table__expanded v-data-table__expanded__row': isExpanded,\n }\n const headerRow = this.genDefaultSimpleRow(item, index, classes)\n const expandedRow = this.$createElement('tr', {\n staticClass: 'v-data-table__expanded v-data-table__expanded__content',\n }, [this.$scopedSlots['expanded-item']!({\n headers: this.computedHeaders,\n isMobile: this.isMobile,\n item,\n })])\n\n return this.$createElement(RowGroup, {\n props: {\n value: isExpanded,\n },\n }, [\n this.$createElement('template', { slot: 'row.header' }, [headerRow]),\n this.$createElement('template', { slot: 'row.content' }, [expandedRow]),\n ])\n },\n genDefaultSimpleRow (item: any, index: number, classes: Record<string, boolean> = {}): VNode {\n const scopedSlots = getPrefixedScopedSlots('item.', this.$scopedSlots)\n\n const data = this.createItemProps(item, index)\n\n if (this.showSelect) {\n const slot = scopedSlots['data-table-select']\n scopedSlots['data-table-select'] = slot ? () => slot({\n ...data,\n isMobile: this.isMobile,\n }) : () => this.$createElement(VSimpleCheckbox, {\n staticClass: 'v-data-table__checkbox',\n props: {\n value: data.isSelected,\n disabled: !this.isSelectable(item),\n color: this.checkboxColor ?? '',\n },\n on: {\n input: (val: boolean) => data.select(val),\n },\n })\n }\n\n if (this.showExpand) {\n const slot = scopedSlots['data-table-expand']\n scopedSlots['data-table-expand'] = slot ? () => slot(data) : () => this.$createElement(VIcon, {\n staticClass: 'v-data-table__expand-icon',\n class: {\n 'v-data-table__expand-icon--active': data.isExpanded,\n },\n on: {\n click: (e: MouseEvent) => {\n e.stopPropagation()\n data.expand(!data.isExpanded)\n },\n },\n }, [this.expandIcon])\n }\n\n return this.$createElement(this.isMobile ? MobileRow : Row, {\n key: getObjectValueByPath(item, this.itemKey),\n class: mergeClasses(\n { ...classes, 'v-data-table__selected': data.isSelected },\n getPropertyFromItem(item, this.itemClass)\n ),\n props: {\n headers: this.computedHeaders,\n hideDefaultHeader: this.hideDefaultHeader,\n index,\n item,\n rtl: this.$vuetify.rtl,\n },\n scopedSlots,\n on: {\n // TODO: for click, the first argument should be the event, and the second argument should be data,\n // but this is a breaking change so it's for v3\n click: () => this.$emit('click:row', item, data),\n contextmenu: (event: MouseEvent) => this.$emit('contextmenu:row', event, data),\n dblclick: (event: MouseEvent) => this.$emit('dblclick:row', event, data),\n },\n })\n },\n genBody (props: DataScopeProps): VNode | string | VNodeChildren {\n const data = {\n ...props,\n expand: this.expand,\n headers: this.computedHeaders,\n isExpanded: this.isExpanded,\n isMobile: this.isMobile,\n isSelected: this.isSelected,\n select: this.select,\n }\n\n if (this.$scopedSlots.body) {\n return this.$scopedSlots.body!(data)\n }\n\n return this.$createElement('tbody', [\n getSlot(this, 'body.prepend', data, true),\n this.genItems(props.items, props),\n getSlot(this, 'body.append', data, true),\n ])\n },\n genFoot (props: DataScopeProps): VNode[] | undefined {\n return this.$scopedSlots.foot?.(props)\n },\n genFooters (props: DataScopeProps) {\n const data = {\n props: {\n options: props.options,\n pagination: props.pagination,\n itemsPerPageText: '$vuetify.dataTable.itemsPerPageText',\n ...this.sanitizedFooterProps,\n },\n on: {\n 'update:options': (value: any) => props.updateOptions(value),\n },\n widths: this.widths,\n headers: this.computedHeaders,\n }\n\n const children: VNodeChildren = [\n getSlot(this, 'footer', data, true),\n ]\n\n if (!this.hideDefaultFooter) {\n children.push(this.$createElement(VDataFooter, {\n ...data,\n scopedSlots: getPrefixedScopedSlots('footer.', this.$scopedSlots),\n }))\n }\n\n return children\n },\n genDefaultScopedSlot (props: DataScopeProps): VNode {\n const simpleProps = {\n height: this.height,\n fixedHeader: this.fixedHeader,\n dense: this.dense,\n }\n\n // if (this.virtualRows) {\n // return this.$createElement(VVirtualTable, {\n // props: Object.assign(simpleProps, {\n // items: props.items,\n // height: this.height,\n // rowHeight: this.dense ? 24 : 48,\n // headerHeight: this.dense ? 32 : 48,\n // // TODO: expose rest of props from virtual table?\n // }),\n // scopedSlots: {\n // items: ({ items }) => this.genItems(items, props) as any,\n // },\n // }, [\n // this.proxySlot('body.before', [this.genCaption(props), this.genHeaders(props)]),\n // this.proxySlot('bottom', this.genFooters(props)),\n // ])\n // }\n\n return this.$createElement(VSimpleTable, {\n props: simpleProps,\n class: {\n 'v-data-table--mobile': this.isMobile,\n },\n }, [\n this.proxySlot('top', getSlot(this, 'top', {\n ...props,\n isMobile: this.isMobile,\n }, true)),\n this.genCaption(props),\n this.genColgroup(props),\n this.genHeaders(props),\n this.genBody(props),\n this.genFoot(props),\n this.proxySlot('bottom', this.genFooters(props)),\n ])\n },\n proxySlot (slot: string, content: VNodeChildren) {\n return this.$createElement('template', { slot }, content)\n },\n },\n\n render (): VNode {\n return this.$createElement(VData, {\n props: {\n ...this.$props,\n customFilter: this.customFilterWithColumns,\n customSort: this.customSortWithHeaders,\n itemsPerPage: this.computedItemsPerPage,\n },\n on: {\n 'update:options': (v: DataOptions, old: DataOptions) => {\n this.internalGroupBy = v.groupBy || []\n !deepEqual(v, old) && this.$emit('update:options', v)\n },\n 'update:page': (v: number) => this.$emit('update:page', v),\n 'update:items-per-page': (v: number) => this.$emit('update:items-per-page', v),\n 'update:sort-by': (v: string | string[]) => this.$emit('update:sort-by', v),\n 'update:sort-desc': (v: boolean | boolean[]) => this.$emit('update:sort-desc', v),\n 'update:group-by': (v: string | string[]) => this.$emit('update:group-by', v),\n 'update:group-desc': (v: boolean | boolean[]) => this.$emit('update:group-desc', v),\n pagination: (v: DataPagination, old: DataPagination) => !deepEqual(v, old) && this.$emit('pagination', v),\n 'current-items': (v: any[]) => {\n this.internalCurrentItems = v\n this.$emit('current-items', v)\n },\n 'page-count': (v: number) => this.$emit('page-count', v),\n },\n scopedSlots: {\n default: this.genDefaultScopedSlot,\n },\n })\n },\n})\n"],"sourceRoot":"","file":"VDataTable.js"}
@@ -61,14 +61,15 @@ var _default2 = (0, _mixins.default)().extend({
61
61
  },
62
62
  methods: {
63
63
  genSelectAll: function genSelectAll() {
64
- var _this$checkboxColor,
65
- _this = this;
64
+ var _this = this;
65
+
66
+ var _a;
66
67
 
67
68
  var data = {
68
69
  props: {
69
70
  value: this.everyItem,
70
71
  indeterminate: !this.everyItem && this.someItems,
71
- color: (_this$checkboxColor = this.checkboxColor) != null ? _this$checkboxColor : ''
72
+ color: (_a = this.checkboxColor) !== null && _a !== void 0 ? _a : ''
72
73
  },
73
74
  on: {
74
75
  input: function input(v) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/VDataTable/mixins/header.ts"],"names":[],"mappings":";;;;;;;AACA;;AACA;;AACA;;AAIA;;;;;;;;;;gBASe,uBAAkB,MAAlB,CAAyB;AACtC;AACA,EAAA,UAAU,EAAE;AACV,IAAA,MAAM,EAAN;AADU,GAF0B;AAMtC,EAAA,KAAK,EAAE;AACL,IAAA,OAAO,EAAE;AACP,MAAA,IAAI,EAAE,KADC;AAEP,MAAA,OAAO,EAAE;AAAA,eAAO,EAAP;AAAA;AAFF,KADJ;AAKL,IAAA,OAAO,EAAE;AACP,MAAA,IAAI,EAAE,MADC;AAEP,MAAA,OAAO,EAAE;AAAA,eAAO;AACd,UAAA,IAAI,EAAE,CADQ;AAEd,UAAA,YAAY,EAAE,EAFA;AAGd,UAAA,MAAM,EAAE,EAHM;AAId,UAAA,QAAQ,EAAE,EAJI;AAKd,UAAA,OAAO,EAAE,EALK;AAMd,UAAA,SAAS,EAAE,EANG;AAOd,UAAA,SAAS,EAAE,KAPG;AAQd,UAAA,QAAQ,EAAE;AARI,SAAP;AAAA;AAFF,KALJ;AAkBL,IAAA,aAAa,EAAE,MAlBV;AAmBL,IAAA,QAAQ,EAAE;AACR,MAAA,IAAI,EAAE,MADE;AAER,MAAA,OAAO,EAAE;AAFD,KAnBL;AAuBL,IAAA,SAAS,EAAE,OAvBN;AAwBL,IAAA,SAAS,EAAE,OAxBN;AAyBL,IAAA,WAAW,EAAE,OAzBR;AA0BL,IAAA,YAAY,EAAE,OA1BT;AA2BL,IAAA,WAAW,EAAE;AA3BR,GAN+B;AAoCtC,EAAA,OAAO,EAAE;AACP,IAAA,YADO,0BACK;AAAA;AAAA;;AACV,UAAM,IAAI,GAAG;AACX,QAAA,KAAK,EAAE;AACL,UAAA,KAAK,EAAE,KAAK,SADP;AAEL,UAAA,aAAa,EAAE,CAAC,KAAK,SAAN,IAAmB,KAAK,SAFlC;AAGL,UAAA,KAAK,yBAAE,KAAK,aAAP,kCAAwB;AAHxB,SADI;AAMX,QAAA,EAAE,EAAE;AACF,UAAA,KAAK,EAAE,eAAC,CAAD;AAAA,mBAAgB,KAAI,CAAC,KAAL,CAAW,mBAAX,EAAgC,CAAhC,CAAhB;AAAA;AADL;AANO,OAAb;;AAWA,UAAI,KAAK,YAAL,CAAkB,mBAAlB,CAAJ,EAA4C;AAC1C,eAAO,KAAK,YAAL,CAAkB,mBAAlB,EAAwC,IAAxC,CAAP;AACD;;AAED,aAAO,KAAK,cAAL,CAAoB,wBAApB;AACL,QAAA,WAAW,EAAE;AADR,SAEF,IAFE,EAAP;AAID,KArBM;AAsBP,IAAA,WAtBO,yBAsBI;AACT,aAAO,KAAK,cAAL,CAAoB,cAApB,EAA2B;AAChC,QAAA,WAAW,EAAE,2BADmB;AAEhC,QAAA,KAAK,EAAE;AACL,UAAA,IAAI,EAAE;AADD;AAFyB,OAA3B,EAKJ,CAAC,KAAK,QAAN,CALI,CAAP;AAMD;AA7BM;AApC6B,CAAzB,C","sourcesContent":["import { VDataTable } from '../'\nimport VIcon from '../../VIcon'\nimport VSimpleCheckbox from '../../VCheckbox/VSimpleCheckbox'\nimport ripple from '../../../directives/ripple'\n\nimport Vue from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport mixins from '../../../util/mixins'\nimport { DataOptions, DataTableHeader } from 'vuetify/types'\n\ntype VDataTableInstance = InstanceType<typeof VDataTable>\n\ninterface options extends Vue {\n dataTable: VDataTableInstance\n}\n\nexport default mixins<options>().extend({\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n headers: {\n type: Array,\n default: () => ([]),\n } as PropValidator<DataTableHeader[]>,\n options: {\n type: Object,\n default: () => ({\n page: 1,\n itemsPerPage: 10,\n sortBy: [],\n sortDesc: [],\n groupBy: [],\n groupDesc: [],\n multiSort: false,\n mustSort: false,\n }),\n } as PropValidator<DataOptions>,\n checkboxColor: String,\n sortIcon: {\n type: String,\n default: '$sort',\n },\n everyItem: Boolean,\n someItems: Boolean,\n showGroupBy: Boolean,\n singleSelect: Boolean,\n disableSort: Boolean,\n },\n\n methods: {\n genSelectAll () {\n const data = {\n props: {\n value: this.everyItem,\n indeterminate: !this.everyItem && this.someItems,\n color: this.checkboxColor ?? '',\n },\n on: {\n input: (v: boolean) => this.$emit('toggle-select-all', v),\n },\n }\n\n if (this.$scopedSlots['data-table-select']) {\n return this.$scopedSlots['data-table-select']!(data)\n }\n\n return this.$createElement(VSimpleCheckbox, {\n staticClass: 'v-data-table__checkbox',\n ...data,\n })\n },\n genSortIcon () {\n return this.$createElement(VIcon, {\n staticClass: 'v-data-table-header__icon',\n props: {\n size: 18,\n },\n }, [this.sortIcon])\n },\n },\n})\n"],"sourceRoot":"","file":"header.js"}
1
+ {"version":3,"sources":["../../../../src/components/VDataTable/mixins/header.ts"],"names":[],"mappings":";;;;;;;AACA;;AACA;;AACA;;AAIA;;;;;;;;;;gBASe,uBAAkB,MAAlB,CAAyB;AACtC;AACA,EAAA,UAAU,EAAE;AACV,IAAA,MAAM,EAAN;AADU,GAF0B;AAMtC,EAAA,KAAK,EAAE;AACL,IAAA,OAAO,EAAE;AACP,MAAA,IAAI,EAAE,KADC;AAEP,MAAA,OAAO,EAAE;AAAA,eAAO,EAAP;AAAA;AAFF,KADJ;AAKL,IAAA,OAAO,EAAE;AACP,MAAA,IAAI,EAAE,MADC;AAEP,MAAA,OAAO,EAAE;AAAA,eAAO;AACd,UAAA,IAAI,EAAE,CADQ;AAEd,UAAA,YAAY,EAAE,EAFA;AAGd,UAAA,MAAM,EAAE,EAHM;AAId,UAAA,QAAQ,EAAE,EAJI;AAKd,UAAA,OAAO,EAAE,EALK;AAMd,UAAA,SAAS,EAAE,EANG;AAOd,UAAA,SAAS,EAAE,KAPG;AAQd,UAAA,QAAQ,EAAE;AARI,SAAP;AAAA;AAFF,KALJ;AAkBL,IAAA,aAAa,EAAE,MAlBV;AAmBL,IAAA,QAAQ,EAAE;AACR,MAAA,IAAI,EAAE,MADE;AAER,MAAA,OAAO,EAAE;AAFD,KAnBL;AAuBL,IAAA,SAAS,EAAE,OAvBN;AAwBL,IAAA,SAAS,EAAE,OAxBN;AAyBL,IAAA,WAAW,EAAE,OAzBR;AA0BL,IAAA,YAAY,EAAE,OA1BT;AA2BL,IAAA,WAAW,EAAE;AA3BR,GAN+B;AAoCtC,EAAA,OAAO,EAAE;AACP,IAAA,YADO,0BACK;AAAA;;;;AACV,UAAM,IAAI,GAAG;AACX,QAAA,KAAK,EAAE;AACL,UAAA,KAAK,EAAE,KAAK,SADP;AAEL,UAAA,aAAa,EAAE,CAAC,KAAK,SAAN,IAAmB,KAAK,SAFlC;AAGL,UAAA,KAAK,EAAE,CAAA,EAAA,GAAA,KAAK,aAAL,MAAkB,IAAlB,IAAkB,EAAA,KAAA,KAAA,CAAlB,GAAkB,EAAlB,GAAsB;AAHxB,SADI;AAMX,QAAA,EAAE,EAAE;AACF,UAAA,KAAK,EAAE,eAAC,CAAD;AAAA,mBAAgB,KAAI,CAAC,KAAL,CAAW,mBAAX,EAAgC,CAAhC,CAAhB;AAAA;AADL;AANO,OAAb;;AAWA,UAAI,KAAK,YAAL,CAAkB,mBAAlB,CAAJ,EAA4C;AAC1C,eAAO,KAAK,YAAL,CAAkB,mBAAlB,EAAwC,IAAxC,CAAP;AACD;;AAED,aAAO,KAAK,cAAL,CAAoB,wBAApB;AACL,QAAA,WAAW,EAAE;AADR,SAEF,IAFE,EAAP;AAID,KArBM;AAsBP,IAAA,WAtBO,yBAsBI;AACT,aAAO,KAAK,cAAL,CAAoB,cAApB,EAA2B;AAChC,QAAA,WAAW,EAAE,2BADmB;AAEhC,QAAA,KAAK,EAAE;AACL,UAAA,IAAI,EAAE;AADD;AAFyB,OAA3B,EAKJ,CAAC,KAAK,QAAN,CALI,CAAP;AAMD;AA7BM;AApC6B,CAAzB,C","sourcesContent":["import { VDataTable } from '../'\nimport VIcon from '../../VIcon'\nimport VSimpleCheckbox from '../../VCheckbox/VSimpleCheckbox'\nimport ripple from '../../../directives/ripple'\n\nimport Vue from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport mixins from '../../../util/mixins'\nimport { DataOptions, DataTableHeader } from 'vuetify/types'\n\ntype VDataTableInstance = InstanceType<typeof VDataTable>\n\ninterface options extends Vue {\n dataTable: VDataTableInstance\n}\n\nexport default mixins<options>().extend({\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n headers: {\n type: Array,\n default: () => ([]),\n } as PropValidator<DataTableHeader[]>,\n options: {\n type: Object,\n default: () => ({\n page: 1,\n itemsPerPage: 10,\n sortBy: [],\n sortDesc: [],\n groupBy: [],\n groupDesc: [],\n multiSort: false,\n mustSort: false,\n }),\n } as PropValidator<DataOptions>,\n checkboxColor: String,\n sortIcon: {\n type: String,\n default: '$sort',\n },\n everyItem: Boolean,\n someItems: Boolean,\n showGroupBy: Boolean,\n singleSelect: Boolean,\n disableSort: Boolean,\n },\n\n methods: {\n genSelectAll () {\n const data = {\n props: {\n value: this.everyItem,\n indeterminate: !this.everyItem && this.someItems,\n color: this.checkboxColor ?? '',\n },\n on: {\n input: (v: boolean) => this.$emit('toggle-select-all', v),\n },\n }\n\n if (this.$scopedSlots['data-table-select']) {\n return this.$scopedSlots['data-table-select']!(data)\n }\n\n return this.$createElement(VSimpleCheckbox, {\n staticClass: 'v-data-table__checkbox',\n ...data,\n })\n },\n genSortIcon () {\n return this.$createElement(VIcon, {\n staticClass: 'v-data-table-header__icon',\n props: {\n size: 18,\n },\n }, [this.sortIcon])\n },\n },\n})\n"],"sourceRoot":"","file":"header.js"}
@@ -132,7 +132,8 @@ var _default2 = (0, _mixins.default)(_localable.default, _picker.default).extend
132
132
  default: 'date',
133
133
  validator: function validator(type) {
134
134
  return ['date', 'month'].includes(type);
135
- }
135
+ } // TODO: year
136
+
136
137
  },
137
138
  value: [Array, String],
138
139
  weekdayFormat: Function,