@vuetify/nightly 3.9.0-beta.1-dev.2025-06-26 → 3.9.0-beta.1-dev.2025-07-02
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.
- package/CHANGELOG.md +105 -3
- package/dist/_component-variables-labs.sass +1 -0
- package/dist/json/attributes.json +2814 -2754
- package/dist/json/importMap-labs.json +16 -12
- package/dist/json/importMap.json +174 -174
- package/dist/json/tags.json +20 -0
- package/dist/json/web-types.json +5362 -5196
- package/dist/vuetify-labs.cjs +796 -64
- package/dist/vuetify-labs.css +3440 -3189
- package/dist/vuetify-labs.d.ts +452 -206
- package/dist/vuetify-labs.esm.js +796 -65
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +796 -64
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +378 -40
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3377 -3368
- package/dist/vuetify.d.ts +82 -62
- package/dist/vuetify.esm.js +378 -41
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +378 -40
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +312 -274
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VDataTable/VDataTableColumn.js +0 -1
- package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.js +5 -5
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDataTable/composables/sort.js +2 -1
- package/lib/components/VDataTable/composables/sort.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.js +1 -2
- package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
- package/lib/components/VKbd/VKbd.css +14 -5
- package/lib/components/VKbd/VKbd.js.map +1 -1
- package/lib/components/VKbd/VKbd.scss +26 -0
- package/lib/components/VKbd/_variables.scss +12 -6
- package/lib/components/VKbd/index.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +17 -14
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverlay/locationStrategies.js +1 -1
- package/lib/components/VOverlay/locationStrategies.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +1 -1
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/composables/calendar.d.ts +0 -1
- package/lib/composables/calendar.js +6 -10
- package/lib/composables/calendar.js.map +1 -1
- package/lib/composables/date/adapters/vuetify.js +1 -1
- package/lib/composables/date/adapters/vuetify.js.map +1 -1
- package/lib/composables/hotkey/hotkey-parsing.d.ts +15 -0
- package/lib/composables/hotkey/hotkey-parsing.js +154 -0
- package/lib/composables/hotkey/hotkey-parsing.js.map +1 -0
- package/lib/composables/hotkey/hotkey.d.ts +9 -0
- package/lib/composables/{hotkey.js → hotkey/hotkey.js} +31 -39
- package/lib/composables/hotkey/hotkey.js.map +1 -0
- package/lib/composables/hotkey/index.d.ts +1 -0
- package/lib/composables/hotkey/index.js +2 -0
- package/lib/composables/hotkey/index.js.map +1 -0
- package/lib/composables/hotkey/key-aliases.d.ts +14 -0
- package/lib/composables/hotkey/key-aliases.js +38 -0
- package/lib/composables/hotkey/key-aliases.js.map +1 -0
- package/lib/composables/icons.d.ts +11 -0
- package/lib/composables/icons.js.map +1 -1
- package/lib/composables/index.d.ts +1 -0
- package/lib/composables/index.js +1 -0
- package/lib/composables/index.js.map +1 -1
- package/lib/composables/virtual.js +1 -1
- package/lib/composables/virtual.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +83 -62
- package/lib/framework.js +1 -1
- package/lib/iconsets/fa.js +12 -1
- package/lib/iconsets/fa.js.map +1 -1
- package/lib/iconsets/fa4.js +12 -1
- package/lib/iconsets/fa4.js.map +1 -1
- package/lib/iconsets/md.js +12 -1
- package/lib/iconsets/md.js.map +1 -1
- package/lib/iconsets/mdi-svg.js +12 -1
- package/lib/iconsets/mdi-svg.js.map +1 -1
- package/lib/iconsets/mdi.js +12 -1
- package/lib/iconsets/mdi.js.map +1 -1
- package/lib/labs/VCalendar/VCalendar.d.ts +33 -33
- package/lib/labs/VCalendar/VCalendar.js +9 -9
- package/lib/labs/VCalendar/VCalendar.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarDay.d.ts +33 -33
- package/lib/labs/VCalendar/VCalendarDay.js +1 -1
- package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarInterval.d.ts +36 -36
- package/lib/labs/VCalendar/VCalendarInterval.js +9 -9
- package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.d.ts +12 -12
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarMonthDay.d.ts +36 -36
- package/lib/labs/VCalendar/VCalendarMonthDay.js +4 -4
- package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
- package/lib/labs/VHotkey/VHotkey.css +242 -0
- package/lib/labs/VHotkey/VHotkey.d.ts +387 -0
- package/lib/labs/VHotkey/VHotkey.js +432 -0
- package/lib/labs/VHotkey/VHotkey.js.map +1 -0
- package/lib/labs/VHotkey/VHotkey.scss +253 -0
- package/lib/labs/VHotkey/_variables.scss +43 -0
- package/lib/labs/VHotkey/index.d.ts +1 -0
- package/lib/labs/VHotkey/index.js +2 -0
- package/lib/labs/VHotkey/index.js.map +1 -0
- package/lib/labs/VIconBtn/VIconBtn.js +1 -0
- package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
- package/lib/labs/components.d.ts +1 -0
- package/lib/labs/components.js +1 -0
- package/lib/labs/components.js.map +1 -1
- package/lib/locale/af.d.ts +18 -0
- package/lib/locale/af.js +18 -0
- package/lib/locale/af.js.map +1 -1
- package/lib/locale/ar.d.ts +18 -0
- package/lib/locale/ar.js +18 -0
- package/lib/locale/ar.js.map +1 -1
- package/lib/locale/az.d.ts +18 -0
- package/lib/locale/az.js +18 -0
- package/lib/locale/az.js.map +1 -1
- package/lib/locale/bg.d.ts +18 -0
- package/lib/locale/bg.js +18 -0
- package/lib/locale/bg.js.map +1 -1
- package/lib/locale/ca.d.ts +18 -0
- package/lib/locale/ca.js +18 -0
- package/lib/locale/ca.js.map +1 -1
- package/lib/locale/ckb.d.ts +18 -0
- package/lib/locale/ckb.js +18 -0
- package/lib/locale/ckb.js.map +1 -1
- package/lib/locale/cs.d.ts +18 -0
- package/lib/locale/cs.js +18 -0
- package/lib/locale/cs.js.map +1 -1
- package/lib/locale/da.d.ts +18 -0
- package/lib/locale/da.js +18 -0
- package/lib/locale/da.js.map +1 -1
- package/lib/locale/de.d.ts +18 -0
- package/lib/locale/de.js +18 -0
- package/lib/locale/de.js.map +1 -1
- package/lib/locale/el.d.ts +18 -0
- package/lib/locale/el.js +18 -0
- package/lib/locale/el.js.map +1 -1
- package/lib/locale/en.d.ts +18 -0
- package/lib/locale/en.js +18 -0
- package/lib/locale/en.js.map +1 -1
- package/lib/locale/es.d.ts +18 -0
- package/lib/locale/es.js +18 -0
- package/lib/locale/es.js.map +1 -1
- package/lib/locale/et.d.ts +18 -0
- package/lib/locale/et.js +18 -0
- package/lib/locale/et.js.map +1 -1
- package/lib/locale/fa.d.ts +18 -0
- package/lib/locale/fa.js +18 -0
- package/lib/locale/fa.js.map +1 -1
- package/lib/locale/fi.d.ts +18 -0
- package/lib/locale/fi.js +18 -0
- package/lib/locale/fi.js.map +1 -1
- package/lib/locale/fr.d.ts +18 -0
- package/lib/locale/fr.js +18 -0
- package/lib/locale/fr.js.map +1 -1
- package/lib/locale/he.d.ts +18 -0
- package/lib/locale/he.js +18 -0
- package/lib/locale/he.js.map +1 -1
- package/lib/locale/hr.d.ts +18 -0
- package/lib/locale/hr.js +18 -0
- package/lib/locale/hr.js.map +1 -1
- package/lib/locale/hu.d.ts +18 -0
- package/lib/locale/hu.js +18 -0
- package/lib/locale/hu.js.map +1 -1
- package/lib/locale/id.d.ts +18 -0
- package/lib/locale/id.js +18 -0
- package/lib/locale/id.js.map +1 -1
- package/lib/locale/it.d.ts +18 -0
- package/lib/locale/it.js +18 -0
- package/lib/locale/it.js.map +1 -1
- package/lib/locale/ja.d.ts +18 -0
- package/lib/locale/ja.js +18 -0
- package/lib/locale/ja.js.map +1 -1
- package/lib/locale/km.d.ts +18 -0
- package/lib/locale/km.js +18 -0
- package/lib/locale/km.js.map +1 -1
- package/lib/locale/ko.d.ts +18 -0
- package/lib/locale/ko.js +18 -0
- package/lib/locale/ko.js.map +1 -1
- package/lib/locale/lt.d.ts +18 -0
- package/lib/locale/lt.js +18 -0
- package/lib/locale/lt.js.map +1 -1
- package/lib/locale/lv.d.ts +18 -0
- package/lib/locale/lv.js +18 -0
- package/lib/locale/lv.js.map +1 -1
- package/lib/locale/nl.d.ts +18 -0
- package/lib/locale/nl.js +18 -0
- package/lib/locale/nl.js.map +1 -1
- package/lib/locale/no.d.ts +18 -0
- package/lib/locale/no.js +18 -0
- package/lib/locale/no.js.map +1 -1
- package/lib/locale/pl.d.ts +18 -0
- package/lib/locale/pl.js +18 -0
- package/lib/locale/pl.js.map +1 -1
- package/lib/locale/pt.d.ts +18 -0
- package/lib/locale/pt.js +18 -0
- package/lib/locale/pt.js.map +1 -1
- package/lib/locale/ro.d.ts +18 -0
- package/lib/locale/ro.js +18 -0
- package/lib/locale/ro.js.map +1 -1
- package/lib/locale/ru.d.ts +18 -0
- package/lib/locale/ru.js +18 -0
- package/lib/locale/ru.js.map +1 -1
- package/lib/locale/sk.d.ts +18 -0
- package/lib/locale/sk.js +18 -0
- package/lib/locale/sk.js.map +1 -1
- package/lib/locale/sl.d.ts +18 -0
- package/lib/locale/sl.js +18 -0
- package/lib/locale/sl.js.map +1 -1
- package/lib/locale/sr-Cyrl.d.ts +18 -0
- package/lib/locale/sr-Cyrl.js +18 -0
- package/lib/locale/sr-Cyrl.js.map +1 -1
- package/lib/locale/sr-Latn.d.ts +18 -0
- package/lib/locale/sr-Latn.js +18 -0
- package/lib/locale/sr-Latn.js.map +1 -1
- package/lib/locale/sv.d.ts +18 -0
- package/lib/locale/sv.js +18 -0
- package/lib/locale/sv.js.map +1 -1
- package/lib/locale/th.d.ts +18 -0
- package/lib/locale/th.js +18 -0
- package/lib/locale/th.js.map +1 -1
- package/lib/locale/tr.d.ts +18 -0
- package/lib/locale/tr.js +18 -0
- package/lib/locale/tr.js.map +1 -1
- package/lib/locale/uk.d.ts +18 -0
- package/lib/locale/uk.js +18 -0
- package/lib/locale/uk.js.map +1 -1
- package/lib/locale/vi.d.ts +18 -0
- package/lib/locale/vi.js +18 -0
- package/lib/locale/vi.js.map +1 -1
- package/lib/locale/zh-Hans.d.ts +18 -0
- package/lib/locale/zh-Hans.js +18 -0
- package/lib/locale/zh-Hans.js.map +1 -1
- package/lib/locale/zh-Hant.d.ts +18 -0
- package/lib/locale/zh-Hant.js +18 -0
- package/lib/locale/zh-Hant.js.map +1 -1
- package/package.json +1 -1
- package/lib/components/VKbd/VKbd.sass +0 -15
- package/lib/composables/hotkey.d.ts +0 -9
- package/lib/composables/hotkey.js.map +0 -1
@@ -75,13 +75,13 @@ export const VCalendarInterval = genericComponent()({
|
|
75
75
|
"style": _normalizeStyle(`height: ${convertToUnit(props.intervalHeight)}`)
|
76
76
|
}, [_createElementVNode("div", _mergeProps({
|
77
77
|
"class": "v-calendar-day__row-label"
|
78
|
-
}, getPrefixedEventHandlers(attrs, ':time', () => props)), [slots
|
78
|
+
}, getPrefixedEventHandlers(attrs, ':time', () => props)), [slots['interval-title']?.({
|
79
79
|
interval: interval.value
|
80
80
|
}) ?? (props.index ? props.intervalFormat ? typeof props.intervalFormat === 'string' ? adapter.format(interval.value.start, 'hours12h') : props.intervalFormat(interval.value) : interval.value.label : '12 AM')]), _createElementVNode("div", {
|
81
81
|
"class": "v-calendar-day__row-hairline"
|
82
82
|
}, null), _createElementVNode("div", _mergeProps({
|
83
83
|
"class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
|
84
|
-
}, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots
|
84
|
+
}, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots['interval-body']?.({
|
85
85
|
interval: interval.value
|
86
86
|
}) ?? _createElementVNode("div", null, [interval.value.events?.map(event => _createVNode(VCalendarIntervalEvent, _mergeProps({
|
87
87
|
"event": event,
|
@@ -90,8 +90,8 @@ export const VCalendarInterval = genericComponent()({
|
|
90
90
|
"intervalDuration": props.intervalDuration,
|
91
91
|
"intervalHeight": props.intervalHeight
|
92
92
|
}, attrs), {
|
93
|
-
...(slots
|
94
|
-
|
93
|
+
...(slots['interval-event'] ? {
|
94
|
+
'interval-event': _ref2 => {
|
95
95
|
let {
|
96
96
|
height,
|
97
97
|
margin,
|
@@ -99,7 +99,7 @@ export const VCalendarInterval = genericComponent()({
|
|
99
99
|
event,
|
100
100
|
interval
|
101
101
|
} = _ref2;
|
102
|
-
return slots
|
102
|
+
return slots['interval-event']?.({
|
103
103
|
height,
|
104
104
|
margin,
|
105
105
|
eventClass,
|
@@ -113,7 +113,7 @@ export const VCalendarInterval = genericComponent()({
|
|
113
113
|
"style": _normalizeStyle(`height: ${convertToUnit(props.intervalHeight)}`)
|
114
114
|
}, [_createElementVNode("div", _mergeProps({
|
115
115
|
"class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
|
116
|
-
}, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots
|
116
|
+
}, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots['interval-body']?.({
|
117
117
|
interval: interval.value
|
118
118
|
}) ?? interval.value.events?.map(event => _createVNode(VCalendarIntervalEvent, _mergeProps({
|
119
119
|
"event": event,
|
@@ -122,8 +122,8 @@ export const VCalendarInterval = genericComponent()({
|
|
122
122
|
"intervalDuration": props.intervalDuration,
|
123
123
|
"intervalHeight": props.intervalHeight
|
124
124
|
}, attrs), {
|
125
|
-
...(slots
|
126
|
-
|
125
|
+
...(slots['interval-event'] ? {
|
126
|
+
'interval-event': _ref3 => {
|
127
127
|
let {
|
128
128
|
height,
|
129
129
|
margin,
|
@@ -131,7 +131,7 @@ export const VCalendarInterval = genericComponent()({
|
|
131
131
|
event,
|
132
132
|
interval
|
133
133
|
} = _ref3;
|
134
|
-
return slots
|
134
|
+
return slots['interval-event']?.({
|
135
135
|
height,
|
136
136
|
margin,
|
137
137
|
eventClass,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VCalendarInterval.js","names":["VCalendarIntervalEvent","useDate","computed","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalProps","day","type","Object","default","dayIndex","Number","events","Array","intervalDivisions","intervalDuration","intervalHeight","intervalFormat","String","Function","intervalStart","VCalendarInterval","name","inheritAttrs","props","index","required","setup","_ref","attrs","emit","slots","adapter","interval","start","addMinutes","startOfDay","date","end","label","format","filter","e","allDay","isEqual","isWithinRange","map","first","last","_createElementVNode","_normalizeStyle","_mergeProps","intervalTitle","value","some","intervalBody","event","_createVNode","intervalEvent","_ref2","height","margin","eventClass","_ref3"],"sources":["../../../src/labs/VCalendar/VCalendarInterval.tsx"],"sourcesContent":["// Styles\nimport './VCalendarInterval.sass'\n\n// Components\nimport { VCalendarIntervalEvent } from './VCalendarIntervalEvent'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\ntype Interval = {\n label: string\n start: unknown\n end: unknown\n events: any[]\n}\n\nexport type VCalendarIntervalSlots = {\n intervalBody: { interval: Interval }\n intervalEvent: {\n height: string\n margin: string\n eventClass: string\n event: any\n interval: Interval\n }\n intervalTitle: { interval: Interval }\n}\n\nexport const makeVCalendarIntervalProps = propsFactory({\n day: {\n type: Object,\n default: () => ({}),\n },\n dayIndex: Number,\n events: Array<any>,\n intervalDivisions: {\n type: Number,\n default: 2,\n },\n intervalDuration: {\n type: Number,\n default: 60,\n },\n intervalHeight: {\n type: Number,\n default: 48,\n },\n intervalFormat: {\n type: [String, Function],\n default: 'fullTime12h',\n },\n intervalStart: {\n type: Number,\n default: 0,\n },\n}, 'VCalendarInterval')\n\nexport const VCalendarInterval = genericComponent<VCalendarIntervalSlots>()({\n name: 'VCalendarInterval',\n\n inheritAttrs: false,\n\n props: {\n index: {\n type: Number,\n required: true,\n },\n\n ...makeVCalendarIntervalProps(),\n },\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const interval = computed(() => {\n const start = adapter.addMinutes(adapter.startOfDay(props.day.date), (props.intervalDuration * (props.index + props.intervalStart)))\n const end = adapter.addMinutes(\n adapter.startOfDay(props.day.date),\n (props.intervalDuration * (props.index + props.intervalStart + 1)) - 1\n )\n return {\n ...props.day,\n label: adapter.format(start, 'fullTime24h'),\n start,\n end,\n events: props.events\n ? props.events\n .filter(e => !e.allDay &&\n (adapter.isEqual(start, e.start) ||\n adapter.isWithinRange(e.start, [start, end]) ||\n adapter.isWithinRange(start, [e.start, e.end]) ||\n adapter.isEqual(end, e.end))\n )\n .map(e => {\n return {\n ...e,\n first: adapter.isEqual(start, e.start) || adapter.isWithinRange(e.start, [start, end]),\n last: adapter.isEqual(end, e.end) || adapter.isWithinRange(e.end, [start, end]),\n }\n })\n : [],\n }\n })\n\n useRender(() => {\n return (\n props.dayIndex === 0 ? (\n <div class=\"v-calendar-day__row-with-label\" style={ `height: ${convertToUnit(props.intervalHeight)}` }>\n <div\n class=\"v-calendar-day__row-label\"\n { ...getPrefixedEventHandlers(attrs, ':time', () => props) }\n >\n {\n slots.intervalTitle?.({ interval: interval.value }) ?? (\n props.index\n ? props.intervalFormat\n ? typeof props.intervalFormat === 'string'\n ? adapter.format(interval.value.start, 'hours12h')\n : props.intervalFormat(interval.value)\n : interval.value.label\n : '12 AM'\n )\n }\n </div>\n <div class=\"v-calendar-day__row-hairline\"></div>\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through'\n : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots.intervalBody?.({ interval: interval.value }) ?? (\n <div>\n {\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots.intervalEvent ? {\n intervalEvent: ({ height, margin, eventClass, event, interval }) => (\n slots.intervalEvent?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n }\n </div>\n )\n }\n </div>\n </div>\n ) : (\n <div\n class=\"v-calendar-day__row-without-label\"\n style={ `height: ${convertToUnit(props.intervalHeight)}` }\n >\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through' : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots.intervalBody?.({ interval: interval.value }) ?? (\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots.intervalEvent ? {\n intervalEvent: ({ height, margin, eventClass, event, interval }) => (\n slots.intervalEvent?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n )\n }\n </div>\n </div>\n )\n )\n })\n\n return { interval }\n },\n})\n\nexport type VCalendarInterval = InstanceType<typeof VCalendarInterval>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VCalendarInterval.js","names":["VCalendarIntervalEvent","useDate","computed","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalProps","day","type","Object","default","dayIndex","Number","events","Array","intervalDivisions","intervalDuration","intervalHeight","intervalFormat","String","Function","intervalStart","VCalendarInterval","name","inheritAttrs","props","index","required","setup","_ref","attrs","emit","slots","adapter","interval","start","addMinutes","startOfDay","date","end","label","format","filter","e","allDay","isEqual","isWithinRange","map","first","last","_createElementVNode","_normalizeStyle","_mergeProps","value","some","event","_createVNode","_ref2","height","margin","eventClass","_ref3"],"sources":["../../../src/labs/VCalendar/VCalendarInterval.tsx"],"sourcesContent":["// Styles\nimport './VCalendarInterval.sass'\n\n// Components\nimport { VCalendarIntervalEvent } from './VCalendarIntervalEvent'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\ntype Interval = {\n label: string\n start: unknown\n end: unknown\n events: any[]\n}\n\nexport type VCalendarIntervalSlots = {\n 'interval-body': { interval: Interval }\n 'interval-event': {\n height: string\n margin: string\n eventClass: string\n event: any\n interval: Interval\n }\n 'interval-title': { interval: Interval }\n}\n\nexport const makeVCalendarIntervalProps = propsFactory({\n day: {\n type: Object,\n default: () => ({}),\n },\n dayIndex: Number,\n events: Array<any>,\n intervalDivisions: {\n type: Number,\n default: 2,\n },\n intervalDuration: {\n type: Number,\n default: 60,\n },\n intervalHeight: {\n type: Number,\n default: 48,\n },\n intervalFormat: {\n type: [String, Function],\n default: 'fullTime12h',\n },\n intervalStart: {\n type: Number,\n default: 0,\n },\n}, 'VCalendarInterval')\n\nexport const VCalendarInterval = genericComponent<VCalendarIntervalSlots>()({\n name: 'VCalendarInterval',\n\n inheritAttrs: false,\n\n props: {\n index: {\n type: Number,\n required: true,\n },\n\n ...makeVCalendarIntervalProps(),\n },\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const interval = computed(() => {\n const start = adapter.addMinutes(adapter.startOfDay(props.day.date), (props.intervalDuration * (props.index + props.intervalStart)))\n const end = adapter.addMinutes(\n adapter.startOfDay(props.day.date),\n (props.intervalDuration * (props.index + props.intervalStart + 1)) - 1\n )\n return {\n ...props.day,\n label: adapter.format(start, 'fullTime24h'),\n start,\n end,\n events: props.events\n ? props.events\n .filter(e => !e.allDay &&\n (adapter.isEqual(start, e.start) ||\n adapter.isWithinRange(e.start, [start, end]) ||\n adapter.isWithinRange(start, [e.start, e.end]) ||\n adapter.isEqual(end, e.end))\n )\n .map(e => {\n return {\n ...e,\n first: adapter.isEqual(start, e.start) || adapter.isWithinRange(e.start, [start, end]),\n last: adapter.isEqual(end, e.end) || adapter.isWithinRange(e.end, [start, end]),\n }\n })\n : [],\n }\n })\n\n useRender(() => {\n return (\n props.dayIndex === 0 ? (\n <div class=\"v-calendar-day__row-with-label\" style={ `height: ${convertToUnit(props.intervalHeight)}` }>\n <div\n class=\"v-calendar-day__row-label\"\n { ...getPrefixedEventHandlers(attrs, ':time', () => props) }\n >\n {\n slots['interval-title']?.({ interval: interval.value }) ?? (\n props.index\n ? props.intervalFormat\n ? typeof props.intervalFormat === 'string'\n ? adapter.format(interval.value.start, 'hours12h')\n : props.intervalFormat(interval.value)\n : interval.value.label\n : '12 AM'\n )\n }\n </div>\n <div class=\"v-calendar-day__row-hairline\"></div>\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through'\n : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots['interval-body']?.({ interval: interval.value }) ?? (\n <div>\n {\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots['interval-event'] ? {\n 'interval-event': ({ height, margin, eventClass, event, interval }) => (\n slots['interval-event']?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n }\n </div>\n )\n }\n </div>\n </div>\n ) : (\n <div\n class=\"v-calendar-day__row-without-label\"\n style={ `height: ${convertToUnit(props.intervalHeight)}` }\n >\n <div\n class={['v-calendar-day__row-content', interval.value.events.some(e => !e.last)\n ? 'v-calendar-day__row-content-through' : '']}\n { ...getPrefixedEventHandlers(attrs, ':interval', () => interval.value) }\n >\n {\n slots['interval-body']?.({ interval: interval.value }) ?? (\n interval.value.events?.map(event => (\n <VCalendarIntervalEvent\n event={ event }\n interval={ interval.value }\n intervalDivisions={ props.intervalDivisions }\n intervalDuration={ props.intervalDuration }\n intervalHeight={ props.intervalHeight }\n { ...attrs }\n >\n {{\n ...(slots['interval-event'] ? {\n 'interval-event': ({ height, margin, eventClass, event, interval }) => (\n slots['interval-event']?.({ height, margin, eventClass, event, interval })\n ),\n } : {}),\n }}\n </VCalendarIntervalEvent>\n ))\n )\n }\n </div>\n </div>\n )\n )\n })\n\n return { interval }\n },\n})\n\nexport type VCalendarInterval = InstanceType<typeof VCalendarInterval>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,sBAAsB,uCAE/B;AAAA,SACSC,OAAO,2CAEhB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,aAAa,EAAEC,gBAAgB,EAAEC,wBAAwB,EAAEC,YAAY,EAAEC,SAAS;AAqB3F,OAAO,MAAMC,0BAA0B,GAAGF,YAAY,CAAC;EACrDG,GAAG,EAAE;IACHC,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAEA,CAAA,MAAO,CAAC,CAAC;EACpB,CAAC;EACDC,QAAQ,EAAEC,MAAM;EAChBC,MAAM,EAAEC,KAAU;EAClBC,iBAAiB,EAAE;IACjBP,IAAI,EAAEI,MAAM;IACZF,OAAO,EAAE;EACX,CAAC;EACDM,gBAAgB,EAAE;IAChBR,IAAI,EAAEI,MAAM;IACZF,OAAO,EAAE;EACX,CAAC;EACDO,cAAc,EAAE;IACdT,IAAI,EAAEI,MAAM;IACZF,OAAO,EAAE;EACX,CAAC;EACDQ,cAAc,EAAE;IACdV,IAAI,EAAE,CAACW,MAAM,EAAEC,QAAQ,CAAC;IACxBV,OAAO,EAAE;EACX,CAAC;EACDW,aAAa,EAAE;IACbb,IAAI,EAAEI,MAAM;IACZF,OAAO,EAAE;EACX;AACF,CAAC,EAAE,mBAAmB,CAAC;AAEvB,OAAO,MAAMY,iBAAiB,GAAGpB,gBAAgB,CAAyB,CAAC,CAAC;EAC1EqB,IAAI,EAAE,mBAAmB;EAEzBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACLC,KAAK,EAAE;MACLlB,IAAI,EAAEI,MAAM;MACZe,QAAQ,EAAE;IACZ,CAAC;IAED,GAAGrB,0BAA0B,CAAC;EAChC,CAAC;EAEDsB,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAA0B;IAAA,IAAxB;MAAEC,KAAK;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAAH,IAAA;IAClC,MAAMI,OAAO,GAAGlC,OAAO,CAAC,CAAC;IACzB,MAAMmC,QAAQ,GAAGlC,QAAQ,CAAC,MAAM;MAC9B,MAAMmC,KAAK,GAAGF,OAAO,CAACG,UAAU,CAACH,OAAO,CAACI,UAAU,CAACZ,KAAK,CAAClB,GAAG,CAAC+B,IAAI,CAAC,EAAGb,KAAK,CAACT,gBAAgB,IAAIS,KAAK,CAACC,KAAK,GAAGD,KAAK,CAACJ,aAAa,CAAE,CAAC;MACpI,MAAMkB,GAAG,GAAGN,OAAO,CAACG,UAAU,CAC5BH,OAAO,CAACI,UAAU,CAACZ,KAAK,CAAClB,GAAG,CAAC+B,IAAI,CAAC,EACjCb,KAAK,CAACT,gBAAgB,IAAIS,KAAK,CAACC,KAAK,GAAGD,KAAK,CAACJ,aAAa,GAAG,CAAC,CAAC,GAAI,CACvE,CAAC;MACD,OAAO;QACL,GAAGI,KAAK,CAAClB,GAAG;QACZiC,KAAK,EAAEP,OAAO,CAACQ,MAAM,CAACN,KAAK,EAAE,aAAa,CAAC;QAC3CA,KAAK;QACLI,GAAG;QACH1B,MAAM,EAAEY,KAAK,CAACZ,MAAM,GAChBY,KAAK,CAACZ,MAAM,CACX6B,MAAM,CAACC,CAAC,IAAI,CAACA,CAAC,CAACC,MAAM,KACnBX,OAAO,CAACY,OAAO,CAACV,KAAK,EAAEQ,CAAC,CAACR,KAAK,CAAC,IAChCF,OAAO,CAACa,aAAa,CAACH,CAAC,CAACR,KAAK,EAAE,CAACA,KAAK,EAAEI,GAAG,CAAC,CAAC,IAC5CN,OAAO,CAACa,aAAa,CAACX,KAAK,EAAE,CAACQ,CAAC,CAACR,KAAK,EAAEQ,CAAC,CAACJ,GAAG,CAAC,CAAC,IAC9CN,OAAO,CAACY,OAAO,CAACN,GAAG,EAAEI,CAAC,CAACJ,GAAG,CAAC,CAC7B,CAAC,CACAQ,GAAG,CAACJ,CAAC,IAAI;UACR,OAAO;YACL,GAAGA,CAAC;YACJK,KAAK,EAAEf,OAAO,CAACY,OAAO,CAACV,KAAK,EAAEQ,CAAC,CAACR,KAAK,CAAC,IAAIF,OAAO,CAACa,aAAa,CAACH,CAAC,CAACR,KAAK,EAAE,CAACA,KAAK,EAAEI,GAAG,CAAC,CAAC;YACtFU,IAAI,EAAEhB,OAAO,CAACY,OAAO,CAACN,GAAG,EAAEI,CAAC,CAACJ,GAAG,CAAC,IAAIN,OAAO,CAACa,aAAa,CAACH,CAAC,CAACJ,GAAG,EAAE,CAACJ,KAAK,EAAEI,GAAG,CAAC;UAChF,CAAC;QACH,CAAC,CAAC,GACF;MACN,CAAC;IACH,CAAC,CAAC;IAEFlC,SAAS,CAAC,MAAM;MACd,OACEoB,KAAK,CAACd,QAAQ,KAAK,CAAC,GAAAuC,mBAAA;QAAA;QAAA,SAAAC,eAAA,CACkC,WAAWlD,aAAa,CAACwB,KAAK,CAACR,cAAc,CAAC,EAAE;MAAA,IAAAiC,mBAAA,QAAAE,WAAA;QAAA;MAAA,GAG3FjD,wBAAwB,CAAC2B,KAAK,EAAE,OAAO,EAAE,MAAML,KAAK,CAAC,IAGxDO,KAAK,CAAC,gBAAgB,CAAC,GAAG;QAAEE,QAAQ,EAAEA,QAAQ,CAACmB;MAAM,CAAC,CAAC,KACrD5B,KAAK,CAACC,KAAK,GACPD,KAAK,CAACP,cAAc,GAClB,OAAOO,KAAK,CAACP,cAAc,KAAK,QAAQ,GACtCe,OAAO,CAACQ,MAAM,CAACP,QAAQ,CAACmB,KAAK,CAAClB,KAAK,EAAE,UAAU,CAAC,GAChDV,KAAK,CAACP,cAAc,CAACgB,QAAQ,CAACmB,KAAK,CAAC,GACtCnB,QAAQ,CAACmB,KAAK,CAACb,KAAK,GACtB,OAAO,CACZ,IAAAU,mBAAA;QAAA;MAAA,UAAAA,mBAAA,QAAAE,WAAA;QAAA,SAKI,CAAC,6BAA6B,EAAElB,QAAQ,CAACmB,KAAK,CAACxC,MAAM,CAACyC,IAAI,CAACX,CAAC,IAAI,CAACA,CAAC,CAACM,IAAI,CAAC,GAC3E,qCAAqC,GACrC,EAAE;MAAC,GACF9C,wBAAwB,CAAC2B,KAAK,EAAE,WAAW,EAAE,MAAMI,QAAQ,CAACmB,KAAK,CAAC,IAGrErB,KAAK,CAAC,eAAe,CAAC,GAAG;QAAEE,QAAQ,EAAEA,QAAQ,CAACmB;MAAM,CAAC,CAAC,IAAAH,mBAAA,eAGhDhB,QAAQ,CAACmB,KAAK,CAACxC,MAAM,EAAEkC,GAAG,CAACQ,KAAK,IAAAC,YAAA,CAAA1D,sBAAA,EAAAsD,WAAA;QAAA,SAEpBG,KAAK;QAAA,YACFrB,QAAQ,CAACmB,KAAK;QAAA,qBACL5B,KAAK,CAACV,iBAAiB;QAAA,oBACxBU,KAAK,CAACT,gBAAgB;QAAA,kBACxBS,KAAK,CAACR;MAAc,GAChCa,KAAK;QAGR,IAAIE,KAAK,CAAC,gBAAgB,CAAC,GAAG;UAC5B,gBAAgB,EAAEyB,KAAA;YAAA,IAAC;cAAEC,MAAM;cAAEC,MAAM;cAAEC,UAAU;cAAEL,KAAK;cAAErB;YAAS,CAAC,GAAAuB,KAAA;YAAA,OAChEzB,KAAK,CAAC,gBAAgB,CAAC,GAAG;cAAE0B,MAAM;cAAEC,MAAM;cAAEC,UAAU;cAAEL,KAAK;cAAErB;YAAS,CAAC,CAAC;UAAA;QAE9E,CAAC,GAAG,CAAC,CAAC;MAAC,EAGZ,CAAC,EAGP,OAAAgB,mBAAA;QAAA;QAAA,SAAAC,eAAA,CAOG,WAAWlD,aAAa,CAACwB,KAAK,CAACR,cAAc,CAAC,EAAE;MAAA,IAAAiC,mBAAA,QAAAE,WAAA;QAAA,SAG/C,CAAC,6BAA6B,EAAElB,QAAQ,CAACmB,KAAK,CAACxC,MAAM,CAACyC,IAAI,CAACX,CAAC,IAAI,CAACA,CAAC,CAACM,IAAI,CAAC,GAC3E,qCAAqC,GAAG,EAAE;MAAC,GAC1C9C,wBAAwB,CAAC2B,KAAK,EAAE,WAAW,EAAE,MAAMI,QAAQ,CAACmB,KAAK,CAAC,IAGrErB,KAAK,CAAC,eAAe,CAAC,GAAG;QAAEE,QAAQ,EAAEA,QAAQ,CAACmB;MAAM,CAAC,CAAC,IACpDnB,QAAQ,CAACmB,KAAK,CAACxC,MAAM,EAAEkC,GAAG,CAACQ,KAAK,IAAAC,YAAA,CAAA1D,sBAAA,EAAAsD,WAAA;QAAA,SAEpBG,KAAK;QAAA,YACFrB,QAAQ,CAACmB,KAAK;QAAA,qBACL5B,KAAK,CAACV,iBAAiB;QAAA,oBACxBU,KAAK,CAACT,gBAAgB;QAAA,kBACxBS,KAAK,CAACR;MAAc,GAChCa,KAAK;QAGR,IAAIE,KAAK,CAAC,gBAAgB,CAAC,GAAG;UAC5B,gBAAgB,EAAE6B,KAAA;YAAA,IAAC;cAAEH,MAAM;cAAEC,MAAM;cAAEC,UAAU;cAAEL,KAAK;cAAErB;YAAS,CAAC,GAAA2B,KAAA;YAAA,OAChE7B,KAAK,CAAC,gBAAgB,CAAC,GAAG;cAAE0B,MAAM;cAAEC,MAAM;cAAEC,UAAU;cAAEL,KAAK;cAAErB;YAAS,CAAC,CAAC;UAAA;QAE9E,CAAC,GAAG,CAAC,CAAC;MAAC,EAGZ,CACF,IAIR;IAEL,CAAC,CAAC;IAEF,OAAO;MAAEA;IAAS,CAAC;EACrB;AACF,CAAC,CAAC","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
export type VCalendarIntervalEventSlots = {
|
2
|
-
|
2
|
+
'interval-event': {
|
3
3
|
height: string;
|
4
4
|
margin: string;
|
5
5
|
eventClass: string;
|
@@ -69,7 +69,7 @@ export declare const VCalendarIntervalEvent: {
|
|
69
69
|
event?: Record<string, any> | undefined;
|
70
70
|
} & {
|
71
71
|
$children?: {} | import("vue").VNodeChild | {
|
72
|
-
|
72
|
+
'interval-event'?: ((arg: {
|
73
73
|
height: string;
|
74
74
|
margin: string;
|
75
75
|
eventClass: string;
|
@@ -78,7 +78,7 @@ export declare const VCalendarIntervalEvent: {
|
|
78
78
|
}) => import("vue").VNodeChild) | undefined;
|
79
79
|
};
|
80
80
|
'v-slots'?: {
|
81
|
-
|
81
|
+
'interval-event'?: false | ((arg: {
|
82
82
|
height: string;
|
83
83
|
margin: string;
|
84
84
|
eventClass: string;
|
@@ -87,7 +87,7 @@ export declare const VCalendarIntervalEvent: {
|
|
87
87
|
}) => import("vue").VNodeChild) | undefined;
|
88
88
|
} | undefined;
|
89
89
|
} & {
|
90
|
-
"v-slot:
|
90
|
+
"v-slot:interval-event"?: false | ((arg: {
|
91
91
|
height: string;
|
92
92
|
margin: string;
|
93
93
|
eventClass: string;
|
@@ -97,7 +97,7 @@ export declare const VCalendarIntervalEvent: {
|
|
97
97
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {
|
98
98
|
allDay: boolean;
|
99
99
|
}, true, {}, import("vue").SlotsType<Partial<{
|
100
|
-
|
100
|
+
'interval-event': (arg: {
|
101
101
|
height: string;
|
102
102
|
margin: string;
|
103
103
|
eventClass: string;
|
@@ -121,7 +121,7 @@ export declare const VCalendarIntervalEvent: {
|
|
121
121
|
event?: Record<string, any> | undefined;
|
122
122
|
} & {
|
123
123
|
$children?: {} | import("vue").VNodeChild | {
|
124
|
-
|
124
|
+
'interval-event'?: ((arg: {
|
125
125
|
height: string;
|
126
126
|
margin: string;
|
127
127
|
eventClass: string;
|
@@ -130,7 +130,7 @@ export declare const VCalendarIntervalEvent: {
|
|
130
130
|
}) => import("vue").VNodeChild) | undefined;
|
131
131
|
};
|
132
132
|
'v-slots'?: {
|
133
|
-
|
133
|
+
'interval-event'?: false | ((arg: {
|
134
134
|
height: string;
|
135
135
|
margin: string;
|
136
136
|
eventClass: string;
|
@@ -139,7 +139,7 @@ export declare const VCalendarIntervalEvent: {
|
|
139
139
|
}) => import("vue").VNodeChild) | undefined;
|
140
140
|
} | undefined;
|
141
141
|
} & {
|
142
|
-
"v-slot:
|
142
|
+
"v-slot:interval-event"?: false | ((arg: {
|
143
143
|
height: string;
|
144
144
|
margin: string;
|
145
145
|
eventClass: string;
|
@@ -162,7 +162,7 @@ export declare const VCalendarIntervalEvent: {
|
|
162
162
|
event?: Record<string, any> | undefined;
|
163
163
|
} & {
|
164
164
|
$children?: {} | import("vue").VNodeChild | {
|
165
|
-
|
165
|
+
'interval-event'?: ((arg: {
|
166
166
|
height: string;
|
167
167
|
margin: string;
|
168
168
|
eventClass: string;
|
@@ -171,7 +171,7 @@ export declare const VCalendarIntervalEvent: {
|
|
171
171
|
}) => import("vue").VNodeChild) | undefined;
|
172
172
|
};
|
173
173
|
'v-slots'?: {
|
174
|
-
|
174
|
+
'interval-event'?: false | ((arg: {
|
175
175
|
height: string;
|
176
176
|
margin: string;
|
177
177
|
eventClass: string;
|
@@ -180,7 +180,7 @@ export declare const VCalendarIntervalEvent: {
|
|
180
180
|
}) => import("vue").VNodeChild) | undefined;
|
181
181
|
} | undefined;
|
182
182
|
} & {
|
183
|
-
"v-slot:
|
183
|
+
"v-slot:interval-event"?: false | ((arg: {
|
184
184
|
height: string;
|
185
185
|
margin: string;
|
186
186
|
eventClass: string;
|
@@ -190,7 +190,7 @@ export declare const VCalendarIntervalEvent: {
|
|
190
190
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
|
191
191
|
allDay: boolean;
|
192
192
|
}, {}, string, import("vue").SlotsType<Partial<{
|
193
|
-
|
193
|
+
'interval-event': (arg: {
|
194
194
|
height: string;
|
195
195
|
margin: string;
|
196
196
|
eventClass: string;
|
@@ -68,7 +68,7 @@ export const VCalendarIntervalEvent = genericComponent()({
|
|
68
68
|
}
|
69
69
|
};
|
70
70
|
useRender(() => {
|
71
|
-
return _createElementVNode("div", null, [slots
|
71
|
+
return _createElementVNode("div", null, [slots['interval-event']?.({
|
72
72
|
height: calcHeight().height,
|
73
73
|
margin: calcHeight().margin,
|
74
74
|
eventClass: 'v-calendar-internal-event',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VCalendarIntervalEvent.js","names":["VSheet","useDate","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalEventProps","allDay","Boolean","interval","Object","intervalDivisions","type","Number","required","intervalDuration","intervalHeight","event","VCalendarIntervalEvent","name","inheritAttrs","props","setup","_ref","attrs","emit","slots","adapter","calcHeight","first","last","isEqual","end","height","margin","Array","from","length","_","x","reduce","total","div","index","isBefore","addMinutes","start","_createElementVNode","
|
1
|
+
{"version":3,"file":"VCalendarIntervalEvent.js","names":["VSheet","useDate","convertToUnit","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarIntervalEventProps","allDay","Boolean","interval","Object","intervalDivisions","type","Number","required","intervalDuration","intervalHeight","event","VCalendarIntervalEvent","name","inheritAttrs","props","setup","_ref","attrs","emit","slots","adapter","calcHeight","first","last","isEqual","end","height","margin","Array","from","length","_","x","reduce","total","div","index","isBefore","addMinutes","start","_createElementVNode","eventClass","_createVNode","_mergeProps","color","undefined","day","default","title"],"sources":["../../../src/labs/VCalendar/VCalendarIntervalEvent.tsx"],"sourcesContent":["// Styles\nimport './VCalendarIntervalEvent.sass'\n\n// Components\nimport { VSheet } from '@/components/VSheet'\n\n// Composables\nimport { useDate } from '@/composables/date'\n\n// Utilities\nimport { convertToUnit, genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\nexport type VCalendarIntervalEventSlots = {\n 'interval-event': { height: string, margin: string, eventClass: string, event: any, interval: any }\n}\n\nexport const makeVCalendarIntervalEventProps = propsFactory({\n allDay: Boolean,\n interval: Object,\n intervalDivisions: {\n type: Number,\n required: true,\n },\n intervalDuration: {\n type: Number,\n required: true,\n },\n intervalHeight: {\n type: Number,\n required: true,\n },\n event: Object,\n}, 'VCalendarIntervalEvent')\n\nexport const VCalendarIntervalEvent = genericComponent<VCalendarIntervalEventSlots>()({\n name: 'VCalendarIntervalEvent',\n\n inheritAttrs: false,\n\n props: makeVCalendarIntervalEventProps(),\n\n setup (props, { attrs, emit, slots }) {\n const adapter = useDate()\n const calcHeight = () => {\n if ((!props.event?.first && !props.event?.last) || adapter.isEqual(props.event?.end, props.interval?.end)) {\n return { height: `${props.intervalHeight}px`, margin: convertToUnit(0) }\n } else {\n const { height, margin } = Array.from({ length: props.intervalDivisions },\n (_, x: number) => (x + 1) * (props.intervalDuration / props.intervalDivisions)\n )\n .reduce((total, div, index) => {\n if (adapter.isBefore(adapter.addMinutes(props.interval?.start, div), props.event?.end)) {\n return {\n height: convertToUnit((props.intervalHeight / props.intervalDivisions) * index),\n margin: convertToUnit((props.intervalHeight / props.intervalDivisions) * index),\n }\n }\n return { height: total.height, margin: total.margin }\n }, { height: '', margin: '' })\n return { height, margin }\n }\n }\n\n useRender(() => {\n return (\n <div>\n {\n slots['interval-event']?.({\n height: calcHeight().height,\n margin: calcHeight().margin,\n eventClass: 'v-calendar-internal-event',\n event: props.event,\n interval: props.interval,\n }) ?? (\n <VSheet\n height={ calcHeight().height }\n density=\"comfortable\"\n style={ `margin-top: ${calcHeight().margin}` }\n class=\"v-calendar-internal-event\"\n color={ props.event?.color ?? undefined }\n rounded={\n props.event?.first && props.event?.last ? true\n : props.event?.first ? 't'\n : props.event?.last ? 'b'\n : false\n }\n { ...getPrefixedEventHandlers(attrs, ':event', () => ({\n event: props.event,\n allDay: false,\n day: null,\n interval: props.interval,\n intervalDivisions: props.intervalDivisions,\n intervalDuration: props.intervalDuration,\n intervalHeight: props.intervalHeight,\n }))}\n >\n { props.event?.first ? props.event?.title : '' }\n </VSheet>\n )\n }\n </div>\n )\n })\n\n return {}\n },\n\n})\n\nexport type VCalendarIntervalEvent = InstanceType<typeof VCalendarIntervalEvent>\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,16 +1,16 @@
|
|
1
1
|
import type { PropType } from 'vue';
|
2
2
|
import type { CalendarDay } from "../../composables/calendar.js";
|
3
3
|
export type VCalendarMonthDaySlots = {
|
4
|
-
|
4
|
+
'day-body': {
|
5
5
|
day?: CalendarDay;
|
6
6
|
events?: Array<any>;
|
7
7
|
};
|
8
|
-
|
8
|
+
'day-event': {
|
9
9
|
day?: CalendarDay;
|
10
10
|
allDay: boolean;
|
11
11
|
event: Record<string, unknown>;
|
12
12
|
};
|
13
|
-
|
13
|
+
'day-title': {
|
14
14
|
title?: number | string;
|
15
15
|
};
|
16
16
|
};
|
@@ -77,60 +77,60 @@ export declare const VCalendarMonthDay: {
|
|
77
77
|
events?: any[] | undefined;
|
78
78
|
} & {
|
79
79
|
$children?: {} | import("vue").VNodeChild | {
|
80
|
-
|
80
|
+
'day-body'?: ((arg: {
|
81
81
|
day?: CalendarDay;
|
82
82
|
events?: Array<any>;
|
83
83
|
}) => import("vue").VNodeChild) | undefined;
|
84
|
-
|
84
|
+
'day-event'?: ((arg: {
|
85
85
|
day?: CalendarDay;
|
86
86
|
allDay: boolean;
|
87
87
|
event: Record<string, unknown>;
|
88
88
|
}) => import("vue").VNodeChild) | undefined;
|
89
|
-
|
89
|
+
'day-title'?: ((arg: {
|
90
90
|
title?: number | string;
|
91
91
|
}) => import("vue").VNodeChild) | undefined;
|
92
92
|
};
|
93
93
|
'v-slots'?: {
|
94
|
-
|
94
|
+
'day-body'?: false | ((arg: {
|
95
95
|
day?: CalendarDay;
|
96
96
|
events?: Array<any>;
|
97
97
|
}) => import("vue").VNodeChild) | undefined;
|
98
|
-
|
98
|
+
'day-event'?: false | ((arg: {
|
99
99
|
day?: CalendarDay;
|
100
100
|
allDay: boolean;
|
101
101
|
event: Record<string, unknown>;
|
102
102
|
}) => import("vue").VNodeChild) | undefined;
|
103
|
-
|
103
|
+
'day-title'?: false | ((arg: {
|
104
104
|
title?: number | string;
|
105
105
|
}) => import("vue").VNodeChild) | undefined;
|
106
106
|
} | undefined;
|
107
107
|
} & {
|
108
|
-
"v-slot:
|
108
|
+
"v-slot:day-body"?: false | ((arg: {
|
109
109
|
day?: CalendarDay;
|
110
110
|
events?: Array<any>;
|
111
111
|
}) => import("vue").VNodeChild) | undefined;
|
112
|
-
"v-slot:
|
112
|
+
"v-slot:day-event"?: false | ((arg: {
|
113
113
|
day?: CalendarDay;
|
114
114
|
allDay: boolean;
|
115
115
|
event: Record<string, unknown>;
|
116
116
|
}) => import("vue").VNodeChild) | undefined;
|
117
|
-
"v-slot:
|
117
|
+
"v-slot:day-title"?: false | ((arg: {
|
118
118
|
title?: number | string;
|
119
119
|
}) => import("vue").VNodeChild) | undefined;
|
120
120
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {
|
121
121
|
active: boolean;
|
122
122
|
disabled: boolean;
|
123
123
|
}, true, {}, import("vue").SlotsType<Partial<{
|
124
|
-
|
124
|
+
'day-body': (arg: {
|
125
125
|
day?: CalendarDay;
|
126
126
|
events?: Array<any>;
|
127
127
|
}) => import("vue").VNode[];
|
128
|
-
|
128
|
+
'day-event': (arg: {
|
129
129
|
day?: CalendarDay;
|
130
130
|
allDay: boolean;
|
131
131
|
event: Record<string, unknown>;
|
132
132
|
}) => import("vue").VNode[];
|
133
|
-
|
133
|
+
'day-title': (arg: {
|
134
134
|
title?: number | string;
|
135
135
|
}) => import("vue").VNode[];
|
136
136
|
}>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
@@ -150,44 +150,44 @@ export declare const VCalendarMonthDay: {
|
|
150
150
|
events?: any[] | undefined;
|
151
151
|
} & {
|
152
152
|
$children?: {} | import("vue").VNodeChild | {
|
153
|
-
|
153
|
+
'day-body'?: ((arg: {
|
154
154
|
day?: CalendarDay;
|
155
155
|
events?: Array<any>;
|
156
156
|
}) => import("vue").VNodeChild) | undefined;
|
157
|
-
|
157
|
+
'day-event'?: ((arg: {
|
158
158
|
day?: CalendarDay;
|
159
159
|
allDay: boolean;
|
160
160
|
event: Record<string, unknown>;
|
161
161
|
}) => import("vue").VNodeChild) | undefined;
|
162
|
-
|
162
|
+
'day-title'?: ((arg: {
|
163
163
|
title?: number | string;
|
164
164
|
}) => import("vue").VNodeChild) | undefined;
|
165
165
|
};
|
166
166
|
'v-slots'?: {
|
167
|
-
|
167
|
+
'day-body'?: false | ((arg: {
|
168
168
|
day?: CalendarDay;
|
169
169
|
events?: Array<any>;
|
170
170
|
}) => import("vue").VNodeChild) | undefined;
|
171
|
-
|
171
|
+
'day-event'?: false | ((arg: {
|
172
172
|
day?: CalendarDay;
|
173
173
|
allDay: boolean;
|
174
174
|
event: Record<string, unknown>;
|
175
175
|
}) => import("vue").VNodeChild) | undefined;
|
176
|
-
|
176
|
+
'day-title'?: false | ((arg: {
|
177
177
|
title?: number | string;
|
178
178
|
}) => import("vue").VNodeChild) | undefined;
|
179
179
|
} | undefined;
|
180
180
|
} & {
|
181
|
-
"v-slot:
|
181
|
+
"v-slot:day-body"?: false | ((arg: {
|
182
182
|
day?: CalendarDay;
|
183
183
|
events?: Array<any>;
|
184
184
|
}) => import("vue").VNodeChild) | undefined;
|
185
|
-
"v-slot:
|
185
|
+
"v-slot:day-event"?: false | ((arg: {
|
186
186
|
day?: CalendarDay;
|
187
187
|
allDay: boolean;
|
188
188
|
event: Record<string, unknown>;
|
189
189
|
}) => import("vue").VNodeChild) | undefined;
|
190
|
-
"v-slot:
|
190
|
+
"v-slot:day-title"?: false | ((arg: {
|
191
191
|
title?: number | string;
|
192
192
|
}) => import("vue").VNodeChild) | undefined;
|
193
193
|
}, {}, {}, {}, {}, {
|
@@ -207,60 +207,60 @@ export declare const VCalendarMonthDay: {
|
|
207
207
|
events?: any[] | undefined;
|
208
208
|
} & {
|
209
209
|
$children?: {} | import("vue").VNodeChild | {
|
210
|
-
|
210
|
+
'day-body'?: ((arg: {
|
211
211
|
day?: CalendarDay;
|
212
212
|
events?: Array<any>;
|
213
213
|
}) => import("vue").VNodeChild) | undefined;
|
214
|
-
|
214
|
+
'day-event'?: ((arg: {
|
215
215
|
day?: CalendarDay;
|
216
216
|
allDay: boolean;
|
217
217
|
event: Record<string, unknown>;
|
218
218
|
}) => import("vue").VNodeChild) | undefined;
|
219
|
-
|
219
|
+
'day-title'?: ((arg: {
|
220
220
|
title?: number | string;
|
221
221
|
}) => import("vue").VNodeChild) | undefined;
|
222
222
|
};
|
223
223
|
'v-slots'?: {
|
224
|
-
|
224
|
+
'day-body'?: false | ((arg: {
|
225
225
|
day?: CalendarDay;
|
226
226
|
events?: Array<any>;
|
227
227
|
}) => import("vue").VNodeChild) | undefined;
|
228
|
-
|
228
|
+
'day-event'?: false | ((arg: {
|
229
229
|
day?: CalendarDay;
|
230
230
|
allDay: boolean;
|
231
231
|
event: Record<string, unknown>;
|
232
232
|
}) => import("vue").VNodeChild) | undefined;
|
233
|
-
|
233
|
+
'day-title'?: false | ((arg: {
|
234
234
|
title?: number | string;
|
235
235
|
}) => import("vue").VNodeChild) | undefined;
|
236
236
|
} | undefined;
|
237
237
|
} & {
|
238
|
-
"v-slot:
|
238
|
+
"v-slot:day-body"?: false | ((arg: {
|
239
239
|
day?: CalendarDay;
|
240
240
|
events?: Array<any>;
|
241
241
|
}) => import("vue").VNodeChild) | undefined;
|
242
|
-
"v-slot:
|
242
|
+
"v-slot:day-event"?: false | ((arg: {
|
243
243
|
day?: CalendarDay;
|
244
244
|
allDay: boolean;
|
245
245
|
event: Record<string, unknown>;
|
246
246
|
}) => import("vue").VNodeChild) | undefined;
|
247
|
-
"v-slot:
|
247
|
+
"v-slot:day-title"?: false | ((arg: {
|
248
248
|
title?: number | string;
|
249
249
|
}) => import("vue").VNodeChild) | undefined;
|
250
250
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
|
251
251
|
active: boolean;
|
252
252
|
disabled: boolean;
|
253
253
|
}, {}, string, import("vue").SlotsType<Partial<{
|
254
|
-
|
254
|
+
'day-body': (arg: {
|
255
255
|
day?: CalendarDay;
|
256
256
|
events?: Array<any>;
|
257
257
|
}) => import("vue").VNode[];
|
258
|
-
|
258
|
+
'day-event': (arg: {
|
259
259
|
day?: CalendarDay;
|
260
260
|
allDay: boolean;
|
261
261
|
event: Record<string, unknown>;
|
262
262
|
}) => import("vue").VNode[];
|
263
|
-
|
263
|
+
'day-title': (arg: {
|
264
264
|
title?: number | string;
|
265
265
|
}) => import("vue").VNode[];
|
266
266
|
}>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("../../util/index.js").FilterPropsOptions<{
|
@@ -31,7 +31,7 @@ export const VCalendarMonthDay = genericComponent()({
|
|
31
31
|
}, getPrefixedEventHandlers(attrs, ':day', () => props)), [!props.day?.isHidden ? _createElementVNode("div", {
|
32
32
|
"key": "title",
|
33
33
|
"class": "v-calendar-weekly__day-label"
|
34
|
-
}, [slots
|
34
|
+
}, [slots['day-title']?.({
|
35
35
|
title: props.title
|
36
36
|
}) ?? _createVNode(VBtn, _mergeProps({
|
37
37
|
"class": props.day?.isToday ? 'v-calendar-weekly__day-label__today' : undefined,
|
@@ -44,12 +44,12 @@ export const VCalendarMonthDay = genericComponent()({
|
|
44
44
|
}, getPrefixedEventHandlers(attrs, ':date', () => props)), null)]) : undefined, !props.day?.isHidden ? _createElementVNode("div", {
|
45
45
|
"key": "content",
|
46
46
|
"class": "v-calendar-weekly__day-content"
|
47
|
-
}, [slots
|
47
|
+
}, [slots['day-body']?.({
|
48
48
|
day: props.day,
|
49
49
|
events: props.events
|
50
50
|
}) ?? _createElementVNode("div", null, [_createElementVNode("div", {
|
51
51
|
"class": "v-calendar-weekly__day-alldayevents-container"
|
52
|
-
}, [props.events?.filter(event => event.allDay).map(event => slots
|
52
|
+
}, [props.events?.filter(event => event.allDay).map(event => slots['day-event'] ? slots['day-event']({
|
53
53
|
day: props.day,
|
54
54
|
allDay: true,
|
55
55
|
event
|
@@ -59,7 +59,7 @@ export const VCalendarMonthDay = genericComponent()({
|
|
59
59
|
"allDay": true
|
60
60
|
}, attrs), null))]), _createElementVNode("div", {
|
61
61
|
"class": "v-calendar-weekly__day-events-container"
|
62
|
-
}, [props.events?.filter(event => !event.allDay).map(event => slots
|
62
|
+
}, [props.events?.filter(event => !event.allDay).map(event => slots['day-event'] ? slots['day-event']({
|
63
63
|
day: props.day,
|
64
64
|
event,
|
65
65
|
allDay: false
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VCalendarMonthDay.js","names":["VCalendarEvent","VBtn","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarMonthDayProps","active","Boolean","color","String","day","type","Object","disabled","events","Array","title","Number","VCalendarMonthDay","name","inheritAttrs","props","setup","_ref","attrs","slots","_createElementVNode","_mergeProps","isHidden","
|
1
|
+
{"version":3,"file":"VCalendarMonthDay.js","names":["VCalendarEvent","VBtn","genericComponent","getPrefixedEventHandlers","propsFactory","useRender","makeVCalendarMonthDayProps","active","Boolean","color","String","day","type","Object","disabled","events","Array","title","Number","VCalendarMonthDay","name","inheritAttrs","props","setup","_ref","attrs","slots","_createElementVNode","_mergeProps","isHidden","_createVNode","isToday","undefined","filter","event","allDay","map"],"sources":["../../../src/labs/VCalendar/VCalendarMonthDay.tsx"],"sourcesContent":["// Styles\nimport './VCalendarMonthDay.sass'\n\n// Components\nimport { VCalendarEvent } from './VCalendarEvent'\nimport { VBtn } from '@/components/VBtn'\n\n// Utilities\nimport { genericComponent, getPrefixedEventHandlers, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { CalendarDay } from '@/composables/calendar'\n\nexport type VCalendarMonthDaySlots = {\n 'day-body': { day?: CalendarDay, events?: Array<any> }\n 'day-event': { day?: CalendarDay, allDay: boolean, event: Record<string, unknown> }\n 'day-title': { title?: number | string }\n}\n\nexport const makeVCalendarMonthDayProps = propsFactory({\n active: Boolean,\n color: String,\n day: {\n type: Object as PropType<CalendarDay>,\n },\n disabled: Boolean,\n events: Array<any>,\n title: [Number, String],\n}, 'VCalendarMonthDay')\n\nexport const VCalendarMonthDay = genericComponent<VCalendarMonthDaySlots>()({\n name: 'VCalendarMonthDay',\n\n inheritAttrs: false,\n\n props: makeVCalendarMonthDayProps(),\n\n setup (props, { attrs, slots }) {\n useRender(() => {\n return (\n <div\n class={[\n 'v-calendar-month__day',\n ]}\n { ...getPrefixedEventHandlers(attrs, ':day', () => props) }\n >\n { !props.day?.isHidden ? (\n <div key=\"title\" class=\"v-calendar-weekly__day-label\">\n { slots['day-title']?.({ title: props.title }) ?? (\n <VBtn\n class={ props.day?.isToday ? 'v-calendar-weekly__day-label__today' : undefined }\n color={ props.color }\n disabled={ props.disabled }\n icon\n size=\"x-small\"\n variant={ props.day?.isToday ? undefined : 'flat' }\n text={ `${props.title}` }\n { ...getPrefixedEventHandlers(attrs, ':date', () => props) }\n />\n )\n }\n </div>\n ) : undefined }\n\n { !props.day?.isHidden ? (\n <div key=\"content\" class=\"v-calendar-weekly__day-content\" >\n { slots['day-body']?.({ day: props.day, events: props.events }) ?? (\n <div>\n <div class=\"v-calendar-weekly__day-alldayevents-container\">\n { props.events?.filter(event => event.allDay).map(event => slots['day-event']\n ? slots['day-event']({ day: props.day, allDay: true, event })\n : (\n <VCalendarEvent day={ props.day } event={ event } allDay { ...attrs } />\n ))}\n </div>\n\n <div class=\"v-calendar-weekly__day-events-container\">\n { props.events?.filter(event => !event.allDay).map(event => slots['day-event']\n ? slots['day-event']({ day: props.day, event, allDay: false })\n : (\n <VCalendarEvent day={ props.day } event={ event } { ...attrs } />\n ))}\n </div>\n </div>\n )}\n </div>\n ) : undefined }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VCalendarMonthDay = InstanceType<typeof VCalendarMonthDay>\n"],"mappings":"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","ignoreList":[]}
|