@vuetify/nightly 3.2.0-dev-20230214.0 → 3.2.0-dev-20230309.0
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 +5 -17
- package/dist/json/attributes.json +38 -34
- package/dist/json/importMap.json +4 -4
- package/dist/json/tags.json +1 -0
- package/dist/json/web-types.json +993 -90
- package/dist/vuetify-labs.css +1520 -1376
- package/dist/vuetify-labs.d.ts +3476 -180
- package/dist/vuetify-labs.esm.js +249 -177
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +249 -177
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +321 -177
- package/dist/vuetify.d.ts +1939 -101
- package/dist/vuetify.esm.js +213 -162
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +213 -162
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +700 -701
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +1 -1
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/_variables.scss +1 -1
- package/lib/components/VAlert/index.d.ts +22 -0
- package/lib/components/VApp/index.d.ts +6 -0
- package/lib/components/VAppBar/VAppBar.mjs +7 -2
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.ts +36 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +10 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +120 -15
- package/lib/components/VAvatar/index.d.ts +6 -0
- package/lib/components/VBadge/index.d.ts +8 -0
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/index.d.ts +24 -0
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +6 -2
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/index.d.ts +6 -0
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.ts +28 -4
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.ts +12 -0
- package/lib/components/VBtnGroup/index.d.ts +6 -0
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.ts +6 -0
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/index.d.ts +60 -0
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +60 -0
- package/lib/components/VCheckbox/index.d.ts +38 -0
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.ts +12 -0
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.ts +6 -0
- package/lib/components/VCode/index.d.ts +6 -0
- package/lib/components/VColorPicker/VColorPicker.mjs +9 -1
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.css +2 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +36 -18
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.sass +2 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -4
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +2 -2
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/util/index.mjs +2 -5
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.mjs +10 -1
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +120 -15
- package/lib/components/VCounter/index.d.ts +24 -0
- package/lib/components/VDefaultsProvider/index.d.ts +6 -0
- package/lib/components/VDialog/index.d.ts +64 -1
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/index.d.ts +6 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.ts +49 -12
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/index.d.ts +20 -6
- package/lib/components/VFileInput/VFileInput.mjs +1 -0
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +43 -1
- package/lib/components/VFooter/index.d.ts +7 -1
- package/lib/components/VForm/index.d.ts +6 -0
- package/lib/components/VGrid/index.d.ts +24 -0
- package/lib/components/VHover/index.d.ts +12 -0
- package/lib/components/VIcon/index.d.ts +12 -0
- package/lib/components/VImg/index.d.ts +12 -0
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +12 -0
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.ts +12 -0
- package/lib/components/VKbd/index.d.ts +6 -0
- package/lib/components/VLabel/index.d.ts +6 -0
- package/lib/components/VLayout/index.d.ts +12 -0
- package/lib/components/VLazy/index.d.ts +6 -0
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +77 -6
- package/lib/components/VLocaleProvider/index.d.ts +6 -0
- package/lib/components/VMain/index.d.ts +6 -0
- package/lib/components/VMenu/VMenu.mjs +6 -5
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +65 -1
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/index.d.ts +24 -0
- package/lib/components/VNavigationDrawer/index.d.ts +12 -0
- package/lib/components/VNoSsr/index.d.ts +6 -0
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +18 -0
- package/lib/components/VOverlay/scrollStrategies.mjs +2 -2
- package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +14 -0
- package/lib/components/VParallax/index.d.ts +12 -0
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/index.d.ts +6 -0
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/index.d.ts +12 -0
- package/lib/components/VRadio/index.d.ts +16 -0
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.ts +22 -0
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +16 -0
- package/lib/components/VRating/VRating.css +0 -4
- package/lib/components/VRating/VRating.mjs +6 -35
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/VRating.sass +0 -5
- package/lib/components/VRating/index.d.ts +9 -0
- package/lib/components/VResponsive/index.d.ts +8 -0
- package/lib/components/VSelect/VSelect.mjs +10 -1
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +186 -15
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.ts +14 -6
- package/lib/components/VSelectionControlGroup/index.d.ts +6 -0
- package/lib/components/VSheet/VSheet.mjs +22 -12
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSheet/index.d.ts +7 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.ts +26 -0
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.ts +16 -0
- package/lib/components/VSnackbar/VSnackbar.css +0 -2
- package/lib/components/VSnackbar/VSnackbar.mjs +6 -8
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.sass +0 -2
- package/lib/components/VSnackbar/index.d.ts +44 -1
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.ts +22 -0
- package/lib/components/VSystemBar/VSystemBar.css +5 -1
- package/lib/components/VSystemBar/VSystemBar.mjs +6 -2
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.sass +5 -1
- package/lib/components/VSystemBar/_variables.scss +4 -1
- package/lib/components/VSystemBar/index.d.ts +6 -0
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/index.d.ts +12 -0
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/index.d.ts +12 -0
- package/lib/components/VTextField/VTextField.mjs +1 -0
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +54 -6
- package/lib/components/VTextarea/VTextarea.mjs +1 -0
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +39 -1
- package/lib/components/VThemeProvider/index.d.ts +6 -0
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.ts +16 -0
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VToolbar/index.d.ts +30 -0
- package/lib/components/VTooltip/VTooltip.mjs +2 -2
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +49 -1
- package/lib/components/VValidation/index.d.ts +6 -0
- package/lib/components/VWindow/index.d.ts +34 -0
- package/lib/components/index.d.ts +1954 -116
- package/lib/components/transitions/createTransition.mjs +1 -1
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- package/lib/components/transitions/index.d.ts +96 -0
- package/lib/composables/defaults.mjs +3 -1
- package/lib/composables/defaults.mjs.map +1 -1
- package/lib/composables/display.mjs +13 -10
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/loader.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +2 -2
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +7 -1
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +1 -1
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/resizeObserver.mjs.map +1 -1
- package/lib/composables/stack.mjs +2 -2
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/theme.mjs +28 -23
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/variant.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/labs/VDataTable/VDataTable.mjs +4 -2
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +4 -6
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +2 -2
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +4 -2
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/options.mjs +7 -1
- package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.ts +1503 -48
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs +18 -5
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/labs/VVirtualScroll/index.d.ts +9 -6
- package/lib/labs/components.d.ts +1512 -54
- package/lib/locale/index.mjs +1 -1
- package/lib/locale/index.mjs.map +1 -1
- package/lib/styles/elements/_global.sass +0 -4
- package/lib/styles/generic/_index.scss +0 -1
- package/lib/styles/generic/_transitions.scss +111 -9
- package/lib/styles/main.css +312 -167
- package/lib/styles/tools/_sheet.sass +3 -6
- package/lib/styles/utilities/_display.sass +6 -5
- package/lib/styles/utilities/_elevation.scss +13 -0
- package/lib/styles/utilities/_index.sass +3 -2
- package/lib/styles/utilities/_screenreaders.sass +13 -11
- package/lib/util/colorUtils.mjs +4 -5
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/defineComponent.mjs.map +1 -1
- package/package.json +18 -5
- package/lib/styles/generic/_elevation.scss +0 -10
package/dist/vuetify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.2.0-dev-
|
|
2
|
+
* Vuetify v3.2.0-dev-20230309.0
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -784,11 +784,12 @@
|
|
|
784
784
|
b,
|
|
785
785
|
a
|
|
786
786
|
} = _ref2;
|
|
787
|
-
return `#${[toHex(r), toHex(g), toHex(b), a !== undefined ? toHex(Math.round(a * 255)) : '
|
|
787
|
+
return `#${[toHex(r), toHex(g), toHex(b), a !== undefined ? toHex(Math.round(a * 255)) : ''].join('')}`;
|
|
788
788
|
}
|
|
789
789
|
function HexToRGB(hex) {
|
|
790
|
+
hex = parseHex(hex);
|
|
790
791
|
let [r, g, b, a] = chunk(hex, 2).map(c => parseInt(c, 16));
|
|
791
|
-
a = a === undefined ? a :
|
|
792
|
+
a = a === undefined ? a : a / 255;
|
|
792
793
|
return {
|
|
793
794
|
r,
|
|
794
795
|
g,
|
|
@@ -811,9 +812,7 @@
|
|
|
811
812
|
if (hex.length === 3 || hex.length === 4) {
|
|
812
813
|
hex = hex.split('').map(x => x + x).join('');
|
|
813
814
|
}
|
|
814
|
-
if (hex.length
|
|
815
|
-
hex = padEnd(hex, 8, 'F');
|
|
816
|
-
} else {
|
|
815
|
+
if (hex.length !== 6) {
|
|
817
816
|
hex = padEnd(padEnd(hex, 6), 8, 'F');
|
|
818
817
|
}
|
|
819
818
|
return hex;
|
|
@@ -964,7 +963,9 @@
|
|
|
964
963
|
if (reset || root) {
|
|
965
964
|
const len = Number(reset || Infinity);
|
|
966
965
|
for (let i = 0; i <= len; i++) {
|
|
967
|
-
if (!properties
|
|
966
|
+
if (!properties || !('prev' in properties)) {
|
|
967
|
+
break;
|
|
968
|
+
}
|
|
968
969
|
properties = properties.prev;
|
|
969
970
|
}
|
|
970
971
|
return properties;
|
|
@@ -1670,17 +1671,9 @@
|
|
|
1670
1671
|
if (current.value.dark) {
|
|
1671
1672
|
createCssClass(lines, ':root', ['color-scheme: dark']);
|
|
1672
1673
|
}
|
|
1674
|
+
createCssClass(lines, ':root', genCssVariables(current.value));
|
|
1673
1675
|
for (const [themeName, theme] of Object.entries(computedThemes.value)) {
|
|
1674
|
-
|
|
1675
|
-
variables,
|
|
1676
|
-
dark
|
|
1677
|
-
} = theme;
|
|
1678
|
-
createCssClass(lines, `.v-theme--${themeName}`, [`color-scheme: ${dark ? 'dark' : 'normal'}`, ...genCssVariables(theme), ...Object.keys(variables).map(key => {
|
|
1679
|
-
const value = variables[key];
|
|
1680
|
-
const color = typeof value === 'string' && value.startsWith('#') ? parseColor$1(value) : undefined;
|
|
1681
|
-
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
|
1682
|
-
return `--v-${key}: ${rgb ?? value}`;
|
|
1683
|
-
})]);
|
|
1676
|
+
createCssClass(lines, `.v-theme--${themeName}`, [`color-scheme: ${theme.dark ? 'dark' : 'normal'}`, ...genCssVariables(theme)]);
|
|
1684
1677
|
}
|
|
1685
1678
|
const bgLines = [];
|
|
1686
1679
|
const fgLines = [];
|
|
@@ -1697,22 +1690,30 @@
|
|
|
1697
1690
|
lines.push(...bgLines, ...fgLines);
|
|
1698
1691
|
return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
|
|
1699
1692
|
});
|
|
1693
|
+
function getHead() {
|
|
1694
|
+
return {
|
|
1695
|
+
style: [{
|
|
1696
|
+
children: styles.value,
|
|
1697
|
+
id: 'vuetify-theme-stylesheet',
|
|
1698
|
+
nonce: parsedOptions.cspNonce || false
|
|
1699
|
+
}]
|
|
1700
|
+
};
|
|
1701
|
+
}
|
|
1700
1702
|
function install(app) {
|
|
1701
1703
|
const head = app._context.provides.usehead;
|
|
1702
1704
|
if (head) {
|
|
1703
|
-
head.
|
|
1704
|
-
const
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
if (
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
}
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
vue.watchEffect(() => head.updateDOM());
|
|
1705
|
+
if (head.push) {
|
|
1706
|
+
const entry = head.push(getHead);
|
|
1707
|
+
vue.watch(styles, () => {
|
|
1708
|
+
entry.patch(getHead);
|
|
1709
|
+
});
|
|
1710
|
+
} else {
|
|
1711
|
+
if (IN_BROWSER) {
|
|
1712
|
+
head.addHeadObjs(vue.computed(getHead));
|
|
1713
|
+
vue.watchEffect(() => head.updateDOM());
|
|
1714
|
+
} else {
|
|
1715
|
+
head.addHeadObjs(getHead());
|
|
1716
|
+
}
|
|
1716
1717
|
}
|
|
1717
1718
|
} else {
|
|
1718
1719
|
let styleEl = IN_BROWSER ? document.getElementById('vuetify-theme-stylesheet') : null;
|
|
@@ -1785,6 +1786,11 @@
|
|
|
1785
1786
|
variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`);
|
|
1786
1787
|
}
|
|
1787
1788
|
}
|
|
1789
|
+
for (const [key, value] of Object.entries(theme.variables)) {
|
|
1790
|
+
const color = typeof value === 'string' && value.startsWith('#') ? parseColor$1(value) : undefined;
|
|
1791
|
+
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
|
1792
|
+
variables.push(`--v-${key}: ${rgb ?? value}`);
|
|
1793
|
+
}
|
|
1788
1794
|
return variables;
|
|
1789
1795
|
}
|
|
1790
1796
|
|
|
@@ -1814,7 +1820,7 @@
|
|
|
1814
1820
|
});
|
|
1815
1821
|
const model = vue.computed({
|
|
1816
1822
|
get() {
|
|
1817
|
-
return transformIn(
|
|
1823
|
+
return transformIn(isControlled.value ? props[prop] : internal.value);
|
|
1818
1824
|
},
|
|
1819
1825
|
set(internalValue) {
|
|
1820
1826
|
const newValue = transformOut(internalValue);
|
|
@@ -2014,7 +2020,7 @@
|
|
|
2014
2020
|
en: false,
|
|
2015
2021
|
es: false,
|
|
2016
2022
|
et: false,
|
|
2017
|
-
fa:
|
|
2023
|
+
fa: true,
|
|
2018
2024
|
fi: false,
|
|
2019
2025
|
fr: false,
|
|
2020
2026
|
hr: false,
|
|
@@ -2175,7 +2181,7 @@
|
|
|
2175
2181
|
// Types
|
|
2176
2182
|
|
|
2177
2183
|
function createCssTransition(name) {
|
|
2178
|
-
let origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '
|
|
2184
|
+
let origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'center center';
|
|
2179
2185
|
let mode = arguments.length > 2 ? arguments[2] : undefined;
|
|
2180
2186
|
return genericComponent()({
|
|
2181
2187
|
name,
|
|
@@ -3209,6 +3215,25 @@
|
|
|
3209
3215
|
return pick(props, Object.keys(VToolbar?.props ?? {}));
|
|
3210
3216
|
}
|
|
3211
3217
|
|
|
3218
|
+
// Utilities
|
|
3219
|
+
|
|
3220
|
+
// Composables
|
|
3221
|
+
function useSsrBoot() {
|
|
3222
|
+
const isBooted = vue.ref(false);
|
|
3223
|
+
vue.onMounted(() => {
|
|
3224
|
+
window.requestAnimationFrame(() => {
|
|
3225
|
+
isBooted.value = true;
|
|
3226
|
+
});
|
|
3227
|
+
});
|
|
3228
|
+
const ssrBootStyles = vue.computed(() => !isBooted.value ? {
|
|
3229
|
+
transition: 'none !important'
|
|
3230
|
+
} : undefined);
|
|
3231
|
+
return {
|
|
3232
|
+
ssrBootStyles,
|
|
3233
|
+
isBooted: vue.readonly(isBooted)
|
|
3234
|
+
};
|
|
3235
|
+
}
|
|
3236
|
+
|
|
3212
3237
|
// Types
|
|
3213
3238
|
|
|
3214
3239
|
const VAppBar = genericComponent()({
|
|
@@ -3251,6 +3276,9 @@
|
|
|
3251
3276
|
const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0;
|
|
3252
3277
|
return height + extensionHeight;
|
|
3253
3278
|
});
|
|
3279
|
+
const {
|
|
3280
|
+
ssrBootStyles
|
|
3281
|
+
} = useSsrBoot();
|
|
3254
3282
|
const {
|
|
3255
3283
|
layoutItemStyles
|
|
3256
3284
|
} = useLayoutItem({
|
|
@@ -3271,7 +3299,8 @@
|
|
|
3271
3299
|
}],
|
|
3272
3300
|
"style": {
|
|
3273
3301
|
...layoutItemStyles.value,
|
|
3274
|
-
height: undefined
|
|
3302
|
+
height: undefined,
|
|
3303
|
+
...ssrBootStyles.value
|
|
3275
3304
|
}
|
|
3276
3305
|
}, toolbarProps), slots);
|
|
3277
3306
|
});
|
|
@@ -6143,6 +6172,7 @@
|
|
|
6143
6172
|
"id": id.value,
|
|
6144
6173
|
"active": isActive.value || isDirty.value,
|
|
6145
6174
|
"dirty": isDirty.value || props.dirty,
|
|
6175
|
+
"disabled": isDisabled.value,
|
|
6146
6176
|
"focused": isFocused.value,
|
|
6147
6177
|
"error": isValid.value === false
|
|
6148
6178
|
}), {
|
|
@@ -7047,7 +7077,6 @@
|
|
|
7047
7077
|
};
|
|
7048
7078
|
|
|
7049
7079
|
/* eslint-disable sonarjs/no-identical-functions */
|
|
7050
|
-
|
|
7051
7080
|
const independentSelectStrategy = mandatory => {
|
|
7052
7081
|
const strategy = {
|
|
7053
7082
|
select: _ref => {
|
|
@@ -7056,6 +7085,8 @@
|
|
|
7056
7085
|
value,
|
|
7057
7086
|
selected
|
|
7058
7087
|
} = _ref;
|
|
7088
|
+
id = vue.toRaw(id);
|
|
7089
|
+
|
|
7059
7090
|
// When mandatory and we're trying to deselect when id
|
|
7060
7091
|
// is the only currently selected item then do nothing
|
|
7061
7092
|
if (mandatory && !value) {
|
|
@@ -7100,6 +7131,7 @@
|
|
|
7100
7131
|
id,
|
|
7101
7132
|
...rest
|
|
7102
7133
|
} = _ref3;
|
|
7134
|
+
id = vue.toRaw(id);
|
|
7103
7135
|
const singleSelected = selected.has(id) ? new Map([[id, selected.get(id)]]) : new Map();
|
|
7104
7136
|
return parentStrategy.select({
|
|
7105
7137
|
...rest,
|
|
@@ -7130,6 +7162,7 @@
|
|
|
7130
7162
|
children,
|
|
7131
7163
|
...rest
|
|
7132
7164
|
} = _ref4;
|
|
7165
|
+
id = vue.toRaw(id);
|
|
7133
7166
|
if (children.has(id)) return selected;
|
|
7134
7167
|
return parentStrategy.select({
|
|
7135
7168
|
id,
|
|
@@ -7153,6 +7186,7 @@
|
|
|
7153
7186
|
children,
|
|
7154
7187
|
...rest
|
|
7155
7188
|
} = _ref5;
|
|
7189
|
+
id = vue.toRaw(id);
|
|
7156
7190
|
if (children.has(id)) return selected;
|
|
7157
7191
|
return parentStrategy.select({
|
|
7158
7192
|
id,
|
|
@@ -7176,6 +7210,7 @@
|
|
|
7176
7210
|
children,
|
|
7177
7211
|
parents
|
|
7178
7212
|
} = _ref6;
|
|
7213
|
+
id = vue.toRaw(id);
|
|
7179
7214
|
const original = new Map(selected);
|
|
7180
7215
|
const items = [id];
|
|
7181
7216
|
while (items.length) {
|
|
@@ -7397,7 +7432,7 @@
|
|
|
7397
7432
|
isOpen: vue.computed(() => parent.root.opened.value.has(computedId.value)),
|
|
7398
7433
|
parent: vue.computed(() => parent.root.parents.value.get(computedId.value)),
|
|
7399
7434
|
select: (selected, e) => parent.root.select(computedId.value, selected, e),
|
|
7400
|
-
isSelected: vue.computed(() => parent.root.selected.value.get(computedId.value) === 'on'),
|
|
7435
|
+
isSelected: vue.computed(() => parent.root.selected.value.get(vue.toRaw(computedId.value)) === 'on'),
|
|
7401
7436
|
isIndeterminate: vue.computed(() => parent.root.selected.value.get(computedId.value) === 'indeterminate'),
|
|
7402
7437
|
isLeaf: vue.computed(() => !parent.root.children.value.get(computedId.value)),
|
|
7403
7438
|
isGroupActivator: parent.isGroupActivator
|
|
@@ -8959,7 +8994,7 @@
|
|
|
8959
8994
|
if (!(data.isActive.value && props.scrollStrategy)) return;
|
|
8960
8995
|
scope = vue.effectScope();
|
|
8961
8996
|
await vue.nextTick();
|
|
8962
|
-
scope.run(() => {
|
|
8997
|
+
scope.active && scope.run(() => {
|
|
8963
8998
|
if (typeof props.scrollStrategy === 'function') {
|
|
8964
8999
|
props.scrollStrategy(data, props, scope);
|
|
8965
9000
|
} else {
|
|
@@ -9040,7 +9075,7 @@
|
|
|
9040
9075
|
});
|
|
9041
9076
|
});
|
|
9042
9077
|
vue.onScopeDispose(() => {
|
|
9043
|
-
cancelIdleCallback(ric);
|
|
9078
|
+
typeof cancelIdleCallback !== 'undefined' && cancelIdleCallback(ric);
|
|
9044
9079
|
cancelAnimationFrame(raf);
|
|
9045
9080
|
});
|
|
9046
9081
|
}
|
|
@@ -9086,8 +9121,8 @@
|
|
|
9086
9121
|
function getClientHeight(isHydrate) {
|
|
9087
9122
|
return IN_BROWSER && !isHydrate ? window.innerHeight : 0;
|
|
9088
9123
|
}
|
|
9089
|
-
function getPlatform() {
|
|
9090
|
-
const userAgent = IN_BROWSER ? window.navigator.userAgent : 'ssr';
|
|
9124
|
+
function getPlatform(isHydrate) {
|
|
9125
|
+
const userAgent = IN_BROWSER && !isHydrate ? window.navigator.userAgent : 'ssr';
|
|
9091
9126
|
function match(regexp) {
|
|
9092
9127
|
return Boolean(userAgent.match(regexp));
|
|
9093
9128
|
}
|
|
@@ -9102,7 +9137,6 @@
|
|
|
9102
9137
|
const win = match(/win/i);
|
|
9103
9138
|
const mac = match(/mac/i);
|
|
9104
9139
|
const linux = match(/linux/i);
|
|
9105
|
-
const ssr = match(/ssr/i);
|
|
9106
9140
|
return {
|
|
9107
9141
|
android,
|
|
9108
9142
|
ios,
|
|
@@ -9116,7 +9150,7 @@
|
|
|
9116
9150
|
mac,
|
|
9117
9151
|
linux,
|
|
9118
9152
|
touch: SUPPORTS_TOUCH,
|
|
9119
|
-
ssr
|
|
9153
|
+
ssr: userAgent === 'ssr'
|
|
9120
9154
|
};
|
|
9121
9155
|
}
|
|
9122
9156
|
function createDisplay(options, ssr) {
|
|
@@ -9125,13 +9159,17 @@
|
|
|
9125
9159
|
mobileBreakpoint
|
|
9126
9160
|
} = parseDisplayOptions(options);
|
|
9127
9161
|
const height = vue.ref(getClientHeight(ssr));
|
|
9128
|
-
const platform = getPlatform();
|
|
9162
|
+
const platform = vue.shallowRef(getPlatform(ssr));
|
|
9129
9163
|
const state = vue.reactive({});
|
|
9130
9164
|
const width = vue.ref(getClientWidth(ssr));
|
|
9131
|
-
function
|
|
9165
|
+
function updateSize() {
|
|
9132
9166
|
height.value = getClientHeight();
|
|
9133
9167
|
width.value = getClientWidth();
|
|
9134
9168
|
}
|
|
9169
|
+
function update() {
|
|
9170
|
+
updateSize();
|
|
9171
|
+
platform.value = getPlatform();
|
|
9172
|
+
}
|
|
9135
9173
|
|
|
9136
9174
|
// eslint-disable-next-line max-statements
|
|
9137
9175
|
vue.watchEffect(() => {
|
|
@@ -9143,7 +9181,7 @@
|
|
|
9143
9181
|
const xxl = width.value >= thresholds.xxl;
|
|
9144
9182
|
const name = xs ? 'xs' : sm ? 'sm' : md ? 'md' : lg ? 'lg' : xl ? 'xl' : 'xxl';
|
|
9145
9183
|
const breakpointValue = typeof mobileBreakpoint === 'number' ? mobileBreakpoint : thresholds[mobileBreakpoint];
|
|
9146
|
-
const mobile =
|
|
9184
|
+
const mobile = width.value < breakpointValue;
|
|
9147
9185
|
state.xs = xs;
|
|
9148
9186
|
state.sm = sm;
|
|
9149
9187
|
state.md = md;
|
|
@@ -9163,11 +9201,11 @@
|
|
|
9163
9201
|
state.width = width.value;
|
|
9164
9202
|
state.mobile = mobile;
|
|
9165
9203
|
state.mobileBreakpoint = mobileBreakpoint;
|
|
9166
|
-
state.platform = platform;
|
|
9204
|
+
state.platform = platform.value;
|
|
9167
9205
|
state.thresholds = thresholds;
|
|
9168
9206
|
});
|
|
9169
9207
|
if (IN_BROWSER) {
|
|
9170
|
-
window.addEventListener('resize',
|
|
9208
|
+
window.addEventListener('resize', updateSize, {
|
|
9171
9209
|
passive: true
|
|
9172
9210
|
});
|
|
9173
9211
|
}
|
|
@@ -9232,7 +9270,7 @@
|
|
|
9232
9270
|
parent?.activeChildren.add(vm.uid);
|
|
9233
9271
|
vue.onScopeDispose(() => {
|
|
9234
9272
|
if (createStackEntry) {
|
|
9235
|
-
const idx = globalStack.findIndex(v => v[0] === vm.uid);
|
|
9273
|
+
const idx = vue.toRaw(globalStack).findIndex(v => v[0] === vm.uid);
|
|
9236
9274
|
globalStack.splice(idx, 1);
|
|
9237
9275
|
}
|
|
9238
9276
|
parent?.activeChildren.delete(vm.uid);
|
|
@@ -9655,17 +9693,17 @@
|
|
|
9655
9693
|
const id = vue.computed(() => props.id || `v-menu-${uid}`);
|
|
9656
9694
|
const overlay = vue.ref();
|
|
9657
9695
|
const parent = vue.inject(VMenuSymbol, null);
|
|
9658
|
-
|
|
9696
|
+
const openChildren = vue.ref(0);
|
|
9659
9697
|
vue.provide(VMenuSymbol, {
|
|
9660
9698
|
register() {
|
|
9661
|
-
++openChildren;
|
|
9699
|
+
++openChildren.value;
|
|
9662
9700
|
},
|
|
9663
9701
|
unregister() {
|
|
9664
|
-
--openChildren;
|
|
9702
|
+
--openChildren.value;
|
|
9665
9703
|
},
|
|
9666
9704
|
closeParents() {
|
|
9667
9705
|
setTimeout(() => {
|
|
9668
|
-
if (!openChildren) {
|
|
9706
|
+
if (!openChildren.value) {
|
|
9669
9707
|
isActive.value = false;
|
|
9670
9708
|
parent?.closeParents();
|
|
9671
9709
|
}
|
|
@@ -9709,7 +9747,8 @@
|
|
|
9709
9747
|
});
|
|
9710
9748
|
});
|
|
9711
9749
|
return forwardRefs({
|
|
9712
|
-
id
|
|
9750
|
+
id,
|
|
9751
|
+
ΨopenChildren: openChildren
|
|
9713
9752
|
}, overlay);
|
|
9714
9753
|
}
|
|
9715
9754
|
});
|
|
@@ -9769,7 +9808,15 @@
|
|
|
9769
9808
|
t
|
|
9770
9809
|
} = useLocale();
|
|
9771
9810
|
const vTextFieldRef = vue.ref();
|
|
9772
|
-
const
|
|
9811
|
+
const vMenuRef = vue.ref();
|
|
9812
|
+
const _menu = useProxiedModel(props, 'menu');
|
|
9813
|
+
const menu = vue.computed({
|
|
9814
|
+
get: () => _menu.value,
|
|
9815
|
+
set: v => {
|
|
9816
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
|
9817
|
+
_menu.value = v;
|
|
9818
|
+
}
|
|
9819
|
+
});
|
|
9773
9820
|
const {
|
|
9774
9821
|
items,
|
|
9775
9822
|
transformIn,
|
|
@@ -9876,6 +9923,7 @@
|
|
|
9876
9923
|
}), {
|
|
9877
9924
|
...slots,
|
|
9878
9925
|
default: () => vue.createVNode(vue.Fragment, null, [vue.createVNode(VMenu, vue.mergeProps({
|
|
9926
|
+
"ref": vMenuRef,
|
|
9879
9927
|
"modelValue": menu.value,
|
|
9880
9928
|
"onUpdate:modelValue": $event => menu.value = $event,
|
|
9881
9929
|
"activator": "parent",
|
|
@@ -10114,7 +10162,15 @@
|
|
|
10114
10162
|
const vTextFieldRef = vue.ref();
|
|
10115
10163
|
const isFocused = vue.ref(false);
|
|
10116
10164
|
const isPristine = vue.ref(true);
|
|
10117
|
-
const
|
|
10165
|
+
const vMenuRef = vue.ref();
|
|
10166
|
+
const _menu = useProxiedModel(props, 'menu');
|
|
10167
|
+
const menu = vue.computed({
|
|
10168
|
+
get: () => _menu.value,
|
|
10169
|
+
set: v => {
|
|
10170
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
|
10171
|
+
_menu.value = v;
|
|
10172
|
+
}
|
|
10173
|
+
});
|
|
10118
10174
|
const {
|
|
10119
10175
|
items,
|
|
10120
10176
|
transformIn,
|
|
@@ -10256,6 +10312,7 @@
|
|
|
10256
10312
|
}), {
|
|
10257
10313
|
...slots,
|
|
10258
10314
|
default: () => vue.createVNode(vue.Fragment, null, [vue.createVNode(VMenu, vue.mergeProps({
|
|
10315
|
+
"ref": vMenuRef,
|
|
10259
10316
|
"modelValue": menu.value,
|
|
10260
10317
|
"onUpdate:modelValue": $event => menu.value = $event,
|
|
10261
10318
|
"activator": "parent",
|
|
@@ -10632,6 +10689,9 @@
|
|
|
10632
10689
|
const {
|
|
10633
10690
|
roundedClasses
|
|
10634
10691
|
} = useRounded(props);
|
|
10692
|
+
const {
|
|
10693
|
+
ssrBootStyles
|
|
10694
|
+
} = useSsrBoot();
|
|
10635
10695
|
const height = vue.computed(() => Number(props.height) - (props.density === 'comfortable' ? 8 : 0) - (props.density === 'compact' ? 16 : 0));
|
|
10636
10696
|
const isActive = vue.toRef(props, 'active');
|
|
10637
10697
|
const {
|
|
@@ -10666,7 +10726,7 @@
|
|
|
10666
10726
|
"style": [backgroundColorStyles.value, layoutItemStyles.value, {
|
|
10667
10727
|
height: convertToUnit(height.value),
|
|
10668
10728
|
transform: `translateY(${convertToUnit(!isActive.value ? 100 : 0, '%')})`
|
|
10669
|
-
}]
|
|
10729
|
+
}, ssrBootStyles.value]
|
|
10670
10730
|
}, {
|
|
10671
10731
|
default: () => [slots.default && vue.createVNode("div", {
|
|
10672
10732
|
"class": "v-bottom-navigation__content"
|
|
@@ -11356,25 +11416,6 @@
|
|
|
11356
11416
|
}
|
|
11357
11417
|
});
|
|
11358
11418
|
|
|
11359
|
-
// Utilities
|
|
11360
|
-
|
|
11361
|
-
// Composables
|
|
11362
|
-
function useSsrBoot() {
|
|
11363
|
-
const isBooted = vue.ref(false);
|
|
11364
|
-
vue.onMounted(() => {
|
|
11365
|
-
window.requestAnimationFrame(() => {
|
|
11366
|
-
isBooted.value = true;
|
|
11367
|
-
});
|
|
11368
|
-
});
|
|
11369
|
-
const ssrBootStyles = vue.computed(() => !isBooted.value ? {
|
|
11370
|
-
transition: 'none !important'
|
|
11371
|
-
} : undefined);
|
|
11372
|
-
return {
|
|
11373
|
-
ssrBootStyles,
|
|
11374
|
-
isBooted: vue.readonly(isBooted)
|
|
11375
|
-
};
|
|
11376
|
-
}
|
|
11377
|
-
|
|
11378
11419
|
const VWindowItem = genericComponent()({
|
|
11379
11420
|
name: 'VWindowItem',
|
|
11380
11421
|
directives: {
|
|
@@ -11673,6 +11714,19 @@
|
|
|
11673
11714
|
};
|
|
11674
11715
|
});
|
|
11675
11716
|
const canvasRef = vue.ref();
|
|
11717
|
+
const canvasWidth = vue.ref(parseFloat(props.width));
|
|
11718
|
+
const canvasHeight = vue.ref(parseFloat(props.height));
|
|
11719
|
+
const {
|
|
11720
|
+
resizeRef
|
|
11721
|
+
} = useResizeObserver(entries => {
|
|
11722
|
+
if (!resizeRef.value?.offsetParent) return;
|
|
11723
|
+
const {
|
|
11724
|
+
width,
|
|
11725
|
+
height
|
|
11726
|
+
} = entries[0].contentRect;
|
|
11727
|
+
canvasWidth.value = width;
|
|
11728
|
+
canvasHeight.value = height;
|
|
11729
|
+
});
|
|
11676
11730
|
function updateDotPosition(x, y, rect) {
|
|
11677
11731
|
const {
|
|
11678
11732
|
left,
|
|
@@ -11717,18 +11771,14 @@
|
|
|
11717
11771
|
return;
|
|
11718
11772
|
}
|
|
11719
11773
|
if (!canvasRef.value) return;
|
|
11720
|
-
const {
|
|
11721
|
-
width,
|
|
11722
|
-
height
|
|
11723
|
-
} = canvasRef.value.getBoundingClientRect();
|
|
11724
11774
|
const {
|
|
11725
11775
|
x,
|
|
11726
11776
|
y
|
|
11727
11777
|
} = dotPosition.value;
|
|
11728
11778
|
emit('update:color', {
|
|
11729
11779
|
h: props.color?.h ?? 0,
|
|
11730
|
-
s: clamp(x, 0,
|
|
11731
|
-
v: 1 - clamp(y, 0,
|
|
11780
|
+
s: clamp(x, 0, canvasWidth.value) / canvasWidth.value,
|
|
11781
|
+
v: 1 - clamp(y, 0, canvasHeight.value) / canvasHeight.value,
|
|
11732
11782
|
a: props.color?.a ?? 1
|
|
11733
11783
|
});
|
|
11734
11784
|
});
|
|
@@ -11751,16 +11801,27 @@
|
|
|
11751
11801
|
vue.watch(() => props.color?.h, updateCanvas, {
|
|
11752
11802
|
immediate: true
|
|
11753
11803
|
});
|
|
11804
|
+
vue.watch(() => [canvasWidth.value, canvasHeight.value], (newVal, oldVal) => {
|
|
11805
|
+
updateCanvas();
|
|
11806
|
+
dotPosition.value = {
|
|
11807
|
+
x: dotPosition.value.x * newVal[0] / oldVal[0],
|
|
11808
|
+
y: dotPosition.value.y * newVal[1] / oldVal[1]
|
|
11809
|
+
};
|
|
11810
|
+
}, {
|
|
11811
|
+
flush: 'post'
|
|
11812
|
+
});
|
|
11754
11813
|
vue.watch(() => props.color, () => {
|
|
11755
11814
|
if (isInteracting.value) {
|
|
11756
11815
|
isInteracting.value = false;
|
|
11757
11816
|
return;
|
|
11758
11817
|
}
|
|
11759
|
-
if (!props.color) return;
|
|
11760
11818
|
isOutsideUpdate.value = true;
|
|
11761
|
-
dotPosition.value = {
|
|
11762
|
-
x: props.color.s *
|
|
11763
|
-
y: (1 - props.color.v) *
|
|
11819
|
+
dotPosition.value = props.color ? {
|
|
11820
|
+
x: props.color.s * canvasWidth.value,
|
|
11821
|
+
y: (1 - props.color.v) * canvasHeight.value
|
|
11822
|
+
} : {
|
|
11823
|
+
x: 0,
|
|
11824
|
+
y: 0
|
|
11764
11825
|
};
|
|
11765
11826
|
}, {
|
|
11766
11827
|
deep: true,
|
|
@@ -11768,19 +11829,16 @@
|
|
|
11768
11829
|
});
|
|
11769
11830
|
vue.onMounted(() => updateCanvas());
|
|
11770
11831
|
useRender(() => vue.createVNode("div", {
|
|
11832
|
+
"ref": resizeRef,
|
|
11771
11833
|
"class": "v-color-picker-canvas",
|
|
11772
|
-
"style": {
|
|
11773
|
-
width: convertToUnit(props.width),
|
|
11774
|
-
height: convertToUnit(props.height)
|
|
11775
|
-
},
|
|
11776
11834
|
"onClick": handleClick,
|
|
11777
11835
|
"onMousedown": handleMouseDown,
|
|
11778
11836
|
"onTouchstart": handleMouseDown
|
|
11779
11837
|
}, [vue.createVNode("canvas", {
|
|
11780
11838
|
"ref": canvasRef,
|
|
11781
|
-
"width":
|
|
11782
|
-
"height":
|
|
11783
|
-
}, null), vue.createVNode("div", {
|
|
11839
|
+
"width": canvasWidth.value,
|
|
11840
|
+
"height": canvasHeight.value
|
|
11841
|
+
}, null), props.color && vue.createVNode("div", {
|
|
11784
11842
|
"class": ['v-color-picker-canvas__dot', {
|
|
11785
11843
|
'v-color-picker-canvas__dot--disabled': props.disabled
|
|
11786
11844
|
}],
|
|
@@ -11813,10 +11871,7 @@
|
|
|
11813
11871
|
hsva = color;
|
|
11814
11872
|
}
|
|
11815
11873
|
}
|
|
11816
|
-
return hsva
|
|
11817
|
-
...hsva,
|
|
11818
|
-
a: hsva.a ?? 1
|
|
11819
|
-
} : null;
|
|
11874
|
+
return hsva;
|
|
11820
11875
|
}
|
|
11821
11876
|
function stripAlpha(color, stripAlpha) {
|
|
11822
11877
|
if (stripAlpha) {
|
|
@@ -11836,7 +11891,7 @@
|
|
|
11836
11891
|
if (typeof input === 'object') {
|
|
11837
11892
|
let converted;
|
|
11838
11893
|
if (has(input, ['r', 'g', 'b'])) converted = HSVtoRGB(color);else if (has(input, ['h', 's', 'l'])) converted = HSVtoHSL(color);else if (has(input, ['h', 's', 'v'])) converted = color;
|
|
11839
|
-
return stripAlpha(converted, !has(input, ['a']));
|
|
11894
|
+
return stripAlpha(converted, !has(input, ['a']) && color.a === 1);
|
|
11840
11895
|
}
|
|
11841
11896
|
return color;
|
|
11842
11897
|
}
|
|
@@ -12027,7 +12082,7 @@
|
|
|
12027
12082
|
const inputs = vue.computed(() => {
|
|
12028
12083
|
const mode = enabledModes.value.find(m => m.name === props.mode);
|
|
12029
12084
|
if (!mode) return [];
|
|
12030
|
-
const color = props.color ? mode.to(props.color) :
|
|
12085
|
+
const color = props.color ? mode.to(props.color) : null;
|
|
12031
12086
|
return mode.inputs?.map(_ref3 => {
|
|
12032
12087
|
let {
|
|
12033
12088
|
getValue,
|
|
@@ -12038,11 +12093,11 @@
|
|
|
12038
12093
|
...mode.inputProps,
|
|
12039
12094
|
...inputProps,
|
|
12040
12095
|
disabled: props.disabled,
|
|
12041
|
-
value: getValue(color),
|
|
12096
|
+
value: color && getValue(color),
|
|
12042
12097
|
onChange: e => {
|
|
12043
12098
|
const target = e.target;
|
|
12044
12099
|
if (!target) return;
|
|
12045
|
-
emit('update:color', mode.from(getColor(color, target.value)));
|
|
12100
|
+
emit('update:color', mode.from(getColor(color ?? nullColor, target.value)));
|
|
12046
12101
|
}
|
|
12047
12102
|
};
|
|
12048
12103
|
});
|
|
@@ -12741,12 +12796,12 @@
|
|
|
12741
12796
|
"hideDetails": true
|
|
12742
12797
|
}, null), !props.hideAlpha && vue.createVNode(VSlider, {
|
|
12743
12798
|
"class": "v-color-picker-preview__track v-color-picker-preview__alpha",
|
|
12744
|
-
"modelValue": props.color?.a,
|
|
12799
|
+
"modelValue": props.color?.a ?? 1,
|
|
12745
12800
|
"onUpdate:modelValue": a => emit('update:color', {
|
|
12746
12801
|
...(props.color ?? nullColor),
|
|
12747
12802
|
a
|
|
12748
12803
|
}),
|
|
12749
|
-
"step":
|
|
12804
|
+
"step": 1 / 256,
|
|
12750
12805
|
"min": 0,
|
|
12751
12806
|
"max": 1,
|
|
12752
12807
|
"disabled": props.disabled,
|
|
@@ -13131,18 +13186,23 @@
|
|
|
13131
13186
|
}
|
|
13132
13187
|
});
|
|
13133
13188
|
|
|
13189
|
+
// Types
|
|
13190
|
+
|
|
13191
|
+
const makeVSheetProps = propsFactory({
|
|
13192
|
+
color: String,
|
|
13193
|
+
...makeBorderProps(),
|
|
13194
|
+
...makeDimensionProps(),
|
|
13195
|
+
...makeElevationProps(),
|
|
13196
|
+
...makeLocationProps(),
|
|
13197
|
+
...makePositionProps(),
|
|
13198
|
+
...makeRoundedProps(),
|
|
13199
|
+
...makeTagProps(),
|
|
13200
|
+
...makeThemeProps()
|
|
13201
|
+
}, 'v-sheet');
|
|
13134
13202
|
const VSheet = genericComponent()({
|
|
13135
13203
|
name: 'VSheet',
|
|
13136
13204
|
props: {
|
|
13137
|
-
|
|
13138
|
-
...makeBorderProps(),
|
|
13139
|
-
...makeDimensionProps(),
|
|
13140
|
-
...makeElevationProps(),
|
|
13141
|
-
...makeLocationProps(),
|
|
13142
|
-
...makePositionProps(),
|
|
13143
|
-
...makeRoundedProps(),
|
|
13144
|
-
...makeTagProps(),
|
|
13145
|
-
...makeThemeProps()
|
|
13205
|
+
...makeVSheetProps()
|
|
13146
13206
|
},
|
|
13147
13207
|
setup(props, _ref) {
|
|
13148
13208
|
let {
|
|
@@ -13173,10 +13233,11 @@
|
|
|
13173
13233
|
const {
|
|
13174
13234
|
roundedClasses
|
|
13175
13235
|
} = useRounded(props);
|
|
13176
|
-
|
|
13236
|
+
useRender(() => vue.createVNode(props.tag, {
|
|
13177
13237
|
"class": ['v-sheet', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value],
|
|
13178
13238
|
"style": [backgroundColorStyles.value, dimensionStyles.value, locationStyles.value]
|
|
13179
|
-
}, slots);
|
|
13239
|
+
}, slots));
|
|
13240
|
+
return {};
|
|
13180
13241
|
}
|
|
13181
13242
|
});
|
|
13182
13243
|
|
|
@@ -13253,6 +13314,13 @@
|
|
|
13253
13314
|
vue.onMounted(() => {
|
|
13254
13315
|
if (!props.modes.includes(mode.value)) mode.value = props.modes[0];
|
|
13255
13316
|
});
|
|
13317
|
+
provideDefaults({
|
|
13318
|
+
VSlider: {
|
|
13319
|
+
color: undefined,
|
|
13320
|
+
trackColor: undefined,
|
|
13321
|
+
trackFillColor: undefined
|
|
13322
|
+
}
|
|
13323
|
+
});
|
|
13256
13324
|
useRender(() => vue.createVNode(VSheet, {
|
|
13257
13325
|
"rounded": props.rounded,
|
|
13258
13326
|
"elevation": props.elevation,
|
|
@@ -13353,7 +13421,15 @@
|
|
|
13353
13421
|
const vTextFieldRef = vue.ref();
|
|
13354
13422
|
const isFocused = vue.ref(false);
|
|
13355
13423
|
const isPristine = vue.ref(true);
|
|
13356
|
-
const
|
|
13424
|
+
const vMenuRef = vue.ref();
|
|
13425
|
+
const _menu = useProxiedModel(props, 'menu');
|
|
13426
|
+
const menu = vue.computed({
|
|
13427
|
+
get: () => _menu.value,
|
|
13428
|
+
set: v => {
|
|
13429
|
+
if (_menu.value && !v && vMenuRef.value?.ΨopenChildren) return;
|
|
13430
|
+
_menu.value = v;
|
|
13431
|
+
}
|
|
13432
|
+
});
|
|
13357
13433
|
const selectionIndex = vue.ref(-1);
|
|
13358
13434
|
const color = vue.computed(() => vTextFieldRef.value?.color);
|
|
13359
13435
|
const {
|
|
@@ -13562,6 +13638,7 @@
|
|
|
13562
13638
|
}), {
|
|
13563
13639
|
...slots,
|
|
13564
13640
|
default: () => vue.createVNode(vue.Fragment, null, [vue.createVNode(VMenu, vue.mergeProps({
|
|
13641
|
+
"ref": vMenuRef,
|
|
13565
13642
|
"modelValue": menu.value,
|
|
13566
13643
|
"onUpdate:modelValue": $event => menu.value = $event,
|
|
13567
13644
|
"activator": "parent",
|
|
@@ -14141,6 +14218,7 @@
|
|
|
14141
14218
|
"id": id.value,
|
|
14142
14219
|
"active": isDirty.value || isFocused.value,
|
|
14143
14220
|
"dirty": isDirty.value,
|
|
14221
|
+
"disabled": isDisabled.value,
|
|
14144
14222
|
"focused": isFocused.value,
|
|
14145
14223
|
"error": isValid.value === false
|
|
14146
14224
|
}), {
|
|
@@ -16160,9 +16238,6 @@
|
|
|
16160
16238
|
const range = vue.computed(() => createRange(Number(props.length), 1));
|
|
16161
16239
|
const increments = vue.computed(() => range.value.flatMap(v => props.halfIncrements ? [v - 0.5, v] : [v]));
|
|
16162
16240
|
const hoverIndex = vue.ref(-1);
|
|
16163
|
-
const focusIndex = vue.ref(-1);
|
|
16164
|
-
const firstRef = vue.ref();
|
|
16165
|
-
let isClicking = false;
|
|
16166
16241
|
const itemState = vue.computed(() => increments.value.map(value => {
|
|
16167
16242
|
const isHovering = props.hover && hoverIndex.value > -1;
|
|
16168
16243
|
const isFilled = normalizedValue.value >= value;
|
|
@@ -16185,16 +16260,6 @@
|
|
|
16185
16260
|
function onMouseleave() {
|
|
16186
16261
|
hoverIndex.value = -1;
|
|
16187
16262
|
}
|
|
16188
|
-
function onFocus() {
|
|
16189
|
-
if (value === 0 && normalizedValue.value === 0) {
|
|
16190
|
-
firstRef.value?.focus();
|
|
16191
|
-
} else {
|
|
16192
|
-
focusIndex.value = value;
|
|
16193
|
-
}
|
|
16194
|
-
}
|
|
16195
|
-
function onBlur() {
|
|
16196
|
-
if (!isClicking) focusIndex.value = -1;
|
|
16197
|
-
}
|
|
16198
16263
|
function onClick() {
|
|
16199
16264
|
if (props.disabled || props.readonly) return;
|
|
16200
16265
|
rating.value = normalizedValue.value === value && props.clearable ? 0 : value;
|
|
@@ -16202,17 +16267,9 @@
|
|
|
16202
16267
|
return {
|
|
16203
16268
|
onMouseenter: props.hover ? onMouseenter : undefined,
|
|
16204
16269
|
onMouseleave: props.hover ? onMouseleave : undefined,
|
|
16205
|
-
onFocus,
|
|
16206
|
-
onBlur,
|
|
16207
16270
|
onClick
|
|
16208
16271
|
};
|
|
16209
16272
|
}));
|
|
16210
|
-
function onMousedown() {
|
|
16211
|
-
isClicking = true;
|
|
16212
|
-
}
|
|
16213
|
-
function onMouseup() {
|
|
16214
|
-
isClicking = false;
|
|
16215
|
-
}
|
|
16216
16273
|
const name = vue.computed(() => props.name ?? `v-rating-${getUid()}`);
|
|
16217
16274
|
function VRatingItem(_ref2) {
|
|
16218
16275
|
let {
|
|
@@ -16223,8 +16280,6 @@
|
|
|
16223
16280
|
const {
|
|
16224
16281
|
onMouseenter,
|
|
16225
16282
|
onMouseleave,
|
|
16226
|
-
onFocus,
|
|
16227
|
-
onBlur,
|
|
16228
16283
|
onClick
|
|
16229
16284
|
} = eventState.value[index + 1];
|
|
16230
16285
|
const id = `${name.value}-${String(value).replace('.', '-')}`;
|
|
@@ -16235,7 +16290,6 @@
|
|
|
16235
16290
|
icon: itemState.value[index]?.icon,
|
|
16236
16291
|
ripple: props.ripple,
|
|
16237
16292
|
size: props.size,
|
|
16238
|
-
tag: 'span',
|
|
16239
16293
|
variant: 'plain'
|
|
16240
16294
|
};
|
|
16241
16295
|
return vue.createVNode(vue.Fragment, null, [vue.createVNode("label", {
|
|
@@ -16244,17 +16298,17 @@
|
|
|
16244
16298
|
'v-rating__item--half': props.halfIncrements && value % 1 > 0,
|
|
16245
16299
|
'v-rating__item--full': props.halfIncrements && value % 1 === 0
|
|
16246
16300
|
},
|
|
16247
|
-
"onMousedown": onMousedown,
|
|
16248
|
-
"onMouseup": onMouseup,
|
|
16249
16301
|
"onMouseenter": onMouseenter,
|
|
16250
|
-
"onMouseleave": onMouseleave
|
|
16302
|
+
"onMouseleave": onMouseleave,
|
|
16303
|
+
"onClick": onClick
|
|
16251
16304
|
}, [vue.createVNode("span", {
|
|
16252
16305
|
"class": "v-rating__hidden"
|
|
16253
16306
|
}, [t(props.itemAriaLabel, value, props.length)]), !showStar ? undefined : slots.item ? slots.item({
|
|
16254
16307
|
...itemState.value[index],
|
|
16255
16308
|
props: btnProps,
|
|
16256
16309
|
value,
|
|
16257
|
-
index
|
|
16310
|
+
index,
|
|
16311
|
+
rating: normalizedValue.value
|
|
16258
16312
|
}) : vue.createVNode(VBtn, btnProps, null)]), vue.createVNode("input", {
|
|
16259
16313
|
"class": "v-rating__hidden",
|
|
16260
16314
|
"name": name.value,
|
|
@@ -16262,10 +16316,7 @@
|
|
|
16262
16316
|
"type": "radio",
|
|
16263
16317
|
"value": value,
|
|
16264
16318
|
"checked": normalizedValue.value === value,
|
|
16265
|
-
"
|
|
16266
|
-
"onFocus": onFocus,
|
|
16267
|
-
"onBlur": onBlur,
|
|
16268
|
-
"ref": index === 0 ? firstRef : undefined,
|
|
16319
|
+
"tabindex": -1,
|
|
16269
16320
|
"readonly": props.readonly,
|
|
16270
16321
|
"disabled": props.disabled
|
|
16271
16322
|
}, null)]);
|
|
@@ -16294,9 +16345,7 @@
|
|
|
16294
16345
|
index: i,
|
|
16295
16346
|
label: props.itemLabels?.[i]
|
|
16296
16347
|
}) : undefined, vue.createVNode("div", {
|
|
16297
|
-
"class":
|
|
16298
|
-
'v-rating__item--focused': Math.ceil(focusIndex.value) === value
|
|
16299
|
-
}]
|
|
16348
|
+
"class": "v-rating__item"
|
|
16300
16349
|
}, [props.halfIncrements ? vue.createVNode(vue.Fragment, null, [vue.createVNode(VRatingItem, {
|
|
16301
16350
|
"value": value - 0.5,
|
|
16302
16351
|
"index": i * 2
|
|
@@ -16777,19 +16826,17 @@
|
|
|
16777
16826
|
"modelValue": isActive.value,
|
|
16778
16827
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
16779
16828
|
"contentProps": vue.mergeProps({
|
|
16780
|
-
|
|
16829
|
+
class: ['v-snackbar__wrapper', themeClasses.value, colorClasses.value, roundedClasses.value, variantClasses.value],
|
|
16830
|
+
style: [locationStyles.value, colorStyles.value],
|
|
16831
|
+
onPointerenter,
|
|
16832
|
+
onPointerleave: startTimeout
|
|
16781
16833
|
}, overlayProps.contentProps),
|
|
16782
16834
|
"persistent": true,
|
|
16783
16835
|
"noClickAnimation": true,
|
|
16784
16836
|
"scrim": false,
|
|
16785
16837
|
"scrollStrategy": "none"
|
|
16786
16838
|
}, scopeId), {
|
|
16787
|
-
default: () => [vue.createVNode("div", {
|
|
16788
|
-
"class": ['v-snackbar__wrapper', themeClasses.value, colorClasses.value, roundedClasses.value, variantClasses.value],
|
|
16789
|
-
"style": [colorStyles.value],
|
|
16790
|
-
"onPointerenter": onPointerenter,
|
|
16791
|
-
"onPointerleave": startTimeout
|
|
16792
|
-
}, [genOverlays(false, 'v-snackbar'), slots.default && vue.createVNode("div", {
|
|
16839
|
+
default: () => [genOverlays(false, 'v-snackbar'), slots.default && vue.createVNode("div", {
|
|
16793
16840
|
"class": "v-snackbar__content",
|
|
16794
16841
|
"role": "status",
|
|
16795
16842
|
"aria-live": "polite"
|
|
@@ -16804,7 +16851,7 @@
|
|
|
16804
16851
|
default: () => [vue.createVNode("div", {
|
|
16805
16852
|
"class": "v-snackbar__actions"
|
|
16806
16853
|
}, [slots.actions()])]
|
|
16807
|
-
})]
|
|
16854
|
+
})],
|
|
16808
16855
|
activator: slots.activator
|
|
16809
16856
|
});
|
|
16810
16857
|
});
|
|
@@ -16963,6 +17010,9 @@
|
|
|
16963
17010
|
const {
|
|
16964
17011
|
roundedClasses
|
|
16965
17012
|
} = useRounded(props);
|
|
17013
|
+
const {
|
|
17014
|
+
ssrBootStyles
|
|
17015
|
+
} = useSsrBoot();
|
|
16966
17016
|
const height = vue.computed(() => props.height ?? (props.window ? 32 : 24));
|
|
16967
17017
|
const {
|
|
16968
17018
|
layoutItemStyles
|
|
@@ -16979,7 +17029,7 @@
|
|
|
16979
17029
|
"class": ['v-system-bar', {
|
|
16980
17030
|
'v-system-bar--window': props.window
|
|
16981
17031
|
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value, roundedClasses.value],
|
|
16982
|
-
"style": [backgroundColorStyles.value, layoutItemStyles.value]
|
|
17032
|
+
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value]
|
|
16983
17033
|
}, slots));
|
|
16984
17034
|
return {};
|
|
16985
17035
|
}
|
|
@@ -17403,6 +17453,7 @@
|
|
|
17403
17453
|
}, fieldProps, {
|
|
17404
17454
|
"active": isActive.value || isDirty.value,
|
|
17405
17455
|
"dirty": isDirty.value || props.dirty,
|
|
17456
|
+
"disabled": isDisabled.value,
|
|
17406
17457
|
"focused": isFocused.value,
|
|
17407
17458
|
"error": isValid.value === false
|
|
17408
17459
|
}), {
|
|
@@ -17712,6 +17763,7 @@
|
|
|
17712
17763
|
closeOnBack: false,
|
|
17713
17764
|
location: 'end',
|
|
17714
17765
|
locationStrategy: 'connected',
|
|
17766
|
+
eager: true,
|
|
17715
17767
|
minWidth: 0,
|
|
17716
17768
|
offset: 10,
|
|
17717
17769
|
openOnClick: false,
|
|
@@ -17720,7 +17772,7 @@
|
|
|
17720
17772
|
scrim: false,
|
|
17721
17773
|
scrollStrategy: 'reposition',
|
|
17722
17774
|
transition: false
|
|
17723
|
-
}), ['absolute', 'persistent'
|
|
17775
|
+
}), ['absolute', 'persistent'])
|
|
17724
17776
|
},
|
|
17725
17777
|
emits: {
|
|
17726
17778
|
'update:modelValue': value => true
|
|
@@ -17764,7 +17816,6 @@
|
|
|
17764
17816
|
"origin": origin.value,
|
|
17765
17817
|
"persistent": true,
|
|
17766
17818
|
"role": "tooltip",
|
|
17767
|
-
"eager": true,
|
|
17768
17819
|
"activatorProps": activatorProps.value,
|
|
17769
17820
|
"_disableGlobalStack": true
|
|
17770
17821
|
}, scopeId), {
|
|
@@ -18143,7 +18194,7 @@
|
|
|
18143
18194
|
locale
|
|
18144
18195
|
};
|
|
18145
18196
|
}
|
|
18146
|
-
const version$1 = "3.2.0-dev-
|
|
18197
|
+
const version$1 = "3.2.0-dev-20230309.0";
|
|
18147
18198
|
createVuetify$1.version = version$1;
|
|
18148
18199
|
|
|
18149
18200
|
// Vue's inject() can only be used in setup
|
|
@@ -18163,7 +18214,7 @@
|
|
|
18163
18214
|
...options
|
|
18164
18215
|
});
|
|
18165
18216
|
};
|
|
18166
|
-
const version = "3.2.0-dev-
|
|
18217
|
+
const version = "3.2.0-dev-20230309.0";
|
|
18167
18218
|
createVuetify.version = version;
|
|
18168
18219
|
|
|
18169
18220
|
exports.components = components;
|