@vuetify/nightly 3.6.3-master.2024-05-07 → 3.6.4-master.2024-05-09
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 +7 -13
- package/dist/json/attributes.json +31 -31
- package/dist/json/importMap-labs.json +8 -8
- package/dist/json/importMap.json +124 -124
- package/dist/json/web-types.json +64 -64
- package/dist/vuetify-labs.css +2434 -2363
- package/dist/vuetify-labs.d.ts +995 -966
- package/dist/vuetify-labs.esm.js +104 -70
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +103 -69
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +775 -708
- package/dist/vuetify.d.ts +965 -936
- package/dist/vuetify.esm.js +104 -70
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +103 -69
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +981 -976
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +169 -140
- package/lib/components/VBottomSheet/index.d.mts +33 -27
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +169 -140
- package/lib/components/VDataIterator/index.d.mts +1 -1
- package/lib/components/VDataTable/VDataTable.css +1 -1
- package/lib/components/VDataTable/VDataTable.sass +2 -1
- package/lib/components/VDataTable/VDataTableHeaders.mjs +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/components/VDataTable/composables/select.mjs +2 -1
- package/lib/components/VDataTable/composables/select.mjs.map +1 -1
- package/lib/components/VDataTable/index.d.mts +10 -5
- package/lib/components/VDatePicker/VDatePickerYears.mjs +4 -4
- package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
- package/lib/components/VDialog/index.d.mts +99 -93
- package/lib/components/VFileInput/VFileInput.mjs +1 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
- package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +70 -46
- package/lib/components/VMenu/index.d.mts +99 -93
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.mts +33 -27
- package/lib/components/VOverlay/useActivator.mjs +5 -5
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +169 -140
- package/lib/components/VSheet/VSheet.css +1 -1
- package/lib/components/VSheet/_variables.scss +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs +25 -25
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.css +5 -0
- package/lib/components/VSlider/VSliderThumb.sass +3 -0
- package/lib/components/VSlider/VSliderTrack.css +15 -0
- package/lib/components/VSlider/VSliderTrack.sass +9 -0
- package/lib/components/VSnackbar/index.d.mts +85 -79
- package/lib/components/VSpeedDial/index.d.mts +33 -27
- package/lib/components/VStepper/VStepper.mjs +12 -6
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepperItem.css +47 -0
- package/lib/components/VStepper/VStepperItem.mjs +5 -3
- package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
- package/lib/components/VStepper/VStepperItem.sass +18 -0
- package/lib/components/VStepper/VStepperWindow.mjs +2 -1
- package/lib/components/VStepper/VStepperWindow.mjs.map +1 -1
- package/lib/components/VStepper/VStepperWindowItem.mjs +2 -1
- package/lib/components/VStepper/VStepperWindowItem.mjs.map +1 -1
- package/lib/components/VTabs/VTabsWindow.mjs +2 -1
- package/lib/components/VTabs/VTabsWindow.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.mts +99 -93
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
- package/lib/components/index.d.mts +926 -897
- package/lib/composables/nested/activeStrategies.mjs +16 -10
- package/lib/composables/nested/activeStrategies.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +7 -5
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/resizeObserver.mjs +5 -5
- package/lib/composables/resizeObserver.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +39 -39
- package/lib/labs/VCalendar/VCalendar.css +5 -1
- package/lib/labs/VCalendar/VCalendar.sass +3 -2
- package/lib/labs/VCalendar/_variables.scss +8 -0
- package/lib/labs/VSnackbarQueue/index.d.mts +97 -91
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/index.d.mts +82 -58
- package/lib/labs/components.d.mts +178 -149
- package/lib/util/helpers.mjs +16 -0
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.6.
|
2
|
+
* Vuetify v3.6.4-master.2024-05-09
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -561,6 +561,22 @@
|
|
561
561
|
const divBottom = divRect.bottom;
|
562
562
|
return mouseX >= divLeft && mouseX <= divRight && mouseY >= divTop && mouseY <= divBottom;
|
563
563
|
}
|
564
|
+
function templateRef() {
|
565
|
+
const el = vue.shallowRef();
|
566
|
+
const fn = target => {
|
567
|
+
el.value = target;
|
568
|
+
};
|
569
|
+
Object.defineProperty(fn, 'value', {
|
570
|
+
enumerable: true,
|
571
|
+
get: () => el.value,
|
572
|
+
set: val => el.value = val
|
573
|
+
});
|
574
|
+
Object.defineProperty(fn, 'el', {
|
575
|
+
enumerable: true,
|
576
|
+
get: () => refElement(el.value)
|
577
|
+
});
|
578
|
+
return fn;
|
579
|
+
}
|
564
580
|
|
565
581
|
// Utilities
|
566
582
|
const block = ['top', 'bottom'];
|
@@ -1569,7 +1585,7 @@
|
|
1569
1585
|
|
1570
1586
|
function useResizeObserver(callback) {
|
1571
1587
|
let box = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'content';
|
1572
|
-
const resizeRef =
|
1588
|
+
const resizeRef = templateRef();
|
1573
1589
|
const contentRect = vue.ref();
|
1574
1590
|
if (IN_BROWSER) {
|
1575
1591
|
const observer = new ResizeObserver(entries => {
|
@@ -1584,12 +1600,12 @@
|
|
1584
1600
|
vue.onBeforeUnmount(() => {
|
1585
1601
|
observer.disconnect();
|
1586
1602
|
});
|
1587
|
-
vue.watch(resizeRef, (newValue, oldValue) => {
|
1603
|
+
vue.watch(() => resizeRef.el, (newValue, oldValue) => {
|
1588
1604
|
if (oldValue) {
|
1589
|
-
observer.unobserve(
|
1605
|
+
observer.unobserve(oldValue);
|
1590
1606
|
contentRect.value = undefined;
|
1591
1607
|
}
|
1592
|
-
if (newValue) observer.observe(
|
1608
|
+
if (newValue) observer.observe(newValue);
|
1593
1609
|
}, {
|
1594
1610
|
flush: 'post'
|
1595
1611
|
});
|
@@ -7388,7 +7404,7 @@
|
|
7388
7404
|
const goTo = useGoTo();
|
7389
7405
|
const goToOptions = vue.computed(() => {
|
7390
7406
|
return {
|
7391
|
-
container: containerRef.
|
7407
|
+
container: containerRef.el,
|
7392
7408
|
duration: 200,
|
7393
7409
|
easing: 'easeOutQuart'
|
7394
7410
|
};
|
@@ -7412,9 +7428,9 @@
|
|
7412
7428
|
contentSize.value = contentRect.value[sizeProperty];
|
7413
7429
|
isOverflowing.value = containerSize.value + 1 < contentSize.value;
|
7414
7430
|
}
|
7415
|
-
if (firstSelectedIndex.value >= 0 && contentRef.
|
7431
|
+
if (firstSelectedIndex.value >= 0 && contentRef.el) {
|
7416
7432
|
// TODO: Is this too naive? Should we store element references in group composable?
|
7417
|
-
const selectedElement = contentRef.
|
7433
|
+
const selectedElement = contentRef.el.children[lastSelectedIndex.value];
|
7418
7434
|
scrollToChildren(selectedElement, props.centerActive);
|
7419
7435
|
}
|
7420
7436
|
});
|
@@ -7425,13 +7441,13 @@
|
|
7425
7441
|
let target = 0;
|
7426
7442
|
if (center) {
|
7427
7443
|
target = calculateCenteredTarget({
|
7428
|
-
containerElement: containerRef.
|
7444
|
+
containerElement: containerRef.el,
|
7429
7445
|
isHorizontal: isHorizontal.value,
|
7430
7446
|
selectedElement: children
|
7431
7447
|
});
|
7432
7448
|
} else {
|
7433
7449
|
target = calculateUpdatedTarget({
|
7434
|
-
containerElement: containerRef.
|
7450
|
+
containerElement: containerRef.el,
|
7435
7451
|
isHorizontal: isHorizontal.value,
|
7436
7452
|
isRtl: isRtl.value,
|
7437
7453
|
selectedElement: children
|
@@ -7440,18 +7456,18 @@
|
|
7440
7456
|
scrollToPosition(target);
|
7441
7457
|
}
|
7442
7458
|
function scrollToPosition(newPosition) {
|
7443
|
-
if (!IN_BROWSER || !containerRef.
|
7444
|
-
const offsetSize = getOffsetSize(isHorizontal.value, containerRef.
|
7445
|
-
const scrollPosition = getScrollPosition(isHorizontal.value, isRtl.value, containerRef.
|
7446
|
-
const scrollSize = getScrollSize(isHorizontal.value, containerRef.
|
7459
|
+
if (!IN_BROWSER || !containerRef.el) return;
|
7460
|
+
const offsetSize = getOffsetSize(isHorizontal.value, containerRef.el);
|
7461
|
+
const scrollPosition = getScrollPosition(isHorizontal.value, isRtl.value, containerRef.el);
|
7462
|
+
const scrollSize = getScrollSize(isHorizontal.value, containerRef.el);
|
7447
7463
|
if (scrollSize <= offsetSize ||
|
7448
7464
|
// Prevent scrolling by only a couple of pixels, which doesn't look smooth
|
7449
7465
|
Math.abs(newPosition - scrollPosition) < 16) return;
|
7450
|
-
if (isHorizontal.value && isRtl.value && containerRef.
|
7466
|
+
if (isHorizontal.value && isRtl.value && containerRef.el) {
|
7451
7467
|
const {
|
7452
7468
|
scrollWidth,
|
7453
7469
|
offsetWidth: containerWidth
|
7454
|
-
} = containerRef.
|
7470
|
+
} = containerRef.el;
|
7455
7471
|
newPosition = scrollWidth - containerWidth - newPosition;
|
7456
7472
|
}
|
7457
7473
|
if (isHorizontal.value) {
|
@@ -7469,12 +7485,12 @@
|
|
7469
7485
|
}
|
7470
7486
|
function onFocusin(e) {
|
7471
7487
|
isFocused.value = true;
|
7472
|
-
if (!isOverflowing.value || !contentRef.
|
7488
|
+
if (!isOverflowing.value || !contentRef.el) return;
|
7473
7489
|
|
7474
7490
|
// Focused element is likely to be the root of an item, so a
|
7475
7491
|
// breadth-first search will probably find it in the first iteration
|
7476
7492
|
for (const el of e.composedPath()) {
|
7477
|
-
for (const item of contentRef.
|
7493
|
+
for (const item of contentRef.el.children) {
|
7478
7494
|
if (item === el) {
|
7479
7495
|
scrollToChildren(item);
|
7480
7496
|
return;
|
@@ -7489,14 +7505,14 @@
|
|
7489
7505
|
// Affix clicks produce onFocus that we have to ignore to avoid extra scrollToChildren
|
7490
7506
|
let ignoreFocusEvent = false;
|
7491
7507
|
function onFocus(e) {
|
7492
|
-
if (!ignoreFocusEvent && !isFocused.value && !(e.relatedTarget && contentRef.
|
7508
|
+
if (!ignoreFocusEvent && !isFocused.value && !(e.relatedTarget && contentRef.el?.contains(e.relatedTarget))) focus();
|
7493
7509
|
ignoreFocusEvent = false;
|
7494
7510
|
}
|
7495
7511
|
function onFocusAffixes() {
|
7496
7512
|
ignoreFocusEvent = true;
|
7497
7513
|
}
|
7498
7514
|
function onKeydown(e) {
|
7499
|
-
if (!contentRef.
|
7515
|
+
if (!contentRef.el) return;
|
7500
7516
|
function toFocus(location) {
|
7501
7517
|
e.preventDefault();
|
7502
7518
|
focus(location);
|
@@ -7521,21 +7537,21 @@
|
|
7521
7537
|
}
|
7522
7538
|
}
|
7523
7539
|
function focus(location) {
|
7524
|
-
if (!contentRef.
|
7540
|
+
if (!contentRef.el) return;
|
7525
7541
|
let el;
|
7526
7542
|
if (!location) {
|
7527
|
-
const focusable = focusableChildren(contentRef.
|
7543
|
+
const focusable = focusableChildren(contentRef.el);
|
7528
7544
|
el = focusable[0];
|
7529
7545
|
} else if (location === 'next') {
|
7530
|
-
el = contentRef.
|
7546
|
+
el = contentRef.el.querySelector(':focus')?.nextElementSibling;
|
7531
7547
|
if (!el) return focus('first');
|
7532
7548
|
} else if (location === 'prev') {
|
7533
|
-
el = contentRef.
|
7549
|
+
el = contentRef.el.querySelector(':focus')?.previousElementSibling;
|
7534
7550
|
if (!el) return focus('last');
|
7535
7551
|
} else if (location === 'first') {
|
7536
|
-
el = contentRef.
|
7552
|
+
el = contentRef.el.firstElementChild;
|
7537
7553
|
} else if (location === 'last') {
|
7538
|
-
el = contentRef.
|
7554
|
+
el = contentRef.el.lastElementChild;
|
7539
7555
|
}
|
7540
7556
|
if (el) {
|
7541
7557
|
el.focus({
|
@@ -7549,11 +7565,11 @@
|
|
7549
7565
|
let newPosition = scrollOffset.value + offsetStep;
|
7550
7566
|
|
7551
7567
|
// TODO: improve it
|
7552
|
-
if (isHorizontal.value && isRtl.value && containerRef.
|
7568
|
+
if (isHorizontal.value && isRtl.value && containerRef.el) {
|
7553
7569
|
const {
|
7554
7570
|
scrollWidth,
|
7555
7571
|
offsetWidth: containerWidth
|
7556
|
-
} = containerRef.
|
7572
|
+
} = containerRef.el;
|
7557
7573
|
newPosition += scrollWidth - containerWidth;
|
7558
7574
|
}
|
7559
7575
|
scrollToPosition(newPosition);
|
@@ -7596,8 +7612,8 @@
|
|
7596
7612
|
});
|
7597
7613
|
const hasNext = vue.computed(() => {
|
7598
7614
|
if (!containerRef.value) return false;
|
7599
|
-
const scrollSize = getScrollSize(isHorizontal.value, containerRef.
|
7600
|
-
const clientSize = getClientSize(isHorizontal.value, containerRef.
|
7615
|
+
const scrollSize = getScrollSize(isHorizontal.value, containerRef.el);
|
7616
|
+
const clientSize = getClientSize(isHorizontal.value, containerRef.el);
|
7601
7617
|
const scrollSizeMax = scrollSize - clientSize;
|
7602
7618
|
|
7603
7619
|
// 1 pixel in reserve, may be lost after rounding
|
@@ -8021,14 +8037,16 @@
|
|
8021
8037
|
},
|
8022
8038
|
in: (v, children, parents) => {
|
8023
8039
|
let set = new Set();
|
8024
|
-
|
8025
|
-
|
8026
|
-
|
8027
|
-
|
8028
|
-
|
8029
|
-
|
8030
|
-
|
8031
|
-
|
8040
|
+
if (v != null) {
|
8041
|
+
for (const id of wrapInArray(v)) {
|
8042
|
+
set = strategy.activate({
|
8043
|
+
id,
|
8044
|
+
value: true,
|
8045
|
+
activated: new Set(set),
|
8046
|
+
children,
|
8047
|
+
parents
|
8048
|
+
});
|
8049
|
+
}
|
8032
8050
|
}
|
8033
8051
|
return set;
|
8034
8052
|
},
|
@@ -8057,8 +8075,11 @@
|
|
8057
8075
|
},
|
8058
8076
|
in: (v, children, parents) => {
|
8059
8077
|
let set = new Set();
|
8060
|
-
if (v
|
8061
|
-
|
8078
|
+
if (v != null) {
|
8079
|
+
const arr = wrapInArray(v);
|
8080
|
+
if (arr.length) {
|
8081
|
+
set = parentStrategy.in(arr.slice(0, 1), children, parents);
|
8082
|
+
}
|
8062
8083
|
}
|
8063
8084
|
return set;
|
8064
8085
|
},
|
@@ -8402,12 +8423,12 @@
|
|
8402
8423
|
const makeNestedProps = propsFactory({
|
8403
8424
|
activatable: Boolean,
|
8404
8425
|
selectable: Boolean,
|
8405
|
-
activeStrategy: [String, Function],
|
8406
|
-
selectStrategy: [String, Function],
|
8426
|
+
activeStrategy: [String, Function, Object],
|
8427
|
+
selectStrategy: [String, Function, Object],
|
8407
8428
|
openStrategy: [String, Object],
|
8408
|
-
opened:
|
8409
|
-
activated:
|
8410
|
-
selected:
|
8429
|
+
opened: null,
|
8430
|
+
activated: null,
|
8431
|
+
selected: null,
|
8411
8432
|
mandatory: Boolean
|
8412
8433
|
}, 'nested');
|
8413
8434
|
const useNested = props => {
|
@@ -8417,6 +8438,7 @@
|
|
8417
8438
|
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(v), v => [...v.values()]);
|
8418
8439
|
const activeStrategy = vue.computed(() => {
|
8419
8440
|
if (typeof props.activeStrategy === 'object') return props.activeStrategy;
|
8441
|
+
if (typeof props.activeStrategy === 'function') return props.activeStrategy(props.mandatory);
|
8420
8442
|
switch (props.activeStrategy) {
|
8421
8443
|
case 'leaf':
|
8422
8444
|
return leafActiveStrategy(props.mandatory);
|
@@ -8431,6 +8453,7 @@
|
|
8431
8453
|
});
|
8432
8454
|
const selectStrategy = vue.computed(() => {
|
8433
8455
|
if (typeof props.selectStrategy === 'object') return props.selectStrategy;
|
8456
|
+
if (typeof props.selectStrategy === 'function') return props.selectStrategy(props.mandatory);
|
8434
8457
|
switch (props.selectStrategy) {
|
8435
8458
|
case 'single-leaf':
|
8436
8459
|
return leafSingleSelectStrategy(props.mandatory);
|
@@ -10331,17 +10354,17 @@
|
|
10331
10354
|
}, {
|
10332
10355
|
flush: 'post'
|
10333
10356
|
});
|
10334
|
-
const activatorRef =
|
10357
|
+
const activatorRef = templateRef();
|
10335
10358
|
vue.watchEffect(() => {
|
10336
10359
|
if (!activatorRef.value) return;
|
10337
10360
|
vue.nextTick(() => {
|
10338
|
-
activatorEl.value =
|
10361
|
+
activatorEl.value = activatorRef.el;
|
10339
10362
|
});
|
10340
10363
|
});
|
10341
|
-
const targetRef =
|
10364
|
+
const targetRef = templateRef();
|
10342
10365
|
const target = vue.computed(() => {
|
10343
10366
|
if (props.target === 'cursor' && cursorTarget.value) return cursorTarget.value;
|
10344
|
-
if (targetRef.value) return
|
10367
|
+
if (targetRef.value) return targetRef.el;
|
10345
10368
|
return getTarget(props.target, vm) || activatorEl.value;
|
10346
10369
|
});
|
10347
10370
|
const targetEl = vue.computed(() => {
|
@@ -14810,7 +14833,7 @@
|
|
14810
14833
|
const {
|
14811
14834
|
resizeRef
|
14812
14835
|
} = useResizeObserver(entries => {
|
14813
|
-
if (!resizeRef.
|
14836
|
+
if (!resizeRef.el?.offsetParent) return;
|
14814
14837
|
const {
|
14815
14838
|
width,
|
14816
14839
|
height
|
@@ -18433,6 +18456,7 @@
|
|
18433
18456
|
});
|
18434
18457
|
return !!items.length && isSelected(items);
|
18435
18458
|
});
|
18459
|
+
const showSelectAll = vue.computed(() => selectStrategy.value.showSelectAll);
|
18436
18460
|
const data = {
|
18437
18461
|
toggleSelect,
|
18438
18462
|
select,
|
@@ -18441,7 +18465,7 @@
|
|
18441
18465
|
isSomeSelected,
|
18442
18466
|
someSelected,
|
18443
18467
|
allSelected,
|
18444
|
-
showSelectAll
|
18468
|
+
showSelectAll
|
18445
18469
|
};
|
18446
18470
|
vue.provide(VDataTableSelectionSymbol, data);
|
18447
18471
|
return data;
|
@@ -19712,7 +19736,7 @@
|
|
19712
19736
|
};
|
19713
19737
|
if (slots[columnSlotName]) return slots[columnSlotName](columnSlotProps);
|
19714
19738
|
if (column.key === 'data-table-select') {
|
19715
|
-
return slots['header.data-table-select']?.(columnSlotProps) ?? (showSelectAll && vue.createVNode(VCheckboxBtn, {
|
19739
|
+
return slots['header.data-table-select']?.(columnSlotProps) ?? (showSelectAll.value && vue.createVNode(VCheckboxBtn, {
|
19716
19740
|
"modelValue": allSelected.value,
|
19717
19741
|
"indeterminate": someSelected.value && !allSelected.value,
|
19718
19742
|
"onUpdate:modelValue": selectAll
|
@@ -21681,10 +21705,10 @@
|
|
21681
21705
|
vue.watchEffect(() => {
|
21682
21706
|
model.value = model.value ?? adapter.getYear(adapter.date());
|
21683
21707
|
});
|
21684
|
-
const yearRef =
|
21708
|
+
const yearRef = templateRef();
|
21685
21709
|
vue.onMounted(async () => {
|
21686
21710
|
await vue.nextTick();
|
21687
|
-
yearRef.
|
21711
|
+
yearRef.el?.scrollIntoView({
|
21688
21712
|
block: 'center'
|
21689
21713
|
});
|
21690
21714
|
});
|
@@ -22665,7 +22689,7 @@
|
|
22665
22689
|
}, fieldProps, {
|
22666
22690
|
"id": id.value,
|
22667
22691
|
"active": isActive.value || isDirty.value,
|
22668
|
-
"dirty": isDirty.value,
|
22692
|
+
"dirty": isDirty.value || props.dirty,
|
22669
22693
|
"disabled": isDisabled.value,
|
22670
22694
|
"focused": isFocused.value,
|
22671
22695
|
"error": isValid.value === false
|
@@ -23010,7 +23034,7 @@
|
|
23010
23034
|
function intersecting(side) {
|
23011
23035
|
if (props.mode !== 'manual' && !isIntersecting.value) return;
|
23012
23036
|
const status = getStatus(side);
|
23013
|
-
if (!rootEl.value ||
|
23037
|
+
if (!rootEl.value || ['empty', 'loading'].includes(status)) return;
|
23014
23038
|
previousScrollSize = getScrollSize();
|
23015
23039
|
setStatus(side, 'loading');
|
23016
23040
|
function done(status) {
|
@@ -25810,13 +25834,14 @@
|
|
25810
25834
|
const group = useGroupItem(props, VStepperSymbol, true);
|
25811
25835
|
const step = vue.computed(() => group?.value.value ?? props.value);
|
25812
25836
|
const isValid = vue.computed(() => props.rules.every(handler => handler() === true));
|
25837
|
+
const isClickable = vue.computed(() => !props.disabled && props.editable);
|
25813
25838
|
const canEdit = vue.computed(() => !props.disabled && props.editable);
|
25814
25839
|
const hasError = vue.computed(() => props.error || !isValid.value);
|
25815
25840
|
const hasCompleted = vue.computed(() => props.complete || props.rules.length > 0 && isValid.value);
|
25816
25841
|
const icon = vue.computed(() => {
|
25817
25842
|
if (hasError.value) return props.errorIcon;
|
25818
25843
|
if (hasCompleted.value) return props.completeIcon;
|
25819
|
-
if (props.editable) return props.editIcon;
|
25844
|
+
if (group.isSelected.value && props.editable) return props.editIcon;
|
25820
25845
|
return props.icon;
|
25821
25846
|
});
|
25822
25847
|
const slotProps = vue.computed(() => ({
|
@@ -25843,7 +25868,7 @@
|
|
25843
25868
|
}, group?.selectedClass.value],
|
25844
25869
|
"disabled": !props.editable,
|
25845
25870
|
"onClick": onClick
|
25846
|
-
}, [vue.createVNode(VAvatar, {
|
25871
|
+
}, [isClickable.value && genOverlays(true, 'v-stepper-item'), vue.createVNode(VAvatar, {
|
25847
25872
|
"key": "stepper-avatar",
|
25848
25873
|
"class": "v-stepper-item__avatar",
|
25849
25874
|
"color": hasColor ? props.color : undefined,
|
@@ -25905,7 +25930,8 @@
|
|
25905
25930
|
}, windowProps, {
|
25906
25931
|
"modelValue": model.value,
|
25907
25932
|
"onUpdate:modelValue": $event => model.value = $event,
|
25908
|
-
"class":
|
25933
|
+
"class": ['v-stepper-window', props.class],
|
25934
|
+
"style": props.style,
|
25909
25935
|
"mandatory": false,
|
25910
25936
|
"touch": false
|
25911
25937
|
}), slots);
|
@@ -25929,7 +25955,8 @@
|
|
25929
25955
|
return vue.createVNode(VWindowItem, vue.mergeProps({
|
25930
25956
|
"_as": "VStepperWindowItem"
|
25931
25957
|
}, windowItemProps, {
|
25932
|
-
"class":
|
25958
|
+
"class": ['v-stepper-window-item', props.class],
|
25959
|
+
"style": props.style
|
25933
25960
|
}), slots);
|
25934
25961
|
});
|
25935
25962
|
return {};
|
@@ -26037,12 +26064,18 @@
|
|
26037
26064
|
default: () => [hasHeader && vue.createVNode(VStepperHeader, {
|
26038
26065
|
"key": "stepper-header"
|
26039
26066
|
}, {
|
26040
|
-
default: () => [items.value.map((
|
26041
|
-
|
26042
|
-
|
26043
|
-
|
26044
|
-
|
26045
|
-
|
26067
|
+
default: () => [items.value.map((_ref2, index) => {
|
26068
|
+
let {
|
26069
|
+
raw,
|
26070
|
+
...item
|
26071
|
+
} = _ref2;
|
26072
|
+
return vue.createVNode(vue.Fragment, null, [!!index && vue.createVNode(VDivider, null, null), vue.createVNode(VStepperItem, item, {
|
26073
|
+
default: slots[`header-item.${item.value}`] ?? slots.header,
|
26074
|
+
icon: slots.icon,
|
26075
|
+
title: slots.title,
|
26076
|
+
subtitle: slots.subtitle
|
26077
|
+
})]);
|
26078
|
+
})]
|
26046
26079
|
}), hasWindow && vue.createVNode(VStepperWindow, {
|
26047
26080
|
"key": "stepper-window"
|
26048
26081
|
}, {
|
@@ -26428,7 +26461,8 @@
|
|
26428
26461
|
}, windowProps, {
|
26429
26462
|
"modelValue": model.value,
|
26430
26463
|
"onUpdate:modelValue": $event => model.value = $event,
|
26431
|
-
"class":
|
26464
|
+
"class": ['v-tabs-window', props.class],
|
26465
|
+
"style": props.style,
|
26432
26466
|
"mandatory": false,
|
26433
26467
|
"touch": false
|
26434
26468
|
}), slots);
|
@@ -29748,7 +29782,7 @@
|
|
29748
29782
|
goTo
|
29749
29783
|
};
|
29750
29784
|
}
|
29751
|
-
const version$1 = "3.6.
|
29785
|
+
const version$1 = "3.6.4-master.2024-05-09";
|
29752
29786
|
createVuetify$1.version = version$1;
|
29753
29787
|
|
29754
29788
|
// Vue's inject() can only be used in setup
|
@@ -30001,7 +30035,7 @@
|
|
30001
30035
|
|
30002
30036
|
/* eslint-disable local-rules/sort-imports */
|
30003
30037
|
|
30004
|
-
const version = "3.6.
|
30038
|
+
const version = "3.6.4-master.2024-05-09";
|
30005
30039
|
|
30006
30040
|
/* eslint-disable local-rules/sort-imports */
|
30007
30041
|
|