@vuetify/nightly 3.0.0-beta.10 → 3.0.0-beta.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/CHANGELOG.md +13 -2
- package/dist/json/attributes.json +37 -29
- package/dist/json/importMap.json +46 -46
- package/dist/json/tags.json +10 -8
- package/dist/json/web-types.json +101 -87
- package/dist/vuetify.css +545 -441
- package/dist/vuetify.d.ts +12095 -10059
- package/dist/vuetify.esm.js +401 -266
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +371 -236
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +3 -3
- package/dist/vuetify.min.js +496 -490
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.ts +171 -0
- package/lib/blueprints/md1.d.ts +167 -0
- package/lib/blueprints/md2.d.ts +167 -0
- package/lib/blueprints/md3.d.ts +167 -0
- package/lib/components/VAlert/index.d.ts +185 -0
- package/lib/components/VApp/index.d.ts +83 -0
- package/lib/components/VAppBar/VAppBar.css +3 -0
- package/lib/components/VAppBar/VAppBar.sass +3 -0
- package/lib/components/VAppBar/index.d.ts +156 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +1569 -0
- package/lib/components/VAvatar/VAvatar.css +44 -2
- package/lib/components/VAvatar/VAvatar.mjs +16 -12
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.sass +5 -1
- package/lib/components/VAvatar/_variables.scss +9 -4
- package/lib/components/VAvatar/index.d.ts +80 -0
- package/lib/components/VBadge/index.d.ts +123 -0
- package/lib/components/VBanner/index.d.ts +122 -0
- package/lib/components/VBottomNavigation/index.d.ts +143 -0
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +2 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.ts +301 -0
- package/lib/components/VBtn/VBtn.css +8 -3
- package/lib/components/VBtn/VBtn.mjs +16 -6
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.ts +210 -0
- package/lib/components/VBtnGroup/index.d.ts +65 -0
- package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -3
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.ts +175 -0
- package/lib/components/VCard/VCard.css +8 -3
- package/lib/components/VCard/index.d.ts +230 -0
- package/lib/components/VCarousel/VCarousel.mjs +3 -3
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +80 -0
- package/lib/components/VCheckbox/index.d.ts +291 -0
- package/lib/components/VChip/index.d.ts +195 -0
- package/lib/components/VChipGroup/index.d.ts +89 -0
- package/lib/components/VCode/index.d.ts +19 -0
- package/lib/components/VColorPicker/index.d.ts +116 -0
- package/lib/components/VCombobox/VCombobox.mjs +1 -1
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +1590 -0
- package/lib/components/VCounter/index.d.ts +223 -0
- package/lib/components/VDefaultsProvider/index.d.ts +26 -0
- package/lib/components/VDialog/VDialog.css +2 -0
- package/lib/components/VDialog/VDialog.mjs +17 -12
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.sass +2 -0
- package/lib/components/VDialog/index.d.ts +859 -0
- package/lib/components/VDivider/index.d.ts +22 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.css +8 -3
- package/lib/components/VExpansionPanel/index.d.ts +206 -0
- package/lib/components/VField/VField.css +27 -24
- package/lib/components/VField/VField.mjs +1 -1
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +23 -21
- package/lib/components/VField/index.d.ts +332 -0
- package/lib/components/VFileInput/VFileInput.mjs +3 -3
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +236 -0
- package/lib/components/VFooter/VFooter.css +7 -0
- package/lib/components/VFooter/VFooter.sass +1 -1
- package/lib/components/VFooter/_variables.scss +11 -0
- package/lib/components/VFooter/index.d.ts +76 -0
- package/lib/components/VForm/index.d.ts +72 -0
- package/lib/components/VGrid/index.d.ts +154 -0
- package/lib/components/VHover/index.d.ts +30 -0
- package/lib/components/VIcon/index.d.ts +124 -0
- package/lib/components/VImg/VImg.mjs +29 -27
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.ts +89 -0
- package/lib/components/VInput/VInput.mjs +4 -4
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +325 -0
- package/lib/components/VItemGroup/index.d.ts +210 -0
- package/lib/components/VKbd/index.d.ts +19 -0
- package/lib/components/VLabel/VLabel.css +4 -1
- package/lib/components/VLabel/VLabel.mjs +4 -1
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.sass +3 -1
- package/lib/components/VLabel/index.d.ts +16 -0
- package/lib/components/VLayout/index.d.ts +75 -0
- package/lib/components/VLazy/index.d.ts +85 -0
- package/lib/components/VList/VListItem.css +8 -3
- package/lib/components/VList/VListItem.mjs +4 -4
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +1250 -0
- package/lib/components/VLocaleProvider/index.d.ts +23 -0
- package/lib/components/VMain/index.d.ts +26 -0
- package/lib/components/VMenu/VMenu.mjs +16 -3
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +817 -0
- package/lib/components/VMessages/index.d.ts +234 -0
- package/lib/components/VNavigationDrawer/index.d.ts +148 -0
- package/lib/components/VNoSsr/index.d.ts +7 -0
- package/lib/components/VOverlay/VOverlay.mjs +4 -3
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +579 -0
- package/lib/components/VOverlay/useActivator.mjs +27 -1
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +6 -3
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +247 -0
- package/lib/components/VParallax/VParallax.mjs +24 -10
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VParallax/index.d.ts +18 -0
- package/lib/components/VProgressCircular/index.d.ts +68 -0
- package/lib/components/VProgressLinear/index.d.ts +101 -0
- package/lib/components/VRadio/index.d.ts +103 -0
- package/lib/components/VRadioGroup/VRadioGroup.css +2 -3
- package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.sass +2 -2
- package/lib/components/VRadioGroup/_variables.scss +0 -1
- package/lib/components/VRadioGroup/index.d.ts +186 -0
- package/lib/components/VRangeSlider/VRangeSlider.mjs +12 -2
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +242 -0
- package/lib/components/VRating/index.d.ts +356 -0
- package/lib/components/VResponsive/index.d.ts +23 -0
- package/lib/components/VSelect/VSelect.mjs +1 -1
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +1521 -0
- package/lib/components/VSelectionControl/VSelectionControl.mjs +2 -1
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.ts +275 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +5 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +5 -0
- package/lib/components/VSelectionControlGroup/index.d.ts +47 -0
- package/lib/components/VSheet/index.d.ts +68 -0
- package/lib/components/VSlideGroup/index.d.ts +151 -0
- package/lib/components/VSlider/VSlider.css +7 -2
- package/lib/components/VSlider/VSlider.mjs +14 -4
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.sass +6 -2
- package/lib/components/VSlider/VSliderTrack.css +20 -20
- package/lib/components/VSlider/VSliderTrack.mjs +7 -3
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.sass +14 -14
- package/lib/components/VSlider/_variables.scss +2 -2
- package/lib/components/VSlider/index.d.ts +239 -0
- package/lib/components/VSlider/slider.mjs +2 -2
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +3 -2
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.ts +892 -0
- package/lib/components/VSwitch/index.d.ts +175 -0
- package/lib/components/VSystemBar/index.d.ts +61 -0
- package/lib/components/VTable/index.d.ts +39 -0
- package/lib/components/VTabs/VTab.mjs +1 -0
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/index.d.ts +178 -0
- package/lib/components/VTextField/VTextField.css +2 -3
- package/lib/components/VTextField/VTextField.sass +2 -4
- package/lib/components/VTextField/index.d.ts +582 -0
- package/lib/components/VTextarea/VTextarea.css +5 -3
- package/lib/components/VTextarea/VTextarea.mjs +2 -1
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.sass +5 -4
- package/lib/components/VTextarea/index.d.ts +218 -0
- package/lib/components/VThemeProvider/index.d.ts +24 -0
- package/lib/components/VTimeline/VTimeline.css +21 -6
- package/lib/components/VTimeline/VTimeline.mjs +6 -1
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.sass +16 -2
- package/lib/components/VTimeline/_variables.scss +4 -3
- package/lib/components/VTimeline/index.d.ts +154 -0
- package/lib/components/VToolbar/VToolbar.css +0 -1
- package/lib/components/VToolbar/VToolbar.sass +0 -1
- package/lib/components/VToolbar/index.d.ts +414 -0
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +799 -0
- package/lib/components/VValidation/index.d.ts +61 -0
- package/lib/components/VWindow/index.d.ts +428 -0
- package/lib/components/index.d.ts +12037 -10009
- package/lib/components/transitions/index.d.ts +454 -0
- package/lib/composables/display.mjs +3 -3
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/items.mjs.map +1 -1
- package/lib/composables/locale.mjs +10 -3
- package/lib/composables/locale.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +28 -10
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/router.mjs +10 -2
- package/lib/composables/router.mjs.map +1 -1
- package/lib/composables/selectLink.mjs +4 -4
- package/lib/composables/selectLink.mjs.map +1 -1
- package/lib/composables/theme.mjs +37 -33
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/validation.mjs +1 -1
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +46 -51
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.ts +31 -22
- package/lib/locale/adapters/vue-i18n.d.ts +35 -0
- package/lib/locale/adapters/vue-intl.d.ts +42 -0
- package/lib/styles/main.css +73 -73
- package/lib/styles/settings/_colors.scss +84 -84
- package/lib/styles/tools/_states.sass +8 -3
- package/lib/util/getCurrentInstance.mjs +2 -3
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/helpers.mjs +6 -11
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +4 -2
package/dist/vuetify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.0.0-beta.
|
|
2
|
+
* Vuetify v3.0.0-beta.13
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -354,21 +354,16 @@
|
|
|
354
354
|
} // Only allow a single return type
|
|
355
355
|
|
|
356
356
|
function destructComputed(getter) {
|
|
357
|
-
const refs = {};
|
|
357
|
+
const refs = vue.reactive({});
|
|
358
358
|
const base = vue.computed(getter);
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
}
|
|
363
|
-
|
|
364
|
-
vue.watch(base, val => {
|
|
365
|
-
for (const key in val) {
|
|
366
|
-
refs[key].value = val[key];
|
|
359
|
+
vue.watchEffect(() => {
|
|
360
|
+
for (const key in base.value) {
|
|
361
|
+
refs[key] = base.value[key];
|
|
367
362
|
}
|
|
368
363
|
}, {
|
|
369
364
|
flush: 'sync'
|
|
370
365
|
});
|
|
371
|
-
return refs;
|
|
366
|
+
return vue.toRefs(refs);
|
|
372
367
|
}
|
|
373
368
|
/** Array.includes but value can be any type */
|
|
374
369
|
|
|
@@ -929,10 +924,9 @@
|
|
|
929
924
|
return vm;
|
|
930
925
|
}
|
|
931
926
|
function getCurrentInstanceName() {
|
|
932
|
-
var _getCurrentInstance$t;
|
|
933
|
-
|
|
934
927
|
let name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'composables';
|
|
935
|
-
|
|
928
|
+
const vm = getCurrentInstance(name).type;
|
|
929
|
+
return toKebabCase((vm == null ? void 0 : vm.aliasName) || (vm == null ? void 0 : vm.name));
|
|
936
930
|
}
|
|
937
931
|
let _uid = 0;
|
|
938
932
|
|
|
@@ -1702,8 +1696,7 @@
|
|
|
1702
1696
|
} // Composables
|
|
1703
1697
|
|
|
1704
1698
|
|
|
1705
|
-
function createTheme(
|
|
1706
|
-
const head = app._context.provides.usehead;
|
|
1699
|
+
function createTheme(options) {
|
|
1707
1700
|
const parsedOptions = vue.reactive(parseThemeOptions(options));
|
|
1708
1701
|
const name = vue.ref(parsedOptions.defaultTheme);
|
|
1709
1702
|
const themes = vue.ref(parsedOptions.themes);
|
|
@@ -1790,46 +1783,51 @@
|
|
|
1790
1783
|
return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
|
|
1791
1784
|
});
|
|
1792
1785
|
|
|
1793
|
-
|
|
1794
|
-
head.
|
|
1795
|
-
const style = {
|
|
1796
|
-
children: styles.value,
|
|
1797
|
-
type: 'text/css',
|
|
1798
|
-
id: 'vuetify-theme-stylesheet'
|
|
1799
|
-
};
|
|
1800
|
-
if (parsedOptions.cspNonce) style.nonce = parsedOptions.cspNonce;
|
|
1801
|
-
return {
|
|
1802
|
-
style: [style]
|
|
1803
|
-
};
|
|
1804
|
-
}));
|
|
1786
|
+
function install(app) {
|
|
1787
|
+
const head = app._context.provides.usehead;
|
|
1805
1788
|
|
|
1806
|
-
if (
|
|
1807
|
-
vue.
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1789
|
+
if (head) {
|
|
1790
|
+
head.addHeadObjs(vue.computed(() => {
|
|
1791
|
+
const style = {
|
|
1792
|
+
children: styles.value,
|
|
1793
|
+
type: 'text/css',
|
|
1794
|
+
id: 'vuetify-theme-stylesheet'
|
|
1795
|
+
};
|
|
1796
|
+
if (parsedOptions.cspNonce) style.nonce = parsedOptions.cspNonce;
|
|
1797
|
+
return {
|
|
1798
|
+
style: [style]
|
|
1799
|
+
};
|
|
1800
|
+
}));
|
|
1817
1801
|
|
|
1818
|
-
if (
|
|
1819
|
-
|
|
1820
|
-
el.type = 'text/css';
|
|
1821
|
-
el.id = 'vuetify-theme-stylesheet';
|
|
1822
|
-
if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce);
|
|
1823
|
-
styleEl = el;
|
|
1824
|
-
document.head.appendChild(styleEl);
|
|
1802
|
+
if (IN_BROWSER) {
|
|
1803
|
+
vue.watchEffect(() => head.updateDOM());
|
|
1825
1804
|
}
|
|
1805
|
+
} else {
|
|
1806
|
+
let styleEl = IN_BROWSER ? document.getElementById('vuetify-theme-stylesheet') : null;
|
|
1807
|
+
vue.watch(styles, updateStyles, {
|
|
1808
|
+
immediate: true
|
|
1809
|
+
});
|
|
1810
|
+
|
|
1811
|
+
function updateStyles() {
|
|
1812
|
+
if (parsedOptions.isDisabled) return;
|
|
1813
|
+
|
|
1814
|
+
if (typeof document !== 'undefined' && !styleEl) {
|
|
1815
|
+
const el = document.createElement('style');
|
|
1816
|
+
el.type = 'text/css';
|
|
1817
|
+
el.id = 'vuetify-theme-stylesheet';
|
|
1818
|
+
if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce);
|
|
1819
|
+
styleEl = el;
|
|
1820
|
+
document.head.appendChild(styleEl);
|
|
1821
|
+
}
|
|
1826
1822
|
|
|
1827
|
-
|
|
1823
|
+
if (styleEl) styleEl.innerHTML = styles.value;
|
|
1824
|
+
}
|
|
1828
1825
|
}
|
|
1829
1826
|
}
|
|
1830
1827
|
|
|
1831
1828
|
const themeClasses = vue.computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`);
|
|
1832
1829
|
return {
|
|
1830
|
+
install,
|
|
1833
1831
|
isDisabled: parsedOptions.isDisabled,
|
|
1834
1832
|
name,
|
|
1835
1833
|
themes,
|
|
@@ -2787,20 +2785,22 @@
|
|
|
2787
2785
|
'v-img__img--contain': !props.cover
|
|
2788
2786
|
}));
|
|
2789
2787
|
|
|
2790
|
-
const __image =
|
|
2788
|
+
const __image = () => {
|
|
2791
2789
|
var _slots$sources;
|
|
2792
2790
|
|
|
2793
|
-
if (!normalisedSrc.value.src || state.value === 'idle') return;
|
|
2794
|
-
|
|
2795
|
-
|
|
2796
|
-
|
|
2797
|
-
|
|
2798
|
-
|
|
2799
|
-
|
|
2800
|
-
|
|
2801
|
-
|
|
2802
|
-
|
|
2803
|
-
|
|
2791
|
+
if (!normalisedSrc.value.src || state.value === 'idle') return null;
|
|
2792
|
+
|
|
2793
|
+
const img = vue.createVNode("img", {
|
|
2794
|
+
"class": ['v-img__img', containClasses.value],
|
|
2795
|
+
"src": normalisedSrc.value.src,
|
|
2796
|
+
"srcset": normalisedSrc.value.srcset,
|
|
2797
|
+
"alt": "",
|
|
2798
|
+
"sizes": props.sizes,
|
|
2799
|
+
"ref": image,
|
|
2800
|
+
"onLoad": onLoad,
|
|
2801
|
+
"onError": onError
|
|
2802
|
+
}, null);
|
|
2803
|
+
|
|
2804
2804
|
const sources = (_slots$sources = slots.sources) == null ? void 0 : _slots$sources.call(slots);
|
|
2805
2805
|
return vue.createVNode(MaybeTransition, {
|
|
2806
2806
|
"transition": props.transition,
|
|
@@ -2810,9 +2810,9 @@
|
|
|
2810
2810
|
"class": "v-img__picture"
|
|
2811
2811
|
}, [sources, img]) : img, [[vue.vShow, state.value === 'loaded']])]
|
|
2812
2812
|
});
|
|
2813
|
-
}
|
|
2813
|
+
};
|
|
2814
2814
|
|
|
2815
|
-
const __preloadImage =
|
|
2815
|
+
const __preloadImage = () => vue.createVNode(MaybeTransition, {
|
|
2816
2816
|
"transition": props.transition
|
|
2817
2817
|
}, {
|
|
2818
2818
|
default: () => [normalisedSrc.value.lazySrc && state.value !== 'loaded' && vue.createVNode("img", {
|
|
@@ -2820,10 +2820,10 @@
|
|
|
2820
2820
|
"src": normalisedSrc.value.lazySrc,
|
|
2821
2821
|
"alt": ""
|
|
2822
2822
|
}, null)]
|
|
2823
|
-
})
|
|
2823
|
+
});
|
|
2824
2824
|
|
|
2825
|
-
const __placeholder =
|
|
2826
|
-
if (!slots.placeholder) return;
|
|
2825
|
+
const __placeholder = () => {
|
|
2826
|
+
if (!slots.placeholder) return null;
|
|
2827
2827
|
return vue.createVNode(MaybeTransition, {
|
|
2828
2828
|
"transition": props.transition,
|
|
2829
2829
|
"appear": true
|
|
@@ -2832,10 +2832,10 @@
|
|
|
2832
2832
|
"class": "v-img__placeholder"
|
|
2833
2833
|
}, [slots.placeholder()])]
|
|
2834
2834
|
});
|
|
2835
|
-
}
|
|
2835
|
+
};
|
|
2836
2836
|
|
|
2837
|
-
const __error =
|
|
2838
|
-
if (!slots.error) return;
|
|
2837
|
+
const __error = () => {
|
|
2838
|
+
if (!slots.error) return null;
|
|
2839
2839
|
return vue.createVNode(MaybeTransition, {
|
|
2840
2840
|
"transition": props.transition,
|
|
2841
2841
|
"appear": true
|
|
@@ -2844,17 +2844,17 @@
|
|
|
2844
2844
|
"class": "v-img__error"
|
|
2845
2845
|
}, [slots.error()])]
|
|
2846
2846
|
});
|
|
2847
|
-
}
|
|
2847
|
+
};
|
|
2848
2848
|
|
|
2849
|
-
const __gradient =
|
|
2850
|
-
if (!props.gradient) return;
|
|
2849
|
+
const __gradient = () => {
|
|
2850
|
+
if (!props.gradient) return null;
|
|
2851
2851
|
return vue.createVNode("div", {
|
|
2852
2852
|
"class": "v-img__gradient",
|
|
2853
2853
|
"style": {
|
|
2854
2854
|
backgroundImage: `linear-gradient(${props.gradient})`
|
|
2855
2855
|
}
|
|
2856
2856
|
}, null);
|
|
2857
|
-
}
|
|
2857
|
+
};
|
|
2858
2858
|
|
|
2859
2859
|
const isBooted = vue.ref(false);
|
|
2860
2860
|
{
|
|
@@ -2881,7 +2881,7 @@
|
|
|
2881
2881
|
"aria-label": props.alt,
|
|
2882
2882
|
"role": props.alt ? 'img' : undefined
|
|
2883
2883
|
}, {
|
|
2884
|
-
additional: () => [__image.
|
|
2884
|
+
additional: () => vue.createVNode(vue.Fragment, null, [vue.createVNode(__image, null, null), vue.createVNode(__preloadImage, null, null), vue.createVNode(__gradient, null, null), vue.createVNode(__placeholder, null, null), vue.createVNode(__error, null, null)]),
|
|
2885
2885
|
default: slots.default
|
|
2886
2886
|
}), [[vue.resolveDirective("intersect"), {
|
|
2887
2887
|
handler: init,
|
|
@@ -3211,6 +3211,23 @@
|
|
|
3211
3211
|
return pick(props, Object.keys((VToolbar == null ? void 0 : VToolbar.props) ?? {}));
|
|
3212
3212
|
}
|
|
3213
3213
|
|
|
3214
|
+
function useToggleScope(source, cb) {
|
|
3215
|
+
let scope;
|
|
3216
|
+
vue.watch(source, active => {
|
|
3217
|
+
if (active && !scope) {
|
|
3218
|
+
scope = vue.effectScope();
|
|
3219
|
+
scope.run(cb);
|
|
3220
|
+
} else {
|
|
3221
|
+
var _scope;
|
|
3222
|
+
|
|
3223
|
+
(_scope = scope) == null ? void 0 : _scope.stop();
|
|
3224
|
+
scope = undefined;
|
|
3225
|
+
}
|
|
3226
|
+
}, {
|
|
3227
|
+
immediate: true
|
|
3228
|
+
});
|
|
3229
|
+
}
|
|
3230
|
+
|
|
3214
3231
|
// Utilities
|
|
3215
3232
|
|
|
3216
3233
|
// Composables
|
|
@@ -3218,28 +3235,45 @@
|
|
|
3218
3235
|
let transformIn = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : v => v;
|
|
3219
3236
|
let transformOut = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : v => v;
|
|
3220
3237
|
const vm = getCurrentInstance('useProxiedModel');
|
|
3221
|
-
const
|
|
3222
|
-
|
|
3238
|
+
const internal = vue.ref(props[prop]);
|
|
3239
|
+
const kebabProp = toKebabCase(prop);
|
|
3240
|
+
const checkKebab = kebabProp !== prop;
|
|
3241
|
+
const isControlled = checkKebab ? vue.computed(() => {
|
|
3242
|
+
var _vm$vnode$props, _vm$vnode$props2, _vm$vnode$props3, _vm$vnode$props4;
|
|
3223
3243
|
|
|
3224
3244
|
void props[prop];
|
|
3225
|
-
return !!(vm != null &&
|
|
3245
|
+
return !!(((_vm$vnode$props = vm.vnode.props) != null && _vm$vnode$props.hasOwnProperty(prop) || (_vm$vnode$props2 = vm.vnode.props) != null && _vm$vnode$props2.hasOwnProperty(kebabProp)) && ((_vm$vnode$props3 = vm.vnode.props) != null && _vm$vnode$props3.hasOwnProperty(`onUpdate:${prop}`) || (_vm$vnode$props4 = vm.vnode.props) != null && _vm$vnode$props4.hasOwnProperty(`onUpdate:${kebabProp}`)));
|
|
3246
|
+
}) : vue.computed(() => {
|
|
3247
|
+
var _vm$vnode$props5, _vm$vnode$props6;
|
|
3248
|
+
|
|
3249
|
+
void props[prop];
|
|
3250
|
+
return !!((_vm$vnode$props5 = vm.vnode.props) != null && _vm$vnode$props5.hasOwnProperty(prop) && (_vm$vnode$props6 = vm.vnode.props) != null && _vm$vnode$props6.hasOwnProperty(`onUpdate:${prop}`));
|
|
3251
|
+
});
|
|
3252
|
+
useToggleScope(() => !isControlled.value, () => {
|
|
3253
|
+
vue.watch(() => props[prop], val => {
|
|
3254
|
+
internal.value = val;
|
|
3255
|
+
});
|
|
3226
3256
|
});
|
|
3227
|
-
const
|
|
3228
|
-
return vue.computed({
|
|
3257
|
+
const model = vue.computed({
|
|
3229
3258
|
get() {
|
|
3230
|
-
|
|
3259
|
+
return transformIn(isControlled.value ? props[prop] : internal.value);
|
|
3231
3260
|
},
|
|
3232
3261
|
|
|
3233
3262
|
set(newValue) {
|
|
3234
|
-
if ((
|
|
3263
|
+
if (transformIn(isControlled.value ? props[prop] : internal.value) === newValue) {
|
|
3235
3264
|
return;
|
|
3236
3265
|
}
|
|
3237
3266
|
|
|
3267
|
+
newValue = transformOut(newValue);
|
|
3238
3268
|
internal.value = newValue;
|
|
3239
|
-
vm == null ? void 0 : vm.emit(`update:${prop}`,
|
|
3269
|
+
vm == null ? void 0 : vm.emit(`update:${prop}`, newValue);
|
|
3240
3270
|
}
|
|
3241
3271
|
|
|
3242
3272
|
});
|
|
3273
|
+
Object.defineProperty(model, 'externalValue', {
|
|
3274
|
+
get: () => isControlled.value ? props[prop] : internal.value
|
|
3275
|
+
});
|
|
3276
|
+
return model;
|
|
3243
3277
|
}
|
|
3244
3278
|
|
|
3245
3279
|
const VAppBar = defineComponent({
|
|
@@ -3654,9 +3688,7 @@
|
|
|
3654
3688
|
const VBtnToggleSymbol = Symbol.for('vuetify:v-btn-toggle');
|
|
3655
3689
|
const VBtnToggle = genericComponent()({
|
|
3656
3690
|
name: 'VBtnToggle',
|
|
3657
|
-
props: makeGroupProps(
|
|
3658
|
-
selectedClass: 'v-btn--selected'
|
|
3659
|
-
}),
|
|
3691
|
+
props: makeGroupProps(),
|
|
3660
3692
|
emits: {
|
|
3661
3693
|
'update:modelValue': value => true
|
|
3662
3694
|
},
|
|
@@ -4760,16 +4792,24 @@
|
|
|
4760
4792
|
}
|
|
4761
4793
|
|
|
4762
4794
|
const link = props.to ? RouterLink.useLink(props) : undefined;
|
|
4763
|
-
return {
|
|
4795
|
+
return {
|
|
4764
4796
|
isLink,
|
|
4765
4797
|
isClickable,
|
|
4798
|
+
route: link == null ? void 0 : link.route,
|
|
4799
|
+
navigate: link == null ? void 0 : link.navigate,
|
|
4800
|
+
isActive: link && vue.computed(() => {
|
|
4801
|
+
var _link$isExactActive, _link$isActive;
|
|
4802
|
+
|
|
4803
|
+
return props.exact ? (_link$isExactActive = link.isExactActive) == null ? void 0 : _link$isExactActive.value : (_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value;
|
|
4804
|
+
}),
|
|
4766
4805
|
href: vue.computed(() => props.to ? link == null ? void 0 : link.route.value.href : props.href)
|
|
4767
4806
|
};
|
|
4768
4807
|
}
|
|
4769
4808
|
const makeRouterProps = propsFactory({
|
|
4770
4809
|
href: String,
|
|
4771
4810
|
replace: Boolean,
|
|
4772
|
-
to: [String, Object]
|
|
4811
|
+
to: [String, Object],
|
|
4812
|
+
exact: Boolean
|
|
4773
4813
|
}, 'router');
|
|
4774
4814
|
let inTransition = false;
|
|
4775
4815
|
function useBackButton(router, cb) {
|
|
@@ -4815,11 +4855,11 @@
|
|
|
4815
4855
|
|
|
4816
4856
|
function useSelectLink(link, select) {
|
|
4817
4857
|
vue.watch(() => {
|
|
4818
|
-
var _link$
|
|
4858
|
+
var _link$isActive;
|
|
4819
4859
|
|
|
4820
|
-
return (_link$
|
|
4821
|
-
},
|
|
4822
|
-
if (link.isLink.value &&
|
|
4860
|
+
return (_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value;
|
|
4861
|
+
}, isActive => {
|
|
4862
|
+
if (link.isLink.value && isActive && select) {
|
|
4823
4863
|
vue.nextTick(() => {
|
|
4824
4864
|
select(true);
|
|
4825
4865
|
});
|
|
@@ -4835,7 +4875,10 @@
|
|
|
4835
4875
|
Ripple
|
|
4836
4876
|
},
|
|
4837
4877
|
props: {
|
|
4838
|
-
active:
|
|
4878
|
+
active: {
|
|
4879
|
+
type: Boolean,
|
|
4880
|
+
default: undefined
|
|
4881
|
+
},
|
|
4839
4882
|
symbol: {
|
|
4840
4883
|
type: null,
|
|
4841
4884
|
default: VBtnToggleSymbol
|
|
@@ -4911,10 +4954,16 @@
|
|
|
4911
4954
|
roundedClasses
|
|
4912
4955
|
} = useRounded(props);
|
|
4913
4956
|
const {
|
|
4914
|
-
sizeClasses
|
|
4957
|
+
sizeClasses,
|
|
4958
|
+
sizeStyles
|
|
4915
4959
|
} = useSize(props);
|
|
4916
4960
|
const group = useGroupItem(props, props.symbol, false);
|
|
4917
4961
|
const link = useLink(props, attrs);
|
|
4962
|
+
const isActive = vue.computed(() => {
|
|
4963
|
+
var _link$isActive;
|
|
4964
|
+
|
|
4965
|
+
return props.active !== false && (props.active || ((_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value) || (group == null ? void 0 : group.isSelected.value));
|
|
4966
|
+
});
|
|
4918
4967
|
const isDisabled = vue.computed(() => (group == null ? void 0 : group.disabled.value) || props.disabled);
|
|
4919
4968
|
const isElevated = vue.computed(() => {
|
|
4920
4969
|
return props.variant === 'elevated' && !(props.disabled || props.flat || props.border);
|
|
@@ -4927,10 +4976,11 @@
|
|
|
4927
4976
|
const hasColor = !group || group.isSelected.value;
|
|
4928
4977
|
const hasPrepend = !!(props.prependIcon || slots.prepend);
|
|
4929
4978
|
const hasAppend = !!(props.appendIcon || slots.append);
|
|
4979
|
+
const hasIcon = !!(props.icon && props.icon !== true);
|
|
4930
4980
|
return vue.withDirectives(vue.createVNode(Tag, {
|
|
4931
4981
|
"type": Tag === 'a' ? undefined : 'button',
|
|
4932
4982
|
"class": ['v-btn', group == null ? void 0 : group.selectedClass.value, {
|
|
4933
|
-
'v-btn--active':
|
|
4983
|
+
'v-btn--active': isActive.value,
|
|
4934
4984
|
'v-btn--block': props.block,
|
|
4935
4985
|
'v-btn--disabled': isDisabled.value,
|
|
4936
4986
|
'v-btn--elevated': isElevated.value,
|
|
@@ -4939,7 +4989,7 @@
|
|
|
4939
4989
|
'v-btn--loading': props.loading,
|
|
4940
4990
|
'v-btn--stacked': props.stacked
|
|
4941
4991
|
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value],
|
|
4942
|
-
"style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value, locationStyles.value],
|
|
4992
|
+
"style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value, locationStyles.value, sizeStyles.value],
|
|
4943
4993
|
"disabled": isDisabled.value || undefined,
|
|
4944
4994
|
"href": link.href.value,
|
|
4945
4995
|
"onClick": e => {
|
|
@@ -4968,11 +5018,11 @@
|
|
|
4968
5018
|
"key": "content",
|
|
4969
5019
|
"defaults": {
|
|
4970
5020
|
VIcon: {
|
|
4971
|
-
icon:
|
|
5021
|
+
icon: hasIcon ? props.icon : undefined
|
|
4972
5022
|
}
|
|
4973
5023
|
}
|
|
4974
5024
|
}, {
|
|
4975
|
-
default: () => [((_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)) ?? (
|
|
5025
|
+
default: () => [((_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)) ?? (hasIcon && vue.createVNode(VIcon, {
|
|
4976
5026
|
"key": "icon"
|
|
4977
5027
|
}, null))]
|
|
4978
5028
|
})]), !props.icon && hasAppend && vue.createVNode(VDefaultsProvider, {
|
|
@@ -5094,9 +5144,16 @@
|
|
|
5094
5144
|
|
|
5095
5145
|
function createLocale(app, options) {
|
|
5096
5146
|
const adapter = isLocaleAdapter(options) ? options : createDefaultLocaleAdapter(options);
|
|
5097
|
-
|
|
5098
|
-
|
|
5099
|
-
|
|
5147
|
+
|
|
5148
|
+
function install(app) {
|
|
5149
|
+
const instance = adapter.createRoot(app);
|
|
5150
|
+
app.provide(RtlSymbol, createRtl(instance, options));
|
|
5151
|
+
}
|
|
5152
|
+
|
|
5153
|
+
return {
|
|
5154
|
+
adapter,
|
|
5155
|
+
install
|
|
5156
|
+
};
|
|
5100
5157
|
}
|
|
5101
5158
|
const LANG_PREFIX = '$vuetify.';
|
|
5102
5159
|
|
|
@@ -5570,7 +5627,7 @@
|
|
|
5570
5627
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
|
5571
5628
|
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : getUid();
|
|
5572
5629
|
const model = useProxiedModel(props, 'modelValue');
|
|
5573
|
-
const validationModel = vue.computed(() => props.validationValue
|
|
5630
|
+
const validationModel = vue.computed(() => props.validationValue === undefined ? model.value : props.validationValue);
|
|
5574
5631
|
const form = useForm();
|
|
5575
5632
|
const internalErrorMessages = vue.ref([]);
|
|
5576
5633
|
const isPristine = vue.ref(true);
|
|
@@ -5776,18 +5833,18 @@
|
|
|
5776
5833
|
}, [hasPrepend && vue.createVNode("div", {
|
|
5777
5834
|
"key": "prepend",
|
|
5778
5835
|
"class": "v-input__prepend"
|
|
5779
|
-
}, [props.prependIcon && vue.createVNode(InputIcon, {
|
|
5836
|
+
}, [(_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots, slotProps.value), props.prependIcon && vue.createVNode(InputIcon, {
|
|
5780
5837
|
"key": "prepend-icon",
|
|
5781
5838
|
"name": "prepend"
|
|
5782
|
-
}, null)
|
|
5839
|
+
}, null)]), slots.default && vue.createVNode("div", {
|
|
5783
5840
|
"class": "v-input__control"
|
|
5784
5841
|
}, [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots, slotProps.value)]), hasAppend && vue.createVNode("div", {
|
|
5785
5842
|
"key": "append",
|
|
5786
5843
|
"class": "v-input__append"
|
|
5787
|
-
}, [
|
|
5844
|
+
}, [props.appendIcon && vue.createVNode(InputIcon, {
|
|
5788
5845
|
"key": "append-icon",
|
|
5789
5846
|
"name": "append"
|
|
5790
|
-
}, null)]), hasDetails && vue.createVNode("div", {
|
|
5847
|
+
}, null), (_slots$append = slots.append) == null ? void 0 : _slots$append.call(slots, slotProps.value)]), hasDetails && vue.createVNode("div", {
|
|
5791
5848
|
"class": "v-input__details"
|
|
5792
5849
|
}, [vue.createVNode(VMessages, {
|
|
5793
5850
|
"active": hasMessages,
|
|
@@ -5813,6 +5870,7 @@
|
|
|
5813
5870
|
name: 'VLabel',
|
|
5814
5871
|
props: {
|
|
5815
5872
|
text: String,
|
|
5873
|
+
clickable: Boolean,
|
|
5816
5874
|
...makeThemeProps()
|
|
5817
5875
|
},
|
|
5818
5876
|
|
|
@@ -5824,7 +5882,9 @@
|
|
|
5824
5882
|
var _slots$default;
|
|
5825
5883
|
|
|
5826
5884
|
return vue.createVNode("label", {
|
|
5827
|
-
"class":
|
|
5885
|
+
"class": ['v-label', {
|
|
5886
|
+
'v-label--clickable': props.clickable
|
|
5887
|
+
}]
|
|
5828
5888
|
}, [props.text, (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]);
|
|
5829
5889
|
});
|
|
5830
5890
|
return {};
|
|
@@ -5877,7 +5937,9 @@
|
|
|
5877
5937
|
var _slots$default;
|
|
5878
5938
|
|
|
5879
5939
|
return vue.createVNode("div", {
|
|
5880
|
-
"class":
|
|
5940
|
+
"class": ['v-selection-control-group', {
|
|
5941
|
+
'v-selection-control-group--inline': props.inline
|
|
5942
|
+
}],
|
|
5881
5943
|
"aria-labelled-by": props.type === 'radio' ? id.value : undefined,
|
|
5882
5944
|
"role": props.type === 'radio' ? 'radiogroup' : undefined
|
|
5883
5945
|
}, [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]);
|
|
@@ -6068,7 +6130,8 @@
|
|
|
6068
6130
|
id: id.value
|
|
6069
6131
|
}
|
|
6070
6132
|
})]), [[vue.resolveDirective("ripple"), props.ripple && [!props.disabled && !props.readonly, null, ['center', 'circle']]]])]), label && vue.createVNode(VLabel, {
|
|
6071
|
-
"for": id.value
|
|
6133
|
+
"for": id.value,
|
|
6134
|
+
"clickable": true
|
|
6072
6135
|
}, {
|
|
6073
6136
|
default: () => [label]
|
|
6074
6137
|
})]);
|
|
@@ -6184,7 +6247,6 @@
|
|
|
6184
6247
|
});
|
|
6185
6248
|
|
|
6186
6249
|
const makeVAvatarProps = propsFactory({
|
|
6187
|
-
color: String,
|
|
6188
6250
|
start: Boolean,
|
|
6189
6251
|
end: Boolean,
|
|
6190
6252
|
icon: IconValue,
|
|
@@ -6192,7 +6254,10 @@
|
|
|
6192
6254
|
...makeDensityProps(),
|
|
6193
6255
|
...makeRoundedProps(),
|
|
6194
6256
|
...makeSizeProps(),
|
|
6195
|
-
...makeTagProps()
|
|
6257
|
+
...makeTagProps(),
|
|
6258
|
+
...makeVariantProps({
|
|
6259
|
+
variant: 'flat'
|
|
6260
|
+
})
|
|
6196
6261
|
});
|
|
6197
6262
|
const VAvatar = defineComponent({
|
|
6198
6263
|
name: 'VAvatar',
|
|
@@ -6203,9 +6268,10 @@
|
|
|
6203
6268
|
slots
|
|
6204
6269
|
} = _ref;
|
|
6205
6270
|
const {
|
|
6206
|
-
|
|
6207
|
-
|
|
6208
|
-
|
|
6271
|
+
colorClasses,
|
|
6272
|
+
colorStyles,
|
|
6273
|
+
variantClasses
|
|
6274
|
+
} = useVariant(props);
|
|
6209
6275
|
const {
|
|
6210
6276
|
densityClasses
|
|
6211
6277
|
} = useDensity(props);
|
|
@@ -6223,15 +6289,17 @@
|
|
|
6223
6289
|
"class": ['v-avatar', {
|
|
6224
6290
|
'v-avatar--start': props.start,
|
|
6225
6291
|
'v-avatar--end': props.end
|
|
6226
|
-
},
|
|
6227
|
-
"style": [
|
|
6292
|
+
}, colorClasses.value, densityClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value],
|
|
6293
|
+
"style": [colorStyles.value, sizeStyles.value]
|
|
6228
6294
|
}, {
|
|
6229
6295
|
default: () => [props.image ? vue.createVNode(VImg, {
|
|
6296
|
+
"key": "image",
|
|
6230
6297
|
"src": props.image,
|
|
6231
6298
|
"alt": ""
|
|
6232
6299
|
}, null) : props.icon ? vue.createVNode(VIcon, {
|
|
6300
|
+
"key": "icon",
|
|
6233
6301
|
"icon": props.icon
|
|
6234
|
-
}, null) : (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]
|
|
6302
|
+
}, null) : (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots), genOverlays(false, 'v-avatar')]
|
|
6235
6303
|
});
|
|
6236
6304
|
});
|
|
6237
6305
|
return {};
|
|
@@ -7214,9 +7282,9 @@
|
|
|
7214
7282
|
} = useNestedItem(id, false);
|
|
7215
7283
|
const list = useList();
|
|
7216
7284
|
const isActive = vue.computed(() => {
|
|
7217
|
-
var _link$
|
|
7285
|
+
var _link$isActive;
|
|
7218
7286
|
|
|
7219
|
-
return props.active !== false && (props.active || ((_link$
|
|
7287
|
+
return props.active !== false && (props.active || ((_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value) || isSelected.value);
|
|
7220
7288
|
});
|
|
7221
7289
|
const isLink = vue.computed(() => props.link !== false && link.isLink.value);
|
|
7222
7290
|
const isClickable = vue.computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || props.value != null && !!list));
|
|
@@ -7226,9 +7294,9 @@
|
|
|
7226
7294
|
variant: props.variant
|
|
7227
7295
|
}));
|
|
7228
7296
|
vue.watch(() => {
|
|
7229
|
-
var _link$
|
|
7297
|
+
var _link$isActive2;
|
|
7230
7298
|
|
|
7231
|
-
return (_link$
|
|
7299
|
+
return (_link$isActive2 = link.isActive) == null ? void 0 : _link$isActive2.value;
|
|
7232
7300
|
}, val => {
|
|
7233
7301
|
if (val && parent.value != null) {
|
|
7234
7302
|
root.open(parent.value, true);
|
|
@@ -7852,6 +7920,7 @@
|
|
|
7852
7920
|
const activatorEl = vue.ref();
|
|
7853
7921
|
let isHovered = false;
|
|
7854
7922
|
let isFocused = false;
|
|
7923
|
+
let firstEnter = true;
|
|
7855
7924
|
const openOnFocus = vue.computed(() => props.openOnFocus || props.openOnFocus == null && props.openOnHover);
|
|
7856
7925
|
const openOnClick = vue.computed(() => props.openOnClick || props.openOnClick == null && !props.openOnHover && !openOnFocus.value);
|
|
7857
7926
|
const {
|
|
@@ -7859,6 +7928,10 @@
|
|
|
7859
7928
|
runCloseDelay
|
|
7860
7929
|
} = useDelay(props, value => {
|
|
7861
7930
|
if (value === (props.openOnHover && isHovered || openOnFocus.value && isFocused) && !(props.openOnHover && isActive.value && !isTop.value)) {
|
|
7931
|
+
if (isActive.value !== value) {
|
|
7932
|
+
firstEnter = true;
|
|
7933
|
+
}
|
|
7934
|
+
|
|
7862
7935
|
isActive.value = value;
|
|
7863
7936
|
}
|
|
7864
7937
|
});
|
|
@@ -7935,6 +8008,26 @@
|
|
|
7935
8008
|
|
|
7936
8009
|
return events;
|
|
7937
8010
|
});
|
|
8011
|
+
const scrimEvents = vue.computed(() => {
|
|
8012
|
+
const events = {};
|
|
8013
|
+
|
|
8014
|
+
if (props.openOnHover) {
|
|
8015
|
+
events.mouseenter = () => {
|
|
8016
|
+
if (firstEnter) {
|
|
8017
|
+
isHovered = true;
|
|
8018
|
+
firstEnter = false;
|
|
8019
|
+
runOpenDelay();
|
|
8020
|
+
}
|
|
8021
|
+
};
|
|
8022
|
+
|
|
8023
|
+
events.mouseleave = () => {
|
|
8024
|
+
isHovered = false;
|
|
8025
|
+
runCloseDelay();
|
|
8026
|
+
};
|
|
8027
|
+
}
|
|
8028
|
+
|
|
8029
|
+
return events;
|
|
8030
|
+
});
|
|
7938
8031
|
vue.watch(isTop, val => {
|
|
7939
8032
|
if (val && (props.openOnHover && !isHovered && (!openOnFocus.value || !isFocused) || openOnFocus.value && !isFocused && (!props.openOnHover || !isHovered))) {
|
|
7940
8033
|
isActive.value = false;
|
|
@@ -7970,7 +8063,8 @@
|
|
|
7970
8063
|
activatorEl,
|
|
7971
8064
|
activatorRef,
|
|
7972
8065
|
activatorEvents,
|
|
7973
|
-
contentEvents
|
|
8066
|
+
contentEvents,
|
|
8067
|
+
scrimEvents
|
|
7974
8068
|
};
|
|
7975
8069
|
}
|
|
7976
8070
|
|
|
@@ -8694,23 +8788,6 @@
|
|
|
8694
8788
|
});
|
|
8695
8789
|
}
|
|
8696
8790
|
|
|
8697
|
-
function useToggleScope(source, cb) {
|
|
8698
|
-
let scope;
|
|
8699
|
-
vue.watch(source, active => {
|
|
8700
|
-
if (active && !scope) {
|
|
8701
|
-
scope = vue.effectScope();
|
|
8702
|
-
scope.run(cb);
|
|
8703
|
-
} else {
|
|
8704
|
-
var _scope;
|
|
8705
|
-
|
|
8706
|
-
(_scope = scope) == null ? void 0 : _scope.stop();
|
|
8707
|
-
scope = undefined;
|
|
8708
|
-
}
|
|
8709
|
-
}, {
|
|
8710
|
-
immediate: true
|
|
8711
|
-
});
|
|
8712
|
-
}
|
|
8713
|
-
|
|
8714
8791
|
const StackSymbol = Symbol.for('vuetify:stack');
|
|
8715
8792
|
const globalStack = vue.reactive([]);
|
|
8716
8793
|
function useStack(isActive, zIndex) {
|
|
@@ -8978,7 +9055,8 @@
|
|
|
8978
9055
|
activatorEl,
|
|
8979
9056
|
activatorRef,
|
|
8980
9057
|
activatorEvents,
|
|
8981
|
-
contentEvents
|
|
9058
|
+
contentEvents,
|
|
9059
|
+
scrimEvents
|
|
8982
9060
|
} = useActivator(props, {
|
|
8983
9061
|
isActive,
|
|
8984
9062
|
isTop: localTop
|
|
@@ -9093,10 +9171,10 @@
|
|
|
9093
9171
|
top: convertToUnit(top.value)
|
|
9094
9172
|
}],
|
|
9095
9173
|
"ref": root
|
|
9096
|
-
}, attrs), [vue.createVNode(Scrim, {
|
|
9174
|
+
}, attrs), [vue.createVNode(Scrim, vue.mergeProps({
|
|
9097
9175
|
"color": scrimColor,
|
|
9098
9176
|
"modelValue": isActive.value && !!props.scrim
|
|
9099
|
-
}, null), vue.createVNode(MaybeTransition, {
|
|
9177
|
+
}, vue.toHandlers(scrimEvents.value)), null), vue.createVNode(MaybeTransition, {
|
|
9100
9178
|
"appear": true,
|
|
9101
9179
|
"persisted": true,
|
|
9102
9180
|
"transition": props.transition,
|
|
@@ -9293,8 +9371,20 @@
|
|
|
9293
9371
|
},
|
|
9294
9372
|
"onClick:outside": onClickOutside
|
|
9295
9373
|
}, scopeId, attrs), {
|
|
9296
|
-
|
|
9297
|
-
|
|
9374
|
+
activator: slots.activator,
|
|
9375
|
+
default: function () {
|
|
9376
|
+
var _slots$default;
|
|
9377
|
+
|
|
9378
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
9379
|
+
args[_key] = arguments[_key];
|
|
9380
|
+
}
|
|
9381
|
+
|
|
9382
|
+
return vue.createVNode(VDefaultsProvider, {
|
|
9383
|
+
"root": true
|
|
9384
|
+
}, {
|
|
9385
|
+
default: () => [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots, ...args)]
|
|
9386
|
+
});
|
|
9387
|
+
}
|
|
9298
9388
|
}));
|
|
9299
9389
|
return forwardRefs({
|
|
9300
9390
|
id
|
|
@@ -9513,7 +9603,7 @@
|
|
|
9513
9603
|
'v-field--prepended': hasPrepend,
|
|
9514
9604
|
'v-field--reverse': props.reverse,
|
|
9515
9605
|
'v-field--single-line': props.singleLine,
|
|
9516
|
-
'v-field--
|
|
9606
|
+
'v-field--no-label': !label,
|
|
9517
9607
|
[`v-field--variant-${props.variant}`]: true
|
|
9518
9608
|
}, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value],
|
|
9519
9609
|
"style": [backgroundColorStyles.value, textColorStyles.value],
|
|
@@ -9953,7 +10043,7 @@
|
|
|
9953
10043
|
"onUpdate:modelValue": v => {
|
|
9954
10044
|
if (v == null) model.value = [];
|
|
9955
10045
|
},
|
|
9956
|
-
"validationValue":
|
|
10046
|
+
"validationValue": model.externalValue,
|
|
9957
10047
|
"dirty": model.value.length > 0,
|
|
9958
10048
|
"class": ['v-select', {
|
|
9959
10049
|
'v-select--active-menu': menu.value,
|
|
@@ -10313,7 +10403,7 @@
|
|
|
10313
10403
|
"onUpdate:modelValue": v => {
|
|
10314
10404
|
if (v == null) model.value = [];
|
|
10315
10405
|
},
|
|
10316
|
-
"validationValue":
|
|
10406
|
+
"validationValue": model.externalValue,
|
|
10317
10407
|
"dirty": model.value.length > 0,
|
|
10318
10408
|
"onInput": onInput,
|
|
10319
10409
|
"class": ['v-autocomplete', {
|
|
@@ -10644,8 +10734,8 @@
|
|
|
10644
10734
|
width.value = getClientWidth();
|
|
10645
10735
|
}
|
|
10646
10736
|
|
|
10647
|
-
if (isHydrate) {
|
|
10648
|
-
|
|
10737
|
+
if (isHydrate && IN_BROWSER) {
|
|
10738
|
+
requestAnimationFrame(() => onResize());
|
|
10649
10739
|
} // eslint-disable-next-line max-statements
|
|
10650
10740
|
|
|
10651
10741
|
|
|
@@ -10926,9 +11016,9 @@
|
|
|
10926
11016
|
} = _ref;
|
|
10927
11017
|
const link = useLink(props, attrs);
|
|
10928
11018
|
const isActive = vue.computed(() => {
|
|
10929
|
-
var _link$
|
|
11019
|
+
var _link$isActive;
|
|
10930
11020
|
|
|
10931
|
-
return props.active || ((_link$
|
|
11021
|
+
return props.active || ((_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value);
|
|
10932
11022
|
});
|
|
10933
11023
|
const color = vue.computed(() => isActive.value ? props.activeColor : props.color);
|
|
10934
11024
|
const {
|
|
@@ -11849,10 +11939,10 @@
|
|
|
11849
11939
|
},
|
|
11850
11940
|
"scoped": true
|
|
11851
11941
|
}, {
|
|
11852
|
-
default: () => [group.items.value.map(item => {
|
|
11942
|
+
default: () => [group.items.value.map((item, index) => {
|
|
11853
11943
|
const props = {
|
|
11854
|
-
'aria-label': t('$vuetify.carousel.ariaLabel.delimiter'),
|
|
11855
|
-
class: [group.isSelected(item.id) && 'v-btn--
|
|
11944
|
+
'aria-label': t('$vuetify.carousel.ariaLabel.delimiter', index + 1, group.items.value.length),
|
|
11945
|
+
class: [group.isSelected(item.id) && 'v-btn--active'],
|
|
11856
11946
|
onClick: () => group.select(item.id, true)
|
|
11857
11947
|
};
|
|
11858
11948
|
return slots.item ? slots.item({
|
|
@@ -12579,8 +12669,8 @@
|
|
|
12579
12669
|
label: t.toString()
|
|
12580
12670
|
}));
|
|
12581
12671
|
return Object.keys(props.ticks).map(key => ({
|
|
12582
|
-
value:
|
|
12583
|
-
position: position(
|
|
12672
|
+
value: parseFloat(key),
|
|
12673
|
+
position: position(parseFloat(key)),
|
|
12584
12674
|
label: props.ticks[key]
|
|
12585
12675
|
}));
|
|
12586
12676
|
});
|
|
@@ -12812,7 +12902,9 @@
|
|
|
12812
12902
|
trackColor,
|
|
12813
12903
|
trackFillColor,
|
|
12814
12904
|
trackSize,
|
|
12815
|
-
vertical
|
|
12905
|
+
vertical,
|
|
12906
|
+
min,
|
|
12907
|
+
max
|
|
12816
12908
|
} = slider;
|
|
12817
12909
|
const {
|
|
12818
12910
|
roundedClasses
|
|
@@ -12846,11 +12938,13 @@
|
|
|
12846
12938
|
var _slots$tickLabel;
|
|
12847
12939
|
|
|
12848
12940
|
const directionProperty = vertical.value ? 'bottom' : 'margin-inline-start';
|
|
12849
|
-
const directionValue = tick.
|
|
12941
|
+
const directionValue = tick.value !== min.value && tick.value !== max.value ? convertToUnit(tick.position, '%') : undefined;
|
|
12850
12942
|
return vue.createVNode("div", {
|
|
12851
12943
|
"key": tick.value,
|
|
12852
12944
|
"class": ['v-slider-track__tick', {
|
|
12853
|
-
'v-slider-track__tick--filled': tick.position >= props.start && tick.position <= props.stop
|
|
12945
|
+
'v-slider-track__tick--filled': tick.position >= props.start && tick.position <= props.stop,
|
|
12946
|
+
'v-slider-track__tick--first': tick.value === min.value,
|
|
12947
|
+
'v-slider-track__tick--last': tick.value === max.value
|
|
12854
12948
|
}],
|
|
12855
12949
|
"style": {
|
|
12856
12950
|
[directionProperty]: directionValue
|
|
@@ -12949,6 +13043,7 @@
|
|
|
12949
13043
|
const trackStop = vue.computed(() => position(model.value));
|
|
12950
13044
|
useRender(() => {
|
|
12951
13045
|
const [inputProps, _] = filterInputProps(props);
|
|
13046
|
+
const hasPrepend = !!(props.label || slots.label || slots.prepend);
|
|
12952
13047
|
return vue.createVNode(VInput, vue.mergeProps({
|
|
12953
13048
|
"class": ['v-slider', {
|
|
12954
13049
|
'v-slider--has-labels': !!slots['tick-label'] || hasLabels.value,
|
|
@@ -12959,6 +13054,14 @@
|
|
|
12959
13054
|
}, inputProps, {
|
|
12960
13055
|
"focused": isFocused.value
|
|
12961
13056
|
}), { ...slots,
|
|
13057
|
+
prepend: hasPrepend ? slotProps => {
|
|
13058
|
+
var _slots$label, _slots$prepend;
|
|
13059
|
+
|
|
13060
|
+
return vue.createVNode(vue.Fragment, null, [((_slots$label = slots.label) == null ? void 0 : _slots$label.call(slots, slotProps)) ?? props.label ? vue.createVNode(VLabel, {
|
|
13061
|
+
"class": "v-slider__label",
|
|
13062
|
+
"text": props.label
|
|
13063
|
+
}, null) : undefined, (_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots, slotProps)]);
|
|
13064
|
+
} : undefined,
|
|
12962
13065
|
default: _ref2 => {
|
|
12963
13066
|
let {
|
|
12964
13067
|
id
|
|
@@ -13856,7 +13959,7 @@
|
|
|
13856
13959
|
"onUpdate:modelValue": [$event => search.value = $event, v => {
|
|
13857
13960
|
if (v == null) model.value = [];
|
|
13858
13961
|
}],
|
|
13859
|
-
"validationValue":
|
|
13962
|
+
"validationValue": model.externalValue,
|
|
13860
13963
|
"dirty": model.value.length > 0,
|
|
13861
13964
|
"class": ['v-combobox', {
|
|
13862
13965
|
'v-combobox--active-menu': menu.value,
|
|
@@ -13998,9 +14101,6 @@
|
|
|
13998
14101
|
},
|
|
13999
14102
|
scrollable: Boolean,
|
|
14000
14103
|
modelValue: Boolean,
|
|
14001
|
-
...makeDimensionProps({
|
|
14002
|
-
width: 'auto'
|
|
14003
|
-
}),
|
|
14004
14104
|
...makeTransitionProps({
|
|
14005
14105
|
transition: {
|
|
14006
14106
|
component: VDialogTransition
|
|
@@ -14017,9 +14117,6 @@
|
|
|
14017
14117
|
slots
|
|
14018
14118
|
} = _ref;
|
|
14019
14119
|
const isActive = useProxiedModel(props, 'modelValue');
|
|
14020
|
-
const {
|
|
14021
|
-
dimensionStyles
|
|
14022
|
-
} = useDimension(props);
|
|
14023
14120
|
const {
|
|
14024
14121
|
scopeId
|
|
14025
14122
|
} = useScopeId();
|
|
@@ -14035,7 +14132,7 @@
|
|
|
14035
14132
|
(_overlay$value2 = overlay.value) != null && _overlay$value2.globalTop && // It isn't the document or the dialog body
|
|
14036
14133
|
![document, overlay.value.contentEl].includes(after) && // It isn't inside the dialog body
|
|
14037
14134
|
!overlay.value.contentEl.contains(after)) {
|
|
14038
|
-
const focusable = [...overlay.value.contentEl.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])')].filter(el => !el.hasAttribute('disabled'));
|
|
14135
|
+
const focusable = [...overlay.value.contentEl.querySelectorAll('button, [href], input:not([type="hidden"]), select, textarea, [tabindex]:not([tabindex="-1"])')].filter(el => !el.hasAttribute('disabled') && !el.matches('[tabindex="-1"]'));
|
|
14039
14136
|
if (!focusable.length) return;
|
|
14040
14137
|
const firstElement = focusable[0];
|
|
14041
14138
|
const lastElement = focusable[focusable.length - 1];
|
|
@@ -14080,7 +14177,6 @@
|
|
|
14080
14177
|
'v-dialog--fullscreen': props.fullscreen,
|
|
14081
14178
|
'v-dialog--scrollable': props.scrollable
|
|
14082
14179
|
}],
|
|
14083
|
-
"style": dimensionStyles.value,
|
|
14084
14180
|
"transition": props.transition,
|
|
14085
14181
|
"scrollStrategy": "block",
|
|
14086
14182
|
"ref": overlay,
|
|
@@ -14092,8 +14188,20 @@
|
|
|
14092
14188
|
},
|
|
14093
14189
|
"z-index": 2400
|
|
14094
14190
|
}, scopeId, attrs), {
|
|
14095
|
-
|
|
14096
|
-
|
|
14191
|
+
activator: slots.activator,
|
|
14192
|
+
default: function () {
|
|
14193
|
+
var _slots$default;
|
|
14194
|
+
|
|
14195
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
14196
|
+
args[_key] = arguments[_key];
|
|
14197
|
+
}
|
|
14198
|
+
|
|
14199
|
+
return vue.createVNode(VDefaultsProvider, {
|
|
14200
|
+
"root": true
|
|
14201
|
+
}, {
|
|
14202
|
+
default: () => [(_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots, ...args)]
|
|
14203
|
+
});
|
|
14204
|
+
}
|
|
14097
14205
|
}));
|
|
14098
14206
|
return forwardRefs({}, overlay);
|
|
14099
14207
|
}
|
|
@@ -14516,9 +14624,9 @@
|
|
|
14516
14624
|
},
|
|
14517
14625
|
"onFocus": onFocus,
|
|
14518
14626
|
"onBlur": () => isFocused.value = false
|
|
14519
|
-
}, slotProps, inputAttrs), null),
|
|
14627
|
+
}, slotProps, inputAttrs), null), vue.createVNode("div", {
|
|
14520
14628
|
"class": fieldClass
|
|
14521
|
-
}, [slots.selection ? slots.selection({
|
|
14629
|
+
}, [model.value.length > 0 && (slots.selection ? slots.selection({
|
|
14522
14630
|
fileNames: fileNames.value,
|
|
14523
14631
|
totalBytes: totalBytes.value,
|
|
14524
14632
|
totalBytesReadable: totalBytesReadable.value
|
|
@@ -14528,7 +14636,7 @@
|
|
|
14528
14636
|
"color": props.color
|
|
14529
14637
|
}, {
|
|
14530
14638
|
default: () => [text]
|
|
14531
|
-
})) : fileNames.value.join(', ')])]);
|
|
14639
|
+
})) : fileNames.value.join(', '))])]);
|
|
14532
14640
|
}
|
|
14533
14641
|
});
|
|
14534
14642
|
},
|
|
@@ -16013,9 +16121,10 @@
|
|
|
16013
16121
|
const firstItem = target.querySelector('.v-pagination__list > *');
|
|
16014
16122
|
if (!firstItem) return;
|
|
16015
16123
|
const totalWidth = contentRect.width;
|
|
16016
|
-
const itemWidth = firstItem.
|
|
16124
|
+
const itemWidth = firstItem.offsetWidth + parseFloat(getComputedStyle(firstItem).marginRight) * 2;
|
|
16017
16125
|
const minButtons = props.showFirstLastPage ? 5 : 3;
|
|
16018
|
-
maxButtons.value = Math.max(0, Math.floor(
|
|
16126
|
+
maxButtons.value = Math.max(0, Math.floor( // Round to two decimal places to avoid floating point errors
|
|
16127
|
+
+((totalWidth - itemWidth * minButtons) / itemWidth).toFixed(2)));
|
|
16019
16128
|
});
|
|
16020
16129
|
const length = vue.computed(() => parseInt(props.length, 10));
|
|
16021
16130
|
const start = vue.computed(() => parseInt(props.start, 10));
|
|
@@ -16075,6 +16184,7 @@
|
|
|
16075
16184
|
if (typeof item === 'string') {
|
|
16076
16185
|
return {
|
|
16077
16186
|
isActive: false,
|
|
16187
|
+
key: `ellipsis-${index}`,
|
|
16078
16188
|
page: item,
|
|
16079
16189
|
props: {
|
|
16080
16190
|
ref,
|
|
@@ -16087,6 +16197,7 @@
|
|
|
16087
16197
|
const isActive = item === page.value;
|
|
16088
16198
|
return {
|
|
16089
16199
|
isActive,
|
|
16200
|
+
key: item,
|
|
16090
16201
|
page: n(item),
|
|
16091
16202
|
props: {
|
|
16092
16203
|
ref,
|
|
@@ -16179,7 +16290,7 @@
|
|
|
16179
16290
|
}, [slots.prev ? slots.prev(controls.value.prev) : vue.createVNode(VBtn, vue.mergeProps({
|
|
16180
16291
|
"_as": "VPaginationBtn"
|
|
16181
16292
|
}, controls.value.prev), null)]), items.value.map((item, index) => vue.createVNode("li", {
|
|
16182
|
-
"key": item.
|
|
16293
|
+
"key": item.key,
|
|
16183
16294
|
"class": ['v-pagination__item', {
|
|
16184
16295
|
'v-pagination__item--is-active': item.isActive
|
|
16185
16296
|
}],
|
|
@@ -16216,7 +16327,7 @@
|
|
|
16216
16327
|
props: {
|
|
16217
16328
|
scale: {
|
|
16218
16329
|
type: [Number, String],
|
|
16219
|
-
default:
|
|
16330
|
+
default: 0.5
|
|
16220
16331
|
}
|
|
16221
16332
|
},
|
|
16222
16333
|
|
|
@@ -16228,11 +16339,18 @@
|
|
|
16228
16339
|
intersectionRef,
|
|
16229
16340
|
isIntersecting
|
|
16230
16341
|
} = useIntersectionObserver();
|
|
16342
|
+
const {
|
|
16343
|
+
resizeRef,
|
|
16344
|
+
contentRect
|
|
16345
|
+
} = useResizeObserver();
|
|
16346
|
+
const {
|
|
16347
|
+
height: displayHeight
|
|
16348
|
+
} = useDisplay();
|
|
16231
16349
|
const root = vue.ref();
|
|
16232
16350
|
vue.watchEffect(() => {
|
|
16233
16351
|
var _root$value;
|
|
16234
16352
|
|
|
16235
|
-
intersectionRef.value = (_root$value = root.value) == null ? void 0 : _root$value.$el;
|
|
16353
|
+
intersectionRef.value = resizeRef.value = (_root$value = root.value) == null ? void 0 : _root$value.$el;
|
|
16236
16354
|
});
|
|
16237
16355
|
let scrollParent;
|
|
16238
16356
|
vue.watch(isIntersecting, val => {
|
|
@@ -16252,6 +16370,10 @@
|
|
|
16252
16370
|
|
|
16253
16371
|
(_scrollParent = scrollParent) == null ? void 0 : _scrollParent.removeEventListener('scroll', onScroll);
|
|
16254
16372
|
});
|
|
16373
|
+
vue.watch(displayHeight, onScroll);
|
|
16374
|
+
const scale = vue.computed(() => {
|
|
16375
|
+
return 1 - clamp(+props.scale);
|
|
16376
|
+
});
|
|
16255
16377
|
let frame = -1;
|
|
16256
16378
|
|
|
16257
16379
|
function onScroll() {
|
|
@@ -16262,13 +16384,14 @@
|
|
|
16262
16384
|
|
|
16263
16385
|
const el = ((_root$value2 = root.value) == null ? void 0 : _root$value2.$el).querySelector('.v-img__img');
|
|
16264
16386
|
if (!el) return;
|
|
16265
|
-
const
|
|
16266
|
-
const scrollHeight = scrollParent.clientHeight ?? window.innerHeight;
|
|
16387
|
+
const scrollHeight = scrollParent.clientHeight ?? document.documentElement.clientHeight;
|
|
16267
16388
|
const scrollPos = scrollParent.scrollTop ?? window.scrollY;
|
|
16268
|
-
const top =
|
|
16269
|
-
const
|
|
16270
|
-
const
|
|
16271
|
-
|
|
16389
|
+
const top = intersectionRef.value.offsetTop;
|
|
16390
|
+
const height = contentRect.value.height;
|
|
16391
|
+
const center = top + (height - scrollHeight) / 2;
|
|
16392
|
+
const translate = floor((scrollPos - center) * scale.value);
|
|
16393
|
+
const sizeScale = Math.max(1, (scale.value * (scrollHeight - height) + height) / height);
|
|
16394
|
+
el.style.setProperty('transform', `translateY(${translate}px) scale(${sizeScale})`);
|
|
16272
16395
|
});
|
|
16273
16396
|
}
|
|
16274
16397
|
|
|
@@ -16372,7 +16495,8 @@
|
|
|
16372
16495
|
isReadonly
|
|
16373
16496
|
} = _ref2;
|
|
16374
16497
|
return vue.createVNode(vue.Fragment, null, [label && vue.createVNode(VLabel, {
|
|
16375
|
-
"for": id.value
|
|
16498
|
+
"for": id.value,
|
|
16499
|
+
"clickable": true
|
|
16376
16500
|
}, {
|
|
16377
16501
|
default: () => [label]
|
|
16378
16502
|
}), vue.createVNode(VSelectionControlGroup, vue.mergeProps(controlProps, {
|
|
@@ -16481,6 +16605,7 @@
|
|
|
16481
16605
|
const trackStop = vue.computed(() => position(model.value[1]));
|
|
16482
16606
|
useRender(() => {
|
|
16483
16607
|
const [inputProps, _] = filterInputProps(props);
|
|
16608
|
+
const hasPrepend = !!(props.label || slots.label || slots.prepend);
|
|
16484
16609
|
return vue.createVNode(VInput, vue.mergeProps({
|
|
16485
16610
|
"class": ['v-slider', 'v-range-slider', {
|
|
16486
16611
|
'v-slider--has-labels': !!slots['tick-label'] || hasLabels.value,
|
|
@@ -16492,6 +16617,14 @@
|
|
|
16492
16617
|
}, inputProps, {
|
|
16493
16618
|
"focused": isFocused.value
|
|
16494
16619
|
}), { ...slots,
|
|
16620
|
+
prepend: hasPrepend ? slotProps => {
|
|
16621
|
+
var _slots$label, _slots$prepend;
|
|
16622
|
+
|
|
16623
|
+
return vue.createVNode(vue.Fragment, null, [((_slots$label = slots.label) == null ? void 0 : _slots$label.call(slots, slotProps)) ?? props.label ? vue.createVNode(VLabel, {
|
|
16624
|
+
"class": "v-slider__label",
|
|
16625
|
+
"text": props.label
|
|
16626
|
+
}, null) : undefined, (_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots, slotProps)]);
|
|
16627
|
+
} : undefined,
|
|
16495
16628
|
default: _ref2 => {
|
|
16496
16629
|
var _startThumbRef$value4, _stopThumbRef$value4;
|
|
16497
16630
|
|
|
@@ -17252,7 +17385,7 @@
|
|
|
17252
17385
|
|
|
17253
17386
|
});
|
|
17254
17387
|
|
|
17255
|
-
const VSnackbar =
|
|
17388
|
+
const VSnackbar = genericComponent()({
|
|
17256
17389
|
name: 'VSnackbar',
|
|
17257
17390
|
props: {
|
|
17258
17391
|
contentClass: {
|
|
@@ -17625,6 +17758,7 @@
|
|
|
17625
17758
|
"tabindex": isSelected.value ? 0 : -1,
|
|
17626
17759
|
"role": "tab",
|
|
17627
17760
|
"aria-selected": String(isSelected.value),
|
|
17761
|
+
"active": false,
|
|
17628
17762
|
"block": props.fixed,
|
|
17629
17763
|
"maxWidth": props.fixed ? 300 : undefined,
|
|
17630
17764
|
"variant": "text",
|
|
@@ -17938,7 +18072,8 @@
|
|
|
17938
18072
|
'v-text-field--prefixed': props.prefix,
|
|
17939
18073
|
'v-text-field--suffixed': props.suffix,
|
|
17940
18074
|
'v-textarea--auto-grow': props.autoGrow,
|
|
17941
|
-
'v-textarea--no-resize': props.noResize || props.autoGrow
|
|
18075
|
+
'v-textarea--no-resize': props.noResize || props.autoGrow,
|
|
18076
|
+
'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant)
|
|
17942
18077
|
}],
|
|
17943
18078
|
"onClick:prepend": props['onClick:prepend'],
|
|
17944
18079
|
"onClick:append": props['onClick:append']
|
|
@@ -18064,6 +18199,11 @@
|
|
|
18064
18199
|
default: 'vertical',
|
|
18065
18200
|
validator: v => ['vertical', 'horizontal'].includes(v)
|
|
18066
18201
|
},
|
|
18202
|
+
justify: {
|
|
18203
|
+
type: String,
|
|
18204
|
+
default: 'auto',
|
|
18205
|
+
validator: v => ['auto', 'center'].includes(v)
|
|
18206
|
+
},
|
|
18067
18207
|
side: {
|
|
18068
18208
|
type: String,
|
|
18069
18209
|
validator: v => v == null || ['start', 'end'].includes(v)
|
|
@@ -18127,7 +18267,7 @@
|
|
|
18127
18267
|
}
|
|
18128
18268
|
});
|
|
18129
18269
|
useRender(() => vue.createVNode(props.tag, {
|
|
18130
|
-
"class": ['v-timeline', `v-timeline--${props.direction}`, `v-timeline--align-${props.align}`, truncateClasses.value, {
|
|
18270
|
+
"class": ['v-timeline', `v-timeline--${props.direction}`, `v-timeline--align-${props.align}`, `v-timeline--justify-${props.justify}`, truncateClasses.value, {
|
|
18131
18271
|
'v-timeline--inset-line': !!props.lineInset
|
|
18132
18272
|
}, themeClasses.value, densityClasses.value, sideClasses.value],
|
|
18133
18273
|
"style": {
|
|
@@ -18672,21 +18812,25 @@
|
|
|
18672
18812
|
});
|
|
18673
18813
|
|
|
18674
18814
|
// Composables
|
|
18675
|
-
|
|
18815
|
+
function createVuetify$1() {
|
|
18676
18816
|
let vuetify = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
18817
|
+
const {
|
|
18818
|
+
blueprint,
|
|
18819
|
+
...rest
|
|
18820
|
+
} = vuetify;
|
|
18821
|
+
const options = mergeDeep(blueprint, rest);
|
|
18822
|
+
const {
|
|
18823
|
+
aliases = {},
|
|
18824
|
+
components = {},
|
|
18825
|
+
directives = {}
|
|
18826
|
+
} = options;
|
|
18827
|
+
const defaults = createDefaults(options.defaults);
|
|
18828
|
+
const display = createDisplay(options.display, options.ssr);
|
|
18829
|
+
const theme = createTheme(options.theme);
|
|
18830
|
+
const icons = createIcons(options.icons);
|
|
18831
|
+
const locale = createLocale(options.locale);
|
|
18677
18832
|
|
|
18678
18833
|
const install = app => {
|
|
18679
|
-
const {
|
|
18680
|
-
blueprint,
|
|
18681
|
-
...rest
|
|
18682
|
-
} = vuetify;
|
|
18683
|
-
const options = mergeDeep(blueprint, rest);
|
|
18684
|
-
const {
|
|
18685
|
-
aliases = {},
|
|
18686
|
-
components = {},
|
|
18687
|
-
directives = {}
|
|
18688
|
-
} = options;
|
|
18689
|
-
|
|
18690
18834
|
for (const key in directives) {
|
|
18691
18835
|
app.directive(key, directives[key]);
|
|
18692
18836
|
}
|
|
@@ -18697,44 +18841,19 @@
|
|
|
18697
18841
|
|
|
18698
18842
|
for (const key in aliases) {
|
|
18699
18843
|
app.component(key, defineComponent({ ...aliases[key],
|
|
18700
|
-
name: key
|
|
18844
|
+
name: key,
|
|
18845
|
+
aliasName: aliases[key].name
|
|
18701
18846
|
}));
|
|
18702
18847
|
}
|
|
18703
18848
|
|
|
18704
|
-
|
|
18705
|
-
|
|
18706
|
-
|
|
18707
|
-
|
|
18708
|
-
|
|
18709
|
-
|
|
18710
|
-
|
|
18711
|
-
|
|
18712
|
-
if (!IN_BROWSER) {
|
|
18713
|
-
provideApp();
|
|
18714
|
-
}
|
|
18715
|
-
|
|
18849
|
+
theme.install(app);
|
|
18850
|
+
locale.install(app);
|
|
18851
|
+
app.provide(DefaultsSymbol, defaults);
|
|
18852
|
+
app.provide(DisplaySymbol, display);
|
|
18853
|
+
app.provide(ThemeSymbol, theme);
|
|
18854
|
+
app.provide(IconSymbol, icons);
|
|
18855
|
+
app.provide(LocaleAdapterSymbol, locale.adapter);
|
|
18716
18856
|
getUid.reset();
|
|
18717
|
-
const mount = app.mount;
|
|
18718
|
-
|
|
18719
|
-
app.mount = (rootContainer, isHydrate, isSVG) => {
|
|
18720
|
-
provideApp(isHydrate);
|
|
18721
|
-
const ret = mount(rootContainer, isHydrate, isSVG);
|
|
18722
|
-
app.mount = mount;
|
|
18723
|
-
return ret;
|
|
18724
|
-
}; // Vue's inject() can only be used in setup
|
|
18725
|
-
|
|
18726
|
-
|
|
18727
|
-
function inject(key) {
|
|
18728
|
-
var _vm$parent, _vm$vnode$appContext;
|
|
18729
|
-
|
|
18730
|
-
const vm = this.$;
|
|
18731
|
-
const provides = ((_vm$parent = vm.parent) == null ? void 0 : _vm$parent.provides) ?? ((_vm$vnode$appContext = vm.vnode.appContext) == null ? void 0 : _vm$vnode$appContext.provides);
|
|
18732
|
-
|
|
18733
|
-
if (provides && key in provides) {
|
|
18734
|
-
return provides[key];
|
|
18735
|
-
}
|
|
18736
|
-
}
|
|
18737
|
-
|
|
18738
18857
|
app.mixin({
|
|
18739
18858
|
computed: {
|
|
18740
18859
|
$vuetify() {
|
|
@@ -18753,11 +18872,27 @@
|
|
|
18753
18872
|
};
|
|
18754
18873
|
|
|
18755
18874
|
return {
|
|
18756
|
-
install
|
|
18875
|
+
install,
|
|
18876
|
+
defaults,
|
|
18877
|
+
display,
|
|
18878
|
+
theme,
|
|
18879
|
+
icons,
|
|
18880
|
+
locale: locale.adapter
|
|
18757
18881
|
};
|
|
18758
|
-
}
|
|
18759
|
-
const version$1 = "3.0.0-beta.
|
|
18760
|
-
createVuetify$1.version = version$1;
|
|
18882
|
+
}
|
|
18883
|
+
const version$1 = "3.0.0-beta.13";
|
|
18884
|
+
createVuetify$1.version = version$1; // Vue's inject() can only be used in setup
|
|
18885
|
+
|
|
18886
|
+
function inject(key) {
|
|
18887
|
+
var _vm$parent, _vm$vnode$appContext;
|
|
18888
|
+
|
|
18889
|
+
const vm = this.$;
|
|
18890
|
+
const provides = ((_vm$parent = vm.parent) == null ? void 0 : _vm$parent.provides) ?? ((_vm$vnode$appContext = vm.vnode.appContext) == null ? void 0 : _vm$vnode$appContext.provides);
|
|
18891
|
+
|
|
18892
|
+
if (provides && key in provides) {
|
|
18893
|
+
return provides[key];
|
|
18894
|
+
}
|
|
18895
|
+
}
|
|
18761
18896
|
|
|
18762
18897
|
const createVuetify = function () {
|
|
18763
18898
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -18767,7 +18902,7 @@
|
|
|
18767
18902
|
...options
|
|
18768
18903
|
});
|
|
18769
18904
|
};
|
|
18770
|
-
const version = "3.0.0-beta.
|
|
18905
|
+
const version = "3.0.0-beta.13";
|
|
18771
18906
|
createVuetify.version = version;
|
|
18772
18907
|
|
|
18773
18908
|
exports.components = components;
|