vuetify 3.7.11 → 3.7.13
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/json/attributes.json +2699 -2703
- package/dist/json/importMap-labs.json +28 -28
- package/dist/json/importMap.json +166 -166
- package/dist/json/tags.json +3 -4
- package/dist/json/web-types.json +5312 -5321
- package/dist/vuetify-labs.css +3272 -3266
- package/dist/vuetify-labs.d.ts +296 -326
- package/dist/vuetify-labs.esm.js +301 -159
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +300 -158
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +2292 -2294
- package/dist/vuetify.d.ts +258 -297
- package/dist/vuetify.esm.js +177 -99
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +176 -98
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +266 -252
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.mts +1 -1
- package/lib/blueprints/md1.d.mts +1 -1
- package/lib/blueprints/md2.d.mts +1 -1
- package/lib/blueprints/md3.d.mts +1 -1
- package/lib/components/VAlert/VAlert.mjs +1 -1
- package/lib/components/VAlert/index.d.mts +1 -1
- package/lib/components/VAppBar/VAppBar.mjs +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs +1 -1
- package/lib/components/VAppBar/index.d.mts +5 -5
- package/lib/components/VAutocomplete/VAutocomplete.mjs +3 -3
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +29 -51
- package/lib/components/VAvatar/index.d.mts +1 -1
- package/lib/components/VBadge/VBadge.mjs +1 -1
- package/lib/components/VBadge/index.d.mts +1 -1
- package/lib/components/VBanner/VBanner.mjs +1 -1
- package/lib/components/VBanner/index.d.mts +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.css +1 -0
- package/lib/components/VBottomNavigation/VBottomNavigation.sass +1 -0
- package/lib/components/VBottomNavigation/index.d.mts +1 -1
- package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +1 -1
- package/lib/components/VBreadcrumbs/index.d.mts +5 -5
- package/lib/components/VBtn/VBtn.mjs +1 -1
- package/lib/components/VBtn/index.d.mts +5 -5
- package/lib/components/VBtnGroup/VBtnGroup.mjs +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -1
- package/lib/components/VBtnToggle/index.d.mts +1 -1
- package/lib/components/VCard/VCard.mjs +1 -1
- package/lib/components/VCard/VCardItem.mjs +1 -1
- package/lib/components/VCard/VCardSubtitle.mjs +1 -1
- package/lib/components/VCard/VCardText.mjs +1 -1
- package/lib/components/VCard/index.d.mts +5 -5
- package/lib/components/VCarousel/VCarousel.mjs +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
- package/lib/components/VCarousel/index.d.mts +1 -1
- package/lib/components/VCheckbox/VCheckbox.mjs +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +1 -1
- package/lib/components/VCheckbox/index.d.mts +1 -1
- package/lib/components/VChip/VChip.mjs +1 -1
- package/lib/components/VChip/index.d.mts +5 -5
- package/lib/components/VChipGroup/VChipGroup.mjs +1 -1
- package/lib/components/VChipGroup/index.d.mts +1 -1
- package/lib/components/VColorPicker/VColorPicker.mjs +1 -1
- package/lib/components/VColorPicker/index.d.mts +10 -10
- package/lib/components/VCombobox/VCombobox.mjs +4 -4
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +29 -51
- package/lib/components/VConfirmEdit/VConfirmEdit.mjs +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +5 -5
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs.map +1 -1
- package/lib/components/VConfirmEdit/index.d.mts +1 -1
- package/lib/components/VCounter/VCounter.mjs +1 -1
- package/lib/components/VDataIterator/index.d.mts +1 -1
- package/lib/components/VDataTable/VDataTable.mjs +1 -1
- package/lib/components/VDataTable/VDataTableFooter.mjs +1 -1
- package/lib/components/VDataTable/VDataTableGroupHeaderRow.mjs +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.mjs +1 -1
- package/lib/components/VDataTable/VDataTableRow.mjs +1 -1
- package/lib/components/VDataTable/VDataTableRows.mjs +1 -1
- package/lib/components/VDataTable/VDataTableServer.mjs +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.mjs +1 -1
- package/lib/components/VDataTable/composables/sort.mjs +12 -8
- package/lib/components/VDataTable/composables/sort.mjs.map +1 -1
- package/lib/components/VDataTable/index.d.mts +1 -1
- package/lib/components/VDatePicker/VDatePicker.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerControls.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerControls.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +3 -3
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonths.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.mjs +1 -1
- package/lib/components/VDatePicker/index.d.mts +38 -38
- package/lib/components/VDialog/VDialog.mjs +1 -1
- package/lib/components/VDialog/__test__/VDialog.spec.cy.mjs +1 -1
- package/lib/components/VDialog/index.d.mts +3 -3
- package/lib/components/VEmptyState/VEmptyState.mjs +1 -1
- package/lib/components/VEmptyState/index.d.mts +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +1 -1
- package/lib/components/VFab/VFab.mjs +1 -1
- package/lib/components/VFab/index.d.mts +5 -5
- package/lib/components/VField/VField.mjs +1 -1
- package/lib/components/VField/VFieldLabel.mjs +1 -1
- package/lib/components/VField/index.d.mts +1 -1
- package/lib/components/VFileInput/VFileInput.mjs +2 -3
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.mts +4 -4
- package/lib/components/VFooter/VFooter.mjs +1 -1
- package/lib/components/VGrid/VContainer.mjs +1 -1
- package/lib/components/VIcon/index.d.mts +1 -1
- package/lib/components/VImg/VImg.mjs +1 -1
- package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
- package/lib/components/VInput/VInput.mjs +3 -3
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.mts +1 -1
- package/lib/components/VItemGroup/index.d.mts +1 -1
- package/lib/components/VLazy/VLazy.mjs +1 -1
- package/lib/components/VList/VList.mjs +3 -6
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListChildren.mjs +1 -1
- package/lib/components/VList/VListGroup.mjs +1 -1
- package/lib/components/VList/VListItem.mjs +3 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItemAction.mjs +1 -1
- package/lib/components/VList/VListItemMedia.mjs +1 -1
- package/lib/components/VList/VListItemSubtitle.mjs +1 -1
- package/lib/components/VList/index.d.mts +24 -21
- package/lib/components/VMenu/VMenu.mjs +1 -1
- package/lib/components/VMenu/index.d.mts +3 -3
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +0 -4
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +3 -6
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +0 -5
- package/lib/components/VOtpInput/VOtpInput.mjs +3 -3
- package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.css +2 -1
- package/lib/components/VOverlay/VOverlay.mjs +1 -1
- package/lib/components/VOverlay/VOverlay.sass +2 -1
- package/lib/components/VOverlay/_variables.scss +1 -1
- package/lib/components/VPagination/VPagination.mjs +1 -1
- package/lib/components/VPagination/index.d.mts +1 -1
- package/lib/components/VParallax/VParallax.mjs +1 -1
- package/lib/components/VRadio/VRadio.mjs +1 -1
- package/lib/components/VRadio/index.d.mts +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs +1 -1
- package/lib/components/VRadioGroup/index.d.mts +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.mjs +1 -1
- package/lib/components/VRating/VRating.mjs +1 -1
- package/lib/components/VRating/index.d.mts +1 -1
- package/lib/components/VSelect/VSelect.mjs +5 -5
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +29 -51
- package/lib/components/VSelectionControl/VSelectionControl.mjs +1 -1
- package/lib/components/VSelectionControl/index.d.mts +1 -1
- package/lib/components/VSelectionControlGroup/index.d.mts +1 -1
- package/lib/components/VSheet/VSheet.mjs +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +1 -1
- package/lib/components/VSlideGroup/index.d.mts +1 -1
- package/lib/components/VSlider/VSlider.mjs +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +1 -1
- package/lib/components/VSlider/slider.mjs +25 -12
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +1 -1
- package/lib/components/VSnackbar/index.d.mts +3 -3
- package/lib/components/VSparkline/VBarline.mjs +1 -2
- package/lib/components/VSparkline/VBarline.mjs.map +1 -1
- package/lib/components/VSparkline/VSparkline.mjs +1 -1
- package/lib/components/VSparkline/VTrendline.mjs +1 -2
- package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.mjs +1 -1
- package/lib/components/VStepper/VStepper.mjs +3 -3
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepperItem.mjs +1 -1
- package/lib/components/VStepper/VStepperWindow.mjs +1 -1
- package/lib/components/VStepper/VStepperWindowItem.mjs +1 -1
- package/lib/components/VStepper/index.d.mts +1 -1
- package/lib/components/VSwitch/VSwitch.mjs +1 -1
- package/lib/components/VSwitch/index.d.mts +1 -1
- package/lib/components/VSystemBar/VSystemBar.mjs +1 -1
- package/lib/components/VTabs/VTab.mjs +1 -1
- package/lib/components/VTabs/VTabs.mjs +1 -1
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/VTabsWindow.mjs +1 -1
- package/lib/components/VTabs/VTabsWindowItem.mjs +1 -1
- package/lib/components/VTabs/index.d.mts +21 -21
- package/lib/components/VTextField/VTextField.mjs +1 -1
- package/lib/components/VTextField/index.d.mts +7 -7
- package/lib/components/VTextarea/VTextarea.mjs +1 -1
- package/lib/components/VTextarea/index.d.mts +4 -4
- package/lib/components/VTimeline/VTimeline.mjs +3 -3
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +1 -1
- package/lib/components/VTimeline/index.d.mts +1 -1
- package/lib/components/VToolbar/VToolbar.mjs +1 -1
- package/lib/components/VTooltip/VTooltip.mjs +1 -1
- package/lib/components/VTooltip/index.d.mts +3 -3
- package/lib/components/VValidation/index.d.mts +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +1 -1
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +1 -1
- package/lib/components/VWindow/VWindow.mjs +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +1 -1
- package/lib/components/VWindow/index.d.mts +1 -1
- package/lib/components/index.d.mts +198 -237
- package/lib/components/transitions/dialog-transition.mjs +1 -2
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/composables/calendar.mjs +4 -1
- package/lib/composables/calendar.mjs.map +1 -1
- package/lib/composables/icons.mjs +1 -1
- package/lib/composables/list-items.mjs +69 -17
- package/lib/composables/list-items.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +16 -1
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +6 -7
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/variant.mjs +1 -1
- package/lib/directives/ripple/index.mjs +7 -5
- package/lib/directives/ripple/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/iconsets/fa-svg.d.mts +1 -1
- package/lib/iconsets/fa.d.mts +1 -1
- package/lib/iconsets/fa4.d.mts +1 -1
- package/lib/iconsets/md.d.mts +1 -1
- package/lib/iconsets/mdi-svg.d.mts +1 -1
- package/lib/iconsets/mdi.d.mts +1 -1
- package/lib/index.d.mts +61 -61
- package/lib/labs/VCalendar/VCalendar.mjs +1 -1
- package/lib/labs/VCalendar/VCalendarDay.mjs +1 -1
- package/lib/labs/VCalendar/index.d.mts +8 -2
- package/lib/labs/VDateInput/VDateInput.mjs +21 -10
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VDateInput/index.d.mts +19 -19
- package/lib/labs/VFileUpload/VFileUpload.mjs +3 -3
- package/lib/labs/VFileUpload/VFileUpload.mjs.map +1 -1
- package/lib/labs/VFileUpload/VFileUploadItem.mjs +1 -1
- package/lib/labs/VFileUpload/index.d.mts +5 -5
- package/lib/labs/VNumberInput/VNumberInput.css +10 -2
- package/lib/labs/VNumberInput/VNumberInput.mjs +94 -36
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VNumberInput/VNumberInput.sass +12 -2
- package/lib/labs/VNumberInput/index.d.mts +59 -32
- package/lib/labs/VPicker/VPicker.mjs +1 -1
- package/lib/labs/VSnackbarQueue/VSnackbarQueue.mjs +1 -1
- package/lib/labs/VSnackbarQueue/index.d.mts +3 -3
- package/lib/labs/VStepperVertical/VStepperVertical.mjs +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalActions.mjs +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs +1 -1
- package/lib/labs/VStepperVertical/index.d.mts +1 -1
- package/lib/labs/VTimePicker/VTimePicker.mjs +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs +1 -1
- package/lib/labs/VTreeview/VTreeview.mjs +2 -2
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewChildren.mjs +2 -8
- package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewGroup.mjs +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.mjs +10 -12
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
- package/lib/labs/VTreeview/index.d.mts +12 -36
- package/lib/labs/components.d.mts +103 -94
- package/lib/locale/adapters/vue-i18n.mjs +0 -1
- package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
- package/lib/util/helpers.mjs +6 -9
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +17 -16
package/dist/vuetify-labs.esm.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.7.
|
|
2
|
+
* Vuetify v3.7.13
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { shallowRef,
|
|
7
|
+
import { shallowRef, reactive, computed, watchEffect, toRefs, capitalize, unref, Fragment, isVNode, Comment, warn, getCurrentInstance as getCurrentInstance$1, ref, provide, inject as inject$1, defineComponent as defineComponent$1, h, camelize, onBeforeUnmount, watch, readonly, onMounted, onDeactivated, onActivated, onScopeDispose, effectScope, toRaw, createVNode, TransitionGroup, Transition, mergeProps, isRef, toRef, onBeforeMount, nextTick, withDirectives, resolveDirective, vShow, onUpdated, Text, resolveDynamicComponent, markRaw, Teleport, cloneVNode, createTextVNode, onUnmounted, onBeforeUpdate, withModifiers, toDisplayString, vModelText, resolveComponent, render } from 'vue';
|
|
8
8
|
|
|
9
9
|
// Types
|
|
10
10
|
// eslint-disable-line vue/prefer-import-from-vue
|
|
@@ -226,10 +226,9 @@ function has(obj, key) {
|
|
|
226
226
|
// Array of keys
|
|
227
227
|
function pick(obj, paths) {
|
|
228
228
|
const found = {};
|
|
229
|
-
const
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
found[path] = obj[path];
|
|
229
|
+
for (const key of paths) {
|
|
230
|
+
if (Object.hasOwn(obj, key)) {
|
|
231
|
+
found[key] = obj[key];
|
|
233
232
|
}
|
|
234
233
|
}
|
|
235
234
|
return found;
|
|
@@ -243,7 +242,7 @@ function pickWithRest(obj, paths, exclude) {
|
|
|
243
242
|
const found = Object.create(null);
|
|
244
243
|
const rest = Object.create(null);
|
|
245
244
|
for (const key in obj) {
|
|
246
|
-
if (paths.some(path => path instanceof RegExp ? path.test(key) : path === key) &&
|
|
245
|
+
if (paths.some(path => path instanceof RegExp ? path.test(key) : path === key) && true) {
|
|
247
246
|
found[key] = obj[key];
|
|
248
247
|
} else {
|
|
249
248
|
rest[key] = obj[key];
|
|
@@ -258,11 +257,6 @@ function omit(obj, exclude) {
|
|
|
258
257
|
exclude.forEach(prop => delete clone[prop]);
|
|
259
258
|
return clone;
|
|
260
259
|
}
|
|
261
|
-
function only(obj, include) {
|
|
262
|
-
const clone = {};
|
|
263
|
-
include.forEach(prop => clone[prop] = obj[prop]);
|
|
264
|
-
return clone;
|
|
265
|
-
}
|
|
266
260
|
const onRE = /^on[^a-z]/;
|
|
267
261
|
const isOn = key => onRE.test(key);
|
|
268
262
|
const bubblingEvents = ['onAfterscriptexecute', 'onAnimationcancel', 'onAnimationend', 'onAnimationiteration', 'onAnimationstart', 'onAuxclick', 'onBeforeinput', 'onBeforescriptexecute', 'onChange', 'onClick', 'onCompositionend', 'onCompositionstart', 'onCompositionupdate', 'onContextmenu', 'onCopy', 'onCut', 'onDblclick', 'onFocusin', 'onFocusout', 'onFullscreenchange', 'onFullscreenerror', 'onGesturechange', 'onGestureend', 'onGesturestart', 'onGotpointercapture', 'onInput', 'onKeydown', 'onKeypress', 'onKeyup', 'onLostpointercapture', 'onMousedown', 'onMousemove', 'onMouseout', 'onMouseover', 'onMouseup', 'onMousewheel', 'onPaste', 'onPointercancel', 'onPointerdown', 'onPointerenter', 'onPointerleave', 'onPointermove', 'onPointerout', 'onPointerover', 'onPointerup', 'onReset', 'onSelect', 'onSubmit', 'onTouchcancel', 'onTouchend', 'onTouchmove', 'onTouchstart', 'onTransitioncancel', 'onTransitionend', 'onTransitionrun', 'onTransitionstart', 'onWheel'];
|
|
@@ -577,6 +571,9 @@ function checkPrintable(e) {
|
|
|
577
571
|
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
|
578
572
|
return isPrintableChar && noModifier;
|
|
579
573
|
}
|
|
574
|
+
function isPrimitive(value) {
|
|
575
|
+
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint';
|
|
576
|
+
}
|
|
580
577
|
|
|
581
578
|
// Utilities
|
|
582
579
|
const block = ['top', 'bottom'];
|
|
@@ -874,7 +871,7 @@ function APCAcontrast(text, background) {
|
|
|
874
871
|
// WoB should always return negative value.
|
|
875
872
|
|
|
876
873
|
const SAPC = (Ybg ** revBG - Ytxt ** revTXT) * scaleWoB;
|
|
877
|
-
outputContrast = SAPC > -
|
|
874
|
+
outputContrast = SAPC > -1e-3 ? 0.0 : SAPC > -0.078 ? SAPC - SAPC * loConFactor * loConOffset : SAPC + loConOffset;
|
|
878
875
|
}
|
|
879
876
|
return outputContrast * 100;
|
|
880
877
|
}
|
|
@@ -914,7 +911,7 @@ function toXYZ$1(lab) {
|
|
|
914
911
|
// Types
|
|
915
912
|
|
|
916
913
|
// For converting XYZ to sRGB
|
|
917
|
-
const srgbForwardMatrix = [[3.2406, -1.5372, -0.4986], [-0.9689, 1.8758, 0.0415], [0.0557, -0.
|
|
914
|
+
const srgbForwardMatrix = [[3.2406, -1.5372, -0.4986], [-0.9689, 1.8758, 0.0415], [0.0557, -0.204, 1.0570]];
|
|
918
915
|
|
|
919
916
|
// Forward gamma adjust
|
|
920
917
|
const srgbForwardTransform = C => C <= 0.0031308 ? C * 12.92 : 1.055 * C ** (1 / 2.4) - 0.055;
|
|
@@ -1262,7 +1259,7 @@ function getForeground(color) {
|
|
|
1262
1259
|
function getCurrentInstance(name, message) {
|
|
1263
1260
|
const vm = getCurrentInstance$1();
|
|
1264
1261
|
if (!vm) {
|
|
1265
|
-
throw new Error(`[Vuetify] ${name} ${
|
|
1262
|
+
throw new Error(`[Vuetify] ${name} ${'must be called from inside a setup function'}`);
|
|
1266
1263
|
}
|
|
1267
1264
|
return vm;
|
|
1268
1265
|
}
|
|
@@ -2815,6 +2812,8 @@ function ExpandTransitionGenerator () {
|
|
|
2815
2812
|
}
|
|
2816
2813
|
}
|
|
2817
2814
|
|
|
2815
|
+
// Utilities
|
|
2816
|
+
|
|
2818
2817
|
// Types
|
|
2819
2818
|
|
|
2820
2819
|
const makeVDialogTransitionProps = propsFactory({
|
|
@@ -4717,7 +4716,6 @@ function useIntersectionObserver(callback, options) {
|
|
|
4717
4716
|
const isIntersecting = shallowRef(false);
|
|
4718
4717
|
if (SUPPORTS_INTERSECTION) {
|
|
4719
4718
|
const observer = new IntersectionObserver(entries => {
|
|
4720
|
-
callback?.(entries, observer);
|
|
4721
4719
|
isIntersecting.value = !!entries.find(entry => entry.isIntersecting);
|
|
4722
4720
|
}, options);
|
|
4723
4721
|
onBeforeUnmount(() => {
|
|
@@ -5345,11 +5343,13 @@ const ripples = {
|
|
|
5345
5343
|
animation.classList.add('v-ripple__animation--visible');
|
|
5346
5344
|
transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`);
|
|
5347
5345
|
animation.dataset.activated = String(performance.now());
|
|
5348
|
-
|
|
5349
|
-
|
|
5350
|
-
|
|
5351
|
-
|
|
5352
|
-
|
|
5346
|
+
requestAnimationFrame(() => {
|
|
5347
|
+
requestAnimationFrame(() => {
|
|
5348
|
+
animation.classList.remove('v-ripple__animation--enter');
|
|
5349
|
+
animation.classList.add('v-ripple__animation--in');
|
|
5350
|
+
transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`);
|
|
5351
|
+
});
|
|
5352
|
+
});
|
|
5353
5353
|
},
|
|
5354
5354
|
hide(el) {
|
|
5355
5355
|
if (!el?._ripple?.enabled) return;
|
|
@@ -6887,7 +6887,7 @@ const makeVInputProps = propsFactory({
|
|
|
6887
6887
|
'onClick:append': EventProp(),
|
|
6888
6888
|
...makeComponentProps(),
|
|
6889
6889
|
...makeDensityProps(),
|
|
6890
|
-
...
|
|
6890
|
+
...pick(makeDimensionProps(), ['maxWidth', 'minWidth', 'width']),
|
|
6891
6891
|
...makeThemeProps(),
|
|
6892
6892
|
...makeValidationProps()
|
|
6893
6893
|
}, 'VInput');
|
|
@@ -8344,12 +8344,12 @@ const independentSelectStrategy = mandatory => {
|
|
|
8344
8344
|
return selected;
|
|
8345
8345
|
},
|
|
8346
8346
|
in: (v, children, parents) => {
|
|
8347
|
-
|
|
8347
|
+
const map = new Map();
|
|
8348
8348
|
for (const id of v || []) {
|
|
8349
|
-
|
|
8349
|
+
strategy.select({
|
|
8350
8350
|
id,
|
|
8351
8351
|
value: true,
|
|
8352
|
-
selected:
|
|
8352
|
+
selected: map,
|
|
8353
8353
|
children,
|
|
8354
8354
|
parents
|
|
8355
8355
|
});
|
|
@@ -8384,11 +8384,10 @@ const independentSingleSelectStrategy = mandatory => {
|
|
|
8384
8384
|
});
|
|
8385
8385
|
},
|
|
8386
8386
|
in: (v, children, parents) => {
|
|
8387
|
-
let map = new Map();
|
|
8388
8387
|
if (v?.length) {
|
|
8389
|
-
|
|
8388
|
+
return parentStrategy.in(v.slice(0, 1), children, parents);
|
|
8390
8389
|
}
|
|
8391
|
-
return
|
|
8390
|
+
return new Map();
|
|
8392
8391
|
},
|
|
8393
8392
|
out: (v, children, parents) => {
|
|
8394
8393
|
return parentStrategy.out(v, children, parents);
|
|
@@ -8491,7 +8490,7 @@ const classicSelectStrategy = mandatory => {
|
|
|
8491
8490
|
map = strategy.select({
|
|
8492
8491
|
id,
|
|
8493
8492
|
value: true,
|
|
8494
|
-
selected:
|
|
8493
|
+
selected: map,
|
|
8495
8494
|
children,
|
|
8496
8495
|
parents
|
|
8497
8496
|
});
|
|
@@ -8716,7 +8715,22 @@ const useNested = props => {
|
|
|
8716
8715
|
parents: parents.value,
|
|
8717
8716
|
event
|
|
8718
8717
|
});
|
|
8719
|
-
newActivated
|
|
8718
|
+
if (newActivated.size !== activated.value.size) {
|
|
8719
|
+
activated.value = newActivated;
|
|
8720
|
+
} else {
|
|
8721
|
+
for (const value of newActivated) {
|
|
8722
|
+
if (!activated.value.has(value)) {
|
|
8723
|
+
activated.value = newActivated;
|
|
8724
|
+
return;
|
|
8725
|
+
}
|
|
8726
|
+
}
|
|
8727
|
+
for (const value of activated.value) {
|
|
8728
|
+
if (!newActivated.has(value)) {
|
|
8729
|
+
activated.value = newActivated;
|
|
8730
|
+
return;
|
|
8731
|
+
}
|
|
8732
|
+
}
|
|
8733
|
+
}
|
|
8720
8734
|
},
|
|
8721
8735
|
children,
|
|
8722
8736
|
parents,
|
|
@@ -9163,7 +9177,8 @@ const VListItem = genericComponent()({
|
|
|
9163
9177
|
list,
|
|
9164
9178
|
select,
|
|
9165
9179
|
root,
|
|
9166
|
-
id: uid
|
|
9180
|
+
id: uid,
|
|
9181
|
+
link
|
|
9167
9182
|
};
|
|
9168
9183
|
}
|
|
9169
9184
|
});
|
|
@@ -9375,10 +9390,7 @@ const makeItemsProps = propsFactory({
|
|
|
9375
9390
|
default: 'props'
|
|
9376
9391
|
},
|
|
9377
9392
|
returnObject: Boolean,
|
|
9378
|
-
valueComparator:
|
|
9379
|
-
type: Function,
|
|
9380
|
-
default: deepEqual
|
|
9381
|
-
}
|
|
9393
|
+
valueComparator: Function
|
|
9382
9394
|
}, 'list-items');
|
|
9383
9395
|
function transformItem$3(props, item) {
|
|
9384
9396
|
const title = getPropertyFromItem(item, props.itemTitle, item);
|
|
@@ -9399,29 +9411,84 @@ function transformItem$3(props, item) {
|
|
|
9399
9411
|
};
|
|
9400
9412
|
}
|
|
9401
9413
|
function transformItems$3(props, items) {
|
|
9414
|
+
const _props = pick(props, ['itemTitle', 'itemValue', 'itemChildren', 'itemProps', 'returnObject', 'valueComparator']);
|
|
9402
9415
|
const array = [];
|
|
9403
9416
|
for (const item of items) {
|
|
9404
|
-
array.push(transformItem$3(
|
|
9417
|
+
array.push(transformItem$3(_props, item));
|
|
9405
9418
|
}
|
|
9406
9419
|
return array;
|
|
9407
9420
|
}
|
|
9408
9421
|
function useItems(props) {
|
|
9409
9422
|
const items = computed(() => transformItems$3(props, props.items));
|
|
9410
9423
|
const hasNullItem = computed(() => items.value.some(item => item.value === null));
|
|
9424
|
+
const itemsMap = shallowRef(new Map());
|
|
9425
|
+
const keylessItems = shallowRef([]);
|
|
9426
|
+
watchEffect(() => {
|
|
9427
|
+
const _items = items.value;
|
|
9428
|
+
const map = new Map();
|
|
9429
|
+
const keyless = [];
|
|
9430
|
+
for (let i = 0; i < _items.length; i++) {
|
|
9431
|
+
const item = _items[i];
|
|
9432
|
+
if (isPrimitive(item.value) || item.value === null) {
|
|
9433
|
+
let values = map.get(item.value);
|
|
9434
|
+
if (!values) {
|
|
9435
|
+
values = [];
|
|
9436
|
+
map.set(item.value, values);
|
|
9437
|
+
}
|
|
9438
|
+
values.push(item);
|
|
9439
|
+
} else {
|
|
9440
|
+
keyless.push(item);
|
|
9441
|
+
}
|
|
9442
|
+
}
|
|
9443
|
+
itemsMap.value = map;
|
|
9444
|
+
keylessItems.value = keyless;
|
|
9445
|
+
});
|
|
9411
9446
|
function transformIn(value) {
|
|
9412
|
-
|
|
9447
|
+
// Cache unrefed values outside the loop,
|
|
9448
|
+
// proxy getters can be slow when you call them a billion times
|
|
9449
|
+
const _items = itemsMap.value;
|
|
9450
|
+
const _allItems = items.value;
|
|
9451
|
+
const _keylessItems = keylessItems.value;
|
|
9452
|
+
const _hasNullItem = hasNullItem.value;
|
|
9453
|
+
const _returnObject = props.returnObject;
|
|
9454
|
+
const hasValueComparator = !!props.valueComparator;
|
|
9455
|
+
const valueComparator = props.valueComparator || deepEqual;
|
|
9456
|
+
const _props = pick(props, ['itemTitle', 'itemValue', 'itemChildren', 'itemProps', 'returnObject', 'valueComparator']);
|
|
9457
|
+
const returnValue = [];
|
|
9458
|
+
main: for (const v of value) {
|
|
9413
9459
|
// When the model value is null, return an InternalItem
|
|
9414
9460
|
// based on null only if null is one of the items
|
|
9415
|
-
|
|
9416
|
-
|
|
9417
|
-
|
|
9418
|
-
if
|
|
9419
|
-
|
|
9420
|
-
|
|
9421
|
-
|
|
9461
|
+
if (!_hasNullItem && v === null) continue;
|
|
9462
|
+
|
|
9463
|
+
// String model value means value is a custom input value from combobox
|
|
9464
|
+
// Don't look up existing items if the model value is a string
|
|
9465
|
+
if (_returnObject && typeof v === 'string') {
|
|
9466
|
+
returnValue.push(transformItem$3(_props, v));
|
|
9467
|
+
continue;
|
|
9422
9468
|
}
|
|
9423
|
-
|
|
9424
|
-
|
|
9469
|
+
|
|
9470
|
+
// Fast path, items with primitive values and no
|
|
9471
|
+
// custom valueComparator can use a constant-time
|
|
9472
|
+
// map lookup instead of searching the items array
|
|
9473
|
+
const fastItems = _items.get(v);
|
|
9474
|
+
|
|
9475
|
+
// Slow path, always use valueComparator.
|
|
9476
|
+
// This is O(n^2) so we really don't want to
|
|
9477
|
+
// do it for more than a couple hundred items.
|
|
9478
|
+
if (hasValueComparator || !fastItems) {
|
|
9479
|
+
for (const item of hasValueComparator ? _allItems : _keylessItems) {
|
|
9480
|
+
if (valueComparator(v, item.value)) {
|
|
9481
|
+
returnValue.push(item);
|
|
9482
|
+
continue main;
|
|
9483
|
+
}
|
|
9484
|
+
}
|
|
9485
|
+
// Not an existing item, construct it from the model (#4000)
|
|
9486
|
+
returnValue.push(transformItem$3(_props, v));
|
|
9487
|
+
continue;
|
|
9488
|
+
}
|
|
9489
|
+
returnValue.push(...fastItems);
|
|
9490
|
+
}
|
|
9491
|
+
return returnValue;
|
|
9425
9492
|
}
|
|
9426
9493
|
function transformOut(value) {
|
|
9427
9494
|
return props.returnObject ? value.map(_ref => {
|
|
@@ -9445,9 +9512,6 @@ function useItems(props) {
|
|
|
9445
9512
|
|
|
9446
9513
|
// Types
|
|
9447
9514
|
|
|
9448
|
-
function isPrimitive(value) {
|
|
9449
|
-
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';
|
|
9450
|
-
}
|
|
9451
9515
|
function transformItem$2(props, item) {
|
|
9452
9516
|
const type = getPropertyFromItem(item, props.itemType, 'item');
|
|
9453
9517
|
const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle);
|
|
@@ -9637,7 +9701,7 @@ const VList = genericComponent()({
|
|
|
9637
9701
|
'v-list--slim': props.slim
|
|
9638
9702
|
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, props.class],
|
|
9639
9703
|
"style": [backgroundColorStyles.value, dimensionStyles.value, props.style],
|
|
9640
|
-
"tabindex": props.disabled
|
|
9704
|
+
"tabindex": props.disabled ? -1 : 0,
|
|
9641
9705
|
"role": "listbox",
|
|
9642
9706
|
"aria-activedescendant": undefined,
|
|
9643
9707
|
"onFocusin": onFocusin,
|
|
@@ -12496,7 +12560,7 @@ const VSelect = genericComponent()({
|
|
|
12496
12560
|
let keyboardLookupLastTime;
|
|
12497
12561
|
const displayItems = computed(() => {
|
|
12498
12562
|
if (props.hideSelected) {
|
|
12499
|
-
return items.value.filter(item => !model.value.some(s => props.valueComparator(s, item)));
|
|
12563
|
+
return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)));
|
|
12500
12564
|
}
|
|
12501
12565
|
return items.value;
|
|
12502
12566
|
});
|
|
@@ -12568,7 +12632,7 @@ const VSelect = genericComponent()({
|
|
|
12568
12632
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
12569
12633
|
if (item.props.disabled) return;
|
|
12570
12634
|
if (props.multiple) {
|
|
12571
|
-
const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value));
|
|
12635
|
+
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
12572
12636
|
const add = set == null ? !~index : set;
|
|
12573
12637
|
if (~index) {
|
|
12574
12638
|
const value = add ? [...model.value, item] : [...model.value];
|
|
@@ -12615,7 +12679,7 @@ const VSelect = genericComponent()({
|
|
|
12615
12679
|
}
|
|
12616
12680
|
watch(menu, () => {
|
|
12617
12681
|
if (!props.hideSelected && menu.value && model.value.length) {
|
|
12618
|
-
const index = displayItems.value.findIndex(item => model.value.some(s => props.valueComparator(s.value, item.value)));
|
|
12682
|
+
const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
|
|
12619
12683
|
IN_BROWSER && window.requestAnimationFrame(() => {
|
|
12620
12684
|
index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
|
|
12621
12685
|
});
|
|
@@ -13147,7 +13211,7 @@ const VAutocomplete = genericComponent()({
|
|
|
13147
13211
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
13148
13212
|
if (!item || item.props.disabled) return;
|
|
13149
13213
|
if (props.multiple) {
|
|
13150
|
-
const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value));
|
|
13214
|
+
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
13151
13215
|
const add = set == null ? !~index : set;
|
|
13152
13216
|
if (~index) {
|
|
13153
13217
|
const value = add ? [...model.value, item] : [...model.value];
|
|
@@ -15536,6 +15600,8 @@ const useSlider = _ref => {
|
|
|
15536
15600
|
const trackContainerRef = ref();
|
|
15537
15601
|
const activeThumbRef = ref();
|
|
15538
15602
|
function parseMouseMove(e) {
|
|
15603
|
+
const el = trackContainerRef.value?.$el;
|
|
15604
|
+
if (!el) return;
|
|
15539
15605
|
const vertical = props.direction === 'vertical';
|
|
15540
15606
|
const start = vertical ? 'top' : 'left';
|
|
15541
15607
|
const length = vertical ? 'height' : 'width';
|
|
@@ -15543,7 +15609,7 @@ const useSlider = _ref => {
|
|
|
15543
15609
|
const {
|
|
15544
15610
|
[start]: trackStart,
|
|
15545
15611
|
[length]: trackLength
|
|
15546
|
-
} =
|
|
15612
|
+
} = el.getBoundingClientRect();
|
|
15547
15613
|
const clickOffset = getPosition(e, position);
|
|
15548
15614
|
|
|
15549
15615
|
// It is possible for left to be NaN, force to number
|
|
@@ -15552,13 +15618,17 @@ const useSlider = _ref => {
|
|
|
15552
15618
|
return roundValue(min.value + clickPos * (max.value - min.value));
|
|
15553
15619
|
}
|
|
15554
15620
|
const handleStop = e => {
|
|
15555
|
-
|
|
15556
|
-
|
|
15557
|
-
|
|
15621
|
+
const value = parseMouseMove(e);
|
|
15622
|
+
if (value != null) {
|
|
15623
|
+
onSliderEnd({
|
|
15624
|
+
value
|
|
15625
|
+
});
|
|
15626
|
+
}
|
|
15558
15627
|
mousePressed.value = false;
|
|
15559
15628
|
startOffset.value = 0;
|
|
15560
15629
|
};
|
|
15561
15630
|
const handleStart = e => {
|
|
15631
|
+
const value = parseMouseMove(e);
|
|
15562
15632
|
activeThumbRef.value = getActiveThumb(e);
|
|
15563
15633
|
if (!activeThumbRef.value) return;
|
|
15564
15634
|
mousePressed.value = true;
|
|
@@ -15566,13 +15636,17 @@ const useSlider = _ref => {
|
|
|
15566
15636
|
startOffset.value = getOffset(e, activeThumbRef.value, props.direction);
|
|
15567
15637
|
} else {
|
|
15568
15638
|
startOffset.value = 0;
|
|
15569
|
-
|
|
15570
|
-
|
|
15639
|
+
if (value != null) {
|
|
15640
|
+
onSliderMove({
|
|
15641
|
+
value
|
|
15642
|
+
});
|
|
15643
|
+
}
|
|
15644
|
+
}
|
|
15645
|
+
if (value != null) {
|
|
15646
|
+
onSliderStart({
|
|
15647
|
+
value
|
|
15571
15648
|
});
|
|
15572
15649
|
}
|
|
15573
|
-
onSliderStart({
|
|
15574
|
-
value: parseMouseMove(e)
|
|
15575
|
-
});
|
|
15576
15650
|
nextTick(() => activeThumbRef.value?.focus());
|
|
15577
15651
|
};
|
|
15578
15652
|
const moveListenerOptions = {
|
|
@@ -15580,9 +15654,12 @@ const useSlider = _ref => {
|
|
|
15580
15654
|
capture: true
|
|
15581
15655
|
};
|
|
15582
15656
|
function onMouseMove(e) {
|
|
15583
|
-
|
|
15584
|
-
|
|
15585
|
-
|
|
15657
|
+
const value = parseMouseMove(e);
|
|
15658
|
+
if (value != null) {
|
|
15659
|
+
onSliderMove({
|
|
15660
|
+
value
|
|
15661
|
+
});
|
|
15662
|
+
}
|
|
15586
15663
|
}
|
|
15587
15664
|
function onSliderMouseUp(e) {
|
|
15588
15665
|
e.stopPropagation();
|
|
@@ -17021,7 +17098,7 @@ const VCombobox = genericComponent()({
|
|
|
17021
17098
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
17022
17099
|
if (!item || item.props.disabled) return;
|
|
17023
17100
|
if (props.multiple) {
|
|
17024
|
-
const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value));
|
|
17101
|
+
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
17025
17102
|
const add = set == null ? !~index : set;
|
|
17026
17103
|
if (~index) {
|
|
17027
17104
|
const value = add ? [...model.value, item] : [...model.value];
|
|
@@ -17081,7 +17158,7 @@ const VCombobox = genericComponent()({
|
|
|
17081
17158
|
});
|
|
17082
17159
|
watch(menu, () => {
|
|
17083
17160
|
if (!props.hideSelected && menu.value && model.value.length) {
|
|
17084
|
-
const index = displayItems.value.findIndex(item => model.value.some(s => props.valueComparator(s.value, item.value)));
|
|
17161
|
+
const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
|
|
17085
17162
|
IN_BROWSER && window.requestAnimationFrame(() => {
|
|
17086
17163
|
index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
|
|
17087
17164
|
});
|
|
@@ -18298,13 +18375,7 @@ function provideGroupBy(options) {
|
|
|
18298
18375
|
return [...new Set(arr)];
|
|
18299
18376
|
}
|
|
18300
18377
|
return dive({
|
|
18301
|
-
|
|
18302
|
-
items,
|
|
18303
|
-
id: 'dummy',
|
|
18304
|
-
key: 'dummy',
|
|
18305
|
-
value: 'dummy',
|
|
18306
|
-
depth: 0
|
|
18307
|
-
});
|
|
18378
|
+
items});
|
|
18308
18379
|
}
|
|
18309
18380
|
|
|
18310
18381
|
// onBeforeMount(() => {
|
|
@@ -18748,15 +18819,19 @@ function provideSort(options) {
|
|
|
18748
18819
|
})) ?? [];
|
|
18749
18820
|
const item = newSortBy.find(x => x.key === column.key);
|
|
18750
18821
|
if (!item) {
|
|
18751
|
-
if (multiSort.value)
|
|
18752
|
-
|
|
18753
|
-
|
|
18754
|
-
|
|
18755
|
-
|
|
18756
|
-
|
|
18757
|
-
|
|
18822
|
+
if (multiSort.value) {
|
|
18823
|
+
newSortBy.push({
|
|
18824
|
+
key: column.key,
|
|
18825
|
+
order: 'asc'
|
|
18826
|
+
});
|
|
18827
|
+
} else {
|
|
18828
|
+
newSortBy = [{
|
|
18829
|
+
key: column.key,
|
|
18830
|
+
order: 'asc'
|
|
18831
|
+
}];
|
|
18832
|
+
}
|
|
18758
18833
|
} else if (item.order === 'desc') {
|
|
18759
|
-
if (mustSort.value) {
|
|
18834
|
+
if (mustSort.value && newSortBy.length === 1) {
|
|
18760
18835
|
item.order = 'asc';
|
|
18761
18836
|
} else {
|
|
18762
18837
|
newSortBy = newSortBy.filter(x => x.key !== column.key);
|
|
@@ -21381,7 +21456,7 @@ const makeVDatePickerControlsProps = propsFactory({
|
|
|
21381
21456
|
},
|
|
21382
21457
|
disabled: {
|
|
21383
21458
|
type: [Boolean, String, Array],
|
|
21384
|
-
default:
|
|
21459
|
+
default: null
|
|
21385
21460
|
},
|
|
21386
21461
|
nextIcon: {
|
|
21387
21462
|
type: IconValue,
|
|
@@ -21563,7 +21638,10 @@ const VDatePickerHeader = genericComponent()({
|
|
|
21563
21638
|
// Composables
|
|
21564
21639
|
const makeCalendarProps = propsFactory({
|
|
21565
21640
|
allowedDates: [Array, Function],
|
|
21566
|
-
disabled:
|
|
21641
|
+
disabled: {
|
|
21642
|
+
type: Boolean,
|
|
21643
|
+
default: null
|
|
21644
|
+
},
|
|
21567
21645
|
displayValue: null,
|
|
21568
21646
|
modelValue: Array,
|
|
21569
21647
|
month: [Number, String],
|
|
@@ -21715,7 +21793,7 @@ const makeVDatePickerMonthProps = propsFactory({
|
|
|
21715
21793
|
type: String,
|
|
21716
21794
|
default: 'picker-reverse-transition'
|
|
21717
21795
|
},
|
|
21718
|
-
...makeCalendarProps()
|
|
21796
|
+
...omit(makeCalendarProps(), ['displayValue'])
|
|
21719
21797
|
}, 'VDatePickerMonth');
|
|
21720
21798
|
const VDatePickerMonth = genericComponent()({
|
|
21721
21799
|
name: 'VDatePickerMonth',
|
|
@@ -22992,8 +23070,7 @@ const VFileInput = genericComponent()({
|
|
|
22992
23070
|
const fieldProps = filterFieldProps(props);
|
|
22993
23071
|
return createVNode(VInput, mergeProps({
|
|
22994
23072
|
"ref": vInputRef,
|
|
22995
|
-
"modelValue": model.value,
|
|
22996
|
-
"onUpdate:modelValue": $event => model.value = $event,
|
|
23073
|
+
"modelValue": props.multiple ? model.value : model.value[0],
|
|
22997
23074
|
"class": ['v-file-input', {
|
|
22998
23075
|
'v-file-input--chips': !!props.chips,
|
|
22999
23076
|
'v-file-input--hide': props.hideInput,
|
|
@@ -23832,7 +23909,7 @@ const HISTORY = 20; // number of samples to keep
|
|
|
23832
23909
|
/** @see https://android.googlesource.com/platform/frameworks/native/+/master/libs/input/VelocityTracker.cpp */
|
|
23833
23910
|
function kineticEnergyToVelocity(work) {
|
|
23834
23911
|
const sqrt2 = 1.41421356237;
|
|
23835
|
-
return (work < 0 ? -1
|
|
23912
|
+
return (work < 0 ? -1 : 1.0) * Math.sqrt(Math.abs(work)) * sqrt2;
|
|
23836
23913
|
}
|
|
23837
23914
|
|
|
23838
23915
|
/**
|
|
@@ -24214,7 +24291,6 @@ const VNavigationDrawer = genericComponent()({
|
|
|
24214
24291
|
const size = isTemporary.value ? 0 : props.rail && props.expandOnHover ? Number(props.railWidth) : width.value;
|
|
24215
24292
|
return isDragging.value ? size * dragProgress.value : size;
|
|
24216
24293
|
});
|
|
24217
|
-
const elementSize = computed(() => ['top', 'bottom'].includes(props.location) ? 0 : width.value);
|
|
24218
24294
|
const {
|
|
24219
24295
|
layoutItemStyles,
|
|
24220
24296
|
layoutItemScrimStyles
|
|
@@ -24223,7 +24299,7 @@ const VNavigationDrawer = genericComponent()({
|
|
|
24223
24299
|
order: computed(() => parseInt(props.order, 10)),
|
|
24224
24300
|
position: location,
|
|
24225
24301
|
layoutSize,
|
|
24226
|
-
elementSize,
|
|
24302
|
+
elementSize: width,
|
|
24227
24303
|
active: computed(() => isActive.value || isDragging.value),
|
|
24228
24304
|
disableTransitions: computed(() => isDragging.value),
|
|
24229
24305
|
absolute: computed(() =>
|
|
@@ -24269,9 +24345,7 @@ const VNavigationDrawer = genericComponent()({
|
|
|
24269
24345
|
'v-navigation-drawer--active': isActive.value,
|
|
24270
24346
|
'v-navigation-drawer--sticky': isSticky.value
|
|
24271
24347
|
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, displayClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
24272
|
-
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value, stickyStyles.value, props.style
|
|
24273
|
-
height: 'auto'
|
|
24274
|
-
} : {}]
|
|
24348
|
+
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value, stickyStyles.value, props.style]
|
|
24275
24349
|
}, scopeId, attrs), {
|
|
24276
24350
|
default: () => [hasImage && createVNode("div", {
|
|
24277
24351
|
"key": "image",
|
|
@@ -24358,7 +24432,7 @@ const makeVOtpInputProps = propsFactory({
|
|
|
24358
24432
|
},
|
|
24359
24433
|
...makeDimensionProps(),
|
|
24360
24434
|
...makeFocusProps(),
|
|
24361
|
-
...
|
|
24435
|
+
...pick(makeVFieldProps({
|
|
24362
24436
|
variant: 'outlined'
|
|
24363
24437
|
}), ['baseColor', 'bgColor', 'class', 'color', 'disabled', 'error', 'loading', 'rounded', 'style', 'theme', 'variant'])
|
|
24364
24438
|
}, 'VOtpInput');
|
|
@@ -25591,6 +25665,8 @@ const makeLineProps = propsFactory({
|
|
|
25591
25665
|
}
|
|
25592
25666
|
}, 'Line');
|
|
25593
25667
|
|
|
25668
|
+
// Utilities
|
|
25669
|
+
|
|
25594
25670
|
// Types
|
|
25595
25671
|
|
|
25596
25672
|
const makeVBarlineProps = propsFactory({
|
|
@@ -25788,6 +25864,8 @@ function moveTo(to, from, radius) {
|
|
|
25788
25864
|
};
|
|
25789
25865
|
}
|
|
25790
25866
|
|
|
25867
|
+
// Utilities
|
|
25868
|
+
|
|
25791
25869
|
// Types
|
|
25792
25870
|
|
|
25793
25871
|
const makeVTrendlineProps = propsFactory({
|
|
@@ -26342,7 +26420,7 @@ const makeVStepperProps = propsFactory({
|
|
|
26342
26420
|
selectedClass: 'v-stepper-item--selected'
|
|
26343
26421
|
}),
|
|
26344
26422
|
...makeVSheetProps(),
|
|
26345
|
-
...
|
|
26423
|
+
...pick(makeVStepperActionsProps(), ['prevText', 'nextText'])
|
|
26346
26424
|
}, 'VStepper');
|
|
26347
26425
|
const VStepper = genericComponent()({
|
|
26348
26426
|
name: 'VStepper',
|
|
@@ -27424,7 +27502,7 @@ const makeVTimelineProps = propsFactory({
|
|
|
27424
27502
|
type: String,
|
|
27425
27503
|
validator: v => ['start', 'end', 'both'].includes(v)
|
|
27426
27504
|
},
|
|
27427
|
-
...
|
|
27505
|
+
...pick(makeVTimelineItemProps({
|
|
27428
27506
|
lineInset: 0
|
|
27429
27507
|
}), ['dotColor', 'fillDot', 'hideOpposite', 'iconColor', 'lineInset', 'size']),
|
|
27430
27508
|
...makeComponentProps(),
|
|
@@ -27730,6 +27808,10 @@ const VCalendarInterval = genericComponent()({
|
|
|
27730
27808
|
...makeVCalendarIntervalProps()
|
|
27731
27809
|
},
|
|
27732
27810
|
setup(props, _ref) {
|
|
27811
|
+
let {
|
|
27812
|
+
emit,
|
|
27813
|
+
slots
|
|
27814
|
+
} = _ref;
|
|
27733
27815
|
const adapter = useDate();
|
|
27734
27816
|
const interval = computed(() => {
|
|
27735
27817
|
const start = adapter.addMinutes(adapter.startOfDay(props.day.date), props.intervalDuration * (props.index + props.intervalStart));
|
|
@@ -28124,7 +28206,7 @@ const makeVDateInputProps = propsFactory({
|
|
|
28124
28206
|
...omit(makeVDatePickerProps({
|
|
28125
28207
|
weeksInMonth: 'dynamic',
|
|
28126
28208
|
hideHeader: true
|
|
28127
|
-
}), ['active', 'location'])
|
|
28209
|
+
}), ['active', 'location', 'rounded'])
|
|
28128
28210
|
}, 'VDateInput');
|
|
28129
28211
|
const VDateInput = genericComponent()({
|
|
28130
28212
|
name: 'VDateInput',
|
|
@@ -28145,8 +28227,9 @@ const VDateInput = genericComponent()({
|
|
|
28145
28227
|
focus,
|
|
28146
28228
|
blur
|
|
28147
28229
|
} = useFocus(props);
|
|
28148
|
-
const model = useProxiedModel(props, 'modelValue', props.multiple ? [] : null);
|
|
28230
|
+
const model = useProxiedModel(props, 'modelValue', props.multiple ? [] : null, val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val, val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val);
|
|
28149
28231
|
const menu = shallowRef(false);
|
|
28232
|
+
const vDateInputRef = ref();
|
|
28150
28233
|
const display = computed(() => {
|
|
28151
28234
|
const value = wrapInArray(model.value);
|
|
28152
28235
|
if (!value.length) return null;
|
|
@@ -28168,7 +28251,7 @@ const VDateInput = genericComponent()({
|
|
|
28168
28251
|
return;
|
|
28169
28252
|
}
|
|
28170
28253
|
const target = e.target;
|
|
28171
|
-
model.value =
|
|
28254
|
+
model.value = target.value;
|
|
28172
28255
|
}
|
|
28173
28256
|
function onClick(e) {
|
|
28174
28257
|
e.preventDefault();
|
|
@@ -28178,11 +28261,17 @@ const VDateInput = genericComponent()({
|
|
|
28178
28261
|
function onSave() {
|
|
28179
28262
|
menu.value = false;
|
|
28180
28263
|
}
|
|
28264
|
+
function onUpdateModel(value) {
|
|
28265
|
+
if (value != null) return;
|
|
28266
|
+
model.value = null;
|
|
28267
|
+
}
|
|
28181
28268
|
useRender(() => {
|
|
28182
28269
|
const confirmEditProps = VConfirmEdit.filterProps(props);
|
|
28183
|
-
const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location']));
|
|
28270
|
+
const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']));
|
|
28184
28271
|
const textFieldProps = VTextField.filterProps(props);
|
|
28185
|
-
return createVNode(VTextField, mergeProps(
|
|
28272
|
+
return createVNode(VTextField, mergeProps({
|
|
28273
|
+
"ref": vDateInputRef
|
|
28274
|
+
}, textFieldProps, {
|
|
28186
28275
|
"class": props.class,
|
|
28187
28276
|
"style": props.style,
|
|
28188
28277
|
"modelValue": display.value,
|
|
@@ -28191,9 +28280,11 @@ const VDateInput = genericComponent()({
|
|
|
28191
28280
|
"onFocus": focus,
|
|
28192
28281
|
"onBlur": blur,
|
|
28193
28282
|
"onClick:control": isInteractive.value ? onClick : undefined,
|
|
28194
|
-
"onClick:prepend": isInteractive.value ? onClick : undefined
|
|
28283
|
+
"onClick:prepend": isInteractive.value ? onClick : undefined,
|
|
28284
|
+
"onUpdate:modelValue": onUpdateModel
|
|
28195
28285
|
}), {
|
|
28196
|
-
|
|
28286
|
+
...slots,
|
|
28287
|
+
default: () => createVNode(Fragment, null, [createVNode(VMenu, {
|
|
28197
28288
|
"modelValue": menu.value,
|
|
28198
28289
|
"onUpdate:modelValue": $event => menu.value = $event,
|
|
28199
28290
|
"activator": "parent",
|
|
@@ -28236,9 +28327,10 @@ const VDateInput = genericComponent()({
|
|
|
28236
28327
|
});
|
|
28237
28328
|
}
|
|
28238
28329
|
})]
|
|
28239
|
-
}), slots.default?.()]
|
|
28330
|
+
}), slots.default?.()])
|
|
28240
28331
|
});
|
|
28241
28332
|
});
|
|
28333
|
+
return forwardRefs({}, vDateInputRef);
|
|
28242
28334
|
}
|
|
28243
28335
|
});
|
|
28244
28336
|
|
|
@@ -28370,7 +28462,7 @@ const makeVFileUploadProps = propsFactory({
|
|
|
28370
28462
|
name: String,
|
|
28371
28463
|
...makeDelayProps(),
|
|
28372
28464
|
...makeDensityProps(),
|
|
28373
|
-
...
|
|
28465
|
+
...pick(makeVDividerProps({
|
|
28374
28466
|
length: 150
|
|
28375
28467
|
}), ['length', 'thickness', 'opacity']),
|
|
28376
28468
|
...makeVSheetProps()
|
|
@@ -28580,7 +28672,11 @@ const makeVNumberInputProps = propsFactory({
|
|
|
28580
28672
|
type: Number,
|
|
28581
28673
|
default: 1
|
|
28582
28674
|
},
|
|
28583
|
-
|
|
28675
|
+
precision: {
|
|
28676
|
+
type: Number,
|
|
28677
|
+
default: 0
|
|
28678
|
+
},
|
|
28679
|
+
...omit(makeVTextFieldProps({}), ['modelValue'])
|
|
28584
28680
|
}, 'VNumberInput');
|
|
28585
28681
|
const VNumberInput = genericComponent()({
|
|
28586
28682
|
name: 'VNumberInput',
|
|
@@ -28594,27 +28690,37 @@ const VNumberInput = genericComponent()({
|
|
|
28594
28690
|
let {
|
|
28595
28691
|
slots
|
|
28596
28692
|
} = _ref;
|
|
28597
|
-
const
|
|
28598
|
-
const
|
|
28599
|
-
|
|
28600
|
-
|
|
28601
|
-
|
|
28693
|
+
const vTextFieldRef = ref();
|
|
28694
|
+
const form = useForm(props);
|
|
28695
|
+
const controlsDisabled = computed(() => form.isDisabled.value || form.isReadonly.value);
|
|
28696
|
+
const isFocused = ref(false);
|
|
28697
|
+
function correctPrecision(val) {
|
|
28698
|
+
let precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : props.precision;
|
|
28699
|
+
const fixed = precision == null ? String(val) : val.toFixed(precision);
|
|
28700
|
+
return isFocused.value ? Number(fixed).toString() // trim zeros
|
|
28701
|
+
: fixed;
|
|
28702
|
+
}
|
|
28703
|
+
const model = useProxiedModel(props, 'modelValue', null, val => val ?? null, val => val == null ? val ?? null : clamp(+val, props.min, props.max));
|
|
28704
|
+
const _inputText = shallowRef(null);
|
|
28705
|
+
watchEffect(() => {
|
|
28706
|
+
if (isFocused.value && !controlsDisabled.value) ; else if (model.value == null || controlsDisabled.value) {
|
|
28707
|
+
_inputText.value = model.value && !isNaN(model.value) ? String(model.value) : null;
|
|
28708
|
+
} else if (!isNaN(model.value)) {
|
|
28709
|
+
_inputText.value = correctPrecision(model.value);
|
|
28710
|
+
}
|
|
28711
|
+
});
|
|
28712
|
+
const inputText = computed({
|
|
28713
|
+
get: () => _inputText.value,
|
|
28602
28714
|
set(val) {
|
|
28603
28715
|
if (val === null || val === '') {
|
|
28604
|
-
|
|
28605
|
-
|
|
28606
|
-
}
|
|
28607
|
-
|
|
28608
|
-
|
|
28609
|
-
_model.value = value;
|
|
28716
|
+
model.value = null;
|
|
28717
|
+
_inputText.value = null;
|
|
28718
|
+
} else if (!isNaN(+val) && +val <= props.max && +val >= props.min) {
|
|
28719
|
+
model.value = +val;
|
|
28720
|
+
_inputText.value = val;
|
|
28610
28721
|
}
|
|
28611
28722
|
}
|
|
28612
28723
|
});
|
|
28613
|
-
const vTextFieldRef = ref();
|
|
28614
|
-
const stepDecimals = computed(() => getDecimals(props.step));
|
|
28615
|
-
const modelDecimals = computed(() => typeof model.value === 'number' ? getDecimals(model.value) : 0);
|
|
28616
|
-
const form = useForm(props);
|
|
28617
|
-
const controlsDisabled = computed(() => form.isDisabled.value || form.isReadonly.value);
|
|
28618
28724
|
const canIncrease = computed(() => {
|
|
28619
28725
|
if (controlsDisabled.value) return false;
|
|
28620
28726
|
return (model.value ?? 0) + props.step <= props.max;
|
|
@@ -28636,23 +28742,29 @@ const VNumberInput = genericComponent()({
|
|
|
28636
28742
|
const decrementSlotProps = computed(() => ({
|
|
28637
28743
|
click: onClickDown
|
|
28638
28744
|
}));
|
|
28745
|
+
watch(() => props.precision, () => formatInputValue());
|
|
28639
28746
|
onMounted(() => {
|
|
28640
|
-
|
|
28641
|
-
clampModel();
|
|
28642
|
-
}
|
|
28747
|
+
clampModel();
|
|
28643
28748
|
});
|
|
28749
|
+
function inferPrecision(value) {
|
|
28750
|
+
if (value == null) return 0;
|
|
28751
|
+
const str = value.toString();
|
|
28752
|
+
const idx = str.indexOf('.');
|
|
28753
|
+
return ~idx ? str.length - idx : 0;
|
|
28754
|
+
}
|
|
28644
28755
|
function toggleUpDown() {
|
|
28645
28756
|
let increment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
28646
28757
|
if (controlsDisabled.value) return;
|
|
28647
28758
|
if (model.value == null) {
|
|
28648
|
-
|
|
28759
|
+
inputText.value = correctPrecision(clamp(0, props.min, props.max));
|
|
28649
28760
|
return;
|
|
28650
28761
|
}
|
|
28651
|
-
|
|
28762
|
+
let inferredPrecision = Math.max(inferPrecision(model.value), inferPrecision(props.step));
|
|
28763
|
+
if (props.precision != null) inferredPrecision = Math.max(inferredPrecision, props.precision);
|
|
28652
28764
|
if (increment) {
|
|
28653
|
-
if (canIncrease.value)
|
|
28765
|
+
if (canIncrease.value) inputText.value = correctPrecision(model.value + props.step, inferredPrecision);
|
|
28654
28766
|
} else {
|
|
28655
|
-
if (canDecrease.value)
|
|
28767
|
+
if (canDecrease.value) inputText.value = correctPrecision(model.value - props.step, inferredPrecision);
|
|
28656
28768
|
}
|
|
28657
28769
|
}
|
|
28658
28770
|
function onClickUp(e) {
|
|
@@ -28675,6 +28787,16 @@ const VNumberInput = genericComponent()({
|
|
|
28675
28787
|
if (!/^-?(\d+(\.\d*)?|(\.\d+)|\d*|\.)$/.test(potentialNewInputVal)) {
|
|
28676
28788
|
e.preventDefault();
|
|
28677
28789
|
}
|
|
28790
|
+
if (props.precision == null) return;
|
|
28791
|
+
|
|
28792
|
+
// Ignore decimal digits above precision limit
|
|
28793
|
+
if (potentialNewInputVal.split('.')[1]?.length > props.precision) {
|
|
28794
|
+
e.preventDefault();
|
|
28795
|
+
}
|
|
28796
|
+
// Ignore decimal separator when precision = 0
|
|
28797
|
+
if (props.precision === 0 && potentialNewInputVal.includes('.')) {
|
|
28798
|
+
e.preventDefault();
|
|
28799
|
+
}
|
|
28678
28800
|
}
|
|
28679
28801
|
async function onKeydown(e) {
|
|
28680
28802
|
if (['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Delete', 'Tab'].includes(e.key) || e.ctrlKey) return;
|
|
@@ -28694,13 +28816,38 @@ const VNumberInput = genericComponent()({
|
|
|
28694
28816
|
e.stopPropagation();
|
|
28695
28817
|
}
|
|
28696
28818
|
function clampModel() {
|
|
28819
|
+
if (controlsDisabled.value) return;
|
|
28697
28820
|
if (!vTextFieldRef.value) return;
|
|
28698
|
-
const
|
|
28699
|
-
if (
|
|
28700
|
-
|
|
28821
|
+
const actualText = vTextFieldRef.value.value;
|
|
28822
|
+
if (actualText && !isNaN(+actualText)) {
|
|
28823
|
+
inputText.value = correctPrecision(clamp(+actualText, props.min, props.max));
|
|
28701
28824
|
} else {
|
|
28702
|
-
|
|
28825
|
+
inputText.value = null;
|
|
28826
|
+
}
|
|
28827
|
+
}
|
|
28828
|
+
function formatInputValue() {
|
|
28829
|
+
if (controlsDisabled.value) return;
|
|
28830
|
+
if (model.value === null || isNaN(model.value)) {
|
|
28831
|
+
inputText.value = null;
|
|
28832
|
+
return;
|
|
28703
28833
|
}
|
|
28834
|
+
inputText.value = props.precision == null ? String(model.value) : model.value.toFixed(props.precision);
|
|
28835
|
+
}
|
|
28836
|
+
function trimDecimalZeros() {
|
|
28837
|
+
if (controlsDisabled.value) return;
|
|
28838
|
+
if (model.value === null || isNaN(model.value)) {
|
|
28839
|
+
inputText.value = null;
|
|
28840
|
+
return;
|
|
28841
|
+
}
|
|
28842
|
+
inputText.value = model.value.toString();
|
|
28843
|
+
}
|
|
28844
|
+
function onFocus() {
|
|
28845
|
+
isFocused.value = true;
|
|
28846
|
+
trimDecimalZeros();
|
|
28847
|
+
}
|
|
28848
|
+
function onBlur() {
|
|
28849
|
+
isFocused.value = false;
|
|
28850
|
+
clampModel();
|
|
28704
28851
|
}
|
|
28705
28852
|
useRender(() => {
|
|
28706
28853
|
const {
|
|
@@ -28779,20 +28926,21 @@ const VNumberInput = genericComponent()({
|
|
|
28779
28926
|
"class": "v-number-input__control"
|
|
28780
28927
|
}, [createVNode(VDivider, {
|
|
28781
28928
|
"vertical": true
|
|
28782
|
-
}, null), incrementControlNode()]) : props.reverse ? undefined : createVNode(Fragment, null, [dividerNode(), controlNode()]);
|
|
28929
|
+
}, null), incrementControlNode()]) : props.reverse || controlVariant.value === 'hidden' ? undefined : createVNode(Fragment, null, [dividerNode(), controlNode()]);
|
|
28783
28930
|
const hasAppendInner = slots['append-inner'] || appendInnerControl;
|
|
28784
28931
|
const prependInnerControl = controlVariant.value === 'split' ? createVNode("div", {
|
|
28785
28932
|
"class": "v-number-input__control"
|
|
28786
28933
|
}, [decrementControlNode(), createVNode(VDivider, {
|
|
28787
28934
|
"vertical": true
|
|
28788
|
-
}, null)]) : props.reverse ? createVNode(Fragment, null, [controlNode(), dividerNode()]) : undefined;
|
|
28935
|
+
}, null)]) : props.reverse && controlVariant.value !== 'hidden' ? createVNode(Fragment, null, [controlNode(), dividerNode()]) : undefined;
|
|
28789
28936
|
const hasPrependInner = slots['prepend-inner'] || prependInnerControl;
|
|
28790
28937
|
return createVNode(VTextField, mergeProps({
|
|
28791
28938
|
"ref": vTextFieldRef,
|
|
28792
|
-
"modelValue":
|
|
28793
|
-
"onUpdate:modelValue": $event =>
|
|
28939
|
+
"modelValue": inputText.value,
|
|
28940
|
+
"onUpdate:modelValue": $event => inputText.value = $event,
|
|
28794
28941
|
"onBeforeinput": onBeforeinput,
|
|
28795
|
-
"
|
|
28942
|
+
"onFocus": onFocus,
|
|
28943
|
+
"onBlur": onBlur,
|
|
28796
28944
|
"onKeydown": onKeydown,
|
|
28797
28945
|
"class": ['v-number-input', {
|
|
28798
28946
|
'v-number-input--default': controlVariant.value === 'default',
|
|
@@ -29678,7 +29826,7 @@ const VTimePickerControls = genericComponent()({
|
|
|
29678
29826
|
const rangeHours24 = createRange(24);
|
|
29679
29827
|
const rangeHours12am = createRange(12);
|
|
29680
29828
|
const rangeHours12pm = rangeHours12am.map(v => v + 12);
|
|
29681
|
-
|
|
29829
|
+
createRange(60);
|
|
29682
29830
|
const selectingNames = {
|
|
29683
29831
|
1: 'hour',
|
|
29684
29832
|
2: 'minute',
|
|
@@ -29828,11 +29976,11 @@ const VTimePicker = genericComponent()({
|
|
|
29828
29976
|
period.value = inputHour.value == null || inputHour.value < 12 ? 'am' : 'pm';
|
|
29829
29977
|
}
|
|
29830
29978
|
function firstAllowed(type, value) {
|
|
29831
|
-
const allowedFn =
|
|
29979
|
+
const allowedFn = isAllowedHourCb.value ;
|
|
29832
29980
|
if (!allowedFn) return value;
|
|
29833
29981
|
|
|
29834
29982
|
// TODO: clean up (Note from V2 code)
|
|
29835
|
-
const range =
|
|
29983
|
+
const range = isAmPm.value ? value < 12 ? rangeHours12am : rangeHours12pm : rangeHours24;
|
|
29836
29984
|
const first = range.find(v => allowedFn((v + value) % range.length + range[0]));
|
|
29837
29985
|
return ((first || 0) + value) % range.length + range[0];
|
|
29838
29986
|
}
|
|
@@ -29985,22 +30133,21 @@ const VTreeviewItem = genericComponent()({
|
|
|
29985
30133
|
props: makeVTreeviewItemProps(),
|
|
29986
30134
|
setup(props, _ref) {
|
|
29987
30135
|
let {
|
|
29988
|
-
|
|
29989
|
-
slots,
|
|
29990
|
-
emit
|
|
30136
|
+
slots
|
|
29991
30137
|
} = _ref;
|
|
29992
|
-
const
|
|
30138
|
+
const visibleIds = inject$1(VTreeviewSymbol, {
|
|
30139
|
+
visibleIds: ref()
|
|
30140
|
+
}).visibleIds;
|
|
29993
30141
|
const vListItemRef = ref();
|
|
29994
30142
|
const isActivatableGroupActivator = computed(() => vListItemRef.value?.root.activatable.value && vListItemRef.value?.isGroupActivator);
|
|
29995
|
-
const
|
|
30143
|
+
const vListItemRefIsClickable = computed(() => vListItemRef.value?.link.isClickable.value || props.value != null && !!vListItemRef.value?.list);
|
|
30144
|
+
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || vListItemRefIsClickable.value || isActivatableGroupActivator.value));
|
|
30145
|
+
const isFiltered = computed(() => visibleIds.value && !visibleIds.value.has(toRaw(vListItemRef.value?.id)));
|
|
29996
30146
|
function activateGroupActivator(e) {
|
|
29997
30147
|
if (isClickable.value && isActivatableGroupActivator.value) {
|
|
29998
30148
|
vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e);
|
|
29999
30149
|
}
|
|
30000
30150
|
}
|
|
30001
|
-
const visibleIds = inject$1(VTreeviewSymbol, {
|
|
30002
|
-
visibleIds: ref()
|
|
30003
|
-
}).visibleIds;
|
|
30004
30151
|
useRender(() => {
|
|
30005
30152
|
const listItemProps = omit(VListItem.filterProps(props), ['onClick']);
|
|
30006
30153
|
const hasPrepend = slots.prepend || props.toggleIcon;
|
|
@@ -30010,7 +30157,7 @@ const VTreeviewItem = genericComponent()({
|
|
|
30010
30157
|
"active": vListItemRef.value?.isActivated,
|
|
30011
30158
|
"class": ['v-treeview-item', {
|
|
30012
30159
|
'v-treeview-item--activatable-group-activator': isActivatableGroupActivator.value,
|
|
30013
|
-
'v-treeview-item--filtered':
|
|
30160
|
+
'v-treeview-item--filtered': isFiltered.value
|
|
30014
30161
|
}, props.class],
|
|
30015
30162
|
"ripple": false,
|
|
30016
30163
|
"onClick": props.onClick ?? activateGroupActivator
|
|
@@ -30094,11 +30241,6 @@ const VTreeviewChildren = genericComponent()({
|
|
|
30094
30241
|
}
|
|
30095
30242
|
}
|
|
30096
30243
|
return () => slots.default?.() ?? props.items?.map(item => {
|
|
30097
|
-
if (item.type === 'divider') {
|
|
30098
|
-
return slots.divider?.({
|
|
30099
|
-
props: item.props
|
|
30100
|
-
}) ?? createVNode(VDivider, item.props, null);
|
|
30101
|
-
}
|
|
30102
30244
|
const {
|
|
30103
30245
|
children,
|
|
30104
30246
|
props: itemProps
|
|
@@ -30197,7 +30339,7 @@ const makeVTreeviewProps = propsFactory({
|
|
|
30197
30339
|
collapseIcon: '$treeviewCollapse',
|
|
30198
30340
|
expandIcon: '$treeviewExpand',
|
|
30199
30341
|
slim: true
|
|
30200
|
-
}), ['nav', 'openStrategy']),
|
|
30342
|
+
}), ['itemType', 'nav', 'openStrategy']),
|
|
30201
30343
|
modelValue: {
|
|
30202
30344
|
type: Array,
|
|
30203
30345
|
default: () => []
|
|
@@ -30817,7 +30959,7 @@ function createVuetify$1() {
|
|
|
30817
30959
|
goTo
|
|
30818
30960
|
};
|
|
30819
30961
|
}
|
|
30820
|
-
const version$1 = "3.7.
|
|
30962
|
+
const version$1 = "3.7.13";
|
|
30821
30963
|
createVuetify$1.version = version$1;
|
|
30822
30964
|
|
|
30823
30965
|
// Vue's inject() can only be used in setup
|
|
@@ -31070,7 +31212,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
|
31070
31212
|
|
|
31071
31213
|
/* eslint-disable local-rules/sort-imports */
|
|
31072
31214
|
|
|
31073
|
-
const version = "3.7.
|
|
31215
|
+
const version = "3.7.13";
|
|
31074
31216
|
|
|
31075
31217
|
/* eslint-disable local-rules/sort-imports */
|
|
31076
31218
|
|