vuetify 3.0.3 → 3.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/json/attributes.json +882 -882
- package/dist/json/importMap.json +30 -30
- package/dist/json/web-types.json +1102 -1091
- package/dist/vuetify.css +11 -13
- package/dist/vuetify.d.ts +71 -69
- package/dist/vuetify.esm.js +165 -137
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +165 -137
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +693 -689
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/index.d.ts +1 -1
- package/lib/components/VAutocomplete/index.d.ts +16 -16
- package/lib/components/VCheckbox/VCheckbox.css +1 -1
- package/lib/components/VCheckbox/VCheckbox.sass +1 -1
- package/lib/components/VChip/VChip.mjs +14 -6
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.ts +3 -1
- package/lib/components/VChipGroup/index.d.ts +1 -1
- package/lib/components/VColorPicker/VColorPicker.mjs +2 -2
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- 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 +24 -14
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +16 -16
- package/lib/components/VExpansionPanel/index.d.ts +1 -1
- package/lib/components/VFileInput/index.d.ts +1 -1
- package/lib/components/VGrid/VGrid.css +2 -2
- package/lib/components/VGrid/VGrid.sass +1 -1
- package/lib/components/VList/VListItem.mjs +2 -1
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs +1 -2
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +16 -16
- package/lib/components/VSelectionControl/VSelectionControl.css +4 -0
- package/lib/components/VSelectionControl/VSelectionControl.sass +4 -0
- package/lib/components/VSnackbar/index.d.ts +4 -4
- package/lib/components/VSwitch/VSwitch.css +1 -1
- package/lib/components/VSwitch/VSwitch.sass +1 -1
- package/lib/components/VSystemBar/VSystemBar.css +1 -1
- package/lib/components/VSystemBar/_variables.scss +1 -1
- package/lib/components/VTabs/VTab.css +1 -3
- package/lib/components/VTabs/VTab.sass +1 -4
- package/lib/components/VTabs/VTabs.css +0 -4
- package/lib/components/VTabs/VTabs.sass +0 -5
- package/lib/components/VToolbar/VToolbar.mjs +32 -22
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/index.d.ts +60 -58
- package/lib/composables/theme.mjs +7 -7
- 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 +1 -1
- package/lib/index.d.ts +11 -11
- package/lib/util/color/APCA.mjs +6 -6
- package/lib/util/color/APCA.mjs.map +1 -1
- package/lib/util/color/transformSRGB.mjs +15 -7
- package/lib/util/color/transformSRGB.mjs.map +1 -1
- package/lib/util/colorUtils.mjs +64 -81
- package/lib/util/colorUtils.mjs.map +1 -1
- package/package.json +2 -2
package/dist/vuetify.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.0.
|
|
2
|
+
* Vuetify v3.0.4
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -595,21 +595,29 @@ function fromXYZ$1(xyz) {
|
|
|
595
595
|
|
|
596
596
|
// Matrix transform, then gamma adjustment
|
|
597
597
|
for (let i = 0; i < 3; ++i) {
|
|
598
|
+
// Rescale back to [0, 255]
|
|
598
599
|
rgb[i] = Math.round(clamp(transform(matrix[i][0] * xyz[0] + matrix[i][1] * xyz[1] + matrix[i][2] * xyz[2])) * 255);
|
|
599
600
|
}
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
601
|
+
return {
|
|
602
|
+
r: rgb[0],
|
|
603
|
+
g: rgb[1],
|
|
604
|
+
b: rgb[2]
|
|
605
|
+
};
|
|
603
606
|
}
|
|
604
|
-
function toXYZ$1(
|
|
607
|
+
function toXYZ$1(_ref) {
|
|
608
|
+
let {
|
|
609
|
+
r,
|
|
610
|
+
g,
|
|
611
|
+
b
|
|
612
|
+
} = _ref;
|
|
605
613
|
const xyz = [0, 0, 0];
|
|
606
614
|
const transform = srgbReverseTransform;
|
|
607
615
|
const matrix = srgbReverseMatrix;
|
|
608
616
|
|
|
609
617
|
// Rescale from [0, 255] to [0, 1] then adjust sRGB gamma to linear RGB
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
618
|
+
r = transform(r / 255);
|
|
619
|
+
g = transform(g / 255);
|
|
620
|
+
b = transform(b / 255);
|
|
613
621
|
|
|
614
622
|
// Matrix color space transform
|
|
615
623
|
for (let i = 0; i < 3; ++i) {
|
|
@@ -640,43 +648,36 @@ function toXYZ(lab) {
|
|
|
640
648
|
function isCssColor(color) {
|
|
641
649
|
return !!color && /^(#|var\(--|(rgb|hsl)a?\()/.test(color);
|
|
642
650
|
}
|
|
643
|
-
function
|
|
644
|
-
let rgb;
|
|
651
|
+
function parseColor$1(color) {
|
|
645
652
|
if (typeof color === 'number') {
|
|
646
|
-
|
|
653
|
+
if (isNaN(color) || color < 0 || color > 0xFFFFFF) {
|
|
654
|
+
// int can't have opacity
|
|
655
|
+
consoleWarn(`'${color}' is not a valid hex color`);
|
|
656
|
+
}
|
|
657
|
+
return {
|
|
658
|
+
r: (color & 0xFF0000) >> 16,
|
|
659
|
+
g: (color & 0xFF00) >> 8,
|
|
660
|
+
b: color & 0xFF
|
|
661
|
+
};
|
|
647
662
|
} else if (typeof color === 'string') {
|
|
648
|
-
let
|
|
649
|
-
if (
|
|
650
|
-
|
|
663
|
+
let hex = color.startsWith('#') ? color.slice(1) : color;
|
|
664
|
+
if ([3, 4].includes(hex.length)) {
|
|
665
|
+
hex = hex.split('').map(char => char + char).join('');
|
|
666
|
+
} else if (![6, 8].includes(hex.length)) {
|
|
667
|
+
consoleWarn(`'${color}' is not a valid hex(a) color`);
|
|
651
668
|
}
|
|
652
|
-
|
|
653
|
-
|
|
669
|
+
const int = parseInt(hex, 16);
|
|
670
|
+
if (isNaN(int) || int < 0 || int > 0xFFFFFFFF) {
|
|
671
|
+
consoleWarn(`'${color}' is not a valid hex(a) color`);
|
|
654
672
|
}
|
|
655
|
-
|
|
673
|
+
return HexToRGB(hex);
|
|
656
674
|
} else {
|
|
657
675
|
throw new TypeError(`Colors can only be numbers or strings, recieved ${color == null ? color : color.constructor.name} instead`);
|
|
658
676
|
}
|
|
659
|
-
if (rgb < 0) {
|
|
660
|
-
consoleWarn(`Colors cannot be negative: '${color}'`);
|
|
661
|
-
rgb = 0;
|
|
662
|
-
} else if (rgb > 0xffffffff || isNaN(rgb)) {
|
|
663
|
-
consoleWarn(`'${color}' is not a valid rgb color`);
|
|
664
|
-
rgb = 0xffffff;
|
|
665
|
-
}
|
|
666
|
-
return rgb;
|
|
667
|
-
}
|
|
668
|
-
function intToHex(color) {
|
|
669
|
-
let hexColor = color.toString(16);
|
|
670
|
-
if (hexColor.length < 6) hexColor = '0'.repeat(6 - hexColor.length) + hexColor;
|
|
671
|
-
return '#' + hexColor;
|
|
672
677
|
}
|
|
673
678
|
|
|
674
|
-
/**
|
|
675
|
-
|
|
676
|
-
*
|
|
677
|
-
* @param color HSVA color as an array [0-360, 0-1, 0-1, 0-1]
|
|
678
|
-
*/
|
|
679
|
-
function HSVAtoRGBA(hsva) {
|
|
679
|
+
/** Converts HSVA to RGBA. Based on formula from https://en.wikipedia.org/wiki/HSL_and_HSV */
|
|
680
|
+
function HSVtoRGB(hsva) {
|
|
680
681
|
const {
|
|
681
682
|
h,
|
|
682
683
|
s,
|
|
@@ -696,12 +697,8 @@ function HSVAtoRGBA(hsva) {
|
|
|
696
697
|
};
|
|
697
698
|
}
|
|
698
699
|
|
|
699
|
-
/**
|
|
700
|
-
|
|
701
|
-
*
|
|
702
|
-
* @param color RGBA color as an array [0-255, 0-255, 0-255, 0-1]
|
|
703
|
-
*/
|
|
704
|
-
function RGBAtoHSVA(rgba) {
|
|
700
|
+
/** Converts RGBA to HSVA. Based on formula from https://en.wikipedia.org/wiki/HSL_and_HSV */
|
|
701
|
+
function RGBtoHSV(rgba) {
|
|
705
702
|
if (!rgba) return {
|
|
706
703
|
h: 0,
|
|
707
704
|
s: 1,
|
|
@@ -733,7 +730,7 @@ function RGBAtoHSVA(rgba) {
|
|
|
733
730
|
a: rgba.a
|
|
734
731
|
};
|
|
735
732
|
}
|
|
736
|
-
function
|
|
733
|
+
function HSVtoHSL(hsva) {
|
|
737
734
|
const {
|
|
738
735
|
h,
|
|
739
736
|
s,
|
|
@@ -749,7 +746,7 @@ function HSVAtoHSLA(hsva) {
|
|
|
749
746
|
a
|
|
750
747
|
};
|
|
751
748
|
}
|
|
752
|
-
function
|
|
749
|
+
function HSLtoHSV(hsl) {
|
|
753
750
|
const {
|
|
754
751
|
h,
|
|
755
752
|
s,
|
|
@@ -765,34 +762,47 @@ function HSLAtoHSVA(hsl) {
|
|
|
765
762
|
a
|
|
766
763
|
};
|
|
767
764
|
}
|
|
768
|
-
function
|
|
769
|
-
|
|
765
|
+
function RGBtoCSS(_ref) {
|
|
766
|
+
let {
|
|
767
|
+
r,
|
|
768
|
+
g,
|
|
769
|
+
b,
|
|
770
|
+
a
|
|
771
|
+
} = _ref;
|
|
772
|
+
return a === undefined ? `rgb(${r}, ${g}, ${b})` : `rgba(${r}, ${g}, ${b}, ${a})`;
|
|
773
|
+
}
|
|
774
|
+
function HSVtoCSS(hsva) {
|
|
775
|
+
return RGBtoCSS(HSVtoRGB(hsva));
|
|
770
776
|
}
|
|
771
|
-
function
|
|
772
|
-
|
|
777
|
+
function toHex(v) {
|
|
778
|
+
const h = Math.round(v).toString(16);
|
|
779
|
+
return ('00'.substr(0, 2 - h.length) + h).toUpperCase();
|
|
773
780
|
}
|
|
774
|
-
function
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
781
|
+
function RGBtoHex(_ref2) {
|
|
782
|
+
let {
|
|
783
|
+
r,
|
|
784
|
+
g,
|
|
785
|
+
b,
|
|
786
|
+
a
|
|
787
|
+
} = _ref2;
|
|
788
|
+
return `#${[toHex(r), toHex(g), toHex(b), a !== undefined ? toHex(Math.round(a * 255)) : 'FF'].join('')}`;
|
|
780
789
|
}
|
|
781
|
-
function
|
|
782
|
-
|
|
790
|
+
function HexToRGB(hex) {
|
|
791
|
+
let [r, g, b, a] = chunk(hex, 2).map(c => parseInt(c, 16));
|
|
792
|
+
a = a === undefined ? a : Math.round(a / 255 * 100) / 100;
|
|
783
793
|
return {
|
|
784
|
-
r
|
|
785
|
-
g
|
|
786
|
-
b
|
|
787
|
-
a
|
|
794
|
+
r,
|
|
795
|
+
g,
|
|
796
|
+
b,
|
|
797
|
+
a
|
|
788
798
|
};
|
|
789
799
|
}
|
|
790
|
-
function
|
|
791
|
-
const rgb =
|
|
792
|
-
return
|
|
800
|
+
function HexToHSV(hex) {
|
|
801
|
+
const rgb = HexToRGB(hex);
|
|
802
|
+
return RGBtoHSV(rgb);
|
|
793
803
|
}
|
|
794
|
-
function
|
|
795
|
-
return
|
|
804
|
+
function HSVtoHex(hsva) {
|
|
805
|
+
return RGBtoHex(HSVtoRGB(hsva));
|
|
796
806
|
}
|
|
797
807
|
function parseHex(hex) {
|
|
798
808
|
if (hex.startsWith('#')) {
|
|
@@ -807,20 +817,10 @@ function parseHex(hex) {
|
|
|
807
817
|
} else {
|
|
808
818
|
hex = padEnd(padEnd(hex, 6), 8, 'F');
|
|
809
819
|
}
|
|
810
|
-
return
|
|
811
|
-
}
|
|
812
|
-
function colorToRGB(color) {
|
|
813
|
-
const int = colorToInt(color);
|
|
814
|
-
return {
|
|
815
|
-
r: (int & 0xFF0000) >> 16,
|
|
816
|
-
g: (int & 0xFF00) >> 8,
|
|
817
|
-
b: int & 0xFF
|
|
818
|
-
};
|
|
820
|
+
return hex;
|
|
819
821
|
}
|
|
820
822
|
function lighten(value, amount) {
|
|
821
823
|
const lab = fromXYZ(toXYZ$1(value));
|
|
822
|
-
// TODO: why this false positive?
|
|
823
|
-
// eslint-disable-next-line @typescript-eslint/restrict-plus-operands
|
|
824
824
|
lab[0] = lab[0] + amount * 10;
|
|
825
825
|
return fromXYZ$1(toXYZ(lab));
|
|
826
826
|
}
|
|
@@ -835,7 +835,7 @@ function darken(value, amount) {
|
|
|
835
835
|
* @see https://www.w3.org/TR/WCAG20/#relativeluminancedef
|
|
836
836
|
*/
|
|
837
837
|
function getLuma(color) {
|
|
838
|
-
const rgb =
|
|
838
|
+
const rgb = parseColor$1(color);
|
|
839
839
|
return toXYZ$1(rgb)[1];
|
|
840
840
|
}
|
|
841
841
|
|
|
@@ -1466,12 +1466,12 @@ const loClip = 0.001; // Output clip (lint trap #2)
|
|
|
1466
1466
|
|
|
1467
1467
|
function APCAcontrast(text, background) {
|
|
1468
1468
|
// Linearize sRGB
|
|
1469
|
-
const Rtxt = (
|
|
1470
|
-
const Gtxt = (
|
|
1471
|
-
const Btxt = (
|
|
1472
|
-
const Rbg = (
|
|
1473
|
-
const Gbg = (
|
|
1474
|
-
const Bbg = (
|
|
1469
|
+
const Rtxt = (text.r / 255) ** mainTRC;
|
|
1470
|
+
const Gtxt = (text.g / 255) ** mainTRC;
|
|
1471
|
+
const Btxt = (text.b / 255) ** mainTRC;
|
|
1472
|
+
const Rbg = (background.r / 255) ** mainTRC;
|
|
1473
|
+
const Gbg = (background.g / 255) ** mainTRC;
|
|
1474
|
+
const Bbg = (background.b / 255) ** mainTRC;
|
|
1475
1475
|
|
|
1476
1476
|
// Apply the standard coefficients and sum to Y
|
|
1477
1477
|
let Ytxt = Rtxt * Rco + Gtxt * Gco + Btxt * Bco;
|
|
@@ -1637,7 +1637,7 @@ function createTheme(options) {
|
|
|
1637
1637
|
for (const variation of ['lighten', 'darken']) {
|
|
1638
1638
|
const fn = variation === 'lighten' ? lighten : darken;
|
|
1639
1639
|
for (const amount of createRange(parsedOptions.variations[variation], 1)) {
|
|
1640
|
-
theme.colors[`${name}-${variation}-${amount}`] =
|
|
1640
|
+
theme.colors[`${name}-${variation}-${amount}`] = RGBtoHex(fn(parseColor$1(color), amount));
|
|
1641
1641
|
}
|
|
1642
1642
|
}
|
|
1643
1643
|
}
|
|
@@ -1645,9 +1645,9 @@ function createTheme(options) {
|
|
|
1645
1645
|
for (const color of Object.keys(theme.colors)) {
|
|
1646
1646
|
if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue;
|
|
1647
1647
|
const onColor = `on-${color}`;
|
|
1648
|
-
const colorVal =
|
|
1649
|
-
const blackContrast = Math.abs(APCAcontrast(0, colorVal));
|
|
1650
|
-
const whiteContrast = Math.abs(APCAcontrast(0xffffff, colorVal));
|
|
1648
|
+
const colorVal = parseColor$1(theme.colors[color]);
|
|
1649
|
+
const blackContrast = Math.abs(APCAcontrast(parseColor$1(0), colorVal));
|
|
1650
|
+
const whiteContrast = Math.abs(APCAcontrast(parseColor$1(0xffffff), colorVal));
|
|
1651
1651
|
|
|
1652
1652
|
// TODO: warn about poor color selections
|
|
1653
1653
|
// const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))
|
|
@@ -1677,7 +1677,7 @@ function createTheme(options) {
|
|
|
1677
1677
|
} = theme;
|
|
1678
1678
|
createCssClass(lines, `.v-theme--${themeName}`, [`color-scheme: ${dark ? 'dark' : 'normal'}`, ...genCssVariables(theme), ...Object.keys(variables).map(key => {
|
|
1679
1679
|
const value = variables[key];
|
|
1680
|
-
const color = typeof value === 'string' && value.startsWith('#') ?
|
|
1680
|
+
const color = typeof value === 'string' && value.startsWith('#') ? parseColor$1(value) : undefined;
|
|
1681
1681
|
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
|
1682
1682
|
return `--v-${key}: ${rgb ?? value}`;
|
|
1683
1683
|
})]);
|
|
@@ -1779,7 +1779,7 @@ function genCssVariables(theme) {
|
|
|
1779
1779
|
const darkOverlay = theme.dark ? 1 : 2;
|
|
1780
1780
|
const variables = [];
|
|
1781
1781
|
for (const [key, value] of Object.entries(theme.colors)) {
|
|
1782
|
-
const rgb =
|
|
1782
|
+
const rgb = parseColor$1(value);
|
|
1783
1783
|
variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`);
|
|
1784
1784
|
if (!key.startsWith('on-')) {
|
|
1785
1785
|
variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`);
|
|
@@ -3143,11 +3143,6 @@ const VToolbar = genericComponent()({
|
|
|
3143
3143
|
const isExtended = ref(!!(props.extended || (_slots$extension = slots.extension) != null && _slots$extension.call(slots)));
|
|
3144
3144
|
const contentHeight = computed(() => parseInt(Number(props.height) + (props.density === 'prominent' ? Number(props.height) : 0) - (props.density === 'comfortable' ? 8 : 0) - (props.density === 'compact' ? 16 : 0), 10));
|
|
3145
3145
|
const extensionHeight = computed(() => isExtended.value ? parseInt(Number(props.extensionHeight) + (props.density === 'prominent' ? Number(props.extensionHeight) : 0) - (props.density === 'comfortable' ? 4 : 0) - (props.density === 'compact' ? 8 : 0), 10) : 0);
|
|
3146
|
-
provideDefaults({
|
|
3147
|
-
VBtn: {
|
|
3148
|
-
variant: 'text'
|
|
3149
|
-
}
|
|
3150
|
-
});
|
|
3151
3146
|
useRender(() => {
|
|
3152
3147
|
var _slots$extension2, _slots$image, _slots$prepend, _slots$default, _slots$append;
|
|
3153
3148
|
const hasTitle = !!(props.title || slots.title);
|
|
@@ -3176,27 +3171,43 @@ const VToolbar = genericComponent()({
|
|
|
3176
3171
|
}
|
|
3177
3172
|
}, {
|
|
3178
3173
|
default: () => [slots.image ? (_slots$image = slots.image) == null ? void 0 : _slots$image.call(slots) : createVNode(VImg, null, null)]
|
|
3179
|
-
})]), createVNode(
|
|
3180
|
-
"
|
|
3181
|
-
|
|
3182
|
-
|
|
3174
|
+
})]), createVNode(VDefaultsProvider, {
|
|
3175
|
+
"defaults": {
|
|
3176
|
+
VTabs: {
|
|
3177
|
+
height: convertToUnit(contentHeight.value)
|
|
3178
|
+
}
|
|
3183
3179
|
}
|
|
3184
|
-
}, [slots.prepend && createVNode("div", {
|
|
3185
|
-
"class": "v-toolbar__prepend"
|
|
3186
|
-
}, [(_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots)]), hasTitle && createVNode(VToolbarTitle, {
|
|
3187
|
-
"key": "title",
|
|
3188
|
-
"text": props.title
|
|
3189
3180
|
}, {
|
|
3190
|
-
|
|
3191
|
-
|
|
3192
|
-
"class": "v-toolbar__append"
|
|
3193
|
-
}, [(_slots$append = slots.append) == null ? void 0 : _slots$append.call(slots)])]), createVNode(VExpandTransition, null, {
|
|
3194
|
-
default: () => [isExtended.value && createVNode("div", {
|
|
3195
|
-
"class": "v-toolbar__extension",
|
|
3181
|
+
default: () => [createVNode("div", {
|
|
3182
|
+
"class": "v-toolbar__content",
|
|
3196
3183
|
"style": {
|
|
3184
|
+
height: convertToUnit(contentHeight.value)
|
|
3185
|
+
}
|
|
3186
|
+
}, [slots.prepend && createVNode("div", {
|
|
3187
|
+
"class": "v-toolbar__prepend"
|
|
3188
|
+
}, [(_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots)]), hasTitle && createVNode(VToolbarTitle, {
|
|
3189
|
+
"key": "title",
|
|
3190
|
+
"text": props.title
|
|
3191
|
+
}, {
|
|
3192
|
+
text: slots.title
|
|
3193
|
+
}), (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots), slots.append && createVNode("div", {
|
|
3194
|
+
"class": "v-toolbar__append"
|
|
3195
|
+
}, [(_slots$append = slots.append) == null ? void 0 : _slots$append.call(slots)])])]
|
|
3196
|
+
}), createVNode(VDefaultsProvider, {
|
|
3197
|
+
"defaults": {
|
|
3198
|
+
VTabs: {
|
|
3197
3199
|
height: convertToUnit(extensionHeight.value)
|
|
3198
3200
|
}
|
|
3199
|
-
}
|
|
3201
|
+
}
|
|
3202
|
+
}, {
|
|
3203
|
+
default: () => [createVNode(VExpandTransition, null, {
|
|
3204
|
+
default: () => [isExtended.value && createVNode("div", {
|
|
3205
|
+
"class": "v-toolbar__extension",
|
|
3206
|
+
"style": {
|
|
3207
|
+
height: convertToUnit(extensionHeight.value)
|
|
3208
|
+
}
|
|
3209
|
+
}, [extension])]
|
|
3210
|
+
})]
|
|
3200
3211
|
})]
|
|
3201
3212
|
});
|
|
3202
3213
|
});
|
|
@@ -5687,7 +5698,7 @@ function useValidation(props) {
|
|
|
5687
5698
|
const isDisabled = computed(() => !!(props.disabled || form != null && form.isDisabled.value));
|
|
5688
5699
|
const isReadonly = computed(() => !!(props.readonly || form != null && form.isReadonly.value));
|
|
5689
5700
|
const errorMessages = computed(() => {
|
|
5690
|
-
return props.errorMessages.length ? wrapInArray(props.errorMessages) : internalErrorMessages.value;
|
|
5701
|
+
return props.errorMessages.length ? wrapInArray(props.errorMessages.slice(0, Math.max(0, +props.maxErrors))) : internalErrorMessages.value;
|
|
5691
5702
|
});
|
|
5692
5703
|
const isValid = computed(() => {
|
|
5693
5704
|
if (props.error || errorMessages.value.length) return false;
|
|
@@ -6725,7 +6736,8 @@ const VChip = defineComponent({
|
|
|
6725
6736
|
emits: {
|
|
6726
6737
|
'click:close': e => true,
|
|
6727
6738
|
'update:modelValue': value => true,
|
|
6728
|
-
'group:selected': val => true
|
|
6739
|
+
'group:selected': val => true,
|
|
6740
|
+
click: e => true
|
|
6729
6741
|
},
|
|
6730
6742
|
setup(props, _ref) {
|
|
6731
6743
|
let {
|
|
@@ -6759,10 +6771,18 @@ const VChip = defineComponent({
|
|
|
6759
6771
|
const isActive = useProxiedModel(props, 'modelValue');
|
|
6760
6772
|
const group = useGroupItem(props, VChipGroupSymbol, false);
|
|
6761
6773
|
const link = useLink(props, attrs);
|
|
6774
|
+
const isClickable = computed(() => !props.disabled && (!!group || link.isClickable.value || props.link));
|
|
6762
6775
|
function onCloseClick(e) {
|
|
6763
6776
|
isActive.value = false;
|
|
6764
6777
|
emit('click:close', e);
|
|
6765
6778
|
}
|
|
6779
|
+
function onClick(e) {
|
|
6780
|
+
var _link$navigate;
|
|
6781
|
+
emit('click', e);
|
|
6782
|
+
if (!isClickable.value) return;
|
|
6783
|
+
(_link$navigate = link.navigate) == null ? void 0 : _link$navigate.call(link, e);
|
|
6784
|
+
group == null ? void 0 : group.toggle();
|
|
6785
|
+
}
|
|
6766
6786
|
return () => {
|
|
6767
6787
|
var _slots$default;
|
|
6768
6788
|
const Tag = link.isLink.value ? 'a' : props.tag;
|
|
@@ -6771,8 +6791,6 @@ const VChip = defineComponent({
|
|
|
6771
6791
|
const hasFilter = !!(slots.filter || props.filter) && group;
|
|
6772
6792
|
const hasPrepend = !!(slots.prepend || props.prependIcon || props.prependAvatar);
|
|
6773
6793
|
const hasColor = !group || group.isSelected.value;
|
|
6774
|
-
const isClickable = !props.disabled && (!!group || link.isClickable.value || props.link);
|
|
6775
|
-
const onClickFunc = props.link ? props.link : group == null ? void 0 : group.toggle;
|
|
6776
6794
|
return isActive.value && withDirectives(createVNode(Tag, {
|
|
6777
6795
|
"class": ['v-chip', {
|
|
6778
6796
|
'v-chip--disabled': props.disabled,
|
|
@@ -6785,9 +6803,9 @@ const VChip = defineComponent({
|
|
|
6785
6803
|
"disabled": props.disabled || undefined,
|
|
6786
6804
|
"draggable": props.draggable,
|
|
6787
6805
|
"href": link.href.value,
|
|
6788
|
-
"onClick":
|
|
6806
|
+
"onClick": onClick
|
|
6789
6807
|
}, {
|
|
6790
|
-
default: () => [genOverlays(isClickable, 'v-chip'), hasFilter && createVNode(VDefaultsProvider, {
|
|
6808
|
+
default: () => [genOverlays(isClickable.value, 'v-chip'), hasFilter && createVNode(VDefaultsProvider, {
|
|
6791
6809
|
"key": "filter",
|
|
6792
6810
|
"defaults": {
|
|
6793
6811
|
VIcon: {
|
|
@@ -6857,7 +6875,7 @@ const VChip = defineComponent({
|
|
|
6857
6875
|
"onClick": onCloseClick
|
|
6858
6876
|
}, [slots.close ? slots.close() : createVNode(VIcon, null, null)])]
|
|
6859
6877
|
})]
|
|
6860
|
-
}), [[resolveDirective("ripple"), isClickable && props.ripple, null]]);
|
|
6878
|
+
}), [[resolveDirective("ripple"), isClickable.value && props.ripple, null]]);
|
|
6861
6879
|
};
|
|
6862
6880
|
}
|
|
6863
6881
|
});
|
|
@@ -7653,7 +7671,8 @@ const VListItem = genericComponent()({
|
|
|
7653
7671
|
"key": "prepend-icon"
|
|
7654
7672
|
}, null), (_slots$prepend = slots.prepend) == null ? void 0 : _slots$prepend.call(slots, slotProps.value)])]
|
|
7655
7673
|
}), createVNode("div", {
|
|
7656
|
-
"class": "v-list-item__content"
|
|
7674
|
+
"class": "v-list-item__content",
|
|
7675
|
+
"data-no-activator": ""
|
|
7657
7676
|
}, [hasTitle && createVNode(VListItemTitle, {
|
|
7658
7677
|
"key": "title"
|
|
7659
7678
|
}, {
|
|
@@ -11748,13 +11767,13 @@ function parseColor(color) {
|
|
|
11748
11767
|
let hsva = null;
|
|
11749
11768
|
if (typeof color === 'string') {
|
|
11750
11769
|
const hex = parseHex(color);
|
|
11751
|
-
hsva =
|
|
11770
|
+
hsva = HexToHSV(hex);
|
|
11752
11771
|
}
|
|
11753
11772
|
if (typeof color === 'object') {
|
|
11754
11773
|
if (has(color, ['r', 'g', 'b'])) {
|
|
11755
|
-
hsva =
|
|
11774
|
+
hsva = RGBtoHSV(color);
|
|
11756
11775
|
} else if (has(color, ['h', 's', 'l'])) {
|
|
11757
|
-
hsva =
|
|
11776
|
+
hsva = HSLtoHSV(color);
|
|
11758
11777
|
} else if (has(color, ['h', 's', 'v'])) {
|
|
11759
11778
|
hsva = color;
|
|
11760
11779
|
}
|
|
@@ -11776,12 +11795,12 @@ function stripAlpha(color, stripAlpha) {
|
|
|
11776
11795
|
}
|
|
11777
11796
|
function extractColor(color, input) {
|
|
11778
11797
|
if (input == null || typeof input === 'string') {
|
|
11779
|
-
const hex =
|
|
11798
|
+
const hex = HSVtoHex(color);
|
|
11780
11799
|
if (color.a === 1) return hex.slice(0, 7);else return hex;
|
|
11781
11800
|
}
|
|
11782
11801
|
if (typeof input === 'object') {
|
|
11783
11802
|
let converted;
|
|
11784
|
-
if (has(input, ['r', 'g', 'b'])) converted =
|
|
11803
|
+
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;
|
|
11785
11804
|
return stripAlpha(converted, !has(input, ['a']));
|
|
11786
11805
|
}
|
|
11787
11806
|
return color;
|
|
@@ -11828,14 +11847,19 @@ const rgba = {
|
|
|
11828
11847
|
label: 'A',
|
|
11829
11848
|
max: 1,
|
|
11830
11849
|
step: 0.01,
|
|
11831
|
-
getValue:
|
|
11850
|
+
getValue: _ref => {
|
|
11851
|
+
let {
|
|
11852
|
+
a
|
|
11853
|
+
} = _ref;
|
|
11854
|
+
return a ? Math.round(a * 100) / 100 : 1;
|
|
11855
|
+
},
|
|
11832
11856
|
getColor: (c, v) => ({
|
|
11833
11857
|
...c,
|
|
11834
11858
|
a: Number(v)
|
|
11835
11859
|
})
|
|
11836
11860
|
}],
|
|
11837
|
-
to:
|
|
11838
|
-
from:
|
|
11861
|
+
to: HSVtoRGB,
|
|
11862
|
+
from: RGBtoHSV
|
|
11839
11863
|
};
|
|
11840
11864
|
const rgb = {
|
|
11841
11865
|
...rgba,
|
|
@@ -11877,14 +11901,19 @@ const hsla = {
|
|
|
11877
11901
|
label: 'A',
|
|
11878
11902
|
max: 1,
|
|
11879
11903
|
step: 0.01,
|
|
11880
|
-
getValue:
|
|
11904
|
+
getValue: _ref2 => {
|
|
11905
|
+
let {
|
|
11906
|
+
a
|
|
11907
|
+
} = _ref2;
|
|
11908
|
+
return a ? Math.round(a * 100) / 100 : 1;
|
|
11909
|
+
},
|
|
11881
11910
|
getColor: (c, v) => ({
|
|
11882
11911
|
...c,
|
|
11883
11912
|
a: Number(v)
|
|
11884
11913
|
})
|
|
11885
11914
|
}],
|
|
11886
|
-
to:
|
|
11887
|
-
from:
|
|
11915
|
+
to: HSVtoHSL,
|
|
11916
|
+
from: HSLtoHSV
|
|
11888
11917
|
};
|
|
11889
11918
|
const hsl = {
|
|
11890
11919
|
...hsla,
|
|
@@ -11899,8 +11928,8 @@ const hexa = {
|
|
|
11899
11928
|
getValue: c => c,
|
|
11900
11929
|
getColor: (c, v) => v
|
|
11901
11930
|
}],
|
|
11902
|
-
to:
|
|
11903
|
-
from:
|
|
11931
|
+
to: HSVtoHex,
|
|
11932
|
+
from: HexToHSV
|
|
11904
11933
|
};
|
|
11905
11934
|
const hex = {
|
|
11906
11935
|
...hexa,
|
|
@@ -12666,7 +12695,7 @@ const VColorPickerPreview = defineComponent({
|
|
|
12666
12695
|
"class": "v-color-picker-preview__dot"
|
|
12667
12696
|
}, [createVNode("div", {
|
|
12668
12697
|
"style": {
|
|
12669
|
-
background:
|
|
12698
|
+
background: HSVtoCSS(props.color ?? nullColor)
|
|
12670
12699
|
}
|
|
12671
12700
|
}, null)]), createVNode("div", {
|
|
12672
12701
|
"class": "v-color-picker-preview__sliders"
|
|
@@ -13207,7 +13236,7 @@ const VColorPicker = defineComponent({
|
|
|
13207
13236
|
"theme": props.theme,
|
|
13208
13237
|
"class": ['v-color-picker'],
|
|
13209
13238
|
"style": {
|
|
13210
|
-
'--v-color-picker-color-hsv':
|
|
13239
|
+
'--v-color-picker-color-hsv': HSVtoCSS({
|
|
13211
13240
|
...(currentColor.value ?? nullColor),
|
|
13212
13241
|
a: 1
|
|
13213
13242
|
})
|
|
@@ -15871,8 +15900,7 @@ const VRadioGroup = defineComponent({
|
|
|
15871
15900
|
isReadonly
|
|
15872
15901
|
} = _ref2;
|
|
15873
15902
|
return createVNode(Fragment, null, [label && createVNode(VLabel, {
|
|
15874
|
-
"for": id.value
|
|
15875
|
-
"clickable": true
|
|
15903
|
+
"for": id.value
|
|
15876
15904
|
}, {
|
|
15877
15905
|
default: () => [label]
|
|
15878
15906
|
}), createVNode(VSelectionControlGroup, mergeProps(controlProps, {
|
|
@@ -18166,7 +18194,7 @@ function createVuetify$1() {
|
|
|
18166
18194
|
locale
|
|
18167
18195
|
};
|
|
18168
18196
|
}
|
|
18169
|
-
const version$1 = "3.0.
|
|
18197
|
+
const version$1 = "3.0.4";
|
|
18170
18198
|
createVuetify$1.version = version$1;
|
|
18171
18199
|
|
|
18172
18200
|
// Vue's inject() can only be used in setup
|
|
@@ -18187,7 +18215,7 @@ const createVuetify = function () {
|
|
|
18187
18215
|
...options
|
|
18188
18216
|
});
|
|
18189
18217
|
};
|
|
18190
|
-
const version = "3.0.
|
|
18218
|
+
const version = "3.0.4";
|
|
18191
18219
|
createVuetify.version = version;
|
|
18192
18220
|
|
|
18193
18221
|
export { components, createVuetify, directives, useDisplay, useLayout, useLocale, useRtl, useTheme, version };
|