{"version":3,"file":"calendar-base.mjs","names":["mixins","Colorable","Localable","Mouse","Themeable","Times","Resize","props","parseTimestamp","getWeekdaySkips","createDayList","createNativeLocaleFormatter","getStartOfWeek","getEndOfWeek","getTimestampIdentifier","extend","name","directives","base","computed","parsedWeekdays","Array","isArray","weekdays","split","map","x","parseInt","weekdaySkips","weekdaySkipsReverse","reversed","slice","reverse","parsedStart","start","parsedEnd","end","days","times","today","dayFormatter","dayFormat","options","timeZone","day","currentLocale","_tms","_short","weekdayFormatter","weekdayFormat","longOptions","weekday","shortOptions","short","methods","getRelativeClasses","timestamp","outside","arguments","length","undefined","present","past","future","getFormatter","locale"],"sources":["../../../../src/components/VCalendar/mixins/calendar-base.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n\n// Mixins\nimport mixins from '../../../util/mixins'\nimport Colorable from '../../../mixins/colorable'\nimport Localable from '../../../mixins/localable'\nimport Mouse from './mouse'\nimport Themeable from '../../../mixins/themeable'\nimport Times from './times'\n\n// Directives\nimport Resize from '../../../directives/resize'\n\n// Util\nimport props from '../util/props'\nimport {\n  parseTimestamp,\n  getWeekdaySkips,\n  createDayList,\n  createNativeLocaleFormatter,\n  getStartOfWeek,\n  getEndOfWeek,\n  getTimestampIdentifier,\n} from '../util/timestamp'\nimport { CalendarTimestamp, CalendarFormatter } from 'vuetify/types'\n\nexport default mixins(\n  Colorable,\n  Localable,\n  Mouse,\n  Themeable,\n  Times\n/* @vue/component */\n).extend({\n  name: 'calendar-base',\n\n  directives: {\n    Resize,\n  },\n\n  props: props.base,\n\n  computed: {\n    parsedWeekdays (): number[] {\n      return Array.isArray(this.weekdays)\n        ? this.weekdays\n        : (this.weekdays || '').split(',').map(x => parseInt(x, 10))\n    },\n    weekdaySkips (): number[] {\n      return getWeekdaySkips(this.parsedWeekdays)\n    },\n    weekdaySkipsReverse (): number [] {\n      const reversed = this.weekdaySkips.slice()\n      reversed.reverse()\n      return reversed\n    },\n    parsedStart (): CalendarTimestamp {\n      return parseTimestamp(this.start, true)\n    },\n    parsedEnd (): CalendarTimestamp {\n      const start = this.parsedStart\n      const end: CalendarTimestamp = this.end ? parseTimestamp(this.end) || start : start\n\n      return getTimestampIdentifier(end) < getTimestampIdentifier(start) ? start : end\n    },\n    days (): CalendarTimestamp[] {\n      return createDayList(\n        this.parsedStart,\n        this.parsedEnd,\n        this.times.today,\n        this.weekdaySkips\n      )\n    },\n    dayFormatter (): CalendarFormatter {\n      if (this.dayFormat) {\n        return this.dayFormat as CalendarFormatter\n      }\n\n      const options = { timeZone: 'UTC', day: 'numeric' }\n\n      return createNativeLocaleFormatter(\n        this.currentLocale,\n        (_tms, _short) => options\n      )\n    },\n    weekdayFormatter (): CalendarFormatter {\n      if (this.weekdayFormat) {\n        return this.weekdayFormat as CalendarFormatter\n      }\n\n      const longOptions = { timeZone: 'UTC', weekday: 'long' }\n      const shortOptions = { timeZone: 'UTC', weekday: 'short' }\n\n      return createNativeLocaleFormatter(\n        this.currentLocale,\n        (_tms, short) => short ? shortOptions : longOptions\n      )\n    },\n  },\n\n  methods: {\n    getRelativeClasses (timestamp: CalendarTimestamp, outside = false): object {\n      return {\n        'v-present': timestamp.present,\n        'v-past': timestamp.past,\n        'v-future': timestamp.future,\n        'v-outside': outside,\n      }\n    },\n    getStartOfWeek (timestamp: CalendarTimestamp): CalendarTimestamp {\n      return getStartOfWeek(timestamp, this.parsedWeekdays, this.times.today)\n    },\n    getEndOfWeek (timestamp: CalendarTimestamp): CalendarTimestamp {\n      return getEndOfWeek(timestamp, this.parsedWeekdays, this.times.today)\n    },\n    getFormatter (options: object): CalendarFormatter {\n      return createNativeLocaleFormatter(\n        this.locale,\n        (_tms, _short) => options\n      )\n    },\n  },\n})\n"],"mappings":"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"}