@vuetify/nightly 3.5.9-dev.2024-03-29 → 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/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.5.9-dev.2024-03-29
2
+ * Vuetify v3.5.9-dev.2024-03-30
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -18952,7 +18952,7 @@
18952
18952
  }
18953
18953
  return {
18954
18954
  ...option,
18955
- title: t(option.title)
18955
+ title: !isNaN(Number(option.title)) ? option.title : t(option.title)
18956
18956
  };
18957
18957
  }));
18958
18958
  useRender(() => {
@@ -21002,6 +21002,14 @@
21002
21002
  hideWeekdays: Boolean,
21003
21003
  multiple: [Boolean, Number, String],
21004
21004
  showWeek: Boolean,
21005
+ transition: {
21006
+ type: String,
21007
+ default: 'picker-transition'
21008
+ },
21009
+ reverseTransition: {
21010
+ type: String,
21011
+ default: 'picker-reverse-transition'
21012
+ },
21005
21013
  ...makeCalendarProps()
21006
21014
  }, 'VDatePickerMonth');
21007
21015
  const VDatePickerMonth = genericComponent()({
@@ -21026,6 +21034,10 @@
21026
21034
  const adapter = useDate();
21027
21035
  const rangeStart = vue.shallowRef();
21028
21036
  const rangeStop = vue.shallowRef();
21037
+ const isReverse = vue.shallowRef(false);
21038
+ const transition = vue.computed(() => {
21039
+ return !isReverse.value ? props.transition : props.reverseTransition;
21040
+ });
21029
21041
  if (props.multiple === 'range' && model.value.length > 0) {
21030
21042
  rangeStart.value = model.value[0];
21031
21043
  if (model.value.length > 1) {
@@ -21036,6 +21048,10 @@
21036
21048
  const max = ['number', 'string'].includes(typeof props.multiple) ? Number(props.multiple) : Infinity;
21037
21049
  return model.value.length >= max;
21038
21050
  });
21051
+ vue.watch(daysInMonth, (val, oldVal) => {
21052
+ if (!oldVal) return;
21053
+ isReverse.value = adapter.isBefore(val[0].date, oldVal[0].date);
21054
+ });
21039
21055
  function onRangeClick(value) {
21040
21056
  const _value = adapter.startOfDay(value);
21041
21057
  if (!rangeStart.value) {
@@ -21095,48 +21111,53 @@
21095
21111
  "class": "v-date-picker-month__day"
21096
21112
  }, [vue.createTextVNode("\xA0")]), weekNumbers.value.map(week => vue.createVNode("div", {
21097
21113
  "class": ['v-date-picker-month__day', 'v-date-picker-month__day--adjacent']
21098
- }, [week]))]), vue.createVNode("div", {
21099
- "ref": daysRef,
21100
- "class": "v-date-picker-month__days"
21101
- }, [!props.hideWeekdays && adapter.getWeekdays().map(weekDay => vue.createVNode("div", {
21102
- "class": ['v-date-picker-month__day', 'v-date-picker-month__weekday']
21103
- }, [weekDay])), daysInMonth.value.map((item, i) => {
21104
- const slotProps = {
21105
- props: {
21106
- onClick: () => onClick(item.date)
21107
- },
21108
- item,
21109
- i
21110
- };
21111
- if (atMax.value && !item.isSelected) {
21112
- item.isDisabled = true;
21113
- }
21114
- return vue.createVNode("div", {
21115
- "class": ['v-date-picker-month__day', {
21116
- 'v-date-picker-month__day--adjacent': item.isAdjacent,
21117
- 'v-date-picker-month__day--hide-adjacent': item.isHidden,
21118
- 'v-date-picker-month__day--selected': item.isSelected,
21119
- 'v-date-picker-month__day--week-end': item.isWeekEnd,
21120
- 'v-date-picker-month__day--week-start': item.isWeekStart
21121
- }],
21122
- "data-v-date": !item.isDisabled ? item.isoDate : undefined
21123
- }, [(props.showAdjacentMonths || !item.isAdjacent) && vue.createVNode(VDefaultsProvider, {
21124
- "defaults": {
21125
- VBtn: {
21126
- class: 'v-date-picker-month__day-btn',
21127
- color: (item.isSelected || item.isToday) && !item.isDisabled ? props.color : undefined,
21128
- disabled: item.isDisabled,
21129
- icon: true,
21130
- ripple: false,
21131
- text: item.localized,
21132
- variant: item.isDisabled ? item.isToday ? 'outlined' : 'text' : item.isToday && !item.isSelected ? 'outlined' : 'flat',
21114
+ }, [week]))]), vue.createVNode(MaybeTransition, {
21115
+ "name": transition.value
21116
+ }, {
21117
+ default: () => [vue.createVNode("div", {
21118
+ "ref": daysRef,
21119
+ "key": daysInMonth.value[0].date.toString(),
21120
+ "class": "v-date-picker-month__days"
21121
+ }, [!props.hideWeekdays && adapter.getWeekdays().map(weekDay => vue.createVNode("div", {
21122
+ "class": ['v-date-picker-month__day', 'v-date-picker-month__weekday']
21123
+ }, [weekDay])), daysInMonth.value.map((item, i) => {
21124
+ const slotProps = {
21125
+ props: {
21133
21126
  onClick: () => onClick(item.date)
21134
- }
21127
+ },
21128
+ item,
21129
+ i
21130
+ };
21131
+ if (atMax.value && !item.isSelected) {
21132
+ item.isDisabled = true;
21135
21133
  }
21136
- }, {
21137
- default: () => [slots.day?.(slotProps) ?? vue.createVNode(VBtn, slotProps.props, null)]
21138
- })]);
21139
- })])]);
21134
+ return vue.createVNode("div", {
21135
+ "class": ['v-date-picker-month__day', {
21136
+ 'v-date-picker-month__day--adjacent': item.isAdjacent,
21137
+ 'v-date-picker-month__day--hide-adjacent': item.isHidden,
21138
+ 'v-date-picker-month__day--selected': item.isSelected,
21139
+ 'v-date-picker-month__day--week-end': item.isWeekEnd,
21140
+ 'v-date-picker-month__day--week-start': item.isWeekStart
21141
+ }],
21142
+ "data-v-date": !item.isDisabled ? item.isoDate : undefined
21143
+ }, [(props.showAdjacentMonths || !item.isAdjacent) && vue.createVNode(VDefaultsProvider, {
21144
+ "defaults": {
21145
+ VBtn: {
21146
+ class: 'v-date-picker-month__day-btn',
21147
+ color: (item.isSelected || item.isToday) && !item.isDisabled ? props.color : undefined,
21148
+ disabled: item.isDisabled,
21149
+ icon: true,
21150
+ ripple: false,
21151
+ text: item.localized,
21152
+ variant: item.isDisabled ? item.isToday ? 'outlined' : 'text' : item.isToday && !item.isSelected ? 'outlined' : 'flat',
21153
+ onClick: () => onClick(item.date)
21154
+ }
21155
+ }
21156
+ }, {
21157
+ default: () => [slots.day?.(slotProps) ?? vue.createVNode(VBtn, slotProps.props, null)]
21158
+ })]);
21159
+ })])]
21160
+ })]);
21140
21161
  }
21141
21162
  });
21142
21163
 
@@ -26263,7 +26284,7 @@
26263
26284
  goTo
26264
26285
  };
26265
26286
  }
26266
- const version$1 = "3.5.9-dev.2024-03-29";
26287
+ const version$1 = "3.5.9-dev.2024-03-30";
26267
26288
  createVuetify$1.version = version$1;
26268
26289
 
26269
26290
  // Vue's inject() can only be used in setup
@@ -26288,7 +26309,7 @@
26288
26309
  ...options
26289
26310
  });
26290
26311
  };
26291
- const version = "3.5.9-dev.2024-03-29";
26312
+ const version = "3.5.9-dev.2024-03-30";
26292
26313
  createVuetify.version = version;
26293
26314
 
26294
26315
  exports.blueprints = index;