vuetify 3.3.4 → 3.3.6

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 (94) hide show
  1. package/dist/json/attributes.json +4 -12
  2. package/dist/json/importMap.json +20 -20
  3. package/dist/json/tags.json +0 -2
  4. package/dist/json/web-types.json +7 -27
  5. package/dist/vuetify-labs.css +49 -27
  6. package/dist/vuetify-labs.d.ts +36 -98
  7. package/dist/vuetify-labs.esm.js +85 -53
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +85 -53
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +66 -43
  12. package/dist/vuetify.d.ts +5 -5
  13. package/dist/vuetify.esm.js +43 -34
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +43 -34
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +21 -22
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAppBar/VAppBar.mjs +12 -9
  21. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  22. package/lib/components/VAutocomplete/VAutocomplete.css +12 -4
  23. package/lib/components/VAutocomplete/VAutocomplete.sass +17 -9
  24. package/lib/components/VAutocomplete/_variables.scss +1 -0
  25. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +4 -0
  26. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
  27. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  28. package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +4 -0
  29. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +8 -7
  30. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  31. package/lib/components/VBtn/VBtn.css +1 -1
  32. package/lib/components/VBtn/VBtn.sass +1 -1
  33. package/lib/components/VCombobox/VCombobox.css +12 -4
  34. package/lib/components/VCombobox/VCombobox.sass +17 -9
  35. package/lib/components/VCombobox/_variables.scss +1 -0
  36. package/lib/components/VFooter/VFooter.mjs +4 -2
  37. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  38. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  39. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  40. package/lib/components/VOverlay/VOverlay.mjs +1 -1
  41. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  42. package/lib/components/VSelect/VSelect.css +4 -3
  43. package/lib/components/VSelect/VSelect.sass +10 -12
  44. package/lib/components/VSlider/VSliderThumb.mjs +6 -2
  45. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  46. package/lib/components/VTextField/VTextField.css +2 -0
  47. package/lib/components/VTextField/VTextField.mjs +2 -4
  48. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  49. package/lib/components/VTextField/VTextField.sass +3 -1
  50. package/lib/composables/validation.mjs +2 -2
  51. package/lib/composables/validation.mjs.map +1 -1
  52. package/lib/composables/virtual.mjs +7 -5
  53. package/lib/composables/virtual.mjs.map +1 -1
  54. package/lib/entry-bundler.mjs +1 -1
  55. package/lib/framework.mjs +1 -1
  56. package/lib/iconsets/fa.mjs +2 -2
  57. package/lib/iconsets/fa.mjs.map +1 -1
  58. package/lib/iconsets/fa4.mjs +2 -2
  59. package/lib/iconsets/fa4.mjs.map +1 -1
  60. package/lib/index.d.mts +5 -5
  61. package/lib/labs/VDataTable/composables/sort.mjs +4 -1
  62. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  63. package/lib/labs/VDatePicker/VDatePicker.css +3 -5
  64. package/lib/labs/VDatePicker/VDatePicker.mjs +12 -10
  65. package/lib/labs/VDatePicker/VDatePicker.mjs.map +1 -1
  66. package/lib/labs/VDatePicker/VDatePicker.sass +3 -5
  67. package/lib/labs/VDatePicker/VDatePickerControls.css +3 -1
  68. package/lib/labs/VDatePicker/VDatePickerControls.mjs +1 -1
  69. package/lib/labs/VDatePicker/VDatePickerControls.mjs.map +1 -1
  70. package/lib/labs/VDatePicker/VDatePickerControls.sass +3 -3
  71. package/lib/labs/VDatePicker/VDatePickerMonth.css +0 -1
  72. package/lib/labs/VDatePicker/VDatePickerMonth.mjs +0 -5
  73. package/lib/labs/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  74. package/lib/labs/VDatePicker/VDatePickerMonth.sass +0 -1
  75. package/lib/labs/VDatePicker/VDatePickerTitle.sass +1 -1
  76. package/lib/labs/VDatePicker/VDatePickerYears.css +1 -1
  77. package/lib/labs/VDatePicker/VDatePickerYears.sass +1 -1
  78. package/lib/labs/VDatePicker/_variables.scss +0 -5
  79. package/lib/labs/VDatePicker/index.d.mts +36 -98
  80. package/lib/labs/VDateRangePicker/index.d.mts +34 -44
  81. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +24 -4
  82. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  83. package/lib/labs/VPicker/VPicker.css +1 -1
  84. package/lib/labs/VPicker/VPicker.sass +1 -1
  85. package/lib/labs/VPicker/_variables.scss +2 -2
  86. package/lib/labs/components.d.mts +36 -98
  87. package/lib/util/helpers.mjs +3 -0
  88. package/lib/util/helpers.mjs.map +1 -1
  89. package/lib/util/injectSelf.mjs +1 -0
  90. package/lib/util/injectSelf.mjs.map +1 -1
  91. package/package.json +2 -2
  92. package/lib/labs/VDatePicker/VDatePickerTable.sass +0 -84
  93. package/lib/labs/VDatePicker/mixins/date-picker-table.mjs +0 -210
  94. package/lib/labs/VDatePicker/mixins/date-picker-table.mjs.map +0 -1
@@ -1,84 +0,0 @@
1
- @import './_variables.scss'
2
-
3
- +theme(v-date-picker-table) using ($material)
4
- th,
5
- .v-date-picker-table--date__week
6
- color: map-deep-get($material, 'text', 'disabled')
7
-
8
- .v-date-picker-table
9
- position: relative
10
- padding: $date-picker-table-padding
11
- height: $date-picker-table-height
12
-
13
- table
14
- transition: $primary-transition
15
- top: 0
16
- table-layout: fixed
17
- width: 100%
18
-
19
- td, th
20
- text-align: center
21
- position: relative
22
-
23
- th
24
- font-size: $date-picker-table-font-size
25
-
26
- &--date .v-btn
27
- height: $date-picker-table-date-button-height
28
- width: $date-picker-table-date-button-width
29
-
30
- .v-btn
31
- z-index: auto
32
- margin: 0
33
- font-size: $date-picker-table-font-size
34
-
35
- &.v-btn--active
36
- color: $date-picker-table-active-date-color
37
-
38
- .v-date-picker-table--month
39
- td
40
- width: 33.333333%
41
- height: $date-picker-table-month-height
42
- vertical-align: middle
43
- text-align: center
44
-
45
- .v-btn
46
- margin: 0 auto
47
- max-width: $date-picker-table-month-max-width
48
- min-width: $date-picker-table-month-min-width
49
- width: 100%
50
-
51
- .v-date-picker-table--date
52
- th
53
- padding: $date-picker-table-date-padding
54
- font-weight: $date-picker-table-date-font-weight
55
-
56
- td
57
- width: $date-picker-table-date-width
58
-
59
- .v-date-picker-table__events
60
- height: $date-picker-event-size
61
- left: 0
62
- position: absolute
63
- text-align: center
64
- white-space: pre
65
- width: 100%
66
-
67
- > div
68
- border-radius: $date-picker-event-border-radius
69
- display: inline-block
70
- height: $date-picker-event-size
71
- margin: $date-picker-event-margin
72
- width: $date-picker-event-size
73
-
74
- .v-date-picker-table--date .v-date-picker-table__events
75
- bottom: $date-picker-event-month-bottom
76
-
77
- .v-date-picker-table--month .v-date-picker-table__events
78
- bottom: $date-picker-event-date-bottom
79
-
80
- .v-date-picker-table__current .v-date-picker-table__events
81
- margin-bottom: -1px
82
-
83
- .v-date-picker-table--disabled
84
- pointer-events: none
@@ -1,210 +0,0 @@
1
- // @ts-nocheck
2
- /* eslint-disable */
3
-
4
- import "../VDatePickerTable.css";
5
-
6
- // Directives
7
- import Touch from "../../../directives/touch/index.mjs"; // Mixins
8
- import Colorable from "../../../mixins/colorable.mjs";
9
- import Localable from "../../../mixins/localable.mjs";
10
- import Themeable from "../../../mixins/themeable.mjs"; // Utils
11
- import { createItemTypeNativeListeners, sanitizeDateString } from "../util/index.mjs";
12
- import isDateAllowed from "../util/isDateAllowed.mjs";
13
- import { mergeListeners } from "../../../util/mergeData.mjs";
14
- import mixins from "../../../util/mixins.mjs";
15
- import { throttle } from "../../../util/helpers.mjs"; // Types
16
- export default mixins(Colorable, Localable, Themeable
17
- /* @vue/component */).extend({
18
- directives: {
19
- Touch
20
- },
21
- props: {
22
- allowedDates: Function,
23
- current: String,
24
- disabled: Boolean,
25
- format: Function,
26
- events: {
27
- type: [Array, Function, Object],
28
- default: () => null
29
- },
30
- eventColor: {
31
- type: [Array, Function, Object, String],
32
- default: () => 'warning'
33
- },
34
- min: String,
35
- max: String,
36
- range: Boolean,
37
- readonly: Boolean,
38
- scrollable: Boolean,
39
- tableDate: {
40
- type: String,
41
- required: true
42
- },
43
- value: [String, Array]
44
- },
45
- data: () => ({
46
- isReversing: false,
47
- wheelThrottle: null
48
- }),
49
- computed: {
50
- computedTransition() {
51
- return this.isReversing === !this.$vuetify.rtl ? 'tab-reverse-transition' : 'tab-transition';
52
- },
53
- displayedMonth() {
54
- return Number(this.tableDate.split('-')[1]) - 1;
55
- },
56
- displayedYear() {
57
- return Number(this.tableDate.split('-')[0]);
58
- }
59
- },
60
- watch: {
61
- tableDate(newVal, oldVal) {
62
- this.isReversing = newVal < oldVal;
63
- }
64
- },
65
- mounted() {
66
- this.wheelThrottle = throttle(this.wheel, 250);
67
- },
68
- methods: {
69
- genButtonClasses(isAllowed, isFloating, isSelected, isCurrent, isFirst, isLast) {
70
- return {
71
- 'v-size--default': !isFloating,
72
- 'v-date-picker-table__current': isCurrent,
73
- 'v-btn--active': isSelected,
74
- 'v-btn--flat': !isAllowed || this.disabled,
75
- 'v-btn--text': isSelected === isCurrent,
76
- 'v-btn--rounded': isFloating,
77
- 'v-btn--disabled': !isAllowed || this.disabled,
78
- 'v-btn--outlined': isCurrent && !isSelected,
79
- 'v-date-picker--first-in-range': isFirst,
80
- 'v-date-picker--last-in-range': isLast,
81
- ...this.themeClasses
82
- };
83
- },
84
- genButtonEvents(value, isAllowed, mouseEventType) {
85
- if (this.disabled) return undefined;
86
- return mergeListeners({
87
- click: () => {
88
- if (isAllowed && !this.readonly) this.$emit('input', value);
89
- }
90
- }, createItemTypeNativeListeners(this, `:${mouseEventType}`, value));
91
- },
92
- genButton(value, isFloating, mouseEventType, formatter) {
93
- let isOtherMonth = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
94
- const isAllowed = isDateAllowed(value, this.min, this.max, this.allowedDates);
95
- const isSelected = this.isSelected(value) && isAllowed;
96
- const isCurrent = value === this.current;
97
- const setColor = isSelected ? this.setBackgroundColor : this.setTextColor;
98
- const color = (isSelected || isCurrent) && (this.color || 'accent');
99
- let isFirst = false;
100
- let isLast = false;
101
- if (this.range && !!this.value && Array.isArray(this.value)) {
102
- isFirst = value === this.value[0];
103
- isLast = value === this.value[this.value.length - 1];
104
- }
105
- return this.$createElement('button', setColor(color, {
106
- staticClass: 'v-btn',
107
- class: this.genButtonClasses(isAllowed && !isOtherMonth, isFloating, isSelected, isCurrent, isFirst, isLast),
108
- attrs: {
109
- type: 'button'
110
- },
111
- domProps: {
112
- disabled: this.disabled || !isAllowed || isOtherMonth
113
- },
114
- on: this.genButtonEvents(value, isAllowed, mouseEventType)
115
- }), [this.$createElement('div', {
116
- staticClass: 'v-btn__content'
117
- }, [formatter(value)]), this.genEvents(value)]);
118
- },
119
- getEventColors(date) {
120
- const arrayize = v => Array.isArray(v) ? v : [v];
121
- let eventData;
122
- let eventColors = [];
123
- if (Array.isArray(this.events)) {
124
- eventData = this.events.includes(date);
125
- } else if (this.events instanceof Function) {
126
- eventData = this.events(date) || false;
127
- } else if (this.events) {
128
- eventData = this.events[date] || false;
129
- } else {
130
- eventData = false;
131
- }
132
- if (!eventData) {
133
- return [];
134
- } else if (eventData !== true) {
135
- eventColors = arrayize(eventData);
136
- } else if (typeof this.eventColor === 'string') {
137
- eventColors = [this.eventColor];
138
- } else if (typeof this.eventColor === 'function') {
139
- eventColors = arrayize(this.eventColor(date));
140
- } else if (Array.isArray(this.eventColor)) {
141
- eventColors = this.eventColor;
142
- } else {
143
- eventColors = arrayize(this.eventColor[date]);
144
- }
145
- return eventColors.filter(v => v);
146
- },
147
- genEvents(date) {
148
- const eventColors = this.getEventColors(date);
149
- return eventColors.length ? this.$createElement('div', {
150
- staticClass: 'v-date-picker-table__events'
151
- }, eventColors.map(color => this.$createElement('div', this.setBackgroundColor(color)))) : null;
152
- },
153
- isValidScroll(value, calculateTableDate) {
154
- const tableDate = calculateTableDate(value);
155
- // tableDate is 'YYYY-MM' for DateTable and 'YYYY' for MonthTable
156
- const sanitizeType = tableDate.split('-').length === 1 ? 'year' : 'month';
157
- return value < 0 && (this.min ? tableDate >= sanitizeDateString(this.min, sanitizeType) : true) || value > 0 && (this.max ? tableDate <= sanitizeDateString(this.max, sanitizeType) : true);
158
- },
159
- wheel(e, calculateTableDate) {
160
- this.$emit('update:table-date', calculateTableDate(e.deltaY));
161
- },
162
- touch(value, calculateTableDate) {
163
- this.$emit('update:table-date', calculateTableDate(value));
164
- },
165
- genTable(staticClass, children, calculateTableDate) {
166
- const transition = this.$createElement('transition', {
167
- props: {
168
- name: this.computedTransition
169
- }
170
- }, [this.$createElement('table', {
171
- key: this.tableDate
172
- }, children)]);
173
- const touchDirective = {
174
- name: 'touch',
175
- value: {
176
- left: e => e.offsetX < -15 && this.isValidScroll(1, calculateTableDate) && this.touch(1, calculateTableDate),
177
- right: e => e.offsetX > 15 && this.isValidScroll(-1, calculateTableDate) && this.touch(-1, calculateTableDate)
178
- }
179
- };
180
- return this.$createElement('div', {
181
- staticClass,
182
- class: {
183
- 'v-date-picker-table--disabled': this.disabled,
184
- ...this.themeClasses
185
- },
186
- on: !this.disabled && this.scrollable ? {
187
- wheel: e => {
188
- e.preventDefault();
189
- if (this.isValidScroll(e.deltaY, calculateTableDate)) {
190
- this.wheelThrottle(e, calculateTableDate);
191
- }
192
- }
193
- } : undefined,
194
- directives: [touchDirective]
195
- }, [transition]);
196
- },
197
- isSelected(value) {
198
- if (Array.isArray(this.value)) {
199
- if (this.range && this.value.length === 2) {
200
- const [from, to] = [...this.value].sort();
201
- return from <= value && value <= to;
202
- } else {
203
- return this.value.indexOf(value) !== -1;
204
- }
205
- }
206
- return value === this.value;
207
- }
208
- }
209
- });
210
- //# sourceMappingURL=date-picker-table.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-picker-table.mjs","names":["Touch","Colorable","Localable","Themeable","createItemTypeNativeListeners","sanitizeDateString","isDateAllowed","mergeListeners","mixins","throttle","extend","directives","props","allowedDates","Function","current","String","disabled","Boolean","format","events","type","Array","Object","default","eventColor","min","max","range","readonly","scrollable","tableDate","required","value","data","isReversing","wheelThrottle","computed","computedTransition","$vuetify","rtl","displayedMonth","Number","split","displayedYear","watch","newVal","oldVal","mounted","wheel","methods","genButtonClasses","isAllowed","isFloating","isSelected","isCurrent","isFirst","isLast","themeClasses","genButtonEvents","mouseEventType","undefined","click","$emit","genButton","formatter","isOtherMonth","arguments","length","setColor","setBackgroundColor","setTextColor","color","isArray","$createElement","staticClass","class","attrs","domProps","on","genEvents","getEventColors","date","arrayize","v","eventData","eventColors","includes","filter","map","isValidScroll","calculateTableDate","sanitizeType","e","deltaY","touch","genTable","children","transition","name","key","touchDirective","left","offsetX","right","preventDefault","from","to","sort","indexOf"],"sources":["../../../../src/labs/VDatePicker/mixins/date-picker-table.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\nimport '../VDatePickerTable.sass'\n\n// Directives\nimport Touch from '../../../directives/touch'\n\n// Mixins\nimport Colorable from '../../../mixins/colorable'\nimport Localable from '../../../mixins/localable'\nimport Themeable from '../../../mixins/themeable'\n\n// Utils\nimport { createItemTypeNativeListeners, sanitizeDateString } from '../util'\nimport isDateAllowed from '../util/isDateAllowed'\nimport { mergeListeners } from '../../../util/mergeData'\nimport mixins from '../../../util/mixins'\nimport { throttle } from '../../../util/helpers'\n\n// Types\nimport {\n PropType,\n VNodeChildren,\n} from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport {\n DatePickerAllowedDatesFunction,\n DatePickerEventColors,\n DatePickerEventColorValue,\n DatePickerEvents,\n DatePickerFormatter,\n TouchWrapper,\n} from 'vuetify/types'\n\ntype CalculateTableDateFunction = (v: number) => string\n\nexport default mixins(\n Colorable,\n Localable,\n Themeable\n/* @vue/component */\n).extend({\n directives: { Touch },\n\n props: {\n allowedDates: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n current: String,\n disabled: Boolean,\n format: Function as PropType<DatePickerFormatter | undefined>,\n events: {\n type: [Array, Function, Object],\n default: () => null,\n } as PropValidator<DatePickerEvents | null>,\n eventColor: {\n type: [Array, Function, Object, String],\n default: () => 'warning',\n } as PropValidator<DatePickerEventColors>,\n min: String,\n max: String,\n range: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n tableDate: {\n type: String,\n required: true,\n },\n value: [String, Array] as PropType<string | string[]>,\n },\n\n data: () => ({\n isReversing: false,\n wheelThrottle: null as any,\n }),\n\n computed: {\n computedTransition (): string {\n return (this.isReversing === !this.$vuetify.rtl) ? 'tab-reverse-transition' : 'tab-transition'\n },\n displayedMonth (): number {\n return Number(this.tableDate.split('-')[1]) - 1\n },\n displayedYear (): number {\n return Number(this.tableDate.split('-')[0])\n },\n },\n\n watch: {\n tableDate (newVal: string, oldVal: string) {\n this.isReversing = newVal < oldVal\n },\n },\n\n mounted () {\n this.wheelThrottle = throttle(this.wheel, 250)\n },\n\n methods: {\n genButtonClasses (\n isAllowed: boolean,\n isFloating: boolean,\n isSelected: boolean,\n isCurrent: boolean,\n isFirst: boolean,\n isLast: boolean,\n ) {\n return {\n 'v-size--default': !isFloating,\n 'v-date-picker-table__current': isCurrent,\n 'v-btn--active': isSelected,\n 'v-btn--flat': !isAllowed || this.disabled,\n 'v-btn--text': isSelected === isCurrent,\n 'v-btn--rounded': isFloating,\n 'v-btn--disabled': !isAllowed || this.disabled,\n 'v-btn--outlined': isCurrent && !isSelected,\n 'v-date-picker--first-in-range': isFirst,\n 'v-date-picker--last-in-range': isLast,\n ...this.themeClasses,\n }\n },\n genButtonEvents (value: string, isAllowed: boolean, mouseEventType: string) {\n if (this.disabled) return undefined\n\n return mergeListeners({\n click: () => {\n if (isAllowed && !this.readonly) this.$emit('input', value)\n },\n }, createItemTypeNativeListeners(this, `:${mouseEventType}`, value))\n },\n genButton (value: string, isFloating: boolean, mouseEventType: string, formatter: DatePickerFormatter, isOtherMonth = false) {\n const isAllowed = isDateAllowed(value, this.min, this.max, this.allowedDates)\n const isSelected = this.isSelected(value) && isAllowed\n const isCurrent = value === this.current\n const setColor = isSelected ? this.setBackgroundColor : this.setTextColor\n const color = (isSelected || isCurrent) && (this.color || 'accent')\n let isFirst = false\n let isLast = false\n if (this.range && !!this.value && Array.isArray(this.value)) {\n isFirst = value === this.value[0]\n isLast = value === this.value[this.value.length - 1]\n }\n\n return this.$createElement('button', setColor(color, {\n staticClass: 'v-btn',\n class: this.genButtonClasses(\n isAllowed && !isOtherMonth,\n isFloating,\n isSelected,\n isCurrent,\n isFirst,\n isLast,\n ),\n attrs: {\n type: 'button',\n },\n domProps: {\n disabled: this.disabled || !isAllowed || isOtherMonth,\n },\n on: this.genButtonEvents(value, isAllowed, mouseEventType),\n }), [\n this.$createElement('div', {\n staticClass: 'v-btn__content',\n }, [formatter(value)]),\n this.genEvents(value),\n ])\n },\n getEventColors (date: string) {\n const arrayize = (v: string | string[]) => Array.isArray(v) ? v : [v]\n let eventData: boolean | DatePickerEventColorValue\n let eventColors: string[] = []\n\n if (Array.isArray(this.events)) {\n eventData = this.events.includes(date)\n } else if (this.events instanceof Function) {\n eventData = this.events(date) || false\n } else if (this.events) {\n eventData = this.events[date] || false\n } else {\n eventData = false\n }\n\n if (!eventData) {\n return []\n } else if (eventData !== true) {\n eventColors = arrayize(eventData)\n } else if (typeof this.eventColor === 'string') {\n eventColors = [this.eventColor]\n } else if (typeof this.eventColor === 'function') {\n eventColors = arrayize(this.eventColor(date))\n } else if (Array.isArray(this.eventColor)) {\n eventColors = this.eventColor\n } else {\n eventColors = arrayize(this.eventColor[date])\n }\n\n return eventColors.filter(v => v)\n },\n genEvents (date: string) {\n const eventColors = this.getEventColors(date)\n\n return eventColors.length ? this.$createElement('div', {\n staticClass: 'v-date-picker-table__events',\n }, eventColors.map(color => this.$createElement('div', this.setBackgroundColor(color)))) : null\n },\n isValidScroll (value: number, calculateTableDate: CalculateTableDateFunction) {\n const tableDate = calculateTableDate(value)\n // tableDate is 'YYYY-MM' for DateTable and 'YYYY' for MonthTable\n const sanitizeType = tableDate.split('-').length === 1 ? 'year' : 'month'\n return (value < 0 && (this.min ? tableDate >= sanitizeDateString(this.min, sanitizeType) : true)) ||\n (value > 0 && (this.max ? tableDate <= sanitizeDateString(this.max, sanitizeType) : true))\n },\n wheel (e: WheelEvent, calculateTableDate: CalculateTableDateFunction) {\n this.$emit('update:table-date', calculateTableDate(e.deltaY))\n },\n touch (value: number, calculateTableDate: CalculateTableDateFunction) {\n this.$emit('update:table-date', calculateTableDate(value))\n },\n genTable (staticClass: string, children: VNodeChildren, calculateTableDate: CalculateTableDateFunction) {\n const transition = this.$createElement('transition', {\n props: { name: this.computedTransition },\n }, [this.$createElement('table', { key: this.tableDate }, children)])\n\n const touchDirective = {\n name: 'touch',\n value: {\n left: (e: TouchWrapper) => (e.offsetX < -15) &&\n (this.isValidScroll(1, calculateTableDate) && this.touch(1, calculateTableDate)),\n right: (e: TouchWrapper) => (e.offsetX > 15) &&\n (this.isValidScroll(-1, calculateTableDate) && this.touch(-1, calculateTableDate)),\n },\n }\n\n return this.$createElement('div', {\n staticClass,\n class: {\n 'v-date-picker-table--disabled': this.disabled,\n ...this.themeClasses,\n },\n on: (!this.disabled && this.scrollable) ? {\n wheel: (e: WheelEvent) => {\n e.preventDefault()\n if (this.isValidScroll(e.deltaY, calculateTableDate)) { this.wheelThrottle(e, calculateTableDate) }\n },\n } : undefined,\n directives: [touchDirective],\n }, [transition])\n },\n isSelected (value: string): boolean {\n if (Array.isArray(this.value)) {\n if (this.range && this.value.length === 2) {\n const [from, to] = [...this.value].sort()\n return from <= value && value <= to\n } else {\n return this.value.indexOf(value) !== -1\n }\n }\n\n return value === this.value\n },\n },\n})\n"],"mappings":"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"}