@vuetify/nightly 3.7.4-next.2024-11-06 → 3.7.5-dev.2024-12-03
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 +3034 -3026
- package/dist/json/importMap-labs.json +14 -14
- package/dist/json/importMap.json +138 -138
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +5538 -5520
- package/dist/vuetify-labs.css +25130 -23413
- package/dist/vuetify-labs.d.ts +162 -156
- package/dist/vuetify-labs.esm.js +89 -71
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +89 -71
- package/dist/vuetify-labs.min.css +4 -3
- package/dist/vuetify.css +24211 -22491
- package/dist/vuetify.d.ts +146 -140
- package/dist/vuetify.esm.js +78 -61
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +78 -61
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +4 -3
- package/dist/vuetify.min.js +40 -40
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +215 -207
- package/lib/components/VApp/VApp.css +15 -16
- package/lib/components/VAppBar/VAppBar.css +12 -14
- package/lib/components/VAutocomplete/VAutocomplete.css +85 -86
- package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -4
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +16 -16
- package/lib/components/VAvatar/VAvatar.css +106 -108
- package/lib/components/VBadge/VBadge.css +77 -73
- package/lib/components/VBadge/VBadge.sass +4 -0
- package/lib/components/VBanner/VBanner.css +166 -161
- package/lib/components/VBottomNavigation/VBottomNavigation.css +63 -64
- package/lib/components/VBottomSheet/VBottomSheet.css +31 -34
- package/lib/components/VBreadcrumbs/VBreadcrumbs.css +57 -54
- package/lib/components/VBtn/VBtn.css +408 -385
- package/lib/components/VBtn/VBtn.sass +4 -4
- package/lib/components/VBtnGroup/VBtnGroup.css +64 -63
- package/lib/components/VBtnToggle/VBtnToggle.css +14 -16
- package/lib/components/VCard/VCard.css +302 -294
- package/lib/components/VCarousel/VCarousel.css +65 -63
- package/lib/components/VCarousel/VCarousel.sass +1 -1
- package/lib/components/VCheckbox/VCheckbox.css +5 -7
- package/lib/components/VChip/VChip.css +411 -378
- package/lib/components/VChip/VChip.mjs +18 -10
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.mts +13 -8
- package/lib/components/VChipGroup/VChipGroup.css +18 -19
- package/lib/components/VChipGroup/VChipGroup.mjs +2 -0
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.mts +5 -0
- package/lib/components/VCode/VCode.css +8 -10
- package/lib/components/VColorPicker/VColorPicker.css +22 -22
- package/lib/components/VColorPicker/VColorPickerCanvas.css +22 -24
- package/lib/components/VColorPicker/VColorPickerEdit.css +28 -29
- package/lib/components/VColorPicker/VColorPickerPreview.css +67 -69
- package/lib/components/VColorPicker/VColorPickerPreview.sass +2 -4
- package/lib/components/VColorPicker/VColorPickerSwatches.css +34 -34
- package/lib/components/VCombobox/VCombobox.css +85 -86
- package/lib/components/VCombobox/VCombobox.mjs +4 -4
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +16 -16
- package/lib/components/VConfirmEdit/VConfirmEdit.mjs +9 -7
- package/lib/components/VConfirmEdit/VConfirmEdit.mjs.map +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs.map +1 -1
- package/lib/components/VConfirmEdit/index.d.mts +3 -7
- package/lib/components/VCounter/VCounter.css +5 -7
- package/lib/components/VDataTable/VDataTable.css +186 -189
- package/lib/components/VDataTable/VDataTable.sass +10 -20
- package/lib/components/VDataTable/VDataTableFooter.css +31 -33
- package/lib/components/VDatePicker/VDatePicker.css +6 -8
- package/lib/components/VDatePicker/VDatePickerControls.css +56 -54
- package/lib/components/VDatePicker/VDatePickerHeader.css +60 -56
- package/lib/components/VDatePicker/VDatePickerHeader.mjs +2 -1
- package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.css +55 -51
- package/lib/components/VDatePicker/VDatePickerMonths.css +19 -20
- package/lib/components/VDatePicker/VDatePickerYears.css +15 -16
- package/lib/components/VDatePicker/index.d.mts +5 -5
- package/lib/components/VDialog/VDialog.css +95 -95
- package/lib/components/VDivider/VDivider.css +52 -52
- package/lib/components/VEmptyState/VEmptyState.css +67 -62
- package/lib/components/VExpansionPanel/VExpansionPanel.css +209 -203
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +25 -27
- package/lib/components/VFab/VFab.css +69 -74
- package/lib/components/VFab/VFab.sass +4 -5
- package/lib/components/VField/VField.css +579 -539
- package/lib/components/VField/VField.mjs +2 -1
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.css +29 -31
- package/lib/components/VFooter/VFooter.css +36 -38
- package/lib/components/VGrid/VGrid.css +592 -565
- package/lib/components/VIcon/VIcon.css +52 -51
- package/lib/components/VImg/VImg.css +51 -50
- package/lib/components/VInfiniteScroll/VInfiniteScroll.css +37 -36
- package/lib/components/VInput/VInput.css +142 -131
- package/lib/components/VItemGroup/VItemGroup.css +5 -7
- package/lib/components/VKbd/VKbd.css +11 -13
- package/lib/components/VLabel/VLabel.css +15 -16
- package/lib/components/VLayout/VLayout.css +8 -10
- package/lib/components/VLayout/VLayoutItem.css +7 -8
- package/lib/components/VList/VList.css +108 -104
- package/lib/components/VList/VList.mjs +3 -2
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VList.sass +1 -1
- package/lib/components/VList/VListItem.css +452 -440
- package/lib/components/VList/VListItem.mjs +3 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +1 -2
- package/lib/components/VList/index.d.mts +10 -10
- package/lib/components/VLocaleProvider/VLocaleProvider.css +2 -4
- package/lib/components/VMain/VMain.css +30 -32
- package/lib/components/VMenu/VMenu.css +19 -21
- package/lib/components/VMessages/VMessages.css +15 -17
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +108 -106
- package/lib/components/VOtpInput/VOtpInput.css +58 -56
- package/lib/components/VOverlay/VOverlay.css +63 -60
- package/lib/components/VOverlay/VOverlay.sass +13 -14
- package/lib/components/VPagination/VPagination.css +8 -10
- package/lib/components/VParallax/VParallax.css +6 -8
- package/lib/components/VProgressCircular/VProgressCircular.css +101 -95
- package/lib/components/VProgressLinear/VProgressLinear.css +222 -209
- package/lib/components/VRadioGroup/VRadioGroup.css +12 -14
- package/lib/components/VRating/VRating.css +53 -52
- package/lib/components/VResponsive/VResponsive.css +26 -25
- package/lib/components/VSelect/VSelect.css +52 -54
- package/lib/components/VSelect/VSelect.mjs +3 -3
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +16 -16
- package/lib/components/VSelectionControl/VSelectionControl.css +102 -100
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +8 -10
- package/lib/components/VSheet/VSheet.css +36 -38
- package/lib/components/VSkeletonLoader/VSkeletonLoader.css +224 -225
- package/lib/components/VSlideGroup/VSlideGroup.css +55 -53
- package/lib/components/VSlider/VSlider.css +57 -53
- package/lib/components/VSlider/VSliderThumb.css +153 -142
- package/lib/components/VSlider/VSliderTrack.css +174 -155
- package/lib/components/VSnackbar/VSnackbar.css +140 -140
- package/lib/components/VSpeedDial/VSpeedDial.css +41 -43
- package/lib/components/VStepper/VStepper.css +56 -55
- package/lib/components/VStepper/VStepper.mjs +5 -4
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepperItem.css +115 -112
- package/lib/components/VStepper/VStepperItem.mjs +5 -4
- package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
- package/lib/components/VStepper/index.d.mts +51 -45
- package/lib/components/VSwitch/VSwitch.css +139 -129
- package/lib/components/VSystemBar/VSystemBar.css +43 -45
- package/lib/components/VTable/VTable.css +141 -140
- package/lib/components/VTable/VTable.sass +2 -4
- package/lib/components/VTabs/VTab.css +29 -30
- package/lib/components/VTabs/VTabs.css +65 -59
- package/lib/components/VTextField/VTextField.css +68 -65
- package/lib/components/VTextarea/VTextarea.css +39 -47
- package/lib/components/VTextarea/VTextarea.sass +2 -4
- package/lib/components/VThemeProvider/VThemeProvider.css +3 -5
- package/lib/components/VTimeline/VTimeline.css +418 -379
- package/lib/components/VToolbar/VToolbar.css +143 -136
- package/lib/components/VTooltip/VTooltip.css +21 -25
- package/lib/components/VTooltip/VTooltip.sass +6 -8
- package/lib/components/VVirtualScroll/VVirtualScroll.css +9 -11
- package/lib/components/VWindow/VWindow.css +70 -73
- package/lib/components/index.d.mts +98 -92
- package/lib/composables/form.mjs +7 -2
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/theme.mjs +4 -4
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/validation.mjs +10 -12
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/directives/ripple/VRipple.css +36 -38
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.mts +48 -48
- package/lib/labs/VCalendar/VCalendar.css +225 -219
- package/lib/labs/VCalendar/VCalendarDay.css +32 -33
- package/lib/labs/VCalendar/VCalendarHeader.css +13 -13
- package/lib/labs/VCalendar/VCalendarInterval.css +42 -43
- package/lib/labs/VCalendar/VCalendarIntervalEvent.css +5 -7
- package/lib/labs/VCalendar/VCalendarMonthDay.css +58 -61
- package/lib/labs/VCalendar/VCalendarMonthDay.sass +2 -3
- package/lib/labs/VDateInput/VDateInput.mjs +1 -1
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VNumberInput/VNumberInput.css +38 -40
- package/lib/labs/VNumberInput/VNumberInput.mjs +7 -5
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VPicker/VPicker.css +57 -53
- package/lib/labs/VStepperVertical/index.d.mts +44 -44
- package/lib/labs/VTimePicker/VTimePicker.css +7 -9
- package/lib/labs/VTimePicker/VTimePickerClock.css +129 -126
- package/lib/labs/VTimePicker/VTimePickerControls.css +103 -102
- package/lib/labs/VTreeview/VTreeviewItem.css +15 -17
- package/lib/labs/VTreeview/VTreeviewItem.mjs +3 -4
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.sass +1 -2
- package/lib/labs/VTreeview/index.d.mts +20 -20
- package/lib/labs/components.d.mts +64 -64
- package/lib/locale/fr.mjs +1 -1
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/styles/elements/_global.sass +1 -1
- package/lib/styles/generic/_colors.scss +3 -3
- package/lib/styles/generic/_layers.scss +1 -13
- package/lib/styles/generic/_transitions.scss +32 -32
- package/lib/styles/main.css +16139 -14666
- package/lib/styles/settings/_utilities.scss +5 -0
- package/lib/styles/settings/_variables.scss +2 -1
- package/lib/styles/tools/_bootable.sass +3 -0
- package/lib/styles/tools/_border.sass +4 -4
- package/lib/styles/tools/_display.sass +10 -0
- package/lib/styles/tools/_elevation.sass +2 -2
- package/lib/styles/tools/_index.sass +2 -0
- package/lib/styles/tools/_layer.scss +2 -4
- package/lib/styles/tools/_position.sass +2 -2
- package/lib/styles/tools/_radius.sass +10 -0
- package/lib/styles/tools/_rounded.sass +2 -2
- package/lib/styles/tools/_utilities.sass +5 -1
- package/lib/styles/utilities/_elevation.scss +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.esm.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.7.
|
2
|
+
* Vuetify v3.7.5-dev.2024-12-03
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -2427,15 +2427,15 @@ function createTheme(options) {
|
|
2427
2427
|
const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)));
|
2428
2428
|
for (const key of colors) {
|
2429
2429
|
if (/^on-[a-z]/.test(key)) {
|
2430
|
-
createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key}))`]);
|
2430
|
+
createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
|
2431
2431
|
} else {
|
2432
|
-
createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--v-theme-${key}))`, `color: rgb(var(--v-theme-on-${key}))`]);
|
2433
|
-
createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key}))`]);
|
2432
|
+
createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`]);
|
2433
|
+
createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
|
2434
2434
|
createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`]);
|
2435
2435
|
}
|
2436
2436
|
}
|
2437
2437
|
lines.push(...bgLines, ...fgLines);
|
2438
|
-
return
|
2438
|
+
return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
|
2439
2439
|
});
|
2440
2440
|
function getHead() {
|
2441
2441
|
return {
|
@@ -6670,8 +6670,13 @@ function createForm(props) {
|
|
6670
6670
|
resetValidation
|
6671
6671
|
};
|
6672
6672
|
}
|
6673
|
-
function useForm() {
|
6674
|
-
|
6673
|
+
function useForm(props) {
|
6674
|
+
const form = inject$1(FormKey, null);
|
6675
|
+
return {
|
6676
|
+
...form,
|
6677
|
+
isReadonly: computed(() => !!(props?.readonly ?? form?.isReadonly.value)),
|
6678
|
+
isDisabled: computed(() => !!(props?.disabled ?? form?.isDisabled.value))
|
6679
|
+
};
|
6675
6680
|
}
|
6676
6681
|
|
6677
6682
|
// Composables
|
@@ -6712,17 +6717,15 @@ function useValidation(props) {
|
|
6712
6717
|
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : getUid();
|
6713
6718
|
const model = useProxiedModel(props, 'modelValue');
|
6714
6719
|
const validationModel = computed(() => props.validationValue === undefined ? model.value : props.validationValue);
|
6715
|
-
const form = useForm();
|
6720
|
+
const form = useForm(props);
|
6716
6721
|
const internalErrorMessages = ref([]);
|
6717
6722
|
const isPristine = shallowRef(true);
|
6718
6723
|
const isDirty = computed(() => !!(wrapInArray(model.value === '' ? null : model.value).length || wrapInArray(validationModel.value === '' ? null : validationModel.value).length));
|
6719
|
-
const isDisabled = computed(() => !!(props.disabled ?? form?.isDisabled.value));
|
6720
|
-
const isReadonly = computed(() => !!(props.readonly ?? form?.isReadonly.value));
|
6721
6724
|
const errorMessages = computed(() => {
|
6722
6725
|
return props.errorMessages?.length ? wrapInArray(props.errorMessages).concat(internalErrorMessages.value).slice(0, Math.max(0, +props.maxErrors)) : internalErrorMessages.value;
|
6723
6726
|
});
|
6724
6727
|
const validateOn = computed(() => {
|
6725
|
-
let value = (props.validateOn ?? form?.
|
6728
|
+
let value = (props.validateOn ?? form.validateOn?.value) || 'input';
|
6726
6729
|
if (value === 'lazy') value = 'input lazy';
|
6727
6730
|
if (value === 'eager') value = 'input eager';
|
6728
6731
|
const set = new Set(value?.split(' ') ?? []);
|
@@ -6748,14 +6751,14 @@ function useValidation(props) {
|
|
6748
6751
|
return {
|
6749
6752
|
[`${name}--error`]: isValid.value === false,
|
6750
6753
|
[`${name}--dirty`]: isDirty.value,
|
6751
|
-
[`${name}--disabled`]: isDisabled.value,
|
6752
|
-
[`${name}--readonly`]: isReadonly.value
|
6754
|
+
[`${name}--disabled`]: form.isDisabled.value,
|
6755
|
+
[`${name}--readonly`]: form.isReadonly.value
|
6753
6756
|
};
|
6754
6757
|
});
|
6755
6758
|
const vm = getCurrentInstance('validation');
|
6756
6759
|
const uid = computed(() => props.name ?? unref(id));
|
6757
6760
|
onBeforeMount(() => {
|
6758
|
-
form?.
|
6761
|
+
form.register?.({
|
6759
6762
|
id: uid.value,
|
6760
6763
|
vm,
|
6761
6764
|
validate,
|
@@ -6764,13 +6767,13 @@ function useValidation(props) {
|
|
6764
6767
|
});
|
6765
6768
|
});
|
6766
6769
|
onBeforeUnmount(() => {
|
6767
|
-
form?.
|
6770
|
+
form.unregister?.(uid.value);
|
6768
6771
|
});
|
6769
6772
|
onMounted(async () => {
|
6770
6773
|
if (!validateOn.value.lazy) {
|
6771
6774
|
await validate(!validateOn.value.eager);
|
6772
6775
|
}
|
6773
|
-
form?.
|
6776
|
+
form.update?.(uid.value, isValid.value, errorMessages.value);
|
6774
6777
|
});
|
6775
6778
|
useToggleScope(() => validateOn.value.input || validateOn.value.invalidInput && isValid.value === false, () => {
|
6776
6779
|
watch(validationModel, () => {
|
@@ -6790,7 +6793,7 @@ function useValidation(props) {
|
|
6790
6793
|
});
|
6791
6794
|
});
|
6792
6795
|
watch([isValid, errorMessages], () => {
|
6793
|
-
form?.
|
6796
|
+
form.update?.(uid.value, isValid.value, errorMessages.value);
|
6794
6797
|
});
|
6795
6798
|
async function reset() {
|
6796
6799
|
model.value = null;
|
@@ -6831,8 +6834,8 @@ function useValidation(props) {
|
|
6831
6834
|
return {
|
6832
6835
|
errorMessages,
|
6833
6836
|
isDirty,
|
6834
|
-
isDisabled,
|
6835
|
-
isReadonly,
|
6837
|
+
isDisabled: form.isDisabled,
|
6838
|
+
isReadonly: form.isReadonly,
|
6836
6839
|
isPristine,
|
6837
6840
|
isValid,
|
6838
6841
|
isValidating,
|
@@ -7751,6 +7754,7 @@ const VSlideGroup = genericComponent()({
|
|
7751
7754
|
|
7752
7755
|
const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group');
|
7753
7756
|
const makeVChipGroupProps = propsFactory({
|
7757
|
+
baseColor: String,
|
7754
7758
|
column: Boolean,
|
7755
7759
|
filter: Boolean,
|
7756
7760
|
valueComparator: {
|
@@ -7790,6 +7794,7 @@ const VChipGroup = genericComponent()({
|
|
7790
7794
|
} = useGroup(props, VChipGroupSymbol);
|
7791
7795
|
provideDefaults({
|
7792
7796
|
VChip: {
|
7797
|
+
baseColor: toRef(props, 'baseColor'),
|
7793
7798
|
color: toRef(props, 'color'),
|
7794
7799
|
disabled: toRef(props, 'disabled'),
|
7795
7800
|
filter: toRef(props, 'filter'),
|
@@ -7823,6 +7828,7 @@ const makeVChipProps = propsFactory({
|
|
7823
7828
|
activeClass: String,
|
7824
7829
|
appendAvatar: String,
|
7825
7830
|
appendIcon: IconValue,
|
7831
|
+
baseColor: String,
|
7826
7832
|
closable: Boolean,
|
7827
7833
|
closeIcon: {
|
7828
7834
|
type: IconValue,
|
@@ -7835,7 +7841,7 @@ const makeVChipProps = propsFactory({
|
|
7835
7841
|
draggable: Boolean,
|
7836
7842
|
filter: Boolean,
|
7837
7843
|
filterIcon: {
|
7838
|
-
type:
|
7844
|
+
type: IconValue,
|
7839
7845
|
default: '$complete'
|
7840
7846
|
},
|
7841
7847
|
label: Boolean,
|
@@ -7897,11 +7903,6 @@ const VChip = genericComponent()({
|
|
7897
7903
|
const {
|
7898
7904
|
borderClasses
|
7899
7905
|
} = useBorder(props);
|
7900
|
-
const {
|
7901
|
-
colorClasses,
|
7902
|
-
colorStyles,
|
7903
|
-
variantClasses
|
7904
|
-
} = useVariant(props);
|
7905
7906
|
const {
|
7906
7907
|
densityClasses
|
7907
7908
|
} = useDensity(props);
|
@@ -7931,6 +7932,18 @@ const VChip = genericComponent()({
|
|
7931
7932
|
emit('click:close', e);
|
7932
7933
|
}
|
7933
7934
|
}));
|
7935
|
+
const variantProps = computed(() => {
|
7936
|
+
const showColor = !group || group.isSelected.value;
|
7937
|
+
return {
|
7938
|
+
color: showColor ? props.color ?? props.baseColor : props.baseColor,
|
7939
|
+
variant: props.variant
|
7940
|
+
};
|
7941
|
+
});
|
7942
|
+
const {
|
7943
|
+
colorClasses,
|
7944
|
+
colorStyles,
|
7945
|
+
variantClasses
|
7946
|
+
} = useVariant(variantProps);
|
7934
7947
|
function onClick(e) {
|
7935
7948
|
emit('click', e);
|
7936
7949
|
if (!isClickable.value) return;
|
@@ -7951,16 +7964,16 @@ const VChip = genericComponent()({
|
|
7951
7964
|
const hasFilter = !!(slots.filter || props.filter) && group;
|
7952
7965
|
const hasPrependMedia = !!(props.prependIcon || props.prependAvatar);
|
7953
7966
|
const hasPrepend = !!(hasPrependMedia || slots.prepend);
|
7954
|
-
const hasColor = !group || group.isSelected.value;
|
7955
7967
|
return isActive.value && withDirectives(createVNode(Tag, mergeProps({
|
7956
7968
|
"class": ['v-chip', {
|
7957
7969
|
'v-chip--disabled': props.disabled,
|
7958
7970
|
'v-chip--label': props.label,
|
7959
7971
|
'v-chip--link': isClickable.value,
|
7960
7972
|
'v-chip--filter': hasFilter,
|
7961
|
-
'v-chip--pill': props.pill
|
7962
|
-
|
7963
|
-
|
7973
|
+
'v-chip--pill': props.pill,
|
7974
|
+
[`${props.activeClass}`]: props.activeClass && link.isActive?.value
|
7975
|
+
}, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value, props.class],
|
7976
|
+
"style": [colorStyles.value, props.style],
|
7964
7977
|
"disabled": props.disabled || undefined,
|
7965
7978
|
"draggable": props.draggable,
|
7966
7979
|
"tabindex": isClickable.value ? 0 : undefined,
|
@@ -8932,7 +8945,8 @@ const VListItem = genericComponent()({
|
|
8932
8945
|
const list = useList();
|
8933
8946
|
const isActive = computed(() => props.active !== false && (props.active || link.isActive?.value || (root.activatable.value ? isActivated.value : isSelected.value)));
|
8934
8947
|
const isLink = computed(() => props.link !== false && link.isLink.value);
|
8935
|
-
const
|
8948
|
+
const isSelectable = computed(() => !!list && (root.selectable.value || root.activatable.value || props.value != null));
|
8949
|
+
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || isSelectable.value));
|
8936
8950
|
const roundedProps = computed(() => props.rounded || props.nav);
|
8937
8951
|
const color = computed(() => props.color ?? props.activeColor);
|
8938
8952
|
const variantProps = computed(() => ({
|
@@ -9023,7 +9037,7 @@ const VListItem = genericComponent()({
|
|
9023
9037
|
}, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, variantClasses.value, props.class],
|
9024
9038
|
"style": [colorStyles.value, dimensionStyles.value, props.style],
|
9025
9039
|
"tabindex": isClickable.value ? list ? -2 : 0 : undefined,
|
9026
|
-
"aria-selected": root.activatable.value ? isActivated.value : isSelected.value,
|
9040
|
+
"aria-selected": isSelectable.value ? root.activatable.value ? isActivated.value : root.selectable.value ? isSelected.value : isActive.value : undefined,
|
9027
9041
|
"onClick": onClick,
|
9028
9042
|
"onKeydown": isClickable.value && !isLink.value && onKeyDown
|
9029
9043
|
}, link.linkProps), {
|
@@ -9440,8 +9454,8 @@ const makeVListProps = propsFactory({
|
|
9440
9454
|
activeClass: String,
|
9441
9455
|
bgColor: String,
|
9442
9456
|
disabled: Boolean,
|
9443
|
-
expandIcon:
|
9444
|
-
collapseIcon:
|
9457
|
+
expandIcon: IconValue,
|
9458
|
+
collapseIcon: IconValue,
|
9445
9459
|
lines: {
|
9446
9460
|
type: [Boolean, String],
|
9447
9461
|
default: 'one'
|
@@ -11615,7 +11629,8 @@ const VField = genericComponent()({
|
|
11615
11629
|
"style": textColorStyles.value
|
11616
11630
|
}, {
|
11617
11631
|
default: () => [label()]
|
11618
|
-
}), createVNode(VFieldLabel, {
|
11632
|
+
}), hasLabel.value && createVNode(VFieldLabel, {
|
11633
|
+
"key": "label",
|
11619
11634
|
"ref": labelRef,
|
11620
11635
|
"for": id.value
|
11621
11636
|
}, {
|
@@ -12441,7 +12456,7 @@ const VSelect = genericComponent()({
|
|
12441
12456
|
const counterValue = computed(() => {
|
12442
12457
|
return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : model.value.length;
|
12443
12458
|
});
|
12444
|
-
const form = useForm();
|
12459
|
+
const form = useForm(props);
|
12445
12460
|
const selectedValues = computed(() => model.value.map(selection => selection.value));
|
12446
12461
|
const isFocused = shallowRef(false);
|
12447
12462
|
const label = computed(() => menu.value ? props.closeText : props.openText);
|
@@ -12453,7 +12468,7 @@ const VSelect = genericComponent()({
|
|
12453
12468
|
}
|
12454
12469
|
return items.value;
|
12455
12470
|
});
|
12456
|
-
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length ||
|
12471
|
+
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
12457
12472
|
const computedMenuProps = computed(() => {
|
12458
12473
|
return {
|
12459
12474
|
...props.menuProps,
|
@@ -12480,7 +12495,7 @@ const VSelect = genericComponent()({
|
|
12480
12495
|
}
|
12481
12496
|
}
|
12482
12497
|
function onKeydown(e) {
|
12483
|
-
if (!e.key ||
|
12498
|
+
if (!e.key || form.isReadonly.value) return;
|
12484
12499
|
if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {
|
12485
12500
|
e.preventDefault();
|
12486
12501
|
}
|
@@ -12958,7 +12973,7 @@ const VAutocomplete = genericComponent()({
|
|
12958
12973
|
const counterValue = computed(() => {
|
12959
12974
|
return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : model.value.length;
|
12960
12975
|
});
|
12961
|
-
const form = useForm();
|
12976
|
+
const form = useForm(props);
|
12962
12977
|
const {
|
12963
12978
|
filteredItems,
|
12964
12979
|
getMatches
|
@@ -12976,7 +12991,7 @@ const VAutocomplete = genericComponent()({
|
|
12976
12991
|
const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title;
|
12977
12992
|
return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
|
12978
12993
|
});
|
12979
|
-
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length ||
|
12994
|
+
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
12980
12995
|
const listRef = ref();
|
12981
12996
|
const listEvents = useScrolling(listRef, vTextFieldRef);
|
12982
12997
|
function onClear(e) {
|
@@ -13003,7 +13018,7 @@ const VAutocomplete = genericComponent()({
|
|
13003
13018
|
}
|
13004
13019
|
}
|
13005
13020
|
function onKeydown(e) {
|
13006
|
-
if (
|
13021
|
+
if (form.isReadonly.value) return;
|
13007
13022
|
const selectionStart = vTextFieldRef.value.selectionStart;
|
13008
13023
|
const length = model.value.length;
|
13009
13024
|
if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
|
@@ -13180,7 +13195,7 @@ const VAutocomplete = genericComponent()({
|
|
13180
13195
|
'v-autocomplete--selecting-index': selectionIndex.value > -1
|
13181
13196
|
}, props.class],
|
13182
13197
|
"style": props.style,
|
13183
|
-
"readonly":
|
13198
|
+
"readonly": form.isReadonly.value,
|
13184
13199
|
"placeholder": isDirty ? undefined : props.placeholder,
|
13185
13200
|
"onClick:clear": onClear,
|
13186
13201
|
"onMousedown:control": onMousedownControl,
|
@@ -16799,7 +16814,7 @@ const VCombobox = genericComponent()({
|
|
16799
16814
|
const transformed = transformOut(v);
|
16800
16815
|
return props.multiple ? transformed : transformed[0] ?? null;
|
16801
16816
|
});
|
16802
|
-
const form = useForm();
|
16817
|
+
const form = useForm(props);
|
16803
16818
|
const hasChips = computed(() => !!(props.chips || slots.chip));
|
16804
16819
|
const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection);
|
16805
16820
|
const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '');
|
@@ -16859,7 +16874,7 @@ const VCombobox = genericComponent()({
|
|
16859
16874
|
const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title;
|
16860
16875
|
return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
|
16861
16876
|
});
|
16862
|
-
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length ||
|
16877
|
+
const menuDisabled = computed(() => props.hideNoData && !displayItems.value.length || form.isReadonly.value || form.isDisabled.value);
|
16863
16878
|
const listRef = ref();
|
16864
16879
|
const listEvents = useScrolling(listRef, vTextFieldRef);
|
16865
16880
|
function onClear(e) {
|
@@ -16887,7 +16902,7 @@ const VCombobox = genericComponent()({
|
|
16887
16902
|
}
|
16888
16903
|
// eslint-disable-next-line complexity
|
16889
16904
|
function onKeydown(e) {
|
16890
|
-
if (isComposingIgnoreKey(e) ||
|
16905
|
+
if (isComposingIgnoreKey(e) || form.isReadonly.value) return;
|
16891
16906
|
const selectionStart = vTextFieldRef.value.selectionStart;
|
16892
16907
|
const length = model.value.length;
|
16893
16908
|
if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
|
@@ -17059,7 +17074,7 @@ const VCombobox = genericComponent()({
|
|
17059
17074
|
[`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true
|
17060
17075
|
}, props.class],
|
17061
17076
|
"style": props.style,
|
17062
|
-
"readonly":
|
17077
|
+
"readonly": form.isReadonly.value,
|
17063
17078
|
"placeholder": isDirty ? undefined : props.placeholder,
|
17064
17079
|
"onClick:clear": onClear,
|
17065
17080
|
"onMousedown:control": onMousedownControl,
|
@@ -18103,21 +18118,23 @@ const VConfirmEdit = genericComponent()({
|
|
18103
18118
|
internalModel.value = structuredClone(toRaw(model.value));
|
18104
18119
|
emit('cancel');
|
18105
18120
|
}
|
18106
|
-
|
18107
|
-
|
18108
|
-
const actions = createVNode(Fragment, null, [createVNode(VBtn, {
|
18121
|
+
function actions(actionsProps) {
|
18122
|
+
return createVNode(Fragment, null, [createVNode(VBtn, mergeProps({
|
18109
18123
|
"disabled": isPristine.value,
|
18110
18124
|
"variant": "text",
|
18111
18125
|
"color": props.color,
|
18112
18126
|
"onClick": cancel,
|
18113
18127
|
"text": t(props.cancelText)
|
18114
|
-
}, null), createVNode(VBtn, {
|
18128
|
+
}, actionsProps), null), createVNode(VBtn, mergeProps({
|
18115
18129
|
"disabled": isPristine.value,
|
18116
18130
|
"variant": "text",
|
18117
18131
|
"color": props.color,
|
18118
18132
|
"onClick": save,
|
18119
18133
|
"text": t(props.okText)
|
18120
|
-
}, null)]);
|
18134
|
+
}, actionsProps), null)]);
|
18135
|
+
}
|
18136
|
+
let actionsUsed = false;
|
18137
|
+
useRender(() => {
|
18121
18138
|
return createVNode(Fragment, null, [slots.default?.({
|
18122
18139
|
model: internalModel,
|
18123
18140
|
save,
|
@@ -18127,7 +18144,7 @@ const VConfirmEdit = genericComponent()({
|
|
18127
18144
|
actionsUsed = true;
|
18128
18145
|
return actions;
|
18129
18146
|
}
|
18130
|
-
}), !actionsUsed && actions]);
|
18147
|
+
}), !actionsUsed && actions()]);
|
18131
18148
|
});
|
18132
18149
|
return {
|
18133
18150
|
save,
|
@@ -21417,7 +21434,7 @@ const VDatePickerControls = genericComponent()({
|
|
21417
21434
|
// Types
|
21418
21435
|
|
21419
21436
|
const makeVDatePickerHeaderProps = propsFactory({
|
21420
|
-
appendIcon:
|
21437
|
+
appendIcon: IconValue,
|
21421
21438
|
color: String,
|
21422
21439
|
header: String,
|
21423
21440
|
transition: String,
|
@@ -26073,20 +26090,20 @@ const makeStepperItemProps = propsFactory({
|
|
26073
26090
|
subtitle: String,
|
26074
26091
|
complete: Boolean,
|
26075
26092
|
completeIcon: {
|
26076
|
-
type:
|
26093
|
+
type: IconValue,
|
26077
26094
|
default: '$complete'
|
26078
26095
|
},
|
26079
26096
|
editable: Boolean,
|
26080
26097
|
editIcon: {
|
26081
|
-
type:
|
26098
|
+
type: IconValue,
|
26082
26099
|
default: '$edit'
|
26083
26100
|
},
|
26084
26101
|
error: Boolean,
|
26085
26102
|
errorIcon: {
|
26086
|
-
type:
|
26103
|
+
type: IconValue,
|
26087
26104
|
default: '$error'
|
26088
26105
|
},
|
26089
|
-
icon:
|
26106
|
+
icon: IconValue,
|
26090
26107
|
ripple: {
|
26091
26108
|
type: [Boolean, Object],
|
26092
26109
|
default: true
|
@@ -26247,10 +26264,10 @@ const VStepperWindowItem = genericComponent()({
|
|
26247
26264
|
const makeStepperProps = propsFactory({
|
26248
26265
|
altLabels: Boolean,
|
26249
26266
|
bgColor: String,
|
26250
|
-
completeIcon:
|
26251
|
-
editIcon:
|
26267
|
+
completeIcon: IconValue,
|
26268
|
+
editIcon: IconValue,
|
26252
26269
|
editable: Boolean,
|
26253
|
-
errorIcon:
|
26270
|
+
errorIcon: IconValue,
|
26254
26271
|
hideActions: Boolean,
|
26255
26272
|
items: {
|
26256
26273
|
type: Array,
|
@@ -28148,7 +28165,7 @@ const VDateInput = genericComponent()({
|
|
28148
28165
|
},
|
28149
28166
|
"onMousedown": e => e.preventDefault()
|
28150
28167
|
}), {
|
28151
|
-
actions: !props.hideActions ?
|
28168
|
+
actions: !props.hideActions ? actions : undefined
|
28152
28169
|
});
|
28153
28170
|
}
|
28154
28171
|
})]
|
@@ -28213,8 +28230,8 @@ const VNumberInput = genericComponent()({
|
|
28213
28230
|
const vTextFieldRef = ref();
|
28214
28231
|
const stepDecimals = computed(() => getDecimals(props.step));
|
28215
28232
|
const modelDecimals = computed(() => typeof model.value === 'number' ? getDecimals(model.value) : 0);
|
28216
|
-
const form = useForm();
|
28217
|
-
const controlsDisabled = computed(() =>
|
28233
|
+
const form = useForm(props);
|
28234
|
+
const controlsDisabled = computed(() => form.isDisabled.value || form.isReadonly.value);
|
28218
28235
|
const canIncrease = computed(() => {
|
28219
28236
|
if (controlsDisabled.value) return false;
|
28220
28237
|
return (model.value ?? 0) + props.step <= props.max;
|
@@ -28237,7 +28254,7 @@ const VNumberInput = genericComponent()({
|
|
28237
28254
|
click: onClickDown
|
28238
28255
|
}));
|
28239
28256
|
onMounted(() => {
|
28240
|
-
if (!
|
28257
|
+
if (!controlsDisabled.value) {
|
28241
28258
|
clampModel();
|
28242
28259
|
}
|
28243
28260
|
});
|
@@ -28313,7 +28330,8 @@ const VNumberInput = genericComponent()({
|
|
28313
28330
|
"flat": true,
|
28314
28331
|
"key": "increment-btn",
|
28315
28332
|
"height": controlNodeDefaultHeight.value,
|
28316
|
-
"
|
28333
|
+
"data-testid": "increment",
|
28334
|
+
"aria-hidden": "true",
|
28317
28335
|
"icon": incrementIcon.value,
|
28318
28336
|
"onClick": onClickUp,
|
28319
28337
|
"onMousedown": onControlMousedown,
|
@@ -28340,7 +28358,8 @@ const VNumberInput = genericComponent()({
|
|
28340
28358
|
"flat": true,
|
28341
28359
|
"key": "decrement-btn",
|
28342
28360
|
"height": controlNodeDefaultHeight.value,
|
28343
|
-
"
|
28361
|
+
"data-testid": "decrement",
|
28362
|
+
"aria-hidden": "true",
|
28344
28363
|
"icon": decrementIcon.value,
|
28345
28364
|
"size": controlNodeSize.value,
|
28346
28365
|
"tabindex": "-1",
|
@@ -29592,9 +29611,8 @@ const VTreeviewItem = genericComponent()({
|
|
29592
29611
|
const vListItemRef = ref();
|
29593
29612
|
const isActivatableGroupActivator = computed(() => vListItemRef.value?.root.activatable.value && vListItemRef.value?.isGroupActivator);
|
29594
29613
|
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || props.value != null && !!vListItemRef.value?.list || isActivatableGroupActivator.value));
|
29595
|
-
function
|
29596
|
-
if (
|
29597
|
-
if (vListItemRef.value?.root.activatable.value) {
|
29614
|
+
function activateGroupActivator(e) {
|
29615
|
+
if (isClickable.value && isActivatableGroupActivator.value) {
|
29598
29616
|
vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e);
|
29599
29617
|
}
|
29600
29618
|
}
|
@@ -29613,7 +29631,7 @@ const VTreeviewItem = genericComponent()({
|
|
29613
29631
|
'v-treeview-item--filtered': visibleIds.value && !visibleIds.value.has(vListItemRef.value?.id)
|
29614
29632
|
}, props.class],
|
29615
29633
|
"ripple": false,
|
29616
|
-
"onClick": props.onClick ??
|
29634
|
+
"onClick": props.onClick ?? activateGroupActivator
|
29617
29635
|
}), {
|
29618
29636
|
...slots,
|
29619
29637
|
prepend: hasPrepend ? slotProps => {
|
@@ -30403,7 +30421,7 @@ function createVuetify$1() {
|
|
30403
30421
|
goTo
|
30404
30422
|
};
|
30405
30423
|
}
|
30406
|
-
const version$1 = "3.7.
|
30424
|
+
const version$1 = "3.7.5-dev.2024-12-03";
|
30407
30425
|
createVuetify$1.version = version$1;
|
30408
30426
|
|
30409
30427
|
// Vue's inject() can only be used in setup
|
@@ -30656,7 +30674,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
30656
30674
|
|
30657
30675
|
/* eslint-disable local-rules/sort-imports */
|
30658
30676
|
|
30659
|
-
const version = "3.7.
|
30677
|
+
const version = "3.7.5-dev.2024-12-03";
|
30660
30678
|
|
30661
30679
|
/* eslint-disable local-rules/sort-imports */
|
30662
30680
|
|