@vuetify/nightly 3.2.0-next-20230118.0 → 4.0.0-next-20230205.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 (170) hide show
  1. package/CHANGELOG.md +203 -16
  2. package/dist/json/importMap-labs.json +8 -4
  3. package/dist/json/importMap.json +8 -8
  4. package/dist/vuetify-labs.css +253 -246
  5. package/dist/vuetify-labs.d.ts +387 -176
  6. package/dist/vuetify-labs.esm.js +282 -215
  7. package/dist/vuetify-labs.esm.js.map +1 -1
  8. package/dist/vuetify-labs.js +281 -214
  9. package/dist/vuetify-labs.min.css +2 -2
  10. package/dist/vuetify.css +51 -44
  11. package/dist/vuetify.d.ts +317 -178
  12. package/dist/vuetify.esm.js +249 -185
  13. package/dist/vuetify.esm.js.map +1 -1
  14. package/dist/vuetify.js +248 -184
  15. package/dist/vuetify.js.map +1 -1
  16. package/dist/vuetify.min.css +2 -2
  17. package/dist/vuetify.min.js +696 -685
  18. package/dist/vuetify.min.js.map +1 -1
  19. package/lib/blueprints/index.d.ts +2 -2
  20. package/lib/blueprints/md1.d.ts +2 -2
  21. package/lib/blueprints/md2.d.ts +2 -2
  22. package/lib/blueprints/md3.d.ts +2 -2
  23. package/lib/components/VAutocomplete/VAutocomplete.mjs +3 -2
  24. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  25. package/lib/components/VAutocomplete/index.d.ts +43 -20
  26. package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -4
  27. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
  28. package/lib/components/VBtn/VBtn.css +7 -7
  29. package/lib/components/VBtn/VBtn.mjs +8 -3
  30. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  31. package/lib/components/VBtnGroup/VBtnGroup.mjs +15 -11
  32. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  33. package/lib/components/VBtnGroup/index.d.ts +2 -1
  34. package/lib/components/VBtnToggle/VBtnToggle.mjs +9 -5
  35. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  36. package/lib/components/VBtnToggle/index.d.ts +122 -1
  37. package/lib/components/VCalendar/VCalendar.mjs +3 -0
  38. package/lib/components/VCalendar/VCalendar.mjs.map +1 -1
  39. package/lib/components/VCalendar/VCalendarCategory.sass +9 -3
  40. package/lib/components/VCalendar/VCalendarDaily.mjs +20 -8
  41. package/lib/components/VCalendar/VCalendarDaily.mjs.map +1 -1
  42. package/lib/components/VCalendar/VCalendarWeekly.mjs +25 -5
  43. package/lib/components/VCalendar/VCalendarWeekly.mjs.map +1 -1
  44. package/lib/components/VCalendar/mixins/calendar-with-events.mjs +20 -16
  45. package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +1 -1
  46. package/lib/components/VCalendar/mixins/mouse.mjs +16 -30
  47. package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
  48. package/lib/components/VCard/VCard.css +7 -7
  49. package/lib/components/VChip/VChip.css +7 -7
  50. package/lib/components/VCombobox/VCombobox.mjs +3 -3
  51. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  52. package/lib/components/VCombobox/index.d.ts +43 -20
  53. package/lib/components/VData/VData.mjs +2 -4
  54. package/lib/components/VData/VData.mjs.map +1 -1
  55. package/lib/components/VDatePicker/VDatePicker.mjs +7 -5
  56. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  57. package/lib/components/VDefaultsProvider/index.d.ts +5 -4
  58. package/lib/components/VDialog/VDialog.mjs +6 -5
  59. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  60. package/lib/components/VDialog/index.d.ts +57 -34
  61. package/lib/components/VDivider/VDivider.mjs +6 -6
  62. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  63. package/lib/components/VExpansionPanel/VExpansionPanel.css +7 -7
  64. package/lib/components/VField/VField.css +2 -2
  65. package/lib/components/VField/VField.mjs +28 -26
  66. package/lib/components/VField/VField.mjs.map +1 -1
  67. package/lib/components/VField/VField.sass +2 -2
  68. package/lib/components/VFileInput/VFileInput.mjs +7 -4
  69. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  70. package/lib/components/VForm/index.d.ts +0 -3
  71. package/lib/components/VList/VList.mjs +4 -1
  72. package/lib/components/VList/VList.mjs.map +1 -1
  73. package/lib/components/VList/VListItem.css +7 -7
  74. package/lib/components/VList/VListItem.mjs +29 -19
  75. package/lib/components/VList/VListItem.mjs.map +1 -1
  76. package/lib/components/VMenu/VMenu.mjs +6 -5
  77. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  78. package/lib/components/VMenu/index.d.ts +57 -34
  79. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +4 -0
  80. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  81. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  82. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +4 -0
  83. package/lib/components/VNavigationDrawer/index.d.ts +3 -3
  84. package/lib/components/VNavigationDrawer/touch.mjs +7 -6
  85. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  86. package/lib/components/VOtpInput/VOtpInput.mjs +22 -46
  87. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
  88. package/lib/components/VOverflowBtn/VOverflowBtn.mjs +3 -0
  89. package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
  90. package/lib/components/VOverlay/index.d.ts +34 -11
  91. package/lib/components/VOverlay/locationStrategies.mjs +40 -29
  92. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  93. package/lib/components/VOverlay/scrollStrategies.mjs +25 -16
  94. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  95. package/lib/components/VPagination/VPagination.mjs +1 -1
  96. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  97. package/lib/components/VSelect/VSelect.mjs +3 -4
  98. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  99. package/lib/components/VSelect/index.d.ts +43 -20
  100. package/lib/components/VSelectionControl/VSelectionControl.css +2 -2
  101. package/lib/components/VSkeletonLoader/VSkeletonLoader.sass +1 -1
  102. package/lib/components/VSnackbar/index.d.ts +42 -19
  103. package/lib/components/VStepper/VStepper.sass +6 -6
  104. package/lib/components/VStepper/VStepperStep.mjs +12 -2
  105. package/lib/components/VStepper/VStepperStep.mjs.map +1 -1
  106. package/lib/components/VTable/VTable.css +4 -4
  107. package/lib/components/VTable/VTable.sass +2 -2
  108. package/lib/components/VTimePicker/VTimePicker.mjs.map +1 -1
  109. package/lib/components/VTimeline/_mixins.sass +1 -1
  110. package/lib/components/VTooltip/VTooltip.mjs +4 -3
  111. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  112. package/lib/components/VTooltip/index.d.ts +57 -34
  113. package/lib/components/VTreeview/VTreeview.mjs +1 -1
  114. package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
  115. package/lib/components/index.d.ts +316 -176
  116. package/lib/composables/defaults.mjs +1 -1
  117. package/lib/composables/defaults.mjs.map +1 -1
  118. package/lib/composables/filter.mjs +3 -3
  119. package/lib/composables/filter.mjs.map +1 -1
  120. package/lib/composables/form.mjs +0 -1
  121. package/lib/composables/form.mjs.map +1 -1
  122. package/lib/composables/toggleScope.mjs +14 -7
  123. package/lib/composables/toggleScope.mjs.map +1 -1
  124. package/lib/directives/ripple/VRipple.css +3 -0
  125. package/lib/directives/ripple/VRipple.sass +3 -0
  126. package/lib/directives/ripple/_variables.scss +1 -1
  127. package/lib/directives/ripple/index.mjs +2 -7
  128. package/lib/directives/ripple/index.mjs.map +1 -1
  129. package/lib/entry-bundler.mjs +1 -1
  130. package/lib/framework.mjs +1 -1
  131. package/lib/index.d.ts +4 -4
  132. package/lib/labs/VDataTable/VDataTable.mjs +6 -6
  133. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  134. package/lib/labs/VDataTable/VDataTableFooter.mjs +1 -1
  135. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  136. package/lib/labs/VDataTable/VDataTableRows.mjs +1 -1
  137. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  138. package/lib/labs/VDataTable/VDataTableServer.mjs +19 -12
  139. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  140. package/lib/labs/VDataTable/VDataTableVirtual.mjs +6 -5
  141. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  142. package/lib/labs/VDataTable/composables/options.mjs +3 -7
  143. package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
  144. package/lib/labs/VDataTable/composables/paginate.mjs +1 -1
  145. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  146. package/lib/labs/VDataTable/index.d.ts +71 -1
  147. package/lib/labs/VDataTable/index.mjs +1 -0
  148. package/lib/labs/VDataTable/index.mjs.map +1 -1
  149. package/lib/labs/components.d.ts +71 -1
  150. package/lib/locale/adapters/vue-i18n.mjs +12 -2
  151. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  152. package/lib/locale/ar.mjs +20 -20
  153. package/lib/locale/ar.mjs.map +1 -1
  154. package/lib/locale/en.mjs +2 -2
  155. package/lib/locale/en.mjs.map +1 -1
  156. package/lib/locale/es.mjs +3 -3
  157. package/lib/locale/es.mjs.map +1 -1
  158. package/lib/locale/fi.mjs +5 -5
  159. package/lib/locale/fi.mjs.map +1 -1
  160. package/lib/locale/it.mjs +6 -6
  161. package/lib/locale/it.mjs.map +1 -1
  162. package/lib/locale/sv.mjs +13 -13
  163. package/lib/locale/sv.mjs.map +1 -1
  164. package/lib/styles/settings/_variables.scss +6 -6
  165. package/lib/styles/tools/_states.sass +3 -3
  166. package/lib/util/defineComponent.mjs +21 -18
  167. package/lib/util/defineComponent.mjs.map +1 -1
  168. package/lib/util/helpers.mjs +5 -19
  169. package/lib/util/helpers.mjs.map +1 -1
  170. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"VDatePicker.mjs","names":["VDatePickerTitle","VDatePickerHeader","VDatePickerDateTable","VDatePickerMonthTable","VDatePickerYears","Localable","Picker","isDateAllowed","mixins","wrapInArray","daysInMonth","consoleWarn","createItemTypeListeners","createNativeLocaleFormatter","pad","sanitizeDateString","extend","name","props","activePicker","String","allowedDates","Function","dayFormat","disabled","Boolean","events","type","Array","Object","default","eventColor","firstDayOfWeek","Number","headerDateFormat","localeFirstDayOfYear","max","min","monthFormat","multiple","nextIcon","nextMonthAriaLabel","nextYearAriaLabel","pickerDate","prevIcon","prevMonthAriaLabel","prevYearAriaLabel","range","reactive","readonly","scrollable","showCurrent","selectedItemsText","showAdjacentMonths","showWeek","titleDateFormat","validator","includes","value","weekdayFormat","yearFormat","yearIcon","data","now","Date","internalActivePicker","toUpperCase","inputDay","inputMonth","inputYear","isReversing","tableDate","multipleValue","date","length","getFullYear","getMonth","computed","isMultiple","lastValue","selectedMonths","map","val","substr","current","getDate","inputDate","tableMonth","split","tableYear","minMonth","maxMonth","minYear","maxYear","formatters","year","currentLocale","timeZone","titleDate","defaultTitleMultipleDateFormatter","defaultTitleDateFormatter","dates","$vuetify","lang","t","titleFormats","month","weekday","day","titleDateFormatter","start","landscapeFormatter","replace","match","nonDigit","digit","landscape","watch","immediate","handler","$emit","prev","sanitizeType","newValue","oldValue","checkMultipleProp","setInputDate","output","filter","created","methods","emitInput","newInput","indexOf","concat","x","valueType","constructor","expected","yearClick","monthClick","parseInt","Math","dateClick","genPickerTitle","$createElement","selectingYear","slot","on","genTableHeader","color","dark","format","light","locale","nextAriaLabel","prevAriaLabel","toggle","input","genDateTable","ref","genMonthTable","genYears","genPickerBody","children","key","array","render","genPicker"],"sources":["../../../src/components/VDatePicker/VDatePicker.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Components\nimport VDatePickerTitle from './VDatePickerTitle'\nimport VDatePickerHeader from './VDatePickerHeader'\nimport VDatePickerDateTable from './VDatePickerDateTable'\nimport VDatePickerMonthTable from './VDatePickerMonthTable'\nimport VDatePickerYears from './VDatePickerYears'\n\n// Mixins\nimport Localable from '../../mixins/localable'\nimport Picker from '../../mixins/picker'\n\n// Utils\nimport isDateAllowed from './util/isDateAllowed'\nimport mixins from '../../util/mixins'\nimport { wrapInArray } from '../../util/helpers'\nimport { daysInMonth } from '../VCalendar/util/timestamp'\nimport { consoleWarn } from '../../util/console'\nimport {\n createItemTypeListeners,\n createNativeLocaleFormatter,\n pad,\n sanitizeDateString,\n} from './util'\n\n// Types\nimport {\n PropType,\n PropValidator,\n} from 'vue/types/options'\nimport { VNode } from 'vue'\nimport {\n DatePickerFormatter,\n DatePickerMultipleFormatter,\n DatePickerAllowedDatesFunction,\n DatePickerEventColors,\n DatePickerEvents,\n DatePickerType,\n} from 'vuetify/types'\n\ntype DatePickerValue = string | string[] | undefined\ninterface Formatters {\n year: DatePickerFormatter\n titleDate: DatePickerFormatter | DatePickerMultipleFormatter\n}\n\ntype ActivePicker = 'DATE' | 'MONTH' | 'YEAR';\n\nexport default mixins(\n Localable,\n Picker,\n/* @vue/component */\n).extend({\n name: 'v-date-picker',\n\n props: {\n activePicker: String as PropType<ActivePicker>,\n allowedDates: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n // Function formatting the day in date picker table\n dayFormat: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n disabled: Boolean,\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 firstDayOfWeek: {\n type: [String, Number],\n default: 0,\n },\n // Function formatting the tableDate in the day/month table header\n headerDateFormat: Function as PropType<DatePickerFormatter | undefined>,\n localeFirstDayOfYear: {\n type: [String, Number],\n default: 0,\n },\n max: String,\n min: String,\n // Function formatting month in the months table\n monthFormat: Function as PropType<DatePickerFormatter | undefined>,\n multiple: Boolean,\n nextIcon: {\n type: String,\n default: '$next',\n },\n nextMonthAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.nextMonthAriaLabel',\n },\n nextYearAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.nextYearAriaLabel',\n },\n pickerDate: String,\n prevIcon: {\n type: String,\n default: '$prev',\n },\n prevMonthAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.prevMonthAriaLabel',\n },\n prevYearAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.prevYearAriaLabel',\n },\n range: Boolean,\n reactive: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n showCurrent: {\n type: [Boolean, String],\n default: true,\n },\n selectedItemsText: {\n type: String,\n default: '$vuetify.datePicker.itemsSelected',\n },\n showAdjacentMonths: Boolean,\n showWeek: Boolean,\n // Function formatting currently selected date in the picker title\n titleDateFormat: Function as PropType<DatePickerFormatter | DatePickerMultipleFormatter | undefined>,\n type: {\n type: String,\n default: 'date',\n validator: (type: any) => ['date', 'month'].includes(type), // TODO: year\n } as PropValidator<DatePickerType>,\n value: [Array, String] as PropType<DatePickerValue>,\n weekdayFormat: Function as PropType<DatePickerFormatter | undefined>,\n // Function formatting the year in table header and pickup title\n yearFormat: Function as PropType<DatePickerFormatter | undefined>,\n yearIcon: String,\n },\n\n data () {\n const now = new Date()\n return {\n internalActivePicker: this.type.toUpperCase(),\n inputDay: null as number | null,\n inputMonth: null as number | null,\n inputYear: null as number | null,\n isReversing: false,\n now,\n // tableDate is a string in 'YYYY' / 'YYYY-M' format (leading zero for month is not required)\n tableDate: (() => {\n if (this.pickerDate) {\n return this.pickerDate\n }\n\n const multipleValue = wrapInArray(this.value)\n const date = multipleValue[multipleValue.length - 1] ||\n (typeof this.showCurrent === 'string' ? this.showCurrent : `${now.getFullYear()}-${now.getMonth() + 1}`)\n return sanitizeDateString(date as string, this.type === 'date' ? 'month' : 'year')\n })(),\n }\n },\n\n computed: {\n multipleValue (): string[] {\n return wrapInArray(this.value)\n },\n isMultiple (): boolean {\n return this.multiple || this.range\n },\n lastValue (): string | null {\n return this.isMultiple ? this.multipleValue[this.multipleValue.length - 1] : (this.value as string | null)\n },\n selectedMonths (): string | string[] | undefined {\n if (!this.value || this.type === 'month') {\n return this.value\n } else if (this.isMultiple) {\n return this.multipleValue.map(val => val.substr(0, 7))\n } else {\n return (this.value as string).substr(0, 7)\n }\n },\n current (): string | null {\n if (this.showCurrent === true) {\n return sanitizeDateString(`${this.now.getFullYear()}-${this.now.getMonth() + 1}-${this.now.getDate()}`, this.type)\n }\n\n return this.showCurrent || null\n },\n inputDate (): string {\n return this.type === 'date'\n ? `${this.inputYear}-${pad(this.inputMonth! + 1)}-${pad(this.inputDay!)}`\n : `${this.inputYear}-${pad(this.inputMonth! + 1)}`\n },\n tableMonth (): number {\n return Number((this.pickerDate || this.tableDate).split('-')[1]) - 1\n },\n tableYear (): number {\n return Number((this.pickerDate || this.tableDate).split('-')[0])\n },\n minMonth (): string | null {\n return this.min ? sanitizeDateString(this.min, 'month') : null\n },\n maxMonth (): string | null {\n return this.max ? sanitizeDateString(this.max, 'month') : null\n },\n minYear (): string | null {\n return this.min ? sanitizeDateString(this.min, 'year') : null\n },\n maxYear (): string | null {\n return this.max ? sanitizeDateString(this.max, 'year') : null\n },\n formatters (): Formatters {\n return {\n year: this.yearFormat || createNativeLocaleFormatter(this.currentLocale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 }),\n titleDate: this.titleDateFormat ||\n (this.isMultiple ? this.defaultTitleMultipleDateFormatter : this.defaultTitleDateFormatter),\n }\n },\n defaultTitleMultipleDateFormatter (): DatePickerMultipleFormatter {\n return dates => {\n if (!dates.length) {\n return '-'\n }\n\n if (dates.length === 1) {\n return this.defaultTitleDateFormatter(dates[0])\n }\n\n return this.$vuetify.lang.t(this.selectedItemsText, dates.length)\n }\n },\n defaultTitleDateFormatter (): DatePickerFormatter {\n const titleFormats = {\n year: { year: 'numeric', timeZone: 'UTC' },\n month: { month: 'long', timeZone: 'UTC' },\n date: { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' },\n }\n\n const titleDateFormatter = createNativeLocaleFormatter(this.currentLocale, titleFormats[this.type], {\n start: 0,\n length: { date: 10, month: 7, year: 4 }[this.type],\n })\n\n const landscapeFormatter = (date: string) => titleDateFormatter(date)\n .replace(/([^\\d\\s])([\\d])/g, (match, nonDigit, digit) => `${nonDigit} ${digit}`)\n .replace(', ', ',<br>')\n\n return this.landscape ? landscapeFormatter : titleDateFormatter\n },\n },\n\n watch: {\n internalActivePicker: {\n immediate: true,\n handler (val: ActivePicker) {\n this.$emit('update:active-picker', val)\n },\n },\n activePicker (val: ActivePicker) {\n this.internalActivePicker = val\n },\n tableDate (val: string, prev: string) {\n // Make a ISO 8601 strings from val and prev for comparision, otherwise it will incorrectly\n // compare for example '2000-9' and '2000-10'\n const sanitizeType = this.type === 'month' ? 'year' : 'month'\n this.isReversing = sanitizeDateString(val, sanitizeType) < sanitizeDateString(prev, sanitizeType)\n this.$emit('update:picker-date', val)\n },\n pickerDate (val: string | null) {\n if (val) {\n this.tableDate = val\n } else if (this.lastValue && this.type === 'date') {\n this.tableDate = sanitizeDateString(this.lastValue, 'month')\n } else if (this.lastValue && this.type === 'month') {\n this.tableDate = sanitizeDateString(this.lastValue, 'year')\n }\n },\n value (newValue: DatePickerValue, oldValue: DatePickerValue) {\n this.checkMultipleProp()\n this.setInputDate()\n\n if (\n (!this.isMultiple && this.value && !this.pickerDate) ||\n (this.isMultiple && this.multipleValue.length && (!oldValue || !oldValue.length) && !this.pickerDate)\n ) {\n this.tableDate = sanitizeDateString(this.inputDate, this.type === 'month' ? 'year' : 'month')\n }\n },\n type (type: DatePickerType) {\n this.internalActivePicker = type.toUpperCase()\n\n if (this.value && this.value.length) {\n const output = this.multipleValue\n .map((val: string) => sanitizeDateString(val, type))\n .filter(this.isDateAllowed)\n this.$emit('input', this.isMultiple ? output : output[0])\n }\n },\n },\n\n created () {\n this.checkMultipleProp()\n\n if (this.pickerDate !== this.tableDate) {\n this.$emit('update:picker-date', this.tableDate)\n }\n this.setInputDate()\n },\n\n methods: {\n emitInput (newInput: string) {\n if (this.range) {\n if (this.multipleValue.length !== 1) {\n this.$emit('input', [newInput])\n } else {\n const output = [this.multipleValue[0], newInput]\n this.$emit('input', output)\n this.$emit('change', output)\n }\n return\n }\n\n const output = this.multiple\n ? (\n this.multipleValue.indexOf(newInput) === -1\n ? this.multipleValue.concat([newInput])\n : this.multipleValue.filter(x => x !== newInput)\n )\n : newInput\n\n this.$emit('input', output)\n this.multiple || this.$emit('change', newInput)\n },\n checkMultipleProp () {\n if (this.value == null) return\n const valueType = this.value.constructor.name\n const expected = this.isMultiple ? 'Array' : 'String'\n if (valueType !== expected) {\n consoleWarn(`Value must be ${this.isMultiple ? 'an' : 'a'} ${expected}, got ${valueType}`, this)\n }\n },\n isDateAllowed (value: string): boolean {\n return isDateAllowed(value, this.min, this.max, this.allowedDates)\n },\n yearClick (value: number) {\n this.inputYear = value\n if (this.type === 'month') {\n this.tableDate = `${value}`\n } else {\n this.tableDate = `${value}-${pad((this.tableMonth || 0) + 1)}`\n }\n this.internalActivePicker = 'MONTH'\n if (this.reactive && !this.readonly && !this.isMultiple && this.isDateAllowed(this.inputDate)) {\n this.$emit('input', this.inputDate)\n }\n },\n monthClick (value: string) {\n this.inputYear = parseInt(value.split('-')[0], 10)\n this.inputMonth = parseInt(value.split('-')[1], 10) - 1\n if (this.type === 'date') {\n if (this.inputDay) {\n this.inputDay = Math.min(this.inputDay, daysInMonth(this.inputYear, this.inputMonth + 1))\n }\n\n this.tableDate = value\n this.internalActivePicker = 'DATE'\n if (this.reactive && !this.readonly && !this.isMultiple && this.isDateAllowed(this.inputDate)) {\n this.$emit('input', this.inputDate)\n }\n } else {\n this.emitInput(this.inputDate)\n }\n },\n dateClick (value: string) {\n this.inputYear = parseInt(value.split('-')[0], 10)\n this.inputMonth = parseInt(value.split('-')[1], 10) - 1\n this.inputDay = parseInt(value.split('-')[2], 10)\n this.emitInput(this.inputDate)\n },\n genPickerTitle (): VNode {\n return this.$createElement(VDatePickerTitle, {\n props: {\n date: this.value ? (this.formatters.titleDate as (value: any) => string)(this.isMultiple ? this.multipleValue : this.value) : '',\n disabled: this.disabled,\n readonly: this.readonly,\n selectingYear: this.internalActivePicker === 'YEAR',\n year: this.formatters.year(this.multipleValue.length ? `${this.inputYear}` : this.tableDate),\n yearIcon: this.yearIcon,\n value: this.multipleValue[0],\n },\n slot: 'title',\n on: {\n 'update:selecting-year': (value: boolean) => this.internalActivePicker = value ? 'YEAR' : this.type.toUpperCase(),\n },\n })\n },\n genTableHeader (): VNode {\n return this.$createElement(VDatePickerHeader, {\n props: {\n nextIcon: this.nextIcon,\n color: this.color,\n dark: this.dark,\n disabled: this.disabled,\n format: this.headerDateFormat,\n light: this.light,\n locale: this.locale,\n min: this.internalActivePicker === 'DATE' ? this.minMonth : this.minYear,\n max: this.internalActivePicker === 'DATE' ? this.maxMonth : this.maxYear,\n nextAriaLabel: this.internalActivePicker === 'DATE' ? this.nextMonthAriaLabel : this.nextYearAriaLabel,\n prevAriaLabel: this.internalActivePicker === 'DATE' ? this.prevMonthAriaLabel : this.prevYearAriaLabel,\n prevIcon: this.prevIcon,\n readonly: this.readonly,\n value: this.internalActivePicker === 'DATE' ? `${pad(this.tableYear, 4)}-${pad(this.tableMonth + 1)}` : `${pad(this.tableYear, 4)}`,\n },\n on: {\n toggle: () => this.internalActivePicker = (this.internalActivePicker === 'DATE' ? 'MONTH' : 'YEAR'),\n input: (value: string) => this.tableDate = value,\n },\n })\n },\n genDateTable (): VNode {\n return this.$createElement(VDatePickerDateTable, {\n props: {\n allowedDates: this.allowedDates,\n color: this.color,\n current: this.current,\n dark: this.dark,\n disabled: this.disabled,\n events: this.events,\n eventColor: this.eventColor,\n firstDayOfWeek: this.firstDayOfWeek,\n format: this.dayFormat,\n light: this.light,\n locale: this.locale,\n localeFirstDayOfYear: this.localeFirstDayOfYear,\n min: this.min,\n max: this.max,\n range: this.range,\n readonly: this.readonly,\n scrollable: this.scrollable,\n showAdjacentMonths: this.showAdjacentMonths,\n showWeek: this.showWeek,\n tableDate: `${pad(this.tableYear, 4)}-${pad(this.tableMonth + 1)}`,\n value: this.value,\n weekdayFormat: this.weekdayFormat,\n },\n ref: 'table',\n on: {\n input: this.dateClick,\n 'update:table-date': (value: string) => this.tableDate = value,\n ...createItemTypeListeners(this, ':date'),\n },\n })\n },\n genMonthTable (): VNode {\n return this.$createElement(VDatePickerMonthTable, {\n props: {\n allowedDates: this.type === 'month' ? this.allowedDates : null,\n color: this.color,\n current: this.current ? sanitizeDateString(this.current, 'month') : null,\n dark: this.dark,\n disabled: this.disabled,\n events: this.type === 'month' ? this.events : null,\n eventColor: this.type === 'month' ? this.eventColor : null,\n format: this.monthFormat,\n light: this.light,\n locale: this.locale,\n min: this.minMonth,\n max: this.maxMonth,\n range: this.range,\n readonly: this.readonly && this.type === 'month',\n scrollable: this.scrollable,\n value: this.selectedMonths,\n tableDate: `${pad(this.tableYear, 4)}`,\n },\n ref: 'table',\n on: {\n input: this.monthClick,\n 'update:table-date': (value: string) => this.tableDate = value,\n ...createItemTypeListeners(this, ':month'),\n },\n })\n },\n genYears (): VNode {\n return this.$createElement(VDatePickerYears, {\n props: {\n color: this.color,\n format: this.yearFormat,\n locale: this.locale,\n min: this.minYear,\n max: this.maxYear,\n value: this.tableYear,\n },\n on: {\n input: this.yearClick,\n ...createItemTypeListeners(this, ':year'),\n },\n })\n },\n genPickerBody (): VNode {\n const children = this.internalActivePicker === 'YEAR' ? [\n this.genYears(),\n ] : [\n this.genTableHeader(),\n this.internalActivePicker === 'DATE' ? this.genDateTable() : this.genMonthTable(),\n ]\n\n return this.$createElement('div', {\n key: this.internalActivePicker,\n }, children)\n },\n setInputDate () {\n if (this.lastValue) {\n const array = this.lastValue.split('-')\n this.inputYear = parseInt(array[0], 10)\n this.inputMonth = parseInt(array[1], 10) - 1\n if (this.type === 'date') {\n this.inputDay = parseInt(array[2], 10)\n }\n } else {\n this.inputYear = this.inputYear || this.now.getFullYear()\n this.inputMonth = this.inputMonth == null ? this.inputMonth : this.now.getMonth()\n this.inputDay = this.inputDay || this.now.getDate()\n }\n },\n },\n\n render (): VNode {\n return this.genPicker('v-picker--date')\n },\n})\n"],"mappings":"AAAA;AACA;AAEA;AAAA,OACOA,gBAAgB;AAAA,OAChBC,iBAAiB;AAAA,OACjBC,oBAAoB;AAAA,OACpBC,qBAAqB;AAAA,OACrBC,gBAAgB,gCAEvB;AAAA,OACOC,SAAS;AAAA,OACTC,MAAM,iCAEb;AAAA,OACOC,aAAa;AAAA,OACbC,MAAM;AAAA,SACJC,WAAW;AAAA,SACXC,WAAW;AAAA,SACXC,WAAW;AAAA,SAElBC,uBAAuB,EACvBC,2BAA2B,EAC3BC,GAAG,EACHC,kBAAkB,4BAGpB;AAuBA,eAAeP,MAAM,CACnBH,SAAS,EACTC;AACF,qBACC,CAACU,MAAM,CAAC;EACPC,IAAI,EAAE,eAAe;EAErBC,KAAK,EAAE;IACLC,YAAY,EAAEC,MAAgC;IAC9CC,YAAY,EAAEC,QAAgE;IAC9E;IACAC,SAAS,EAAED,QAAgE;IAC3EE,QAAQ,EAAEC,OAAO;IACjBC,MAAM,EAAE;MACNC,IAAI,EAAE,CAACC,KAAK,EAAEN,QAAQ,EAAEO,MAAM,CAAC;MAC/BC,OAAO,EAAE,MAAM;IACjB,CAA2C;IAC3CC,UAAU,EAAE;MACVJ,IAAI,EAAE,CAACC,KAAK,EAAEN,QAAQ,EAAEO,MAAM,EAAET,MAAM,CAAC;MACvCU,OAAO,EAAE,MAAM;IACjB,CAAyC;IACzCE,cAAc,EAAE;MACdL,IAAI,EAAE,CAACP,MAAM,EAAEa,MAAM,CAAC;MACtBH,OAAO,EAAE;IACX,CAAC;IACD;IACAI,gBAAgB,EAAEZ,QAAqD;IACvEa,oBAAoB,EAAE;MACpBR,IAAI,EAAE,CAACP,MAAM,EAAEa,MAAM,CAAC;MACtBH,OAAO,EAAE;IACX,CAAC;IACDM,GAAG,EAAEhB,MAAM;IACXiB,GAAG,EAAEjB,MAAM;IACX;IACAkB,WAAW,EAAEhB,QAAqD;IAClEiB,QAAQ,EAAEd,OAAO;IACjBe,QAAQ,EAAE;MACRb,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDW,kBAAkB,EAAE;MAClBd,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDY,iBAAiB,EAAE;MACjBf,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDa,UAAU,EAAEvB,MAAM;IAClBwB,QAAQ,EAAE;MACRjB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDe,kBAAkB,EAAE;MAClBlB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDgB,iBAAiB,EAAE;MACjBnB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDiB,KAAK,EAAEtB,OAAO;IACduB,QAAQ,EAAEvB,OAAO;IACjBwB,QAAQ,EAAExB,OAAO;IACjByB,UAAU,EAAEzB,OAAO;IACnB0B,WAAW,EAAE;MACXxB,IAAI,EAAE,CAACF,OAAO,EAAEL,MAAM,CAAC;MACvBU,OAAO,EAAE;IACX,CAAC;IACDsB,iBAAiB,EAAE;MACjBzB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDuB,kBAAkB,EAAE5B,OAAO;IAC3B6B,QAAQ,EAAE7B,OAAO;IACjB;IACA8B,eAAe,EAAEjC,QAAmF;IACpGK,IAAI,EAAE;MACJA,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE,MAAM;MACf0B,SAAS,EAAG7B,IAAS,IAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC8B,QAAQ,CAAC9B,IAAI,CAAC,CAAE;IAC9D,CAAkC;;IAClC+B,KAAK,EAAE,CAAC9B,KAAK,EAAER,MAAM,CAA8B;IACnDuC,aAAa,EAAErC,QAAqD;IACpE;IACAsC,UAAU,EAAEtC,QAAqD;IACjEuC,QAAQ,EAAEzC;EACZ,CAAC;EAED0C,IAAI,GAAI;IACN,MAAMC,GAAG,GAAG,IAAIC,IAAI,EAAE;IACtB,OAAO;MACLC,oBAAoB,EAAE,IAAI,CAACtC,IAAI,CAACuC,WAAW,EAAE;MAC7CC,QAAQ,EAAE,IAAqB;MAC/BC,UAAU,EAAE,IAAqB;MACjCC,SAAS,EAAE,IAAqB;MAChCC,WAAW,EAAE,KAAK;MAClBP,GAAG;MACH;MACAQ,SAAS,EAAE,CAAC,MAAM;QAChB,IAAI,IAAI,CAAC5B,UAAU,EAAE;UACnB,OAAO,IAAI,CAACA,UAAU;QACxB;QAEA,MAAM6B,aAAa,GAAG/D,WAAW,CAAC,IAAI,CAACiD,KAAK,CAAC;QAC7C,MAAMe,IAAI,GAAGD,aAAa,CAACA,aAAa,CAACE,MAAM,GAAG,CAAC,CAAC,KACjD,OAAO,IAAI,CAACvB,WAAW,KAAK,QAAQ,GAAG,IAAI,CAACA,WAAW,GAAI,GAAEY,GAAG,CAACY,WAAW,EAAG,IAAGZ,GAAG,CAACa,QAAQ,EAAE,GAAG,CAAE,EAAC,CAAC;QAC1G,OAAO7D,kBAAkB,CAAC0D,IAAI,EAAY,IAAI,CAAC9C,IAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;MACpF,CAAC;IACH,CAAC;EACH,CAAC;EAEDkD,QAAQ,EAAE;IACRL,aAAa,GAAc;MACzB,OAAO/D,WAAW,CAAC,IAAI,CAACiD,KAAK,CAAC;IAChC,CAAC;IACDoB,UAAU,GAAa;MACrB,OAAO,IAAI,CAACvC,QAAQ,IAAI,IAAI,CAACQ,KAAK;IACpC,CAAC;IACDgC,SAAS,GAAmB;MAC1B,OAAO,IAAI,CAACD,UAAU,GAAG,IAAI,CAACN,aAAa,CAAC,IAAI,CAACA,aAAa,CAACE,MAAM,GAAG,CAAC,CAAC,GAAI,IAAI,CAAChB,KAAuB;IAC5G,CAAC;IACDsB,cAAc,GAAmC;MAC/C,IAAI,CAAC,IAAI,CAACtB,KAAK,IAAI,IAAI,CAAC/B,IAAI,KAAK,OAAO,EAAE;QACxC,OAAO,IAAI,CAAC+B,KAAK;MACnB,CAAC,MAAM,IAAI,IAAI,CAACoB,UAAU,EAAE;QAC1B,OAAO,IAAI,CAACN,aAAa,CAACS,GAAG,CAACC,GAAG,IAAIA,GAAG,CAACC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;MACxD,CAAC,MAAM;QACL,OAAQ,IAAI,CAACzB,KAAK,CAAYyB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;MAC5C;IACF,CAAC;IACDC,OAAO,GAAmB;MACxB,IAAI,IAAI,CAACjC,WAAW,KAAK,IAAI,EAAE;QAC7B,OAAOpC,kBAAkB,CAAE,GAAE,IAAI,CAACgD,GAAG,CAACY,WAAW,EAAG,IAAG,IAAI,CAACZ,GAAG,CAACa,QAAQ,EAAE,GAAG,CAAE,IAAG,IAAI,CAACb,GAAG,CAACsB,OAAO,EAAG,EAAC,EAAE,IAAI,CAAC1D,IAAI,CAAC;MACpH;MAEA,OAAO,IAAI,CAACwB,WAAW,IAAI,IAAI;IACjC,CAAC;IACDmC,SAAS,GAAY;MACnB,OAAO,IAAI,CAAC3D,IAAI,KAAK,MAAM,GACtB,GAAE,IAAI,CAAC0C,SAAU,IAAGvD,GAAG,CAAC,IAAI,CAACsD,UAAU,GAAI,CAAC,CAAE,IAAGtD,GAAG,CAAC,IAAI,CAACqD,QAAQ,CAAG,EAAC,GACtE,GAAE,IAAI,CAACE,SAAU,IAAGvD,GAAG,CAAC,IAAI,CAACsD,UAAU,GAAI,CAAC,CAAE,EAAC;IACtD,CAAC;IACDmB,UAAU,GAAY;MACpB,OAAOtD,MAAM,CAAC,CAAC,IAAI,CAACU,UAAU,IAAI,IAAI,CAAC4B,SAAS,EAAEiB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,CAAC;IACDC,SAAS,GAAY;MACnB,OAAOxD,MAAM,CAAC,CAAC,IAAI,CAACU,UAAU,IAAI,IAAI,CAAC4B,SAAS,EAAEiB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IACDE,QAAQ,GAAmB;MACzB,OAAO,IAAI,CAACrD,GAAG,GAAGtB,kBAAkB,CAAC,IAAI,CAACsB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI;IAChE,CAAC;IACDsD,QAAQ,GAAmB;MACzB,OAAO,IAAI,CAACvD,GAAG,GAAGrB,kBAAkB,CAAC,IAAI,CAACqB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI;IAChE,CAAC;IACDwD,OAAO,GAAmB;MACxB,OAAO,IAAI,CAACvD,GAAG,GAAGtB,kBAAkB,CAAC,IAAI,CAACsB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI;IAC/D,CAAC;IACDwD,OAAO,GAAmB;MACxB,OAAO,IAAI,CAACzD,GAAG,GAAGrB,kBAAkB,CAAC,IAAI,CAACqB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI;IAC/D,CAAC;IACD0D,UAAU,GAAgB;MACxB,OAAO;QACLC,IAAI,EAAE,IAAI,CAACnC,UAAU,IAAI/C,2BAA2B,CAAC,IAAI,CAACmF,aAAa,EAAE;UAAED,IAAI,EAAE,SAAS;UAAEE,QAAQ,EAAE;QAAM,CAAC,EAAE;UAAEvB,MAAM,EAAE;QAAE,CAAC,CAAC;QAC7HwB,SAAS,EAAE,IAAI,CAAC3C,eAAe,KAC5B,IAAI,CAACuB,UAAU,GAAG,IAAI,CAACqB,iCAAiC,GAAG,IAAI,CAACC,yBAAyB;MAC9F,CAAC;IACH,CAAC;IACDD,iCAAiC,GAAiC;MAChE,OAAOE,KAAK,IAAI;QACd,IAAI,CAACA,KAAK,CAAC3B,MAAM,EAAE;UACjB,OAAO,GAAG;QACZ;QAEA,IAAI2B,KAAK,CAAC3B,MAAM,KAAK,CAAC,EAAE;UACtB,OAAO,IAAI,CAAC0B,yBAAyB,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD;QAEA,OAAO,IAAI,CAACC,QAAQ,CAACC,IAAI,CAACC,CAAC,CAAC,IAAI,CAACpD,iBAAiB,EAAEiD,KAAK,CAAC3B,MAAM,CAAC;MACnE,CAAC;IACH,CAAC;IACD0B,yBAAyB,GAAyB;MAChD,MAAMK,YAAY,GAAG;QACnBV,IAAI,EAAE;UAAEA,IAAI,EAAE,SAAS;UAAEE,QAAQ,EAAE;QAAM,CAAC;QAC1CS,KAAK,EAAE;UAAEA,KAAK,EAAE,MAAM;UAAET,QAAQ,EAAE;QAAM,CAAC;QACzCxB,IAAI,EAAE;UAAEkC,OAAO,EAAE,OAAO;UAAED,KAAK,EAAE,OAAO;UAAEE,GAAG,EAAE,SAAS;UAAEX,QAAQ,EAAE;QAAM;MAC5E,CAAC;MAED,MAAMY,kBAAkB,GAAGhG,2BAA2B,CAAC,IAAI,CAACmF,aAAa,EAAES,YAAY,CAAC,IAAI,CAAC9E,IAAI,CAAC,EAAE;QAClGmF,KAAK,EAAE,CAAC;QACRpC,MAAM,EAAE;UAAED,IAAI,EAAE,EAAE;UAAEiC,KAAK,EAAE,CAAC;UAAEX,IAAI,EAAE;QAAE,CAAC,CAAC,IAAI,CAACpE,IAAI;MACnD,CAAC,CAAC;MAEF,MAAMoF,kBAAkB,GAAItC,IAAY,IAAKoC,kBAAkB,CAACpC,IAAI,CAAC,CAClEuC,OAAO,CAAC,kBAAkB,EAAE,CAACC,KAAK,EAAEC,QAAQ,EAAEC,KAAK,KAAM,GAAED,QAAS,IAAGC,KAAM,EAAC,CAAC,CAC/EH,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;MAEzB,OAAO,IAAI,CAACI,SAAS,GAAGL,kBAAkB,GAAGF,kBAAkB;IACjE;EACF,CAAC;EAEDQ,KAAK,EAAE;IACLpD,oBAAoB,EAAE;MACpBqD,SAAS,EAAE,IAAI;MACfC,OAAO,CAAErC,GAAiB,EAAE;QAC1B,IAAI,CAACsC,KAAK,CAAC,sBAAsB,EAAEtC,GAAG,CAAC;MACzC;IACF,CAAC;IACD/D,YAAY,CAAE+D,GAAiB,EAAE;MAC/B,IAAI,CAACjB,oBAAoB,GAAGiB,GAAG;IACjC,CAAC;IACDX,SAAS,CAAEW,GAAW,EAAEuC,IAAY,EAAE;MACpC;MACA;MACA,MAAMC,YAAY,GAAG,IAAI,CAAC/F,IAAI,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO;MAC7D,IAAI,CAAC2C,WAAW,GAAGvD,kBAAkB,CAACmE,GAAG,EAAEwC,YAAY,CAAC,GAAG3G,kBAAkB,CAAC0G,IAAI,EAAEC,YAAY,CAAC;MACjG,IAAI,CAACF,KAAK,CAAC,oBAAoB,EAAEtC,GAAG,CAAC;IACvC,CAAC;IACDvC,UAAU,CAAEuC,GAAkB,EAAE;MAC9B,IAAIA,GAAG,EAAE;QACP,IAAI,CAACX,SAAS,GAAGW,GAAG;MACtB,CAAC,MAAM,IAAI,IAAI,CAACH,SAAS,IAAI,IAAI,CAACpD,IAAI,KAAK,MAAM,EAAE;QACjD,IAAI,CAAC4C,SAAS,GAAGxD,kBAAkB,CAAC,IAAI,CAACgE,SAAS,EAAE,OAAO,CAAC;MAC9D,CAAC,MAAM,IAAI,IAAI,CAACA,SAAS,IAAI,IAAI,CAACpD,IAAI,KAAK,OAAO,EAAE;QAClD,IAAI,CAAC4C,SAAS,GAAGxD,kBAAkB,CAAC,IAAI,CAACgE,SAAS,EAAE,MAAM,CAAC;MAC7D;IACF,CAAC;IACDrB,KAAK,CAAEiE,QAAyB,EAAEC,QAAyB,EAAE;MAC3D,IAAI,CAACC,iBAAiB,EAAE;MACxB,IAAI,CAACC,YAAY,EAAE;MAEnB,IACG,CAAC,IAAI,CAAChD,UAAU,IAAI,IAAI,CAACpB,KAAK,IAAI,CAAC,IAAI,CAACf,UAAU,IAClD,IAAI,CAACmC,UAAU,IAAI,IAAI,CAACN,aAAa,CAACE,MAAM,KAAK,CAACkD,QAAQ,IAAI,CAACA,QAAQ,CAAClD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC/B,UAAW,EACrG;QACA,IAAI,CAAC4B,SAAS,GAAGxD,kBAAkB,CAAC,IAAI,CAACuE,SAAS,EAAE,IAAI,CAAC3D,IAAI,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;MAC/F;IACF,CAAC;IACDA,IAAI,CAAEA,IAAoB,EAAE;MAC1B,IAAI,CAACsC,oBAAoB,GAAGtC,IAAI,CAACuC,WAAW,EAAE;MAE9C,IAAI,IAAI,CAACR,KAAK,IAAI,IAAI,CAACA,KAAK,CAACgB,MAAM,EAAE;QACnC,MAAMqD,MAAM,GAAG,IAAI,CAACvD,aAAa,CAC9BS,GAAG,CAAEC,GAAW,IAAKnE,kBAAkB,CAACmE,GAAG,EAAEvD,IAAI,CAAC,CAAC,CACnDqG,MAAM,CAAC,IAAI,CAACzH,aAAa,CAAC;QAC7B,IAAI,CAACiH,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC1C,UAAU,GAAGiD,MAAM,GAAGA,MAAM,CAAC,CAAC,CAAC,CAAC;MAC3D;IACF;EACF,CAAC;EAEDE,OAAO,GAAI;IACT,IAAI,CAACJ,iBAAiB,EAAE;IAExB,IAAI,IAAI,CAAClF,UAAU,KAAK,IAAI,CAAC4B,SAAS,EAAE;MACtC,IAAI,CAACiD,KAAK,CAAC,oBAAoB,EAAE,IAAI,CAACjD,SAAS,CAAC;IAClD;IACA,IAAI,CAACuD,YAAY,EAAE;EACrB,CAAC;EAEDI,OAAO,EAAE;IACPC,SAAS,CAAEC,QAAgB,EAAE;MAC3B,IAAI,IAAI,CAACrF,KAAK,EAAE;QACd,IAAI,IAAI,CAACyB,aAAa,CAACE,MAAM,KAAK,CAAC,EAAE;UACnC,IAAI,CAAC8C,KAAK,CAAC,OAAO,EAAE,CAACY,QAAQ,CAAC,CAAC;QACjC,CAAC,MAAM;UACL,MAAML,MAAM,GAAG,CAAC,IAAI,CAACvD,aAAa,CAAC,CAAC,CAAC,EAAE4D,QAAQ,CAAC;UAChD,IAAI,CAACZ,KAAK,CAAC,OAAO,EAAEO,MAAM,CAAC;UAC3B,IAAI,CAACP,KAAK,CAAC,QAAQ,EAAEO,MAAM,CAAC;QAC9B;QACA;MACF;MAEA,MAAMA,MAAM,GAAG,IAAI,CAACxF,QAAQ,GAExB,IAAI,CAACiC,aAAa,CAAC6D,OAAO,CAACD,QAAQ,CAAC,KAAK,CAAC,CAAC,GACvC,IAAI,CAAC5D,aAAa,CAAC8D,MAAM,CAAC,CAACF,QAAQ,CAAC,CAAC,GACrC,IAAI,CAAC5D,aAAa,CAACwD,MAAM,CAACO,CAAC,IAAIA,CAAC,KAAKH,QAAQ,CAAC,GAElDA,QAAQ;MAEZ,IAAI,CAACZ,KAAK,CAAC,OAAO,EAAEO,MAAM,CAAC;MAC3B,IAAI,CAACxF,QAAQ,IAAI,IAAI,CAACiF,KAAK,CAAC,QAAQ,EAAEY,QAAQ,CAAC;IACjD,CAAC;IACDP,iBAAiB,GAAI;MACnB,IAAI,IAAI,CAACnE,KAAK,IAAI,IAAI,EAAE;MACxB,MAAM8E,SAAS,GAAG,IAAI,CAAC9E,KAAK,CAAC+E,WAAW,CAACxH,IAAI;MAC7C,MAAMyH,QAAQ,GAAG,IAAI,CAAC5D,UAAU,GAAG,OAAO,GAAG,QAAQ;MACrD,IAAI0D,SAAS,KAAKE,QAAQ,EAAE;QAC1B/H,WAAW,CAAE,iBAAgB,IAAI,CAACmE,UAAU,GAAG,IAAI,GAAG,GAAI,IAAG4D,QAAS,SAAQF,SAAU,EAAC,EAAE,IAAI,CAAC;MAClG;IACF,CAAC;IACDjI,aAAa,CAAEmD,KAAa,EAAW;MACrC,OAAOnD,aAAa,CAACmD,KAAK,EAAE,IAAI,CAACrB,GAAG,EAAE,IAAI,CAACD,GAAG,EAAE,IAAI,CAACf,YAAY,CAAC;IACpE,CAAC;IACDsH,SAAS,CAAEjF,KAAa,EAAE;MACxB,IAAI,CAACW,SAAS,GAAGX,KAAK;MACtB,IAAI,IAAI,CAAC/B,IAAI,KAAK,OAAO,EAAE;QACzB,IAAI,CAAC4C,SAAS,GAAI,GAAEb,KAAM,EAAC;MAC7B,CAAC,MAAM;QACL,IAAI,CAACa,SAAS,GAAI,GAAEb,KAAM,IAAG5C,GAAG,CAAC,CAAC,IAAI,CAACyE,UAAU,IAAI,CAAC,IAAI,CAAC,CAAE,EAAC;MAChE;MACA,IAAI,CAACtB,oBAAoB,GAAG,OAAO;MACnC,IAAI,IAAI,CAACjB,QAAQ,IAAI,CAAC,IAAI,CAACC,QAAQ,IAAI,CAAC,IAAI,CAAC6B,UAAU,IAAI,IAAI,CAACvE,aAAa,CAAC,IAAI,CAAC+E,SAAS,CAAC,EAAE;QAC7F,IAAI,CAACkC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAClC,SAAS,CAAC;MACrC;IACF,CAAC;IACDsD,UAAU,CAAElF,KAAa,EAAE;MACzB,IAAI,CAACW,SAAS,GAAGwE,QAAQ,CAACnF,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;MAClD,IAAI,CAACpB,UAAU,GAAGyE,QAAQ,CAACnF,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;MACvD,IAAI,IAAI,CAAC7D,IAAI,KAAK,MAAM,EAAE;QACxB,IAAI,IAAI,CAACwC,QAAQ,EAAE;UACjB,IAAI,CAACA,QAAQ,GAAG2E,IAAI,CAACzG,GAAG,CAAC,IAAI,CAAC8B,QAAQ,EAAEzD,WAAW,CAAC,IAAI,CAAC2D,SAAS,EAAE,IAAI,CAACD,UAAU,GAAG,CAAC,CAAC,CAAC;QAC3F;QAEA,IAAI,CAACG,SAAS,GAAGb,KAAK;QACtB,IAAI,CAACO,oBAAoB,GAAG,MAAM;QAClC,IAAI,IAAI,CAACjB,QAAQ,IAAI,CAAC,IAAI,CAACC,QAAQ,IAAI,CAAC,IAAI,CAAC6B,UAAU,IAAI,IAAI,CAACvE,aAAa,CAAC,IAAI,CAAC+E,SAAS,CAAC,EAAE;UAC7F,IAAI,CAACkC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAClC,SAAS,CAAC;QACrC;MACF,CAAC,MAAM;QACL,IAAI,CAAC6C,SAAS,CAAC,IAAI,CAAC7C,SAAS,CAAC;MAChC;IACF,CAAC;IACDyD,SAAS,CAAErF,KAAa,EAAE;MACxB,IAAI,CAACW,SAAS,GAAGwE,QAAQ,CAACnF,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;MAClD,IAAI,CAACpB,UAAU,GAAGyE,QAAQ,CAACnF,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;MACvD,IAAI,CAACrB,QAAQ,GAAG0E,QAAQ,CAACnF,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;MACjD,IAAI,CAAC2C,SAAS,CAAC,IAAI,CAAC7C,SAAS,CAAC;IAChC,CAAC;IACD0D,cAAc,GAAW;MACvB,OAAO,IAAI,CAACC,cAAc,CAACjJ,gBAAgB,EAAE;QAC3CkB,KAAK,EAAE;UACLuD,IAAI,EAAE,IAAI,CAACf,KAAK,GAAI,IAAI,CAACoC,UAAU,CAACI,SAAS,CAA4B,IAAI,CAACpB,UAAU,GAAG,IAAI,CAACN,aAAa,GAAG,IAAI,CAACd,KAAK,CAAC,GAAG,EAAE;UAChIlC,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvByB,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBiG,aAAa,EAAE,IAAI,CAACjF,oBAAoB,KAAK,MAAM;UACnD8B,IAAI,EAAE,IAAI,CAACD,UAAU,CAACC,IAAI,CAAC,IAAI,CAACvB,aAAa,CAACE,MAAM,GAAI,GAAE,IAAI,CAACL,SAAU,EAAC,GAAG,IAAI,CAACE,SAAS,CAAC;UAC5FV,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBH,KAAK,EAAE,IAAI,CAACc,aAAa,CAAC,CAAC;QAC7B,CAAC;QACD2E,IAAI,EAAE,OAAO;QACbC,EAAE,EAAE;UACF,uBAAuB,EAAG1F,KAAc,IAAK,IAAI,CAACO,oBAAoB,GAAGP,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC/B,IAAI,CAACuC,WAAW;QACjH;MACF,CAAC,CAAC;IACJ,CAAC;IACDmF,cAAc,GAAW;MACvB,OAAO,IAAI,CAACJ,cAAc,CAAChJ,iBAAiB,EAAE;QAC5CiB,KAAK,EAAE;UACLsB,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvB8G,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,IAAI,EAAE,IAAI,CAACA,IAAI;UACf/H,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBgI,MAAM,EAAE,IAAI,CAACtH,gBAAgB;UAC7BuH,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBrH,GAAG,EAAE,IAAI,CAAC4B,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAACyB,QAAQ,GAAG,IAAI,CAACE,OAAO;UACxExD,GAAG,EAAE,IAAI,CAAC6B,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAAC0B,QAAQ,GAAG,IAAI,CAACE,OAAO;UACxE8D,aAAa,EAAE,IAAI,CAAC1F,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAACxB,kBAAkB,GAAG,IAAI,CAACC,iBAAiB;UACtGkH,aAAa,EAAE,IAAI,CAAC3F,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAACpB,kBAAkB,GAAG,IAAI,CAACC,iBAAiB;UACtGF,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBK,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBS,KAAK,EAAE,IAAI,CAACO,oBAAoB,KAAK,MAAM,GAAI,GAAEnD,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE,IAAG3E,GAAG,CAAC,IAAI,CAACyE,UAAU,GAAG,CAAC,CAAE,EAAC,GAAI,GAAEzE,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE;QACpI,CAAC;QACD2D,EAAE,EAAE;UACFS,MAAM,EAAE,MAAM,IAAI,CAAC5F,oBAAoB,GAAI,IAAI,CAACA,oBAAoB,KAAK,MAAM,GAAG,OAAO,GAAG,MAAO;UACnG6F,KAAK,EAAGpG,KAAa,IAAK,IAAI,CAACa,SAAS,GAAGb;QAC7C;MACF,CAAC,CAAC;IACJ,CAAC;IACDqG,YAAY,GAAW;MACrB,OAAO,IAAI,CAACd,cAAc,CAAC/I,oBAAoB,EAAE;QAC/CgB,KAAK,EAAE;UACLG,YAAY,EAAE,IAAI,CAACA,YAAY;UAC/BiI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBlE,OAAO,EAAE,IAAI,CAACA,OAAO;UACrBmE,IAAI,EAAE,IAAI,CAACA,IAAI;UACf/H,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBE,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBK,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BC,cAAc,EAAE,IAAI,CAACA,cAAc;UACnCwH,MAAM,EAAE,IAAI,CAACjI,SAAS;UACtBkI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBvH,oBAAoB,EAAE,IAAI,CAACA,oBAAoB;UAC/CE,GAAG,EAAE,IAAI,CAACA,GAAG;UACbD,GAAG,EAAE,IAAI,CAACA,GAAG;UACbW,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBE,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBC,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BG,kBAAkB,EAAE,IAAI,CAACA,kBAAkB;UAC3CC,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBiB,SAAS,EAAG,GAAEzD,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE,IAAG3E,GAAG,CAAC,IAAI,CAACyE,UAAU,GAAG,CAAC,CAAE,EAAC;UAClE7B,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,aAAa,EAAE,IAAI,CAACA;QACtB,CAAC;QACDqG,GAAG,EAAE,OAAO;QACZZ,EAAE,EAAE;UACFU,KAAK,EAAE,IAAI,CAACf,SAAS;UACrB,mBAAmB,EAAGrF,KAAa,IAAK,IAAI,CAACa,SAAS,GAAGb,KAAK;UAC9D,GAAG9C,uBAAuB,CAAC,IAAI,EAAE,OAAO;QAC1C;MACF,CAAC,CAAC;IACJ,CAAC;IACDqJ,aAAa,GAAW;MACtB,OAAO,IAAI,CAAChB,cAAc,CAAC9I,qBAAqB,EAAE;QAChDe,KAAK,EAAE;UACLG,YAAY,EAAE,IAAI,CAACM,IAAI,KAAK,OAAO,GAAG,IAAI,CAACN,YAAY,GAAG,IAAI;UAC9DiI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBlE,OAAO,EAAE,IAAI,CAACA,OAAO,GAAGrE,kBAAkB,CAAC,IAAI,CAACqE,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;UACxEmE,IAAI,EAAE,IAAI,CAACA,IAAI;UACf/H,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBE,MAAM,EAAE,IAAI,CAACC,IAAI,KAAK,OAAO,GAAG,IAAI,CAACD,MAAM,GAAG,IAAI;UAClDK,UAAU,EAAE,IAAI,CAACJ,IAAI,KAAK,OAAO,GAAG,IAAI,CAACI,UAAU,GAAG,IAAI;UAC1DyH,MAAM,EAAE,IAAI,CAAClH,WAAW;UACxBmH,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBrH,GAAG,EAAE,IAAI,CAACqD,QAAQ;UAClBtD,GAAG,EAAE,IAAI,CAACuD,QAAQ;UAClB5C,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBE,QAAQ,EAAE,IAAI,CAACA,QAAQ,IAAI,IAAI,CAACtB,IAAI,KAAK,OAAO;UAChDuB,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BQ,KAAK,EAAE,IAAI,CAACsB,cAAc;UAC1BT,SAAS,EAAG,GAAEzD,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE;QACvC,CAAC;QACDuE,GAAG,EAAE,OAAO;QACZZ,EAAE,EAAE;UACFU,KAAK,EAAE,IAAI,CAAClB,UAAU;UACtB,mBAAmB,EAAGlF,KAAa,IAAK,IAAI,CAACa,SAAS,GAAGb,KAAK;UAC9D,GAAG9C,uBAAuB,CAAC,IAAI,EAAE,QAAQ;QAC3C;MACF,CAAC,CAAC;IACJ,CAAC;IACDsJ,QAAQ,GAAW;MACjB,OAAO,IAAI,CAACjB,cAAc,CAAC7I,gBAAgB,EAAE;QAC3Cc,KAAK,EAAE;UACLoI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBE,MAAM,EAAE,IAAI,CAAC5F,UAAU;UACvB8F,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBrH,GAAG,EAAE,IAAI,CAACuD,OAAO;UACjBxD,GAAG,EAAE,IAAI,CAACyD,OAAO;UACjBnC,KAAK,EAAE,IAAI,CAAC+B;QACd,CAAC;QACD2D,EAAE,EAAE;UACFU,KAAK,EAAE,IAAI,CAACnB,SAAS;UACrB,GAAG/H,uBAAuB,CAAC,IAAI,EAAE,OAAO;QAC1C;MACF,CAAC,CAAC;IACJ,CAAC;IACDuJ,aAAa,GAAW;MACtB,MAAMC,QAAQ,GAAG,IAAI,CAACnG,oBAAoB,KAAK,MAAM,GAAG,CACtD,IAAI,CAACiG,QAAQ,EAAE,CAChB,GAAG,CACF,IAAI,CAACb,cAAc,EAAE,EACrB,IAAI,CAACpF,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAAC8F,YAAY,EAAE,GAAG,IAAI,CAACE,aAAa,EAAE,CAClF;MAED,OAAO,IAAI,CAAChB,cAAc,CAAC,KAAK,EAAE;QAChCoB,GAAG,EAAE,IAAI,CAACpG;MACZ,CAAC,EAAEmG,QAAQ,CAAC;IACd,CAAC;IACDtC,YAAY,GAAI;MACd,IAAI,IAAI,CAAC/C,SAAS,EAAE;QAClB,MAAMuF,KAAK,GAAG,IAAI,CAACvF,SAAS,CAACS,KAAK,CAAC,GAAG,CAAC;QACvC,IAAI,CAACnB,SAAS,GAAGwE,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvC,IAAI,CAAClG,UAAU,GAAGyE,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;QAC5C,IAAI,IAAI,CAAC3I,IAAI,KAAK,MAAM,EAAE;UACxB,IAAI,CAACwC,QAAQ,GAAG0E,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACxC;MACF,CAAC,MAAM;QACL,IAAI,CAACjG,SAAS,GAAG,IAAI,CAACA,SAAS,IAAI,IAAI,CAACN,GAAG,CAACY,WAAW,EAAE;QACzD,IAAI,CAACP,UAAU,GAAG,IAAI,CAACA,UAAU,IAAI,IAAI,GAAG,IAAI,CAACA,UAAU,GAAG,IAAI,CAACL,GAAG,CAACa,QAAQ,EAAE;QACjF,IAAI,CAACT,QAAQ,GAAG,IAAI,CAACA,QAAQ,IAAI,IAAI,CAACJ,GAAG,CAACsB,OAAO,EAAE;MACrD;IACF;EACF,CAAC;EAEDkF,MAAM,GAAW;IACf,OAAO,IAAI,CAACC,SAAS,CAAC,gBAAgB,CAAC;EACzC;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VDatePicker.mjs","names":["VDatePickerTitle","VDatePickerHeader","VDatePickerDateTable","VDatePickerMonthTable","VDatePickerYears","Localable","Picker","isDateAllowed","mixins","wrapInArray","daysInMonth","consoleWarn","createItemTypeListeners","createNativeLocaleFormatter","pad","sanitizeDateString","extend","name","props","activePicker","String","allowedDates","Function","dayFormat","disabled","Boolean","events","type","Array","Object","default","eventColor","firstDayOfWeek","Number","headerDateFormat","localeFirstDayOfYear","max","min","monthFormat","multiple","nextIcon","nextMonthAriaLabel","nextYearAriaLabel","pickerDate","prevIcon","prevMonthAriaLabel","prevYearAriaLabel","range","reactive","readonly","scrollable","showCurrent","selectedItemsText","showAdjacentMonths","showWeek","titleDateFormat","validator","includes","value","weekdayFormat","yearFormat","yearIcon","data","now","Date","internalActivePicker","toUpperCase","inputDay","inputMonth","inputYear","isReversing","tableDate","multipleValue","date","length","getFullYear","getMonth","computed","isMultiple","lastValue","selectedMonths","map","val","substr","current","getDate","inputDate","tableMonth","split","tableYear","minMonth","maxMonth","minYear","maxYear","formatters","year","currentLocale","timeZone","titleDate","defaultTitleMultipleDateFormatter","defaultTitleDateFormatter","dates","$vuetify","lang","t","titleFormats","month","weekday","day","titleDateFormatter","start","landscapeFormatter","replace","match","nonDigit","digit","landscape","watch","immediate","handler","$emit","prev","sanitizeType","newValue","oldValue","checkMultipleProp","setInputDate","output","filter","created","methods","emitInput","newInput","indexOf","concat","x","valueType","constructor","expected","yearClick","monthClick","parseInt","Math","dateClick","genPickerTitle","$createElement","selectingYear","slot","on","genTableHeader","color","dark","format","light","locale","nextAriaLabel","prevAriaLabel","toggle","input","genDateTable","ref","genMonthTable","genYears","genPickerBody","children","key","array","render","genPicker"],"sources":["../../../src/components/VDatePicker/VDatePicker.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Components\nimport VDatePickerTitle from './VDatePickerTitle'\nimport VDatePickerHeader from './VDatePickerHeader'\nimport VDatePickerDateTable from './VDatePickerDateTable'\nimport VDatePickerMonthTable from './VDatePickerMonthTable'\nimport VDatePickerYears from './VDatePickerYears'\n\n// Mixins\nimport Localable from '../../mixins/localable'\nimport Picker from '../../mixins/picker'\n\n// Utils\nimport isDateAllowed from './util/isDateAllowed'\nimport mixins from '../../util/mixins'\nimport { wrapInArray } from '../../util/helpers'\nimport { daysInMonth } from '../VCalendar/util/timestamp'\nimport { consoleWarn } from '../../util/console'\nimport {\n createItemTypeListeners,\n createNativeLocaleFormatter,\n pad,\n sanitizeDateString,\n} from './util'\n\n// Types\nimport {\n PropType,\n PropValidator,\n} from 'vue/types/options'\nimport { VNode } from 'vue'\nimport {\n DatePickerFormatter,\n DatePickerMultipleFormatter,\n DatePickerAllowedDatesFunction,\n DatePickerEventColors,\n DatePickerEvents,\n DatePickerType,\n} from 'vuetify/types'\n\ntype DatePickerValue = string | string[] | undefined\ninterface Formatters {\n year: DatePickerFormatter\n titleDate: DatePickerFormatter | DatePickerMultipleFormatter\n}\n\ntype ActivePicker = 'DATE' | 'MONTH' | 'YEAR';\n\nexport default mixins(\n Localable,\n Picker,\n/* @vue/component */\n).extend({\n name: 'v-date-picker',\n\n props: {\n activePicker: String as PropType<ActivePicker>,\n allowedDates: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n // Function formatting the day in date picker table\n dayFormat: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n disabled: Boolean,\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 firstDayOfWeek: {\n type: [String, Number],\n default: 0,\n },\n // Function formatting the tableDate in the day/month table header\n headerDateFormat: Function as PropType<DatePickerFormatter | undefined>,\n localeFirstDayOfYear: {\n type: [String, Number],\n default: 0,\n },\n max: String,\n min: String,\n // Function formatting month in the months table\n monthFormat: Function as PropType<DatePickerFormatter | undefined>,\n multiple: Boolean,\n nextIcon: {\n type: String,\n default: '$next',\n },\n nextMonthAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.nextMonthAriaLabel',\n },\n nextYearAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.nextYearAriaLabel',\n },\n pickerDate: String,\n prevIcon: {\n type: String,\n default: '$prev',\n },\n prevMonthAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.prevMonthAriaLabel',\n },\n prevYearAriaLabel: {\n type: String,\n default: '$vuetify.datePicker.prevYearAriaLabel',\n },\n range: Boolean,\n reactive: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n showCurrent: {\n type: [Boolean, String],\n default: true,\n },\n selectedItemsText: {\n type: String,\n default: '$vuetify.datePicker.itemsSelected',\n },\n showAdjacentMonths: Boolean,\n showWeek: Boolean,\n // Function formatting currently selected date in the picker title\n titleDateFormat: Function as PropType<DatePickerFormatter | DatePickerMultipleFormatter | undefined>,\n type: {\n type: String,\n default: 'date',\n validator: (type: any) => ['date', 'month'].includes(type), // TODO: year\n } as PropValidator<DatePickerType>,\n value: [Array, String] as PropType<DatePickerValue>,\n weekdayFormat: Function as PropType<DatePickerFormatter | undefined>,\n // Function formatting the year in table header and pickup title\n yearFormat: Function as PropType<DatePickerFormatter | undefined>,\n yearIcon: String,\n },\n\n data () {\n const now = new Date()\n return {\n internalActivePicker: this.type.toUpperCase(),\n inputDay: null as number | null,\n inputMonth: null as number | null,\n inputYear: null as number | null,\n isReversing: false,\n now,\n // tableDate is a string in 'YYYY' / 'YYYY-M' format (leading zero for month is not required)\n tableDate: (() => {\n if (this.pickerDate) {\n return this.pickerDate\n }\n\n const multipleValue = wrapInArray(this.value)\n const date = multipleValue[multipleValue.length - 1] ||\n (typeof this.showCurrent === 'string' ? this.showCurrent : `${now.getFullYear()}-${now.getMonth() + 1}`)\n return sanitizeDateString(date as string, this.type === 'date' ? 'month' : 'year')\n })(),\n }\n },\n\n computed: {\n multipleValue (): string[] {\n return wrapInArray(this.value)\n },\n isMultiple (): boolean {\n return this.multiple || this.range\n },\n lastValue (): string | null {\n return this.isMultiple ? this.multipleValue[this.multipleValue.length - 1] : (this.value as string | null)\n },\n selectedMonths (): string | string[] | undefined {\n if (!this.value || this.type === 'month') {\n return this.value\n } else if (this.isMultiple) {\n return this.multipleValue.map(val => val.substr(0, 7))\n } else {\n return (this.value as string).substr(0, 7)\n }\n },\n current (): string | null {\n if (this.showCurrent === true) {\n return sanitizeDateString(`${this.now.getFullYear()}-${this.now.getMonth() + 1}-${this.now.getDate()}`, this.type)\n }\n\n return this.showCurrent || null\n },\n inputDate (): string {\n return this.type === 'date'\n ? `${this.inputYear}-${pad(this.inputMonth! + 1)}-${pad(this.inputDay!)}`\n : `${this.inputYear}-${pad(this.inputMonth! + 1)}`\n },\n tableMonth (): number {\n return Number((this.pickerDate || this.tableDate).split('-')[1]) - 1\n },\n tableYear (): number {\n return Number((this.pickerDate || this.tableDate).split('-')[0])\n },\n minMonth (): string | null {\n return this.min ? sanitizeDateString(this.min, 'month') : null\n },\n maxMonth (): string | null {\n return this.max ? sanitizeDateString(this.max, 'month') : null\n },\n minYear (): string | null {\n return this.min ? sanitizeDateString(this.min, 'year') : null\n },\n maxYear (): string | null {\n return this.max ? sanitizeDateString(this.max, 'year') : null\n },\n formatters (): Formatters {\n return {\n year: this.yearFormat || createNativeLocaleFormatter(this.currentLocale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 }),\n titleDate: this.titleDateFormat ||\n (this.isMultiple ? this.defaultTitleMultipleDateFormatter : this.defaultTitleDateFormatter),\n }\n },\n defaultTitleMultipleDateFormatter (): DatePickerMultipleFormatter {\n return dates => {\n if (!dates.length) {\n return '-'\n }\n\n if (dates.length === 1) {\n return this.defaultTitleDateFormatter(dates[0])\n }\n\n return this.$vuetify.lang.t(this.selectedItemsText, dates.length)\n }\n },\n defaultTitleDateFormatter (): DatePickerFormatter {\n const titleFormats = {\n year: { year: 'numeric', timeZone: 'UTC' },\n month: { month: 'long', timeZone: 'UTC' },\n date: { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' },\n } as const\n\n const titleDateFormatter = createNativeLocaleFormatter(this.currentLocale, titleFormats[this.type], {\n start: 0,\n length: { date: 10, month: 7, year: 4 }[this.type],\n })\n\n const landscapeFormatter = (date: string) => titleDateFormatter(date)\n .replace(/([^\\d\\s])([\\d])/g, (match, nonDigit, digit) => `${nonDigit} ${digit}`)\n .replace(', ', ',<br>')\n\n return this.landscape ? landscapeFormatter : titleDateFormatter\n },\n },\n\n watch: {\n internalActivePicker: {\n immediate: true,\n handler (val: ActivePicker) {\n this.$emit('update:active-picker', val)\n },\n },\n activePicker (val: ActivePicker) {\n this.internalActivePicker = val\n },\n tableDate (val: string, prev: string) {\n // Make a ISO 8601 strings from val and prev for comparision, otherwise it will incorrectly\n // compare for example '2000-9' and '2000-10'\n const sanitizeType = this.type === 'month' ? 'year' : 'month'\n this.isReversing = sanitizeDateString(val, sanitizeType) < sanitizeDateString(prev, sanitizeType)\n this.$emit('update:picker-date', val)\n },\n pickerDate (val: string | null) {\n if (val) {\n this.tableDate = val\n } else if (this.lastValue && this.type === 'date') {\n this.tableDate = sanitizeDateString(this.lastValue, 'month')\n } else if (this.lastValue && this.type === 'month') {\n this.tableDate = sanitizeDateString(this.lastValue, 'year')\n }\n },\n value (newValue: DatePickerValue, oldValue: DatePickerValue) {\n this.checkMultipleProp()\n this.setInputDate()\n\n if (\n (!this.isMultiple && this.value && !this.pickerDate) ||\n (this.isMultiple && this.multipleValue.length && (!oldValue || !oldValue.length) && !this.pickerDate)\n ) {\n this.tableDate = sanitizeDateString(this.inputDate, this.type === 'month' ? 'year' : 'month')\n }\n },\n type (type: DatePickerType) {\n this.internalActivePicker = type.toUpperCase()\n\n if (this.value && this.value.length) {\n const output = this.multipleValue\n .map((val: string) => sanitizeDateString(val, type))\n .filter(this.isDateAllowed)\n this.$emit('input', this.isMultiple ? output : output[0])\n }\n },\n },\n\n created () {\n this.checkMultipleProp()\n\n if (this.pickerDate !== this.tableDate) {\n this.$emit('update:picker-date', this.tableDate)\n }\n this.setInputDate()\n },\n\n methods: {\n emitInput (newInput: string) {\n if (this.range) {\n if (this.multipleValue.length !== 1) {\n this.$emit('input', [newInput])\n } else {\n const output = [this.multipleValue[0], newInput]\n this.$emit('input', output)\n this.$emit('change', output)\n }\n return\n }\n\n const output = this.multiple\n ? (\n this.multipleValue.indexOf(newInput) === -1\n ? this.multipleValue.concat([newInput])\n : this.multipleValue.filter(x => x !== newInput)\n )\n : newInput\n\n this.$emit('input', output)\n this.multiple || this.$emit('change', newInput)\n },\n checkMultipleProp () {\n if (this.value == null) return\n const valueType = this.value.constructor.name\n const expected = this.isMultiple ? 'Array' : 'String'\n if (valueType !== expected) {\n consoleWarn(`Value must be ${this.isMultiple ? 'an' : 'a'} ${expected}, got ${valueType}`, this)\n }\n },\n isDateAllowed (value: string): boolean {\n return isDateAllowed(value, this.min, this.max, this.allowedDates)\n },\n yearClick (value: number) {\n this.inputYear = value\n if (this.type === 'month') {\n this.tableDate = `${value}`\n } else {\n this.tableDate = `${value}-${pad((this.tableMonth || 0) + 1)}`\n }\n this.internalActivePicker = 'MONTH'\n if (this.reactive && !this.readonly && !this.isMultiple && this.isDateAllowed(this.inputDate)) {\n this.$emit('input', this.inputDate)\n }\n },\n monthClick (value: string) {\n const [year, month] = value.split('-')\n\n this.inputYear = parseInt(year, 10)\n this.inputMonth = parseInt(month, 10) - 1\n\n if (this.type === 'date') {\n if (this.inputDay) {\n this.inputDay = Math.min(this.inputDay, daysInMonth(this.inputYear, this.inputMonth + 1))\n }\n\n this.tableDate = value\n this.internalActivePicker = 'DATE'\n if (this.reactive && !this.readonly && !this.isMultiple && this.isDateAllowed(this.inputDate)) {\n this.$emit('input', this.inputDate)\n }\n } else {\n this.emitInput(this.inputDate)\n }\n },\n dateClick (value: string) {\n const [year, month, day] = value.split('-')\n\n this.inputYear = parseInt(year, 10)\n this.inputMonth = parseInt(month, 10) - 1\n this.inputDay = parseInt(day, 10)\n\n this.emitInput(this.inputDate)\n },\n genPickerTitle (): VNode {\n return this.$createElement(VDatePickerTitle, {\n props: {\n date: this.value ? (this.formatters.titleDate as (value: any) => string)(this.isMultiple ? this.multipleValue : this.value) : '',\n disabled: this.disabled,\n readonly: this.readonly,\n selectingYear: this.internalActivePicker === 'YEAR',\n year: this.formatters.year(this.multipleValue.length ? `${this.inputYear}` : this.tableDate),\n yearIcon: this.yearIcon,\n value: this.multipleValue[0],\n },\n slot: 'title',\n on: {\n 'update:selecting-year': (value: boolean) => this.internalActivePicker = value ? 'YEAR' : this.type.toUpperCase(),\n },\n })\n },\n genTableHeader (): VNode {\n return this.$createElement(VDatePickerHeader, {\n props: {\n nextIcon: this.nextIcon,\n color: this.color,\n dark: this.dark,\n disabled: this.disabled,\n format: this.headerDateFormat,\n light: this.light,\n locale: this.locale,\n min: this.internalActivePicker === 'DATE' ? this.minMonth : this.minYear,\n max: this.internalActivePicker === 'DATE' ? this.maxMonth : this.maxYear,\n nextAriaLabel: this.internalActivePicker === 'DATE' ? this.nextMonthAriaLabel : this.nextYearAriaLabel,\n prevAriaLabel: this.internalActivePicker === 'DATE' ? this.prevMonthAriaLabel : this.prevYearAriaLabel,\n prevIcon: this.prevIcon,\n readonly: this.readonly,\n value: this.internalActivePicker === 'DATE' ? `${pad(this.tableYear, 4)}-${pad(this.tableMonth + 1)}` : `${pad(this.tableYear, 4)}`,\n },\n on: {\n toggle: () => this.internalActivePicker = (this.internalActivePicker === 'DATE' ? 'MONTH' : 'YEAR'),\n input: (value: string) => this.tableDate = value,\n },\n })\n },\n genDateTable (): VNode {\n return this.$createElement(VDatePickerDateTable, {\n props: {\n allowedDates: this.allowedDates,\n color: this.color,\n current: this.current,\n dark: this.dark,\n disabled: this.disabled,\n events: this.events,\n eventColor: this.eventColor,\n firstDayOfWeek: this.firstDayOfWeek,\n format: this.dayFormat,\n light: this.light,\n locale: this.locale,\n localeFirstDayOfYear: this.localeFirstDayOfYear,\n min: this.min,\n max: this.max,\n range: this.range,\n readonly: this.readonly,\n scrollable: this.scrollable,\n showAdjacentMonths: this.showAdjacentMonths,\n showWeek: this.showWeek,\n tableDate: `${pad(this.tableYear, 4)}-${pad(this.tableMonth + 1)}`,\n value: this.value,\n weekdayFormat: this.weekdayFormat,\n },\n ref: 'table',\n on: {\n input: this.dateClick,\n 'update:table-date': (value: string) => this.tableDate = value,\n ...createItemTypeListeners(this, ':date'),\n },\n })\n },\n genMonthTable (): VNode {\n return this.$createElement(VDatePickerMonthTable, {\n props: {\n allowedDates: this.type === 'month' ? this.allowedDates : null,\n color: this.color,\n current: this.current ? sanitizeDateString(this.current, 'month') : null,\n dark: this.dark,\n disabled: this.disabled,\n events: this.type === 'month' ? this.events : null,\n eventColor: this.type === 'month' ? this.eventColor : null,\n format: this.monthFormat,\n light: this.light,\n locale: this.locale,\n min: this.minMonth,\n max: this.maxMonth,\n range: this.range,\n readonly: this.readonly && this.type === 'month',\n scrollable: this.scrollable,\n value: this.selectedMonths,\n tableDate: `${pad(this.tableYear, 4)}`,\n },\n ref: 'table',\n on: {\n input: this.monthClick,\n 'update:table-date': (value: string) => this.tableDate = value,\n ...createItemTypeListeners(this, ':month'),\n },\n })\n },\n genYears (): VNode {\n return this.$createElement(VDatePickerYears, {\n props: {\n color: this.color,\n format: this.yearFormat,\n locale: this.locale,\n min: this.minYear,\n max: this.maxYear,\n value: this.tableYear,\n },\n on: {\n input: this.yearClick,\n ...createItemTypeListeners(this, ':year'),\n },\n })\n },\n genPickerBody (): VNode {\n const children = this.internalActivePicker === 'YEAR' ? [\n this.genYears(),\n ] : [\n this.genTableHeader(),\n this.internalActivePicker === 'DATE' ? this.genDateTable() : this.genMonthTable(),\n ]\n\n return this.$createElement('div', {\n key: this.internalActivePicker,\n }, children)\n },\n setInputDate () {\n if (this.lastValue) {\n const array = this.lastValue.split('-')\n this.inputYear = parseInt(array[0], 10)\n this.inputMonth = parseInt(array[1], 10) - 1\n if (this.type === 'date') {\n this.inputDay = parseInt(array[2], 10)\n }\n } else {\n this.inputYear = this.inputYear || this.now.getFullYear()\n this.inputMonth = this.inputMonth == null ? this.inputMonth : this.now.getMonth()\n this.inputDay = this.inputDay || this.now.getDate()\n }\n },\n },\n\n render (): VNode {\n return this.genPicker('v-picker--date')\n },\n})\n"],"mappings":"AAAA;AACA;AAEA;AAAA,OACOA,gBAAgB;AAAA,OAChBC,iBAAiB;AAAA,OACjBC,oBAAoB;AAAA,OACpBC,qBAAqB;AAAA,OACrBC,gBAAgB,gCAEvB;AAAA,OACOC,SAAS;AAAA,OACTC,MAAM,iCAEb;AAAA,OACOC,aAAa;AAAA,OACbC,MAAM;AAAA,SACJC,WAAW;AAAA,SACXC,WAAW;AAAA,SACXC,WAAW;AAAA,SAElBC,uBAAuB,EACvBC,2BAA2B,EAC3BC,GAAG,EACHC,kBAAkB,4BAGpB;AAuBA,eAAeP,MAAM,CACnBH,SAAS,EACTC;AACF,qBACC,CAACU,MAAM,CAAC;EACPC,IAAI,EAAE,eAAe;EAErBC,KAAK,EAAE;IACLC,YAAY,EAAEC,MAAgC;IAC9CC,YAAY,EAAEC,QAAgE;IAC9E;IACAC,SAAS,EAAED,QAAgE;IAC3EE,QAAQ,EAAEC,OAAO;IACjBC,MAAM,EAAE;MACNC,IAAI,EAAE,CAACC,KAAK,EAAEN,QAAQ,EAAEO,MAAM,CAAC;MAC/BC,OAAO,EAAE,MAAM;IACjB,CAA2C;IAC3CC,UAAU,EAAE;MACVJ,IAAI,EAAE,CAACC,KAAK,EAAEN,QAAQ,EAAEO,MAAM,EAAET,MAAM,CAAC;MACvCU,OAAO,EAAE,MAAM;IACjB,CAAyC;IACzCE,cAAc,EAAE;MACdL,IAAI,EAAE,CAACP,MAAM,EAAEa,MAAM,CAAC;MACtBH,OAAO,EAAE;IACX,CAAC;IACD;IACAI,gBAAgB,EAAEZ,QAAqD;IACvEa,oBAAoB,EAAE;MACpBR,IAAI,EAAE,CAACP,MAAM,EAAEa,MAAM,CAAC;MACtBH,OAAO,EAAE;IACX,CAAC;IACDM,GAAG,EAAEhB,MAAM;IACXiB,GAAG,EAAEjB,MAAM;IACX;IACAkB,WAAW,EAAEhB,QAAqD;IAClEiB,QAAQ,EAAEd,OAAO;IACjBe,QAAQ,EAAE;MACRb,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDW,kBAAkB,EAAE;MAClBd,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDY,iBAAiB,EAAE;MACjBf,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDa,UAAU,EAAEvB,MAAM;IAClBwB,QAAQ,EAAE;MACRjB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDe,kBAAkB,EAAE;MAClBlB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDgB,iBAAiB,EAAE;MACjBnB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDiB,KAAK,EAAEtB,OAAO;IACduB,QAAQ,EAAEvB,OAAO;IACjBwB,QAAQ,EAAExB,OAAO;IACjByB,UAAU,EAAEzB,OAAO;IACnB0B,WAAW,EAAE;MACXxB,IAAI,EAAE,CAACF,OAAO,EAAEL,MAAM,CAAC;MACvBU,OAAO,EAAE;IACX,CAAC;IACDsB,iBAAiB,EAAE;MACjBzB,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE;IACX,CAAC;IACDuB,kBAAkB,EAAE5B,OAAO;IAC3B6B,QAAQ,EAAE7B,OAAO;IACjB;IACA8B,eAAe,EAAEjC,QAAmF;IACpGK,IAAI,EAAE;MACJA,IAAI,EAAEP,MAAM;MACZU,OAAO,EAAE,MAAM;MACf0B,SAAS,EAAG7B,IAAS,IAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC8B,QAAQ,CAAC9B,IAAI,CAAC,CAAE;IAC9D,CAAkC;;IAClC+B,KAAK,EAAE,CAAC9B,KAAK,EAAER,MAAM,CAA8B;IACnDuC,aAAa,EAAErC,QAAqD;IACpE;IACAsC,UAAU,EAAEtC,QAAqD;IACjEuC,QAAQ,EAAEzC;EACZ,CAAC;EAED0C,IAAI,GAAI;IACN,MAAMC,GAAG,GAAG,IAAIC,IAAI,EAAE;IACtB,OAAO;MACLC,oBAAoB,EAAE,IAAI,CAACtC,IAAI,CAACuC,WAAW,EAAE;MAC7CC,QAAQ,EAAE,IAAqB;MAC/BC,UAAU,EAAE,IAAqB;MACjCC,SAAS,EAAE,IAAqB;MAChCC,WAAW,EAAE,KAAK;MAClBP,GAAG;MACH;MACAQ,SAAS,EAAE,CAAC,MAAM;QAChB,IAAI,IAAI,CAAC5B,UAAU,EAAE;UACnB,OAAO,IAAI,CAACA,UAAU;QACxB;QAEA,MAAM6B,aAAa,GAAG/D,WAAW,CAAC,IAAI,CAACiD,KAAK,CAAC;QAC7C,MAAMe,IAAI,GAAGD,aAAa,CAACA,aAAa,CAACE,MAAM,GAAG,CAAC,CAAC,KACjD,OAAO,IAAI,CAACvB,WAAW,KAAK,QAAQ,GAAG,IAAI,CAACA,WAAW,GAAI,GAAEY,GAAG,CAACY,WAAW,EAAG,IAAGZ,GAAG,CAACa,QAAQ,EAAE,GAAG,CAAE,EAAC,CAAC;QAC1G,OAAO7D,kBAAkB,CAAC0D,IAAI,EAAY,IAAI,CAAC9C,IAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;MACpF,CAAC;IACH,CAAC;EACH,CAAC;EAEDkD,QAAQ,EAAE;IACRL,aAAa,GAAc;MACzB,OAAO/D,WAAW,CAAC,IAAI,CAACiD,KAAK,CAAC;IAChC,CAAC;IACDoB,UAAU,GAAa;MACrB,OAAO,IAAI,CAACvC,QAAQ,IAAI,IAAI,CAACQ,KAAK;IACpC,CAAC;IACDgC,SAAS,GAAmB;MAC1B,OAAO,IAAI,CAACD,UAAU,GAAG,IAAI,CAACN,aAAa,CAAC,IAAI,CAACA,aAAa,CAACE,MAAM,GAAG,CAAC,CAAC,GAAI,IAAI,CAAChB,KAAuB;IAC5G,CAAC;IACDsB,cAAc,GAAmC;MAC/C,IAAI,CAAC,IAAI,CAACtB,KAAK,IAAI,IAAI,CAAC/B,IAAI,KAAK,OAAO,EAAE;QACxC,OAAO,IAAI,CAAC+B,KAAK;MACnB,CAAC,MAAM,IAAI,IAAI,CAACoB,UAAU,EAAE;QAC1B,OAAO,IAAI,CAACN,aAAa,CAACS,GAAG,CAACC,GAAG,IAAIA,GAAG,CAACC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;MACxD,CAAC,MAAM;QACL,OAAQ,IAAI,CAACzB,KAAK,CAAYyB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;MAC5C;IACF,CAAC;IACDC,OAAO,GAAmB;MACxB,IAAI,IAAI,CAACjC,WAAW,KAAK,IAAI,EAAE;QAC7B,OAAOpC,kBAAkB,CAAE,GAAE,IAAI,CAACgD,GAAG,CAACY,WAAW,EAAG,IAAG,IAAI,CAACZ,GAAG,CAACa,QAAQ,EAAE,GAAG,CAAE,IAAG,IAAI,CAACb,GAAG,CAACsB,OAAO,EAAG,EAAC,EAAE,IAAI,CAAC1D,IAAI,CAAC;MACpH;MAEA,OAAO,IAAI,CAACwB,WAAW,IAAI,IAAI;IACjC,CAAC;IACDmC,SAAS,GAAY;MACnB,OAAO,IAAI,CAAC3D,IAAI,KAAK,MAAM,GACtB,GAAE,IAAI,CAAC0C,SAAU,IAAGvD,GAAG,CAAC,IAAI,CAACsD,UAAU,GAAI,CAAC,CAAE,IAAGtD,GAAG,CAAC,IAAI,CAACqD,QAAQ,CAAG,EAAC,GACtE,GAAE,IAAI,CAACE,SAAU,IAAGvD,GAAG,CAAC,IAAI,CAACsD,UAAU,GAAI,CAAC,CAAE,EAAC;IACtD,CAAC;IACDmB,UAAU,GAAY;MACpB,OAAOtD,MAAM,CAAC,CAAC,IAAI,CAACU,UAAU,IAAI,IAAI,CAAC4B,SAAS,EAAEiB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,CAAC;IACDC,SAAS,GAAY;MACnB,OAAOxD,MAAM,CAAC,CAAC,IAAI,CAACU,UAAU,IAAI,IAAI,CAAC4B,SAAS,EAAEiB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IACDE,QAAQ,GAAmB;MACzB,OAAO,IAAI,CAACrD,GAAG,GAAGtB,kBAAkB,CAAC,IAAI,CAACsB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI;IAChE,CAAC;IACDsD,QAAQ,GAAmB;MACzB,OAAO,IAAI,CAACvD,GAAG,GAAGrB,kBAAkB,CAAC,IAAI,CAACqB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI;IAChE,CAAC;IACDwD,OAAO,GAAmB;MACxB,OAAO,IAAI,CAACvD,GAAG,GAAGtB,kBAAkB,CAAC,IAAI,CAACsB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI;IAC/D,CAAC;IACDwD,OAAO,GAAmB;MACxB,OAAO,IAAI,CAACzD,GAAG,GAAGrB,kBAAkB,CAAC,IAAI,CAACqB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI;IAC/D,CAAC;IACD0D,UAAU,GAAgB;MACxB,OAAO;QACLC,IAAI,EAAE,IAAI,CAACnC,UAAU,IAAI/C,2BAA2B,CAAC,IAAI,CAACmF,aAAa,EAAE;UAAED,IAAI,EAAE,SAAS;UAAEE,QAAQ,EAAE;QAAM,CAAC,EAAE;UAAEvB,MAAM,EAAE;QAAE,CAAC,CAAC;QAC7HwB,SAAS,EAAE,IAAI,CAAC3C,eAAe,KAC5B,IAAI,CAACuB,UAAU,GAAG,IAAI,CAACqB,iCAAiC,GAAG,IAAI,CAACC,yBAAyB;MAC9F,CAAC;IACH,CAAC;IACDD,iCAAiC,GAAiC;MAChE,OAAOE,KAAK,IAAI;QACd,IAAI,CAACA,KAAK,CAAC3B,MAAM,EAAE;UACjB,OAAO,GAAG;QACZ;QAEA,IAAI2B,KAAK,CAAC3B,MAAM,KAAK,CAAC,EAAE;UACtB,OAAO,IAAI,CAAC0B,yBAAyB,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD;QAEA,OAAO,IAAI,CAACC,QAAQ,CAACC,IAAI,CAACC,CAAC,CAAC,IAAI,CAACpD,iBAAiB,EAAEiD,KAAK,CAAC3B,MAAM,CAAC;MACnE,CAAC;IACH,CAAC;IACD0B,yBAAyB,GAAyB;MAChD,MAAMK,YAAY,GAAG;QACnBV,IAAI,EAAE;UAAEA,IAAI,EAAE,SAAS;UAAEE,QAAQ,EAAE;QAAM,CAAC;QAC1CS,KAAK,EAAE;UAAEA,KAAK,EAAE,MAAM;UAAET,QAAQ,EAAE;QAAM,CAAC;QACzCxB,IAAI,EAAE;UAAEkC,OAAO,EAAE,OAAO;UAAED,KAAK,EAAE,OAAO;UAAEE,GAAG,EAAE,SAAS;UAAEX,QAAQ,EAAE;QAAM;MAC5E,CAAU;MAEV,MAAMY,kBAAkB,GAAGhG,2BAA2B,CAAC,IAAI,CAACmF,aAAa,EAAES,YAAY,CAAC,IAAI,CAAC9E,IAAI,CAAC,EAAE;QAClGmF,KAAK,EAAE,CAAC;QACRpC,MAAM,EAAE;UAAED,IAAI,EAAE,EAAE;UAAEiC,KAAK,EAAE,CAAC;UAAEX,IAAI,EAAE;QAAE,CAAC,CAAC,IAAI,CAACpE,IAAI;MACnD,CAAC,CAAC;MAEF,MAAMoF,kBAAkB,GAAItC,IAAY,IAAKoC,kBAAkB,CAACpC,IAAI,CAAC,CAClEuC,OAAO,CAAC,kBAAkB,EAAE,CAACC,KAAK,EAAEC,QAAQ,EAAEC,KAAK,KAAM,GAAED,QAAS,IAAGC,KAAM,EAAC,CAAC,CAC/EH,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;MAEzB,OAAO,IAAI,CAACI,SAAS,GAAGL,kBAAkB,GAAGF,kBAAkB;IACjE;EACF,CAAC;EAEDQ,KAAK,EAAE;IACLpD,oBAAoB,EAAE;MACpBqD,SAAS,EAAE,IAAI;MACfC,OAAO,CAAErC,GAAiB,EAAE;QAC1B,IAAI,CAACsC,KAAK,CAAC,sBAAsB,EAAEtC,GAAG,CAAC;MACzC;IACF,CAAC;IACD/D,YAAY,CAAE+D,GAAiB,EAAE;MAC/B,IAAI,CAACjB,oBAAoB,GAAGiB,GAAG;IACjC,CAAC;IACDX,SAAS,CAAEW,GAAW,EAAEuC,IAAY,EAAE;MACpC;MACA;MACA,MAAMC,YAAY,GAAG,IAAI,CAAC/F,IAAI,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO;MAC7D,IAAI,CAAC2C,WAAW,GAAGvD,kBAAkB,CAACmE,GAAG,EAAEwC,YAAY,CAAC,GAAG3G,kBAAkB,CAAC0G,IAAI,EAAEC,YAAY,CAAC;MACjG,IAAI,CAACF,KAAK,CAAC,oBAAoB,EAAEtC,GAAG,CAAC;IACvC,CAAC;IACDvC,UAAU,CAAEuC,GAAkB,EAAE;MAC9B,IAAIA,GAAG,EAAE;QACP,IAAI,CAACX,SAAS,GAAGW,GAAG;MACtB,CAAC,MAAM,IAAI,IAAI,CAACH,SAAS,IAAI,IAAI,CAACpD,IAAI,KAAK,MAAM,EAAE;QACjD,IAAI,CAAC4C,SAAS,GAAGxD,kBAAkB,CAAC,IAAI,CAACgE,SAAS,EAAE,OAAO,CAAC;MAC9D,CAAC,MAAM,IAAI,IAAI,CAACA,SAAS,IAAI,IAAI,CAACpD,IAAI,KAAK,OAAO,EAAE;QAClD,IAAI,CAAC4C,SAAS,GAAGxD,kBAAkB,CAAC,IAAI,CAACgE,SAAS,EAAE,MAAM,CAAC;MAC7D;IACF,CAAC;IACDrB,KAAK,CAAEiE,QAAyB,EAAEC,QAAyB,EAAE;MAC3D,IAAI,CAACC,iBAAiB,EAAE;MACxB,IAAI,CAACC,YAAY,EAAE;MAEnB,IACG,CAAC,IAAI,CAAChD,UAAU,IAAI,IAAI,CAACpB,KAAK,IAAI,CAAC,IAAI,CAACf,UAAU,IAClD,IAAI,CAACmC,UAAU,IAAI,IAAI,CAACN,aAAa,CAACE,MAAM,KAAK,CAACkD,QAAQ,IAAI,CAACA,QAAQ,CAAClD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC/B,UAAW,EACrG;QACA,IAAI,CAAC4B,SAAS,GAAGxD,kBAAkB,CAAC,IAAI,CAACuE,SAAS,EAAE,IAAI,CAAC3D,IAAI,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;MAC/F;IACF,CAAC;IACDA,IAAI,CAAEA,IAAoB,EAAE;MAC1B,IAAI,CAACsC,oBAAoB,GAAGtC,IAAI,CAACuC,WAAW,EAAE;MAE9C,IAAI,IAAI,CAACR,KAAK,IAAI,IAAI,CAACA,KAAK,CAACgB,MAAM,EAAE;QACnC,MAAMqD,MAAM,GAAG,IAAI,CAACvD,aAAa,CAC9BS,GAAG,CAAEC,GAAW,IAAKnE,kBAAkB,CAACmE,GAAG,EAAEvD,IAAI,CAAC,CAAC,CACnDqG,MAAM,CAAC,IAAI,CAACzH,aAAa,CAAC;QAC7B,IAAI,CAACiH,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC1C,UAAU,GAAGiD,MAAM,GAAGA,MAAM,CAAC,CAAC,CAAC,CAAC;MAC3D;IACF;EACF,CAAC;EAEDE,OAAO,GAAI;IACT,IAAI,CAACJ,iBAAiB,EAAE;IAExB,IAAI,IAAI,CAAClF,UAAU,KAAK,IAAI,CAAC4B,SAAS,EAAE;MACtC,IAAI,CAACiD,KAAK,CAAC,oBAAoB,EAAE,IAAI,CAACjD,SAAS,CAAC;IAClD;IACA,IAAI,CAACuD,YAAY,EAAE;EACrB,CAAC;EAEDI,OAAO,EAAE;IACPC,SAAS,CAAEC,QAAgB,EAAE;MAC3B,IAAI,IAAI,CAACrF,KAAK,EAAE;QACd,IAAI,IAAI,CAACyB,aAAa,CAACE,MAAM,KAAK,CAAC,EAAE;UACnC,IAAI,CAAC8C,KAAK,CAAC,OAAO,EAAE,CAACY,QAAQ,CAAC,CAAC;QACjC,CAAC,MAAM;UACL,MAAML,MAAM,GAAG,CAAC,IAAI,CAACvD,aAAa,CAAC,CAAC,CAAC,EAAE4D,QAAQ,CAAC;UAChD,IAAI,CAACZ,KAAK,CAAC,OAAO,EAAEO,MAAM,CAAC;UAC3B,IAAI,CAACP,KAAK,CAAC,QAAQ,EAAEO,MAAM,CAAC;QAC9B;QACA;MACF;MAEA,MAAMA,MAAM,GAAG,IAAI,CAACxF,QAAQ,GAExB,IAAI,CAACiC,aAAa,CAAC6D,OAAO,CAACD,QAAQ,CAAC,KAAK,CAAC,CAAC,GACvC,IAAI,CAAC5D,aAAa,CAAC8D,MAAM,CAAC,CAACF,QAAQ,CAAC,CAAC,GACrC,IAAI,CAAC5D,aAAa,CAACwD,MAAM,CAACO,CAAC,IAAIA,CAAC,KAAKH,QAAQ,CAAC,GAElDA,QAAQ;MAEZ,IAAI,CAACZ,KAAK,CAAC,OAAO,EAAEO,MAAM,CAAC;MAC3B,IAAI,CAACxF,QAAQ,IAAI,IAAI,CAACiF,KAAK,CAAC,QAAQ,EAAEY,QAAQ,CAAC;IACjD,CAAC;IACDP,iBAAiB,GAAI;MACnB,IAAI,IAAI,CAACnE,KAAK,IAAI,IAAI,EAAE;MACxB,MAAM8E,SAAS,GAAG,IAAI,CAAC9E,KAAK,CAAC+E,WAAW,CAACxH,IAAI;MAC7C,MAAMyH,QAAQ,GAAG,IAAI,CAAC5D,UAAU,GAAG,OAAO,GAAG,QAAQ;MACrD,IAAI0D,SAAS,KAAKE,QAAQ,EAAE;QAC1B/H,WAAW,CAAE,iBAAgB,IAAI,CAACmE,UAAU,GAAG,IAAI,GAAG,GAAI,IAAG4D,QAAS,SAAQF,SAAU,EAAC,EAAE,IAAI,CAAC;MAClG;IACF,CAAC;IACDjI,aAAa,CAAEmD,KAAa,EAAW;MACrC,OAAOnD,aAAa,CAACmD,KAAK,EAAE,IAAI,CAACrB,GAAG,EAAE,IAAI,CAACD,GAAG,EAAE,IAAI,CAACf,YAAY,CAAC;IACpE,CAAC;IACDsH,SAAS,CAAEjF,KAAa,EAAE;MACxB,IAAI,CAACW,SAAS,GAAGX,KAAK;MACtB,IAAI,IAAI,CAAC/B,IAAI,KAAK,OAAO,EAAE;QACzB,IAAI,CAAC4C,SAAS,GAAI,GAAEb,KAAM,EAAC;MAC7B,CAAC,MAAM;QACL,IAAI,CAACa,SAAS,GAAI,GAAEb,KAAM,IAAG5C,GAAG,CAAC,CAAC,IAAI,CAACyE,UAAU,IAAI,CAAC,IAAI,CAAC,CAAE,EAAC;MAChE;MACA,IAAI,CAACtB,oBAAoB,GAAG,OAAO;MACnC,IAAI,IAAI,CAACjB,QAAQ,IAAI,CAAC,IAAI,CAACC,QAAQ,IAAI,CAAC,IAAI,CAAC6B,UAAU,IAAI,IAAI,CAACvE,aAAa,CAAC,IAAI,CAAC+E,SAAS,CAAC,EAAE;QAC7F,IAAI,CAACkC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAClC,SAAS,CAAC;MACrC;IACF,CAAC;IACDsD,UAAU,CAAElF,KAAa,EAAE;MACzB,MAAM,CAACqC,IAAI,EAAEW,KAAK,CAAC,GAAGhD,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC;MAEtC,IAAI,CAACnB,SAAS,GAAGwE,QAAQ,CAAC9C,IAAI,EAAE,EAAE,CAAC;MACnC,IAAI,CAAC3B,UAAU,GAAGyE,QAAQ,CAACnC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC;MAEzC,IAAI,IAAI,CAAC/E,IAAI,KAAK,MAAM,EAAE;QACxB,IAAI,IAAI,CAACwC,QAAQ,EAAE;UACjB,IAAI,CAACA,QAAQ,GAAG2E,IAAI,CAACzG,GAAG,CAAC,IAAI,CAAC8B,QAAQ,EAAEzD,WAAW,CAAC,IAAI,CAAC2D,SAAS,EAAE,IAAI,CAACD,UAAU,GAAG,CAAC,CAAC,CAAC;QAC3F;QAEA,IAAI,CAACG,SAAS,GAAGb,KAAK;QACtB,IAAI,CAACO,oBAAoB,GAAG,MAAM;QAClC,IAAI,IAAI,CAACjB,QAAQ,IAAI,CAAC,IAAI,CAACC,QAAQ,IAAI,CAAC,IAAI,CAAC6B,UAAU,IAAI,IAAI,CAACvE,aAAa,CAAC,IAAI,CAAC+E,SAAS,CAAC,EAAE;UAC7F,IAAI,CAACkC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAClC,SAAS,CAAC;QACrC;MACF,CAAC,MAAM;QACL,IAAI,CAAC6C,SAAS,CAAC,IAAI,CAAC7C,SAAS,CAAC;MAChC;IACF,CAAC;IACDyD,SAAS,CAAErF,KAAa,EAAE;MACxB,MAAM,CAACqC,IAAI,EAAEW,KAAK,EAAEE,GAAG,CAAC,GAAGlD,KAAK,CAAC8B,KAAK,CAAC,GAAG,CAAC;MAE3C,IAAI,CAACnB,SAAS,GAAGwE,QAAQ,CAAC9C,IAAI,EAAE,EAAE,CAAC;MACnC,IAAI,CAAC3B,UAAU,GAAGyE,QAAQ,CAACnC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC;MACzC,IAAI,CAACvC,QAAQ,GAAG0E,QAAQ,CAACjC,GAAG,EAAE,EAAE,CAAC;MAEjC,IAAI,CAACuB,SAAS,CAAC,IAAI,CAAC7C,SAAS,CAAC;IAChC,CAAC;IACD0D,cAAc,GAAW;MACvB,OAAO,IAAI,CAACC,cAAc,CAACjJ,gBAAgB,EAAE;QAC3CkB,KAAK,EAAE;UACLuD,IAAI,EAAE,IAAI,CAACf,KAAK,GAAI,IAAI,CAACoC,UAAU,CAACI,SAAS,CAA4B,IAAI,CAACpB,UAAU,GAAG,IAAI,CAACN,aAAa,GAAG,IAAI,CAACd,KAAK,CAAC,GAAG,EAAE;UAChIlC,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvByB,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBiG,aAAa,EAAE,IAAI,CAACjF,oBAAoB,KAAK,MAAM;UACnD8B,IAAI,EAAE,IAAI,CAACD,UAAU,CAACC,IAAI,CAAC,IAAI,CAACvB,aAAa,CAACE,MAAM,GAAI,GAAE,IAAI,CAACL,SAAU,EAAC,GAAG,IAAI,CAACE,SAAS,CAAC;UAC5FV,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBH,KAAK,EAAE,IAAI,CAACc,aAAa,CAAC,CAAC;QAC7B,CAAC;QACD2E,IAAI,EAAE,OAAO;QACbC,EAAE,EAAE;UACF,uBAAuB,EAAG1F,KAAc,IAAK,IAAI,CAACO,oBAAoB,GAAGP,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC/B,IAAI,CAACuC,WAAW;QACjH;MACF,CAAC,CAAC;IACJ,CAAC;IACDmF,cAAc,GAAW;MACvB,OAAO,IAAI,CAACJ,cAAc,CAAChJ,iBAAiB,EAAE;QAC5CiB,KAAK,EAAE;UACLsB,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvB8G,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,IAAI,EAAE,IAAI,CAACA,IAAI;UACf/H,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBgI,MAAM,EAAE,IAAI,CAACtH,gBAAgB;UAC7BuH,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBrH,GAAG,EAAE,IAAI,CAAC4B,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAACyB,QAAQ,GAAG,IAAI,CAACE,OAAO;UACxExD,GAAG,EAAE,IAAI,CAAC6B,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAAC0B,QAAQ,GAAG,IAAI,CAACE,OAAO;UACxE8D,aAAa,EAAE,IAAI,CAAC1F,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAACxB,kBAAkB,GAAG,IAAI,CAACC,iBAAiB;UACtGkH,aAAa,EAAE,IAAI,CAAC3F,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAACpB,kBAAkB,GAAG,IAAI,CAACC,iBAAiB;UACtGF,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBK,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBS,KAAK,EAAE,IAAI,CAACO,oBAAoB,KAAK,MAAM,GAAI,GAAEnD,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE,IAAG3E,GAAG,CAAC,IAAI,CAACyE,UAAU,GAAG,CAAC,CAAE,EAAC,GAAI,GAAEzE,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE;QACpI,CAAC;QACD2D,EAAE,EAAE;UACFS,MAAM,EAAE,MAAM,IAAI,CAAC5F,oBAAoB,GAAI,IAAI,CAACA,oBAAoB,KAAK,MAAM,GAAG,OAAO,GAAG,MAAO;UACnG6F,KAAK,EAAGpG,KAAa,IAAK,IAAI,CAACa,SAAS,GAAGb;QAC7C;MACF,CAAC,CAAC;IACJ,CAAC;IACDqG,YAAY,GAAW;MACrB,OAAO,IAAI,CAACd,cAAc,CAAC/I,oBAAoB,EAAE;QAC/CgB,KAAK,EAAE;UACLG,YAAY,EAAE,IAAI,CAACA,YAAY;UAC/BiI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBlE,OAAO,EAAE,IAAI,CAACA,OAAO;UACrBmE,IAAI,EAAE,IAAI,CAACA,IAAI;UACf/H,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBE,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBK,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BC,cAAc,EAAE,IAAI,CAACA,cAAc;UACnCwH,MAAM,EAAE,IAAI,CAACjI,SAAS;UACtBkI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBvH,oBAAoB,EAAE,IAAI,CAACA,oBAAoB;UAC/CE,GAAG,EAAE,IAAI,CAACA,GAAG;UACbD,GAAG,EAAE,IAAI,CAACA,GAAG;UACbW,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBE,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBC,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BG,kBAAkB,EAAE,IAAI,CAACA,kBAAkB;UAC3CC,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBiB,SAAS,EAAG,GAAEzD,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE,IAAG3E,GAAG,CAAC,IAAI,CAACyE,UAAU,GAAG,CAAC,CAAE,EAAC;UAClE7B,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,aAAa,EAAE,IAAI,CAACA;QACtB,CAAC;QACDqG,GAAG,EAAE,OAAO;QACZZ,EAAE,EAAE;UACFU,KAAK,EAAE,IAAI,CAACf,SAAS;UACrB,mBAAmB,EAAGrF,KAAa,IAAK,IAAI,CAACa,SAAS,GAAGb,KAAK;UAC9D,GAAG9C,uBAAuB,CAAC,IAAI,EAAE,OAAO;QAC1C;MACF,CAAC,CAAC;IACJ,CAAC;IACDqJ,aAAa,GAAW;MACtB,OAAO,IAAI,CAAChB,cAAc,CAAC9I,qBAAqB,EAAE;QAChDe,KAAK,EAAE;UACLG,YAAY,EAAE,IAAI,CAACM,IAAI,KAAK,OAAO,GAAG,IAAI,CAACN,YAAY,GAAG,IAAI;UAC9DiI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBlE,OAAO,EAAE,IAAI,CAACA,OAAO,GAAGrE,kBAAkB,CAAC,IAAI,CAACqE,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;UACxEmE,IAAI,EAAE,IAAI,CAACA,IAAI;UACf/H,QAAQ,EAAE,IAAI,CAACA,QAAQ;UACvBE,MAAM,EAAE,IAAI,CAACC,IAAI,KAAK,OAAO,GAAG,IAAI,CAACD,MAAM,GAAG,IAAI;UAClDK,UAAU,EAAE,IAAI,CAACJ,IAAI,KAAK,OAAO,GAAG,IAAI,CAACI,UAAU,GAAG,IAAI;UAC1DyH,MAAM,EAAE,IAAI,CAAClH,WAAW;UACxBmH,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBC,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBrH,GAAG,EAAE,IAAI,CAACqD,QAAQ;UAClBtD,GAAG,EAAE,IAAI,CAACuD,QAAQ;UAClB5C,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBE,QAAQ,EAAE,IAAI,CAACA,QAAQ,IAAI,IAAI,CAACtB,IAAI,KAAK,OAAO;UAChDuB,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BQ,KAAK,EAAE,IAAI,CAACsB,cAAc;UAC1BT,SAAS,EAAG,GAAEzD,GAAG,CAAC,IAAI,CAAC2E,SAAS,EAAE,CAAC,CAAE;QACvC,CAAC;QACDuE,GAAG,EAAE,OAAO;QACZZ,EAAE,EAAE;UACFU,KAAK,EAAE,IAAI,CAAClB,UAAU;UACtB,mBAAmB,EAAGlF,KAAa,IAAK,IAAI,CAACa,SAAS,GAAGb,KAAK;UAC9D,GAAG9C,uBAAuB,CAAC,IAAI,EAAE,QAAQ;QAC3C;MACF,CAAC,CAAC;IACJ,CAAC;IACDsJ,QAAQ,GAAW;MACjB,OAAO,IAAI,CAACjB,cAAc,CAAC7I,gBAAgB,EAAE;QAC3Cc,KAAK,EAAE;UACLoI,KAAK,EAAE,IAAI,CAACA,KAAK;UACjBE,MAAM,EAAE,IAAI,CAAC5F,UAAU;UACvB8F,MAAM,EAAE,IAAI,CAACA,MAAM;UACnBrH,GAAG,EAAE,IAAI,CAACuD,OAAO;UACjBxD,GAAG,EAAE,IAAI,CAACyD,OAAO;UACjBnC,KAAK,EAAE,IAAI,CAAC+B;QACd,CAAC;QACD2D,EAAE,EAAE;UACFU,KAAK,EAAE,IAAI,CAACnB,SAAS;UACrB,GAAG/H,uBAAuB,CAAC,IAAI,EAAE,OAAO;QAC1C;MACF,CAAC,CAAC;IACJ,CAAC;IACDuJ,aAAa,GAAW;MACtB,MAAMC,QAAQ,GAAG,IAAI,CAACnG,oBAAoB,KAAK,MAAM,GAAG,CACtD,IAAI,CAACiG,QAAQ,EAAE,CAChB,GAAG,CACF,IAAI,CAACb,cAAc,EAAE,EACrB,IAAI,CAACpF,oBAAoB,KAAK,MAAM,GAAG,IAAI,CAAC8F,YAAY,EAAE,GAAG,IAAI,CAACE,aAAa,EAAE,CAClF;MAED,OAAO,IAAI,CAAChB,cAAc,CAAC,KAAK,EAAE;QAChCoB,GAAG,EAAE,IAAI,CAACpG;MACZ,CAAC,EAAEmG,QAAQ,CAAC;IACd,CAAC;IACDtC,YAAY,GAAI;MACd,IAAI,IAAI,CAAC/C,SAAS,EAAE;QAClB,MAAMuF,KAAK,GAAG,IAAI,CAACvF,SAAS,CAACS,KAAK,CAAC,GAAG,CAAC;QACvC,IAAI,CAACnB,SAAS,GAAGwE,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvC,IAAI,CAAClG,UAAU,GAAGyE,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;QAC5C,IAAI,IAAI,CAAC3I,IAAI,KAAK,MAAM,EAAE;UACxB,IAAI,CAACwC,QAAQ,GAAG0E,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACxC;MACF,CAAC,MAAM;QACL,IAAI,CAACjG,SAAS,GAAG,IAAI,CAACA,SAAS,IAAI,IAAI,CAACN,GAAG,CAACY,WAAW,EAAE;QACzD,IAAI,CAACP,UAAU,GAAG,IAAI,CAACA,UAAU,IAAI,IAAI,GAAG,IAAI,CAACA,UAAU,GAAG,IAAI,CAACL,GAAG,CAACa,QAAQ,EAAE;QACjF,IAAI,CAACT,QAAQ,GAAG,IAAI,CAACA,QAAQ,IAAI,IAAI,CAACJ,GAAG,CAACsB,OAAO,EAAE;MACrD;IACF;EACF,CAAC;EAEDkF,MAAM,GAAW;IACf,OAAO,IAAI,CAACC,SAAS,CAAC,gBAAgB,CAAC;EACzC;AACF,CAAC,CAAC"}
@@ -1,20 +1,21 @@
1
1
  import * as vue from 'vue';
2
2
  import { PropType } from 'vue';
3
3
 
4
- interface DefaultsInstance {
4
+ declare type DefaultsInstance = undefined | {
5
5
  [key: string]: undefined | Record<string, unknown>;
6
6
  global?: Record<string, unknown>;
7
- }
7
+ };
8
+ declare type DefaultsOptions = Partial<DefaultsInstance>;
8
9
 
9
10
  declare const VDefaultsProvider: vue.DefineComponent<{
10
- defaults: PropType<Partial<DefaultsInstance>>;
11
+ defaults: PropType<DefaultsOptions>;
11
12
  reset: (StringConstructor | NumberConstructor)[];
12
13
  root: BooleanConstructor;
13
14
  scoped: BooleanConstructor;
14
15
  }, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
15
16
  [key: string]: any;
16
17
  }>[] | undefined, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
17
- defaults: PropType<Partial<DefaultsInstance>>;
18
+ defaults: PropType<DefaultsOptions>;
18
19
  reset: (StringConstructor | NumberConstructor)[];
19
20
  root: BooleanConstructor;
20
21
  scoped: BooleanConstructor;
@@ -9,7 +9,7 @@ import { VOverlay } from "../VOverlay/index.mjs"; // Composables
9
9
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
10
10
  import { useScopeId } from "../../composables/scopeId.mjs";
11
11
  import { forwardRefs } from "../../composables/forwardRefs.mjs"; // Utilities
12
- import { mergeProps, nextTick, ref, watch } from 'vue';
12
+ import { computed, mergeProps, nextTick, ref, watch } from 'vue';
13
13
  import { genericComponent, IN_BROWSER, useRender } from "../../util/index.mjs";
14
14
  import { filterVOverlayProps, makeVOverlayProps } from "../VOverlay/VOverlay.mjs"; // Types
15
15
  export const VDialog = genericComponent()({
@@ -84,6 +84,10 @@ export const VDialog = genericComponent()({
84
84
  });
85
85
  }
86
86
  });
87
+ const activatorProps = computed(() => mergeProps({
88
+ 'aria-haspopup': 'dialog',
89
+ 'aria-expanded': String(isActive.value)
90
+ }, props.activatorProps));
87
91
  useRender(() => {
88
92
  const [overlayProps] = filterVOverlayProps(props);
89
93
  return _createVNode(VOverlay, _mergeProps({
@@ -97,10 +101,7 @@ export const VDialog = genericComponent()({
97
101
  "onUpdate:modelValue": $event => isActive.value = $event,
98
102
  "aria-role": "dialog",
99
103
  "aria-modal": "true",
100
- "activatorProps": mergeProps({
101
- 'aria-haspopup': 'dialog',
102
- 'aria-expanded': String(isActive.value)
103
- }, props.activatorProps)
104
+ "activatorProps": activatorProps.value
104
105
  }, scopeId), {
105
106
  activator: slots.activator,
106
107
  default: function () {
@@ -1 +1 @@
1
- {"version":3,"file":"VDialog.mjs","names":["VDialogTransition","VDefaultsProvider","VOverlay","useProxiedModel","useScopeId","forwardRefs","mergeProps","nextTick","ref","watch","genericComponent","IN_BROWSER","useRender","filterVOverlayProps","makeVOverlayProps","VDialog","name","props","fullscreen","Boolean","retainFocus","type","default","scrollable","origin","scrollStrategy","transition","component","zIndex","emits","value","setup","slots","isActive","scopeId","overlay","onFocusin","e","before","relatedTarget","after","target","contentEl","globalTop","document","includes","contains","focusable","querySelectorAll","filter","el","hasAttribute","matches","length","firstElement","lastElement","focus","val","addEventListener","removeEventListener","immediate","preventScroll","activatorEl","overlayProps","String","activatorProps","activator","args"],"sources":["../../../src/components/VDialog/VDialog.tsx"],"sourcesContent":["// Styles\nimport './VDialog.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { mergeProps, nextTick, ref, watch } from 'vue'\nimport { genericComponent, IN_BROWSER, useRender } from '@/util'\nimport { filterVOverlayProps, makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Types\nimport type { SlotsToProps } from '@/util'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const VDialog = genericComponent<new () => {\n $props: SlotsToProps<OverlaySlots>\n}>()({\n name: 'VDialog',\n\n props: {\n fullscreen: Boolean,\n retainFocus: {\n type: Boolean,\n default: true,\n },\n scrollable: Boolean,\n\n ...makeVOverlayProps({\n origin: 'center center' as const,\n scrollStrategy: 'block' as const,\n transition: { component: VDialogTransition },\n zIndex: 2400,\n }),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const overlay = ref<VOverlay>()\n function onFocusin (e: FocusEvent) {\n const before = e.relatedTarget as HTMLElement | null\n const after = e.target as HTMLElement | null\n\n if (\n before !== after &&\n overlay.value?.contentEl &&\n // We're the topmost dialog\n overlay.value?.globalTop &&\n // It isn't the document or the dialog body\n ![document, overlay.value.contentEl].includes(after!) &&\n // It isn't inside the dialog body\n !overlay.value.contentEl.contains(after)\n ) {\n const focusable = [...overlay.value.contentEl.querySelectorAll(\n 'button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]')) as HTMLElement[]\n\n if (!focusable.length) return\n\n const firstElement = focusable[0]\n const lastElement = focusable[focusable.length - 1]\n\n if (before === firstElement) {\n lastElement.focus()\n } else {\n firstElement.focus()\n }\n }\n }\n\n if (IN_BROWSER) {\n watch(() => isActive.value && props.retainFocus, val => {\n val\n ? document.addEventListener('focusin', onFocusin)\n : document.removeEventListener('focusin', onFocusin)\n }, { immediate: true })\n }\n\n watch(isActive, async val => {\n await nextTick()\n if (val) {\n overlay.value!.contentEl?.focus({ preventScroll: true })\n } else {\n overlay.value!.activatorEl?.focus({ preventScroll: true })\n }\n })\n\n useRender(() => {\n const [overlayProps] = filterVOverlayProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n class={[\n 'v-dialog',\n {\n 'v-dialog--fullscreen': props.fullscreen,\n 'v-dialog--scrollable': props.scrollable,\n },\n ]}\n { ...overlayProps }\n v-model={ isActive.value }\n aria-role=\"dialog\"\n aria-modal=\"true\"\n activatorProps={ mergeProps({\n 'aria-haspopup': 'dialog',\n 'aria-expanded': String(isActive.value),\n }, props.activatorProps) }\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => (\n <VDefaultsProvider root>\n { slots.default?.(...args) }\n </VDefaultsProvider>\n ),\n }}\n </VOverlay>\n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VDialog = InstanceType<typeof VDialog>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VDialog.mjs","names":["VDialogTransition","VDefaultsProvider","VOverlay","useProxiedModel","useScopeId","forwardRefs","computed","mergeProps","nextTick","ref","watch","genericComponent","IN_BROWSER","useRender","filterVOverlayProps","makeVOverlayProps","VDialog","name","props","fullscreen","Boolean","retainFocus","type","default","scrollable","origin","scrollStrategy","transition","component","zIndex","emits","value","setup","slots","isActive","scopeId","overlay","onFocusin","e","before","relatedTarget","after","target","contentEl","globalTop","document","includes","contains","focusable","querySelectorAll","filter","el","hasAttribute","matches","length","firstElement","lastElement","focus","val","addEventListener","removeEventListener","immediate","preventScroll","activatorEl","activatorProps","String","overlayProps","activator","args"],"sources":["../../../src/components/VDialog/VDialog.tsx"],"sourcesContent":["// Styles\nimport './VDialog.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { forwardRefs } from '@/composables/forwardRefs'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, watch } from 'vue'\nimport { genericComponent, IN_BROWSER, useRender } from '@/util'\nimport { filterVOverlayProps, makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Types\nimport type { SlotsToProps } from '@/util'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const VDialog = genericComponent<new () => {\n $props: SlotsToProps<OverlaySlots>\n}>()({\n name: 'VDialog',\n\n props: {\n fullscreen: Boolean,\n retainFocus: {\n type: Boolean,\n default: true,\n },\n scrollable: Boolean,\n\n ...makeVOverlayProps({\n origin: 'center center' as const,\n scrollStrategy: 'block' as const,\n transition: { component: VDialogTransition },\n zIndex: 2400,\n }),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const overlay = ref<VOverlay>()\n function onFocusin (e: FocusEvent) {\n const before = e.relatedTarget as HTMLElement | null\n const after = e.target as HTMLElement | null\n\n if (\n before !== after &&\n overlay.value?.contentEl &&\n // We're the topmost dialog\n overlay.value?.globalTop &&\n // It isn't the document or the dialog body\n ![document, overlay.value.contentEl].includes(after!) &&\n // It isn't inside the dialog body\n !overlay.value.contentEl.contains(after)\n ) {\n const focusable = [...overlay.value.contentEl.querySelectorAll(\n 'button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]')) as HTMLElement[]\n\n if (!focusable.length) return\n\n const firstElement = focusable[0]\n const lastElement = focusable[focusable.length - 1]\n\n if (before === firstElement) {\n lastElement.focus()\n } else {\n firstElement.focus()\n }\n }\n }\n\n if (IN_BROWSER) {\n watch(() => isActive.value && props.retainFocus, val => {\n val\n ? document.addEventListener('focusin', onFocusin)\n : document.removeEventListener('focusin', onFocusin)\n }, { immediate: true })\n }\n\n watch(isActive, async val => {\n await nextTick()\n if (val) {\n overlay.value!.contentEl?.focus({ preventScroll: true })\n } else {\n overlay.value!.activatorEl?.focus({ preventScroll: true })\n }\n })\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-haspopup': 'dialog',\n 'aria-expanded': String(isActive.value),\n }, props.activatorProps)\n )\n\n useRender(() => {\n const [overlayProps] = filterVOverlayProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n class={[\n 'v-dialog',\n {\n 'v-dialog--fullscreen': props.fullscreen,\n 'v-dialog--scrollable': props.scrollable,\n },\n ]}\n { ...overlayProps }\n v-model={ isActive.value }\n aria-role=\"dialog\"\n aria-modal=\"true\"\n activatorProps={ activatorProps.value }\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => (\n <VDefaultsProvider root>\n { slots.default?.(...args) }\n </VDefaultsProvider>\n ),\n }}\n </VOverlay>\n )\n })\n\n return forwardRefs({}, overlay)\n },\n})\n\nexport type VDialog = InstanceType<typeof VDialog>\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as vue from 'vue';
2
- import { Ref, VNodeChild, nextTick } from 'vue';
2
+ import { Ref, EffectScope, VNodeChild, nextTick } from 'vue';
3
3
 
4
4
  interface ScrollStrategyData {
5
5
  root: Ref<HTMLElement | undefined>;
@@ -8,7 +8,7 @@ interface ScrollStrategyData {
8
8
  isActive: Ref<boolean>;
9
9
  updateLocation: Ref<((e: Event) => void) | undefined>;
10
10
  }
11
- declare type ScrollStrategyFn = (data: ScrollStrategyData, props: StrategyProps$1) => void;
11
+ declare type ScrollStrategyFn = (data: ScrollStrategyData, props: StrategyProps$1, scope: EffectScope) => void;
12
12
  declare const scrollStrategies: {
13
13
  none: null;
14
14
  close: typeof closeScrollStrategy;
@@ -21,7 +21,24 @@ interface StrategyProps$1 {
21
21
  }
22
22
  declare function closeScrollStrategy(data: ScrollStrategyData): void;
23
23
  declare function blockScrollStrategy(data: ScrollStrategyData, props: StrategyProps$1): void;
24
- declare function repositionScrollStrategy(data: ScrollStrategyData): void;
24
+ declare function repositionScrollStrategy(data: ScrollStrategyData, props: StrategyProps$1, scope: EffectScope): void;
25
+
26
+ declare class Box {
27
+ x: number;
28
+ y: number;
29
+ width: number;
30
+ height: number;
31
+ constructor({ x, y, width, height }: {
32
+ x: number;
33
+ y: number;
34
+ width: number;
35
+ height: number;
36
+ });
37
+ get top(): number;
38
+ get bottom(): number;
39
+ get left(): number;
40
+ get right(): number;
41
+ }
25
42
 
26
43
  declare const block: readonly ["top", "bottom"];
27
44
  declare const inline: readonly ["start", "end", "left", "right"];
@@ -69,7 +86,13 @@ interface StrategyProps {
69
86
  }
70
87
  declare function staticLocationStrategy(): void;
71
88
  declare function connectedLocationStrategy(data: LocationStrategyData, props: StrategyProps, contentStyles: Ref<Record<string, string>>): {
72
- updateLocation: () => void;
89
+ updateLocation: () => {
90
+ available: {
91
+ x: number;
92
+ y: number;
93
+ };
94
+ contentBox: Box;
95
+ } | undefined;
73
96
  };
74
97
 
75
98
  declare type OverlaySlots = MakeSlots<{
@@ -111,7 +134,7 @@ declare const VDialog: {
111
134
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
112
135
  updateLocation: (e: Event) => void;
113
136
  } | undefined);
114
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
137
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
115
138
  closeOnBack: boolean;
116
139
  contained: boolean;
117
140
  noClickAnimation: boolean;
@@ -149,12 +172,12 @@ declare const VDialog: {
149
172
  };
150
173
  theme: StringConstructor;
151
174
  scrollStrategy: Omit<{
152
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
175
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
153
176
  default: string;
154
177
  validator: (val: any) => boolean;
155
178
  }, "type" | "default"> & {
156
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
157
- default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
179
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
180
+ default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
158
181
  };
159
182
  locationStrategy: {
160
183
  type: vue.PropType<"connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
@@ -274,12 +297,12 @@ declare const VDialog: {
274
297
  };
275
298
  theme: StringConstructor;
276
299
  scrollStrategy: Omit<{
277
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
300
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
278
301
  default: string;
279
302
  validator: (val: any) => boolean;
280
303
  }, "type" | "default"> & {
281
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
282
- default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
304
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
305
+ default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
283
306
  };
284
307
  locationStrategy: {
285
308
  type: vue.PropType<"connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
@@ -378,7 +401,7 @@ declare const VDialog: {
378
401
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
379
402
  updateLocation: (e: Event) => void;
380
403
  } | undefined);
381
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
404
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
382
405
  closeOnBack: boolean;
383
406
  contained: boolean;
384
407
  noClickAnimation: boolean;
@@ -395,7 +418,7 @@ declare const VDialog: {
395
418
  };
396
419
  theme: StringConstructor;
397
420
  scrollStrategy: {
398
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
421
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
399
422
  default: string;
400
423
  validator: (val: any) => boolean;
401
424
  };
@@ -489,7 +512,7 @@ declare const VDialog: {
489
512
  };
490
513
  theme: StringConstructor;
491
514
  scrollStrategy: {
492
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
515
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
493
516
  default: string;
494
517
  validator: (val: any) => boolean;
495
518
  };
@@ -589,7 +612,7 @@ declare const VDialog: {
589
612
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
590
613
  updateLocation: (e: Event) => void;
591
614
  } | undefined);
592
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
615
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
593
616
  closeOnBack: boolean;
594
617
  contained: boolean;
595
618
  noClickAnimation: boolean;
@@ -626,7 +649,7 @@ declare const VDialog: {
626
649
  };
627
650
  theme: StringConstructor;
628
651
  scrollStrategy: {
629
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
652
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
630
653
  default: string;
631
654
  validator: (val: any) => boolean;
632
655
  };
@@ -759,7 +782,7 @@ declare const VDialog: {
759
782
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
760
783
  updateLocation: (e: Event) => void;
761
784
  } | undefined);
762
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
785
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
763
786
  closeOnBack: boolean;
764
787
  contained: boolean;
765
788
  noClickAnimation: boolean;
@@ -817,12 +840,12 @@ declare const VDialog: {
817
840
  };
818
841
  theme: StringConstructor;
819
842
  scrollStrategy: Omit<{
820
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
843
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
821
844
  default: string;
822
845
  validator: (val: any) => boolean;
823
846
  }, "type" | "default"> & {
824
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
825
- default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
847
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
848
+ default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
826
849
  };
827
850
  locationStrategy: {
828
851
  type: vue.PropType<"connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
@@ -921,7 +944,7 @@ declare const VDialog: {
921
944
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
922
945
  updateLocation: (e: Event) => void;
923
946
  } | undefined);
924
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
947
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
925
948
  closeOnBack: boolean;
926
949
  contained: boolean;
927
950
  noClickAnimation: boolean;
@@ -938,7 +961,7 @@ declare const VDialog: {
938
961
  };
939
962
  theme: StringConstructor;
940
963
  scrollStrategy: {
941
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
964
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
942
965
  default: string;
943
966
  validator: (val: any) => boolean;
944
967
  };
@@ -1032,7 +1055,7 @@ declare const VDialog: {
1032
1055
  };
1033
1056
  theme: StringConstructor;
1034
1057
  scrollStrategy: {
1035
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1058
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1036
1059
  default: string;
1037
1060
  validator: (val: any) => boolean;
1038
1061
  };
@@ -1132,7 +1155,7 @@ declare const VDialog: {
1132
1155
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1133
1156
  updateLocation: (e: Event) => void;
1134
1157
  } | undefined);
1135
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1158
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1136
1159
  closeOnBack: boolean;
1137
1160
  contained: boolean;
1138
1161
  noClickAnimation: boolean;
@@ -1169,7 +1192,7 @@ declare const VDialog: {
1169
1192
  };
1170
1193
  theme: StringConstructor;
1171
1194
  scrollStrategy: {
1172
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1195
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1173
1196
  default: string;
1174
1197
  validator: (val: any) => boolean;
1175
1198
  };
@@ -1308,12 +1331,12 @@ declare const VDialog: {
1308
1331
  };
1309
1332
  theme: StringConstructor;
1310
1333
  scrollStrategy: Omit<{
1311
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1334
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1312
1335
  default: string;
1313
1336
  validator: (val: any) => boolean;
1314
1337
  }, "type" | "default"> & {
1315
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1316
- default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1338
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1339
+ default: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1317
1340
  };
1318
1341
  locationStrategy: {
1319
1342
  type: vue.PropType<"connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
@@ -1412,7 +1435,7 @@ declare const VDialog: {
1412
1435
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1413
1436
  updateLocation: (e: Event) => void;
1414
1437
  } | undefined);
1415
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1438
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1416
1439
  closeOnBack: boolean;
1417
1440
  contained: boolean;
1418
1441
  noClickAnimation: boolean;
@@ -1429,7 +1452,7 @@ declare const VDialog: {
1429
1452
  };
1430
1453
  theme: StringConstructor;
1431
1454
  scrollStrategy: {
1432
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1455
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1433
1456
  default: string;
1434
1457
  validator: (val: any) => boolean;
1435
1458
  };
@@ -1523,7 +1546,7 @@ declare const VDialog: {
1523
1546
  };
1524
1547
  theme: StringConstructor;
1525
1548
  scrollStrategy: {
1526
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1549
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1527
1550
  default: string;
1528
1551
  validator: (val: any) => boolean;
1529
1552
  };
@@ -1623,7 +1646,7 @@ declare const VDialog: {
1623
1646
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1624
1647
  updateLocation: (e: Event) => void;
1625
1648
  } | undefined);
1626
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1649
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1627
1650
  closeOnBack: boolean;
1628
1651
  contained: boolean;
1629
1652
  noClickAnimation: boolean;
@@ -1660,7 +1683,7 @@ declare const VDialog: {
1660
1683
  };
1661
1684
  theme: StringConstructor;
1662
1685
  scrollStrategy: {
1663
- type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition">;
1686
+ type: vue.PropType<"none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition">;
1664
1687
  default: string;
1665
1688
  validator: (val: any) => boolean;
1666
1689
  };
@@ -1793,7 +1816,7 @@ declare const VDialog: {
1793
1816
  locationStrategy: "connected" | "static" | ((data: LocationStrategyData, props: StrategyProps, contentStyles: vue.Ref<Record<string, string>>) => {
1794
1817
  updateLocation: (e: Event) => void;
1795
1818
  } | undefined);
1796
- scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1) => void) | "reposition";
1819
+ scrollStrategy: "none" | "block" | "close" | ((data: ScrollStrategyData, props: StrategyProps$1, scope: vue.EffectScope) => void) | "reposition";
1797
1820
  closeOnBack: boolean;
1798
1821
  contained: boolean;
1799
1822
  noClickAnimation: boolean;
@@ -4,7 +4,7 @@ import "./VDivider.css";
4
4
 
5
5
  // Composables
6
6
  import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
7
- import { useBackgroundColor } from "../../composables/color.mjs"; // Utilities
7
+ import { useTextColor } from "../../composables/color.mjs"; // Utilities
8
8
  import { computed, toRef } from 'vue';
9
9
  import { convertToUnit, defineComponent, useRender } from "../../util/index.mjs"; // Types
10
10
  export const VDivider = defineComponent({
@@ -25,9 +25,9 @@ export const VDivider = defineComponent({
25
25
  themeClasses
26
26
  } = provideTheme(props);
27
27
  const {
28
- backgroundColorClasses,
29
- backgroundColorStyles
30
- } = useBackgroundColor(toRef(props, 'color'));
28
+ textColorClasses,
29
+ textColorStyles
30
+ } = useTextColor(toRef(props, 'color'));
31
31
  const dividerStyles = computed(() => {
32
32
  const styles = {};
33
33
  if (props.length) {
@@ -43,8 +43,8 @@ export const VDivider = defineComponent({
43
43
  'v-divider': true,
44
44
  'v-divider--inset': props.inset,
45
45
  'v-divider--vertical': props.vertical
46
- }, themeClasses.value, backgroundColorClasses.value],
47
- "style": [dividerStyles.value, backgroundColorStyles.value],
46
+ }, themeClasses.value, textColorClasses.value],
47
+ "style": [dividerStyles.value, textColorStyles.value],
48
48
  "aria-orientation": !attrs.role || attrs.role === 'separator' ? props.vertical ? 'vertical' : 'horizontal' : undefined,
49
49
  "role": `${attrs.role || 'separator'}`
50
50
  }, null));