@vuetify/nightly 3.5.9-dev.2024-03-26 → 3.5.9-dev.2024-03-30
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 +5 -2
- package/dist/json/attributes.json +43 -7
- package/dist/json/importMap-labs.json +4 -4
- package/dist/json/importMap.json +110 -110
- package/dist/json/tags.json +9 -0
- package/dist/json/web-types.json +101 -14
- package/dist/vuetify-labs.css +2027 -2025
- package/dist/vuetify-labs.d.ts +130 -19
- package/dist/vuetify-labs.esm.js +162 -138
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +162 -138
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +336 -334
- package/dist/vuetify.d.ts +163 -52
- package/dist/vuetify.esm.js +162 -138
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +162 -138
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +189 -189
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VDataTable/VDataTableFooter.mjs +1 -1
- package/lib/components/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +64 -42
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VDatePicker/index.d.mts +60 -0
- package/lib/components/VTimeline/VTimeline.mjs +12 -6
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.mts +70 -19
- package/lib/components/index.d.mts +130 -19
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +33 -33
- package/lib/labs/VPicker/VPicker.css +2 -0
- package/lib/labs/VPicker/VPicker.sass +2 -0
- package/lib/styles/generic/_transitions.scss +4 -4
- package/lib/styles/main.css +4 -4
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDataTableFooter.mjs","names":["VPagination","VSelect","usePagination","useLocale","computed","genericComponent","propsFactory","useRender","makeVDataTableFooterProps","prevIcon","type","String","default","nextIcon","firstIcon","lastIcon","itemsPerPageText","pageText","firstPageLabel","prevPageLabel","nextPageLabel","lastPageLabel","itemsPerPageOptions","Array","value","title","showCurrentPage","Boolean","VDataTableFooter","name","props","setup","_ref","slots","t","page","pageCount","startIndex","stopIndex","itemsLength","itemsPerPage","setItemsPerPage","map","option","paginationProps","filterProps","_createVNode","prepend","v","
|
|
1
|
+
{"version":3,"file":"VDataTableFooter.mjs","names":["VPagination","VSelect","usePagination","useLocale","computed","genericComponent","propsFactory","useRender","makeVDataTableFooterProps","prevIcon","type","String","default","nextIcon","firstIcon","lastIcon","itemsPerPageText","pageText","firstPageLabel","prevPageLabel","nextPageLabel","lastPageLabel","itemsPerPageOptions","Array","value","title","showCurrentPage","Boolean","VDataTableFooter","name","props","setup","_ref","slots","t","page","pageCount","startIndex","stopIndex","itemsLength","itemsPerPage","setItemsPerPage","map","option","isNaN","Number","paginationProps","filterProps","_createVNode","prepend","v","_mergeProps","$event"],"sources":["../../../src/components/VDataTable/VDataTableFooter.tsx"],"sourcesContent":["// Styles\nimport './VDataTableFooter.sass'\n\n// Components\nimport { VPagination } from '@/components/VPagination'\nimport { VSelect } from '@/components/VSelect'\n\n// Composables\nimport { usePagination } from './composables/paginate'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVDataTableFooterProps = propsFactory({\n prevIcon: {\n type: String,\n default: '$prev',\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n firstIcon: {\n type: String,\n default: '$first',\n },\n lastIcon: {\n type: String,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n firstPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.firstPage',\n },\n prevPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.prevPage',\n },\n nextPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.nextPage',\n },\n lastPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.lastPage',\n },\n itemsPerPageOptions: {\n type: Array as PropType<readonly (number | { title: string, value: number })[]>,\n default: () => ([\n { value: 10, title: '10' },\n { value: 25, title: '25' },\n { value: 50, title: '50' },\n { value: 100, title: '100' },\n { value: -1, title: '$vuetify.dataFooter.itemsPerPageAll' },\n ]),\n },\n showCurrentPage: Boolean,\n}, 'VDataTableFooter')\n\nexport const VDataTableFooter = genericComponent<{ prepend: never }>()({\n name: 'VDataTableFooter',\n\n props: makeVDataTableFooterProps(),\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { page, pageCount, startIndex, stopIndex, itemsLength, itemsPerPage, setItemsPerPage } = usePagination()\n\n const itemsPerPageOptions = computed(() => (\n props.itemsPerPageOptions.map(option => {\n if (typeof option === 'number') {\n return {\n value: option,\n title: option === -1\n ? t('$vuetify.dataFooter.itemsPerPageAll')\n : String(option),\n }\n }\n\n return {\n ...option,\n title: !isNaN(Number(option.title)) ? option.title : t(option.title),\n }\n })\n ))\n\n useRender(() => {\n const paginationProps = VPagination.filterProps(props)\n\n return (\n <div class=\"v-data-table-footer\">\n { slots.prepend?.() }\n\n <div class=\"v-data-table-footer__items-per-page\">\n <span>{ t(props.itemsPerPageText) }</span>\n\n <VSelect\n items={ itemsPerPageOptions.value }\n modelValue={ itemsPerPage.value }\n onUpdate:modelValue={ v => setItemsPerPage(Number(v)) }\n density=\"compact\"\n variant=\"outlined\"\n hide-details\n />\n </div>\n\n <div class=\"v-data-table-footer__info\">\n <div>\n { t(props.pageText, !itemsLength.value ? 0 : startIndex.value + 1, stopIndex.value, itemsLength.value) }\n </div>\n </div>\n\n <div class=\"v-data-table-footer__pagination\">\n <VPagination\n v-model={ page.value }\n density=\"comfortable\"\n first-aria-label={ props.firstPageLabel }\n last-aria-label={ props.lastPageLabel }\n length={ pageCount.value }\n next-aria-label={ props.nextPageLabel }\n previous-aria-label={ props.prevPageLabel }\n rounded\n show-first-last-page\n total-visible={ props.showCurrentPage ? 1 : 0 }\n variant=\"plain\"\n { ...paginationProps }\n ></VPagination>\n </div>\n </div>\n )\n })\n\n return {}\n },\n})\n"],"mappings":"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"}
|
|
@@ -6,14 +6,23 @@ import "./VDatePickerMonth.css";
|
|
|
6
6
|
import { VBtn } from "../VBtn/index.mjs";
|
|
7
7
|
import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs"; // Composables
|
|
8
8
|
import { makeCalendarProps, useCalendar } from "../../composables/calendar.mjs";
|
|
9
|
-
import { useDate } from "../../composables/date/date.mjs";
|
|
10
|
-
import {
|
|
9
|
+
import { useDate } from "../../composables/date/date.mjs";
|
|
10
|
+
import { MaybeTransition } from "../../composables/transition.mjs"; // Utilities
|
|
11
|
+
import { computed, ref, shallowRef, watch } from 'vue';
|
|
11
12
|
import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
|
|
12
13
|
export const makeVDatePickerMonthProps = propsFactory({
|
|
13
14
|
color: String,
|
|
14
15
|
hideWeekdays: Boolean,
|
|
15
16
|
multiple: [Boolean, Number, String],
|
|
16
17
|
showWeek: Boolean,
|
|
18
|
+
transition: {
|
|
19
|
+
type: String,
|
|
20
|
+
default: 'picker-transition'
|
|
21
|
+
},
|
|
22
|
+
reverseTransition: {
|
|
23
|
+
type: String,
|
|
24
|
+
default: 'picker-reverse-transition'
|
|
25
|
+
},
|
|
17
26
|
...makeCalendarProps()
|
|
18
27
|
}, 'VDatePickerMonth');
|
|
19
28
|
export const VDatePickerMonth = genericComponent()({
|
|
@@ -38,6 +47,10 @@ export const VDatePickerMonth = genericComponent()({
|
|
|
38
47
|
const adapter = useDate();
|
|
39
48
|
const rangeStart = shallowRef();
|
|
40
49
|
const rangeStop = shallowRef();
|
|
50
|
+
const isReverse = shallowRef(false);
|
|
51
|
+
const transition = computed(() => {
|
|
52
|
+
return !isReverse.value ? props.transition : props.reverseTransition;
|
|
53
|
+
});
|
|
41
54
|
if (props.multiple === 'range' && model.value.length > 0) {
|
|
42
55
|
rangeStart.value = model.value[0];
|
|
43
56
|
if (model.value.length > 1) {
|
|
@@ -48,6 +61,10 @@ export const VDatePickerMonth = genericComponent()({
|
|
|
48
61
|
const max = ['number', 'string'].includes(typeof props.multiple) ? Number(props.multiple) : Infinity;
|
|
49
62
|
return model.value.length >= max;
|
|
50
63
|
});
|
|
64
|
+
watch(daysInMonth, (val, oldVal) => {
|
|
65
|
+
if (!oldVal) return;
|
|
66
|
+
isReverse.value = adapter.isBefore(val[0].date, oldVal[0].date);
|
|
67
|
+
});
|
|
51
68
|
function onRangeClick(value) {
|
|
52
69
|
const _value = adapter.startOfDay(value);
|
|
53
70
|
if (!rangeStart.value) {
|
|
@@ -107,48 +124,53 @@ export const VDatePickerMonth = genericComponent()({
|
|
|
107
124
|
"class": "v-date-picker-month__day"
|
|
108
125
|
}, [_createTextVNode("\xA0")]), weekNumbers.value.map(week => _createVNode("div", {
|
|
109
126
|
"class": ['v-date-picker-month__day', 'v-date-picker-month__day--adjacent']
|
|
110
|
-
}, [week]))]), _createVNode(
|
|
111
|
-
"
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
};
|
|
123
|
-
if (atMax.value && !item.isSelected) {
|
|
124
|
-
item.isDisabled = true;
|
|
125
|
-
}
|
|
126
|
-
return _createVNode("div", {
|
|
127
|
-
"class": ['v-date-picker-month__day', {
|
|
128
|
-
'v-date-picker-month__day--adjacent': item.isAdjacent,
|
|
129
|
-
'v-date-picker-month__day--hide-adjacent': item.isHidden,
|
|
130
|
-
'v-date-picker-month__day--selected': item.isSelected,
|
|
131
|
-
'v-date-picker-month__day--week-end': item.isWeekEnd,
|
|
132
|
-
'v-date-picker-month__day--week-start': item.isWeekStart
|
|
133
|
-
}],
|
|
134
|
-
"data-v-date": !item.isDisabled ? item.isoDate : undefined
|
|
135
|
-
}, [(props.showAdjacentMonths || !item.isAdjacent) && _createVNode(VDefaultsProvider, {
|
|
136
|
-
"defaults": {
|
|
137
|
-
VBtn: {
|
|
138
|
-
class: 'v-date-picker-month__day-btn',
|
|
139
|
-
color: (item.isSelected || item.isToday) && !item.isDisabled ? props.color : undefined,
|
|
140
|
-
disabled: item.isDisabled,
|
|
141
|
-
icon: true,
|
|
142
|
-
ripple: false,
|
|
143
|
-
text: item.localized,
|
|
144
|
-
variant: item.isDisabled ? item.isToday ? 'outlined' : 'text' : item.isToday && !item.isSelected ? 'outlined' : 'flat',
|
|
127
|
+
}, [week]))]), _createVNode(MaybeTransition, {
|
|
128
|
+
"name": transition.value
|
|
129
|
+
}, {
|
|
130
|
+
default: () => [_createVNode("div", {
|
|
131
|
+
"ref": daysRef,
|
|
132
|
+
"key": daysInMonth.value[0].date.toString(),
|
|
133
|
+
"class": "v-date-picker-month__days"
|
|
134
|
+
}, [!props.hideWeekdays && adapter.getWeekdays().map(weekDay => _createVNode("div", {
|
|
135
|
+
"class": ['v-date-picker-month__day', 'v-date-picker-month__weekday']
|
|
136
|
+
}, [weekDay])), daysInMonth.value.map((item, i) => {
|
|
137
|
+
const slotProps = {
|
|
138
|
+
props: {
|
|
145
139
|
onClick: () => onClick(item.date)
|
|
146
|
-
}
|
|
140
|
+
},
|
|
141
|
+
item,
|
|
142
|
+
i
|
|
143
|
+
};
|
|
144
|
+
if (atMax.value && !item.isSelected) {
|
|
145
|
+
item.isDisabled = true;
|
|
147
146
|
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
147
|
+
return _createVNode("div", {
|
|
148
|
+
"class": ['v-date-picker-month__day', {
|
|
149
|
+
'v-date-picker-month__day--adjacent': item.isAdjacent,
|
|
150
|
+
'v-date-picker-month__day--hide-adjacent': item.isHidden,
|
|
151
|
+
'v-date-picker-month__day--selected': item.isSelected,
|
|
152
|
+
'v-date-picker-month__day--week-end': item.isWeekEnd,
|
|
153
|
+
'v-date-picker-month__day--week-start': item.isWeekStart
|
|
154
|
+
}],
|
|
155
|
+
"data-v-date": !item.isDisabled ? item.isoDate : undefined
|
|
156
|
+
}, [(props.showAdjacentMonths || !item.isAdjacent) && _createVNode(VDefaultsProvider, {
|
|
157
|
+
"defaults": {
|
|
158
|
+
VBtn: {
|
|
159
|
+
class: 'v-date-picker-month__day-btn',
|
|
160
|
+
color: (item.isSelected || item.isToday) && !item.isDisabled ? props.color : undefined,
|
|
161
|
+
disabled: item.isDisabled,
|
|
162
|
+
icon: true,
|
|
163
|
+
ripple: false,
|
|
164
|
+
text: item.localized,
|
|
165
|
+
variant: item.isDisabled ? item.isToday ? 'outlined' : 'text' : item.isToday && !item.isSelected ? 'outlined' : 'flat',
|
|
166
|
+
onClick: () => onClick(item.date)
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}, {
|
|
170
|
+
default: () => [slots.day?.(slotProps) ?? _createVNode(VBtn, slotProps.props, null)]
|
|
171
|
+
})]);
|
|
172
|
+
})])]
|
|
173
|
+
})]);
|
|
152
174
|
}
|
|
153
175
|
});
|
|
154
176
|
//# sourceMappingURL=VDatePickerMonth.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDatePickerMonth.mjs","names":["VBtn","VDefaultsProvider","makeCalendarProps","useCalendar","useDate","computed","ref","shallowRef","genericComponent","propsFactory","makeVDatePickerMonthProps","color","String","hideWeekdays","Boolean","multiple","Number","showWeek","VDatePickerMonth","name","props","emits","date","setup","_ref","emit","slots","daysRef","daysInMonth","model","weekNumbers","adapter","rangeStart","rangeStop","value","length","atMax","max","includes","Infinity","onRangeClick","_value","startOfDay","isSameDay","undefined","isBefore","endOfDay","diff","getDiff","datesInRange","i","nextDate","addDays","push","onMultipleClick","index","findIndex","selection","splice","onClick","_createVNode","_createTextVNode","map","week","getWeekdays","weekDay","item","slotProps","isSelected","isDisabled","isAdjacent","isHidden","isWeekEnd","isWeekStart","isoDate","showAdjacentMonths","class","isToday","disabled","icon","ripple","text","localized","variant","default","day"],"sources":["../../../src/components/VDatePicker/VDatePickerMonth.tsx"],"sourcesContent":["// Styles\nimport './VDatePickerMonth.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { makeCalendarProps, useCalendar } from '@/composables/calendar'\nimport { useDate } from '@/composables/date/date'\n\n// Utilities\nimport { computed, ref, shallowRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VDatePickerMonthSlots = {\n day: {\n props: {\n onClick: () => void\n }\n item: any\n i: number\n }\n}\n\nexport const makeVDatePickerMonthProps = propsFactory({\n color: String,\n hideWeekdays: Boolean,\n multiple: [Boolean, Number, String] as PropType<boolean | 'range' | number | (string & {})>,\n showWeek: Boolean,\n\n ...makeCalendarProps(),\n}, 'VDatePickerMonth')\n\nexport const VDatePickerMonth = genericComponent<VDatePickerMonthSlots>()({\n name: 'VDatePickerMonth',\n\n props: makeVDatePickerMonthProps(),\n\n emits: {\n 'update:modelValue': (date: unknown) => true,\n 'update:month': (date: number) => true,\n 'update:year': (date: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const daysRef = ref()\n\n const { daysInMonth, model, weekNumbers } = useCalendar(props)\n const adapter = useDate()\n\n const rangeStart = shallowRef()\n const rangeStop = shallowRef()\n\n if (props.multiple === 'range' && model.value.length > 0) {\n rangeStart.value = model.value[0]\n if (model.value.length > 1) {\n rangeStop.value = model.value[model.value.length - 1]\n }\n }\n\n const atMax = computed(() => {\n const max = ['number', 'string'].includes(typeof props.multiple) ? Number(props.multiple) : Infinity\n\n return model.value.length >= max\n })\n\n function onRangeClick (value: unknown) {\n const _value = adapter.startOfDay(value)\n\n if (!rangeStart.value) {\n rangeStart.value = _value\n model.value = [rangeStart.value]\n } else if (!rangeStop.value) {\n if (adapter.isSameDay(_value, rangeStart.value)) {\n rangeStart.value = undefined\n model.value = []\n return\n } else if (adapter.isBefore(_value, rangeStart.value)) {\n rangeStop.value = adapter.endOfDay(rangeStart.value)\n rangeStart.value = _value\n } else {\n rangeStop.value = adapter.endOfDay(_value)\n }\n\n const diff = adapter.getDiff(rangeStop.value, rangeStart.value, 'days')\n const datesInRange = [rangeStart.value]\n\n for (let i = 1; i < diff; i++) {\n const nextDate = adapter.addDays(rangeStart.value, i)\n datesInRange.push(nextDate)\n }\n\n datesInRange.push(rangeStop.value)\n\n model.value = datesInRange\n } else {\n rangeStart.value = value\n rangeStop.value = undefined\n model.value = [rangeStart.value]\n }\n }\n\n function onMultipleClick (value: unknown) {\n const index = model.value.findIndex(selection => adapter.isSameDay(selection, value))\n\n if (index === -1) {\n model.value = [...model.value, value]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n }\n\n function onClick (value: unknown) {\n if (props.multiple === 'range') {\n onRangeClick(value)\n } else if (props.multiple) {\n onMultipleClick(value)\n } else {\n model.value = [value]\n }\n }\n\n return () => (\n <div class=\"v-date-picker-month\">\n { props.showWeek && (\n <div key=\"weeks\" class=\"v-date-picker-month__weeks\">\n { !props.hideWeekdays && (\n <div key=\"hide-week-days\" class=\"v-date-picker-month__day\"> </div>\n )}\n { weekNumbers.value.map(week => (\n <div\n class={[\n 'v-date-picker-month__day',\n 'v-date-picker-month__day--adjacent',\n ]}\n >{ week }</div>\n ))}\n </div>\n )}\n\n <div\n ref={ daysRef }\n class=\"v-date-picker-month__days\"\n >\n { !props.hideWeekdays && adapter.getWeekdays().map(weekDay => (\n <div\n class={[\n 'v-date-picker-month__day',\n 'v-date-picker-month__weekday',\n ]}\n >{ weekDay }</div>\n ))}\n\n { daysInMonth.value.map((item, i) => {\n const slotProps = {\n props: {\n onClick: () => onClick(item.date),\n },\n item,\n i,\n } as const\n\n if (atMax.value && !item.isSelected) {\n item.isDisabled = true\n }\n\n return (\n <div\n class={[\n 'v-date-picker-month__day',\n {\n 'v-date-picker-month__day--adjacent': item.isAdjacent,\n 'v-date-picker-month__day--hide-adjacent': item.isHidden,\n 'v-date-picker-month__day--selected': item.isSelected,\n 'v-date-picker-month__day--week-end': item.isWeekEnd,\n 'v-date-picker-month__day--week-start': item.isWeekStart,\n },\n ]}\n data-v-date={ !item.isDisabled ? item.isoDate : undefined }\n >\n\n { (props.showAdjacentMonths || !item.isAdjacent) && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n class: 'v-date-picker-month__day-btn',\n color: (item.isSelected || item.isToday) && !item.isDisabled\n ? props.color\n : undefined,\n disabled: item.isDisabled,\n icon: true,\n ripple: false,\n text: item.localized,\n variant: item.isDisabled\n ? item.isToday ? 'outlined' : 'text'\n : item.isToday && !item.isSelected ? 'outlined' : 'flat',\n onClick: () => onClick(item.date),\n },\n }}\n >\n { slots.day?.(slotProps) ?? (\n <VBtn { ...slotProps.props } />\n )}\n </VDefaultsProvider>\n )}\n </div>\n )\n })}\n </div>\n </div>\n )\n },\n})\n\nexport type VDatePickerMonth = InstanceType<typeof VDatePickerMonth>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VDatePickerMonth.mjs","names":["VBtn","VDefaultsProvider","makeCalendarProps","useCalendar","useDate","MaybeTransition","computed","ref","shallowRef","watch","genericComponent","propsFactory","makeVDatePickerMonthProps","color","String","hideWeekdays","Boolean","multiple","Number","showWeek","transition","type","default","reverseTransition","VDatePickerMonth","name","props","emits","date","setup","_ref","emit","slots","daysRef","daysInMonth","model","weekNumbers","adapter","rangeStart","rangeStop","isReverse","value","length","atMax","max","includes","Infinity","val","oldVal","isBefore","onRangeClick","_value","startOfDay","isSameDay","undefined","endOfDay","diff","getDiff","datesInRange","i","nextDate","addDays","push","onMultipleClick","index","findIndex","selection","splice","onClick","_createVNode","_createTextVNode","map","week","toString","getWeekdays","weekDay","item","slotProps","isSelected","isDisabled","isAdjacent","isHidden","isWeekEnd","isWeekStart","isoDate","showAdjacentMonths","class","isToday","disabled","icon","ripple","text","localized","variant","day"],"sources":["../../../src/components/VDatePicker/VDatePickerMonth.tsx"],"sourcesContent":["// Styles\nimport './VDatePickerMonth.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { makeCalendarProps, useCalendar } from '@/composables/calendar'\nimport { useDate } from '@/composables/date/date'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, watch } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VDatePickerMonthSlots = {\n day: {\n props: {\n onClick: () => void\n }\n item: any\n i: number\n }\n}\n\nexport const makeVDatePickerMonthProps = propsFactory({\n color: String,\n hideWeekdays: Boolean,\n multiple: [Boolean, Number, String] as PropType<boolean | 'range' | number | (string & {})>,\n showWeek: Boolean,\n transition: {\n type: String,\n default: 'picker-transition',\n },\n reverseTransition: {\n type: String,\n default: 'picker-reverse-transition',\n },\n\n ...makeCalendarProps(),\n}, 'VDatePickerMonth')\n\nexport const VDatePickerMonth = genericComponent<VDatePickerMonthSlots>()({\n name: 'VDatePickerMonth',\n\n props: makeVDatePickerMonthProps(),\n\n emits: {\n 'update:modelValue': (date: unknown) => true,\n 'update:month': (date: number) => true,\n 'update:year': (date: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const daysRef = ref()\n\n const { daysInMonth, model, weekNumbers } = useCalendar(props)\n const adapter = useDate()\n\n const rangeStart = shallowRef()\n const rangeStop = shallowRef()\n const isReverse = shallowRef(false)\n\n const transition = computed(() => {\n return !isReverse.value ? props.transition : props.reverseTransition\n })\n\n if (props.multiple === 'range' && model.value.length > 0) {\n rangeStart.value = model.value[0]\n if (model.value.length > 1) {\n rangeStop.value = model.value[model.value.length - 1]\n }\n }\n\n const atMax = computed(() => {\n const max = ['number', 'string'].includes(typeof props.multiple) ? Number(props.multiple) : Infinity\n\n return model.value.length >= max\n })\n\n watch(daysInMonth, (val, oldVal) => {\n if (!oldVal) return\n\n isReverse.value = adapter.isBefore(val[0].date, oldVal[0].date)\n })\n\n function onRangeClick (value: unknown) {\n const _value = adapter.startOfDay(value)\n\n if (!rangeStart.value) {\n rangeStart.value = _value\n model.value = [rangeStart.value]\n } else if (!rangeStop.value) {\n if (adapter.isSameDay(_value, rangeStart.value)) {\n rangeStart.value = undefined\n model.value = []\n return\n } else if (adapter.isBefore(_value, rangeStart.value)) {\n rangeStop.value = adapter.endOfDay(rangeStart.value)\n rangeStart.value = _value\n } else {\n rangeStop.value = adapter.endOfDay(_value)\n }\n\n const diff = adapter.getDiff(rangeStop.value, rangeStart.value, 'days')\n const datesInRange = [rangeStart.value]\n\n for (let i = 1; i < diff; i++) {\n const nextDate = adapter.addDays(rangeStart.value, i)\n datesInRange.push(nextDate)\n }\n\n datesInRange.push(rangeStop.value)\n\n model.value = datesInRange\n } else {\n rangeStart.value = value\n rangeStop.value = undefined\n model.value = [rangeStart.value]\n }\n }\n\n function onMultipleClick (value: unknown) {\n const index = model.value.findIndex(selection => adapter.isSameDay(selection, value))\n\n if (index === -1) {\n model.value = [...model.value, value]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n }\n\n function onClick (value: unknown) {\n if (props.multiple === 'range') {\n onRangeClick(value)\n } else if (props.multiple) {\n onMultipleClick(value)\n } else {\n model.value = [value]\n }\n }\n\n return () => (\n <div class=\"v-date-picker-month\">\n { props.showWeek && (\n <div key=\"weeks\" class=\"v-date-picker-month__weeks\">\n { !props.hideWeekdays && (\n <div key=\"hide-week-days\" class=\"v-date-picker-month__day\"> </div>\n )}\n { weekNumbers.value.map(week => (\n <div\n class={[\n 'v-date-picker-month__day',\n 'v-date-picker-month__day--adjacent',\n ]}\n >{ week }</div>\n ))}\n </div>\n )}\n\n <MaybeTransition name={ transition.value }>\n <div\n ref={ daysRef }\n key={ daysInMonth.value[0].date.toString() }\n class=\"v-date-picker-month__days\"\n >\n { !props.hideWeekdays && adapter.getWeekdays().map(weekDay => (\n <div\n class={[\n 'v-date-picker-month__day',\n 'v-date-picker-month__weekday',\n ]}\n >{ weekDay }</div>\n ))}\n\n { daysInMonth.value.map((item, i) => {\n const slotProps = {\n props: {\n onClick: () => onClick(item.date),\n },\n item,\n i,\n } as const\n\n if (atMax.value && !item.isSelected) {\n item.isDisabled = true\n }\n\n return (\n <div\n class={[\n 'v-date-picker-month__day',\n {\n 'v-date-picker-month__day--adjacent': item.isAdjacent,\n 'v-date-picker-month__day--hide-adjacent': item.isHidden,\n 'v-date-picker-month__day--selected': item.isSelected,\n 'v-date-picker-month__day--week-end': item.isWeekEnd,\n 'v-date-picker-month__day--week-start': item.isWeekStart,\n },\n ]}\n data-v-date={ !item.isDisabled ? item.isoDate : undefined }\n >\n\n { (props.showAdjacentMonths || !item.isAdjacent) && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n class: 'v-date-picker-month__day-btn',\n color: (item.isSelected || item.isToday) && !item.isDisabled\n ? props.color\n : undefined,\n disabled: item.isDisabled,\n icon: true,\n ripple: false,\n text: item.localized,\n variant: item.isDisabled\n ? item.isToday ? 'outlined' : 'text'\n : item.isToday && !item.isSelected ? 'outlined' : 'flat',\n onClick: () => onClick(item.date),\n },\n }}\n >\n { slots.day?.(slotProps) ?? (\n <VBtn { ...slotProps.props } />\n )}\n </VDefaultsProvider>\n )}\n </div>\n )\n })}\n </div>\n </MaybeTransition>\n </div>\n )\n },\n})\n\nexport type VDatePickerMonth = InstanceType<typeof VDatePickerMonth>\n"],"mappings":"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"}
|
|
@@ -51,6 +51,7 @@ type VDatePickerSlots = Omit<VPickerSlots, 'header'> & {
|
|
|
51
51
|
};
|
|
52
52
|
declare const VDatePicker: {
|
|
53
53
|
new (...args: any[]): vue.CreateComponentPublicInstance<{
|
|
54
|
+
transition: string;
|
|
54
55
|
header: string;
|
|
55
56
|
style: vue.StyleValue;
|
|
56
57
|
title: string;
|
|
@@ -60,6 +61,7 @@ declare const VDatePicker: {
|
|
|
60
61
|
tile: boolean;
|
|
61
62
|
nextIcon: string;
|
|
62
63
|
prevIcon: string;
|
|
64
|
+
reverseTransition: string;
|
|
63
65
|
modeIcon: string;
|
|
64
66
|
viewMode: "month" | "year" | "months";
|
|
65
67
|
showAdjacentMonths: boolean;
|
|
@@ -101,6 +103,7 @@ declare const VDatePicker: {
|
|
|
101
103
|
'update:year': (date: any) => true;
|
|
102
104
|
'update:viewMode': (date: any) => true;
|
|
103
105
|
}, "multiple" | "$children" | "v-slot:default" | "v-slots" | "modelValue" | "v-slot:title" | "update:modelValue" | "v-slot:header" | "v-slot:actions">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
|
106
|
+
transition: string;
|
|
104
107
|
header: string;
|
|
105
108
|
style: vue.StyleValue;
|
|
106
109
|
title: string;
|
|
@@ -110,6 +113,7 @@ declare const VDatePicker: {
|
|
|
110
113
|
tile: boolean;
|
|
111
114
|
nextIcon: string;
|
|
112
115
|
prevIcon: string;
|
|
116
|
+
reverseTransition: string;
|
|
113
117
|
modeIcon: string;
|
|
114
118
|
viewMode: "month" | "year" | "months";
|
|
115
119
|
showAdjacentMonths: boolean;
|
|
@@ -147,6 +151,7 @@ declare const VDatePicker: {
|
|
|
147
151
|
"onUpdate:viewMode"?: ((date: any) => any) | undefined;
|
|
148
152
|
}, {
|
|
149
153
|
active: string | string[];
|
|
154
|
+
transition: string;
|
|
150
155
|
header: string;
|
|
151
156
|
style: vue.StyleValue;
|
|
152
157
|
title: string;
|
|
@@ -157,6 +162,7 @@ declare const VDatePicker: {
|
|
|
157
162
|
tile: boolean;
|
|
158
163
|
nextIcon: string;
|
|
159
164
|
prevIcon: string;
|
|
165
|
+
reverseTransition: string;
|
|
160
166
|
modeIcon: string;
|
|
161
167
|
viewMode: "month" | "year" | "months";
|
|
162
168
|
showAdjacentMonths: boolean;
|
|
@@ -188,6 +194,7 @@ declare const VDatePicker: {
|
|
|
188
194
|
M: {};
|
|
189
195
|
Defaults: {};
|
|
190
196
|
}, {
|
|
197
|
+
transition: string;
|
|
191
198
|
header: string;
|
|
192
199
|
style: vue.StyleValue;
|
|
193
200
|
title: string;
|
|
@@ -197,6 +204,7 @@ declare const VDatePicker: {
|
|
|
197
204
|
tile: boolean;
|
|
198
205
|
nextIcon: string;
|
|
199
206
|
prevIcon: string;
|
|
207
|
+
reverseTransition: string;
|
|
200
208
|
modeIcon: string;
|
|
201
209
|
viewMode: "month" | "year" | "months";
|
|
202
210
|
showAdjacentMonths: boolean;
|
|
@@ -234,6 +242,7 @@ declare const VDatePicker: {
|
|
|
234
242
|
"onUpdate:viewMode"?: ((date: any) => any) | undefined;
|
|
235
243
|
}, {}, {}, {}, {}, {
|
|
236
244
|
active: string | string[];
|
|
245
|
+
transition: string;
|
|
237
246
|
header: string;
|
|
238
247
|
style: vue.StyleValue;
|
|
239
248
|
title: string;
|
|
@@ -244,6 +253,7 @@ declare const VDatePicker: {
|
|
|
244
253
|
tile: boolean;
|
|
245
254
|
nextIcon: string;
|
|
246
255
|
prevIcon: string;
|
|
256
|
+
reverseTransition: string;
|
|
247
257
|
modeIcon: string;
|
|
248
258
|
viewMode: "month" | "year" | "months";
|
|
249
259
|
showAdjacentMonths: boolean;
|
|
@@ -256,6 +266,7 @@ declare const VDatePicker: {
|
|
|
256
266
|
__isTeleport?: undefined;
|
|
257
267
|
__isSuspense?: undefined;
|
|
258
268
|
} & vue.ComponentOptionsBase<{
|
|
269
|
+
transition: string;
|
|
259
270
|
header: string;
|
|
260
271
|
style: vue.StyleValue;
|
|
261
272
|
title: string;
|
|
@@ -265,6 +276,7 @@ declare const VDatePicker: {
|
|
|
265
276
|
tile: boolean;
|
|
266
277
|
nextIcon: string;
|
|
267
278
|
prevIcon: string;
|
|
279
|
+
reverseTransition: string;
|
|
268
280
|
modeIcon: string;
|
|
269
281
|
viewMode: "month" | "year" | "months";
|
|
270
282
|
showAdjacentMonths: boolean;
|
|
@@ -307,6 +319,7 @@ declare const VDatePicker: {
|
|
|
307
319
|
'update:viewMode': (date: any) => true;
|
|
308
320
|
}, "multiple" | "$children" | "v-slot:default" | "v-slots" | "modelValue" | "v-slot:title" | "update:modelValue" | "v-slot:header" | "v-slot:actions">, string, {
|
|
309
321
|
active: string | string[];
|
|
322
|
+
transition: string;
|
|
310
323
|
header: string;
|
|
311
324
|
style: vue.StyleValue;
|
|
312
325
|
title: string;
|
|
@@ -317,6 +330,7 @@ declare const VDatePicker: {
|
|
|
317
330
|
tile: boolean;
|
|
318
331
|
nextIcon: string;
|
|
319
332
|
prevIcon: string;
|
|
333
|
+
reverseTransition: string;
|
|
320
334
|
modeIcon: string;
|
|
321
335
|
viewMode: "month" | "year" | "months";
|
|
322
336
|
showAdjacentMonths: boolean;
|
|
@@ -417,6 +431,14 @@ declare const VDatePicker: {
|
|
|
417
431
|
hideWeekdays: BooleanConstructor;
|
|
418
432
|
multiple: vue.PropType<number | boolean | "range" | (string & {})>;
|
|
419
433
|
showWeek: BooleanConstructor;
|
|
434
|
+
transition: {
|
|
435
|
+
type: StringConstructor;
|
|
436
|
+
default: string;
|
|
437
|
+
};
|
|
438
|
+
reverseTransition: {
|
|
439
|
+
type: StringConstructor;
|
|
440
|
+
default: string;
|
|
441
|
+
};
|
|
420
442
|
active: {
|
|
421
443
|
type: vue.PropType<string | string[]>;
|
|
422
444
|
default: undefined;
|
|
@@ -511,6 +533,14 @@ declare const VDatePicker: {
|
|
|
511
533
|
hideWeekdays: BooleanConstructor;
|
|
512
534
|
multiple: vue.PropType<number | boolean | "range" | (string & {})>;
|
|
513
535
|
showWeek: BooleanConstructor;
|
|
536
|
+
transition: {
|
|
537
|
+
type: StringConstructor;
|
|
538
|
+
default: string;
|
|
539
|
+
};
|
|
540
|
+
reverseTransition: {
|
|
541
|
+
type: StringConstructor;
|
|
542
|
+
default: string;
|
|
543
|
+
};
|
|
514
544
|
active: {
|
|
515
545
|
type: vue.PropType<string | string[]>;
|
|
516
546
|
default: undefined;
|
|
@@ -894,7 +924,9 @@ type VDatePickerHeader = InstanceType<typeof VDatePickerHeader>;
|
|
|
894
924
|
|
|
895
925
|
declare const VDatePickerMonth: {
|
|
896
926
|
new (...args: any[]): vue.CreateComponentPublicInstance<{
|
|
927
|
+
transition: string;
|
|
897
928
|
disabled: boolean;
|
|
929
|
+
reverseTransition: string;
|
|
898
930
|
showAdjacentMonths: boolean;
|
|
899
931
|
weekdays: number[];
|
|
900
932
|
hideWeekdays: boolean;
|
|
@@ -945,7 +977,9 @@ declare const VDatePickerMonth: {
|
|
|
945
977
|
'update:month': (date: number) => true;
|
|
946
978
|
'update:year': (date: number) => true;
|
|
947
979
|
}, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
|
980
|
+
transition: string;
|
|
948
981
|
disabled: boolean;
|
|
982
|
+
reverseTransition: string;
|
|
949
983
|
showAdjacentMonths: boolean;
|
|
950
984
|
weekdays: number[];
|
|
951
985
|
hideWeekdays: boolean;
|
|
@@ -992,7 +1026,9 @@ declare const VDatePickerMonth: {
|
|
|
992
1026
|
"onUpdate:month"?: ((date: number) => any) | undefined;
|
|
993
1027
|
"onUpdate:year"?: ((date: number) => any) | undefined;
|
|
994
1028
|
}, {
|
|
1029
|
+
transition: string;
|
|
995
1030
|
disabled: boolean;
|
|
1031
|
+
reverseTransition: string;
|
|
996
1032
|
showAdjacentMonths: boolean;
|
|
997
1033
|
weekdays: number[];
|
|
998
1034
|
hideWeekdays: boolean;
|
|
@@ -1015,7 +1051,9 @@ declare const VDatePickerMonth: {
|
|
|
1015
1051
|
M: {};
|
|
1016
1052
|
Defaults: {};
|
|
1017
1053
|
}, {
|
|
1054
|
+
transition: string;
|
|
1018
1055
|
disabled: boolean;
|
|
1056
|
+
reverseTransition: string;
|
|
1019
1057
|
showAdjacentMonths: boolean;
|
|
1020
1058
|
weekdays: number[];
|
|
1021
1059
|
hideWeekdays: boolean;
|
|
@@ -1062,7 +1100,9 @@ declare const VDatePickerMonth: {
|
|
|
1062
1100
|
"onUpdate:month"?: ((date: number) => any) | undefined;
|
|
1063
1101
|
"onUpdate:year"?: ((date: number) => any) | undefined;
|
|
1064
1102
|
}, () => JSX.Element, {}, {}, {}, {
|
|
1103
|
+
transition: string;
|
|
1065
1104
|
disabled: boolean;
|
|
1105
|
+
reverseTransition: string;
|
|
1066
1106
|
showAdjacentMonths: boolean;
|
|
1067
1107
|
weekdays: number[];
|
|
1068
1108
|
hideWeekdays: boolean;
|
|
@@ -1072,7 +1112,9 @@ declare const VDatePickerMonth: {
|
|
|
1072
1112
|
__isTeleport?: undefined;
|
|
1073
1113
|
__isSuspense?: undefined;
|
|
1074
1114
|
} & vue.ComponentOptionsBase<{
|
|
1115
|
+
transition: string;
|
|
1075
1116
|
disabled: boolean;
|
|
1117
|
+
reverseTransition: string;
|
|
1076
1118
|
showAdjacentMonths: boolean;
|
|
1077
1119
|
weekdays: number[];
|
|
1078
1120
|
hideWeekdays: boolean;
|
|
@@ -1123,7 +1165,9 @@ declare const VDatePickerMonth: {
|
|
|
1123
1165
|
'update:month': (date: number) => true;
|
|
1124
1166
|
'update:year': (date: number) => true;
|
|
1125
1167
|
}, string, {
|
|
1168
|
+
transition: string;
|
|
1126
1169
|
disabled: boolean;
|
|
1170
|
+
reverseTransition: string;
|
|
1127
1171
|
showAdjacentMonths: boolean;
|
|
1128
1172
|
weekdays: number[];
|
|
1129
1173
|
hideWeekdays: boolean;
|
|
@@ -1169,6 +1213,14 @@ declare const VDatePickerMonth: {
|
|
|
1169
1213
|
hideWeekdays: BooleanConstructor;
|
|
1170
1214
|
multiple: PropType<number | boolean | "range" | (string & {})>;
|
|
1171
1215
|
showWeek: BooleanConstructor;
|
|
1216
|
+
transition: {
|
|
1217
|
+
type: StringConstructor;
|
|
1218
|
+
default: string;
|
|
1219
|
+
};
|
|
1220
|
+
reverseTransition: {
|
|
1221
|
+
type: StringConstructor;
|
|
1222
|
+
default: string;
|
|
1223
|
+
};
|
|
1172
1224
|
}, vue.ExtractPropTypes<{
|
|
1173
1225
|
allowedDates: PropType<unknown[] | ((date: unknown) => boolean)>;
|
|
1174
1226
|
disabled: BooleanConstructor;
|
|
@@ -1200,6 +1252,14 @@ declare const VDatePickerMonth: {
|
|
|
1200
1252
|
hideWeekdays: BooleanConstructor;
|
|
1201
1253
|
multiple: PropType<number | boolean | "range" | (string & {})>;
|
|
1202
1254
|
showWeek: BooleanConstructor;
|
|
1255
|
+
transition: {
|
|
1256
|
+
type: StringConstructor;
|
|
1257
|
+
default: string;
|
|
1258
|
+
};
|
|
1259
|
+
reverseTransition: {
|
|
1260
|
+
type: StringConstructor;
|
|
1261
|
+
default: string;
|
|
1262
|
+
};
|
|
1203
1263
|
}>>;
|
|
1204
1264
|
type VDatePickerMonth = InstanceType<typeof VDatePickerMonth>;
|
|
1205
1265
|
|
|
@@ -10,7 +10,8 @@ import { useRtl } from "../../composables/locale.mjs";
|
|
|
10
10
|
import { makeTagProps } from "../../composables/tag.mjs";
|
|
11
11
|
import { makeThemeProps, provideTheme } from "../../composables/theme.mjs"; // Utilities
|
|
12
12
|
import { computed, toRef } from 'vue';
|
|
13
|
-
import { convertToUnit, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
13
|
+
import { convertToUnit, genericComponent, only, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
14
|
+
import { makeVTimelineItemProps } from "./VTimelineItem.mjs";
|
|
14
15
|
export const makeVTimelineProps = propsFactory({
|
|
15
16
|
align: {
|
|
16
17
|
type: String,
|
|
@@ -31,10 +32,6 @@ export const makeVTimelineProps = propsFactory({
|
|
|
31
32
|
type: String,
|
|
32
33
|
validator: v => v == null || ['start', 'end'].includes(v)
|
|
33
34
|
},
|
|
34
|
-
lineInset: {
|
|
35
|
-
type: [String, Number],
|
|
36
|
-
default: 0
|
|
37
|
-
},
|
|
38
35
|
lineThickness: {
|
|
39
36
|
type: [String, Number],
|
|
40
37
|
default: 2
|
|
@@ -44,6 +41,9 @@ export const makeVTimelineProps = propsFactory({
|
|
|
44
41
|
type: String,
|
|
45
42
|
validator: v => ['start', 'end', 'both'].includes(v)
|
|
46
43
|
},
|
|
44
|
+
...only(makeVTimelineItemProps({
|
|
45
|
+
lineInset: 0
|
|
46
|
+
}), ['dotColor', 'fillDot', 'hideOpposite', 'iconColor', 'lineInset', 'size']),
|
|
47
47
|
...makeComponentProps(),
|
|
48
48
|
...makeDensityProps(),
|
|
49
49
|
...makeTagProps(),
|
|
@@ -71,7 +71,13 @@ export const VTimeline = genericComponent()({
|
|
|
71
71
|
},
|
|
72
72
|
VTimelineItem: {
|
|
73
73
|
density: toRef(props, 'density'),
|
|
74
|
-
|
|
74
|
+
dotColor: toRef(props, 'lineColor'),
|
|
75
|
+
fillDot: toRef(props, 'fillDot'),
|
|
76
|
+
hideOpposite: toRef(props, 'hideOpposite'),
|
|
77
|
+
iconColor: toRef(props, 'iconColor'),
|
|
78
|
+
lineColor: toRef(props, 'lineColor'),
|
|
79
|
+
lineInset: toRef(props, 'lineInset'),
|
|
80
|
+
size: toRef(props, 'size')
|
|
75
81
|
}
|
|
76
82
|
});
|
|
77
83
|
const sideClasses = computed(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VTimeline.mjs","names":["makeComponentProps","provideDefaults","makeDensityProps","useDensity","useRtl","makeTagProps","makeThemeProps","provideTheme","computed","toRef","convertToUnit","genericComponent","propsFactory","useRender","makeVTimelineProps","align","type","String","default","validator","v","includes","direction","justify","side","
|
|
1
|
+
{"version":3,"file":"VTimeline.mjs","names":["makeComponentProps","provideDefaults","makeDensityProps","useDensity","useRtl","makeTagProps","makeThemeProps","provideTheme","computed","toRef","convertToUnit","genericComponent","only","propsFactory","useRender","makeVTimelineItemProps","makeVTimelineProps","align","type","String","default","validator","v","includes","direction","justify","side","lineThickness","Number","lineColor","truncateLine","lineInset","VTimeline","name","props","setup","_ref","slots","themeClasses","densityClasses","rtlClasses","VTimelineDivider","VTimelineItem","density","dotColor","fillDot","hideOpposite","iconColor","size","sideClasses","truncateClasses","classes","_createVNode","tag","value","class","style"],"sources":["../../../src/components/VTimeline/VTimeline.tsx"],"sourcesContent":["// Styles\nimport './VTimeline.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { useRtl } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, genericComponent, only, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\nimport { makeVTimelineItemProps } from './VTimelineItem'\n\nexport type TimelineDirection = 'vertical' | 'horizontal'\nexport type TimelineSide = 'start' | 'end' | undefined\nexport type TimelineAlign = 'center' | 'start'\nexport type TimelineTruncateLine = 'start' | 'end' | 'both' | undefined\n\nexport const makeVTimelineProps = propsFactory({\n align: {\n type: String,\n default: 'center',\n validator: (v: any) => ['center', 'start'].includes(v),\n } as Prop<TimelineAlign>,\n direction: {\n type: String,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n } as Prop<TimelineDirection>,\n justify: {\n type: String,\n default: 'auto',\n validator: (v: any) => ['auto', 'center'].includes(v),\n },\n side: {\n type: String,\n validator: (v: any) => v == null || ['start', 'end'].includes(v),\n } as Prop<TimelineSide>,\n lineThickness: {\n type: [String, Number],\n default: 2,\n },\n lineColor: String,\n truncateLine: {\n type: String,\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n } as Prop<TimelineTruncateLine>,\n\n ...only(makeVTimelineItemProps({\n lineInset: 0,\n }), ['dotColor', 'fillDot', 'hideOpposite', 'iconColor', 'lineInset', 'size']),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VTimeline')\n\nexport const VTimeline = genericComponent()({\n name: 'VTimeline',\n\n props: makeVTimelineProps(),\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n const { rtlClasses } = useRtl()\n\n provideDefaults({\n VTimelineDivider: {\n lineColor: toRef(props, 'lineColor'),\n },\n VTimelineItem: {\n density: toRef(props, 'density'),\n dotColor: toRef(props, 'lineColor'),\n fillDot: toRef(props, 'fillDot'),\n hideOpposite: toRef(props, 'hideOpposite'),\n iconColor: toRef(props, 'iconColor'),\n lineColor: toRef(props, 'lineColor'),\n lineInset: toRef(props, 'lineInset'),\n size: toRef(props, 'size'),\n },\n })\n\n const sideClasses = computed(() => {\n const side = props.side ? props.side : props.density !== 'default' ? 'end' : null\n\n return side && `v-timeline--side-${side}`\n })\n\n const truncateClasses = computed(() => {\n const classes = [\n 'v-timeline--truncate-line-start',\n 'v-timeline--truncate-line-end',\n ]\n\n switch (props.truncateLine) {\n case 'both': return classes\n case 'start': return classes[0]\n case 'end': return classes[1]\n default: return null\n }\n })\n\n useRender(() => (\n <props.tag\n class={[\n 'v-timeline',\n `v-timeline--${props.direction}`,\n `v-timeline--align-${props.align}`,\n `v-timeline--justify-${props.justify}`,\n truncateClasses.value,\n {\n 'v-timeline--inset-line': !!props.lineInset,\n },\n themeClasses.value,\n densityClasses.value,\n sideClasses.value,\n rtlClasses.value,\n props.class,\n ]}\n style={[\n {\n '--v-timeline-line-thickness': convertToUnit(props.lineThickness),\n },\n props.style,\n ]}\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VTimeline = InstanceType<typeof VTimeline>\n"],"mappings":"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"}
|