@vuetify/nightly 3.7.4-next.2024-11-06 → 3.7.5-dev.2024-12-16
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 +2853 -2845
- package/dist/json/importMap-labs.json +20 -20
- package/dist/json/importMap.json +150 -150
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +5324 -5306
- package/dist/vuetify-labs.css +25135 -23418
- package/dist/vuetify-labs.d.ts +202 -196
- package/dist/vuetify-labs.esm.js +107 -106
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +106 -105
- package/dist/vuetify-labs.min.css +4 -3
- package/dist/vuetify.css +23838 -22118
- package/dist/vuetify.d.ts +191 -185
- package/dist/vuetify.esm.js +96 -96
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +95 -95
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +4 -3
- package/dist/vuetify.min.js +884 -889
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +215 -207
- package/lib/components/VApp/VApp.css +15 -16
- package/lib/components/VAppBar/VAppBar.css +12 -14
- package/lib/components/VAppBar/index.d.mts +6 -6
- package/lib/components/VAutocomplete/VAutocomplete.css +85 -86
- package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -4
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +22 -22
- package/lib/components/VAvatar/VAvatar.css +106 -108
- package/lib/components/VBadge/VBadge.css +77 -73
- package/lib/components/VBadge/VBadge.sass +4 -0
- package/lib/components/VBanner/VBanner.css +166 -161
- package/lib/components/VBottomNavigation/VBottomNavigation.css +63 -64
- package/lib/components/VBottomSheet/VBottomSheet.css +31 -34
- package/lib/components/VBreadcrumbs/VBreadcrumbs.css +57 -54
- package/lib/components/VBtn/VBtn.css +408 -385
- package/lib/components/VBtn/VBtn.sass +4 -4
- package/lib/components/VBtn/index.d.mts +7 -7
- package/lib/components/VBtnGroup/VBtnGroup.css +64 -63
- package/lib/components/VBtnToggle/VBtnToggle.css +14 -16
- package/lib/components/VBtnToggle/index.d.mts +9 -9
- package/lib/components/VCard/VCard.css +302 -294
- package/lib/components/VCarousel/VCarousel.css +65 -63
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarousel.sass +1 -1
- package/lib/components/VCarousel/index.d.mts +9 -9
- package/lib/components/VCheckbox/VCheckbox.css +5 -7
- package/lib/components/VCheckbox/VCheckbox.mjs +3 -3
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VChip/VChip.css +411 -378
- package/lib/components/VChip/VChip.mjs +18 -10
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.mts +13 -8
- package/lib/components/VChipGroup/VChipGroup.css +18 -19
- package/lib/components/VChipGroup/VChipGroup.mjs +2 -0
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.mts +20 -15
- package/lib/components/VCode/VCode.css +8 -10
- package/lib/components/VColorPicker/VColorPicker.css +22 -22
- package/lib/components/VColorPicker/VColorPickerCanvas.css +22 -24
- package/lib/components/VColorPicker/VColorPickerEdit.css +28 -29
- package/lib/components/VColorPicker/VColorPickerPreview.css +67 -69
- package/lib/components/VColorPicker/VColorPickerPreview.sass +2 -4
- package/lib/components/VColorPicker/VColorPickerSwatches.css +34 -34
- package/lib/components/VCombobox/VCombobox.css +85 -86
- package/lib/components/VCombobox/VCombobox.mjs +4 -4
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +22 -22
- package/lib/components/VConfirmEdit/VConfirmEdit.mjs +9 -7
- package/lib/components/VConfirmEdit/VConfirmEdit.mjs.map +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs.map +1 -1
- package/lib/components/VConfirmEdit/index.d.mts +3 -7
- package/lib/components/VCounter/VCounter.css +5 -7
- package/lib/components/VDataTable/VDataTable.css +186 -189
- package/lib/components/VDataTable/VDataTable.sass +10 -20
- package/lib/components/VDataTable/VDataTableFooter.css +31 -33
- package/lib/components/VDatePicker/VDatePicker.css +6 -8
- package/lib/components/VDatePicker/VDatePickerControls.css +56 -54
- package/lib/components/VDatePicker/VDatePickerHeader.css +60 -56
- package/lib/components/VDatePicker/VDatePickerHeader.mjs +2 -1
- package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.css +55 -51
- package/lib/components/VDatePicker/VDatePickerMonths.css +19 -20
- package/lib/components/VDatePicker/VDatePickerYears.css +15 -16
- package/lib/components/VDatePicker/index.d.mts +5 -5
- package/lib/components/VDialog/VDialog.css +95 -95
- package/lib/components/VDivider/VDivider.css +52 -52
- package/lib/components/VEmptyState/VEmptyState.css +67 -62
- package/lib/components/VExpansionPanel/VExpansionPanel.css +209 -203
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +25 -27
- package/lib/components/VExpansionPanel/index.d.mts +7 -7
- package/lib/components/VFab/VFab.css +69 -74
- package/lib/components/VFab/VFab.sass +4 -5
- package/lib/components/VFab/index.d.mts +6 -6
- package/lib/components/VField/VField.css +579 -539
- package/lib/components/VField/VField.mjs +5 -4
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.css +29 -31
- package/lib/components/VFooter/VFooter.css +36 -38
- package/lib/components/VGrid/VGrid.css +592 -565
- package/lib/components/VIcon/VIcon.css +52 -51
- package/lib/components/VImg/VImg.css +51 -50
- package/lib/components/VInfiniteScroll/VInfiniteScroll.css +37 -36
- package/lib/components/VInput/VInput.css +142 -131
- package/lib/components/VInput/VInput.mjs +3 -3
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.css +5 -7
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.mts +9 -9
- package/lib/components/VKbd/VKbd.css +11 -13
- package/lib/components/VLabel/VLabel.css +15 -16
- package/lib/components/VLayout/VLayout.css +8 -10
- package/lib/components/VLayout/VLayoutItem.css +7 -8
- package/lib/components/VList/VList.css +108 -104
- package/lib/components/VList/VList.mjs +3 -2
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VList.sass +1 -1
- package/lib/components/VList/VListItem.css +452 -440
- package/lib/components/VList/VListItem.mjs +3 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +1 -2
- package/lib/components/VList/index.d.mts +10 -10
- package/lib/components/VLocaleProvider/VLocaleProvider.css +2 -4
- package/lib/components/VMain/VMain.css +30 -32
- package/lib/components/VMenu/VMenu.css +19 -21
- package/lib/components/VMenu/VMenu.mjs +3 -3
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +6 -6
- package/lib/components/VMessages/VMessages.css +15 -17
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +108 -106
- package/lib/components/VOtpInput/VOtpInput.css +58 -56
- package/lib/components/VOverlay/VOverlay.css +63 -60
- package/lib/components/VOverlay/VOverlay.sass +13 -14
- package/lib/components/VPagination/VPagination.css +8 -10
- package/lib/components/VParallax/VParallax.css +6 -8
- package/lib/components/VProgressCircular/VProgressCircular.css +101 -95
- package/lib/components/VProgressLinear/VProgressLinear.css +222 -209
- package/lib/components/VRadioGroup/VRadioGroup.css +12 -14
- package/lib/components/VRadioGroup/VRadioGroup.mjs +3 -3
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRating/VRating.css +53 -52
- package/lib/components/VRating/VRating.mjs +4 -3
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VResponsive/VResponsive.css +26 -25
- package/lib/components/VSelect/VSelect.css +52 -54
- package/lib/components/VSelect/VSelect.mjs +3 -3
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +22 -22
- package/lib/components/VSelectionControl/VSelectionControl.css +102 -100
- package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -3
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +8 -10
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.css +36 -38
- package/lib/components/VSkeletonLoader/VSkeletonLoader.css +224 -225
- package/lib/components/VSlideGroup/VSlideGroup.css +55 -53
- package/lib/components/VSlideGroup/index.d.mts +10 -10
- package/lib/components/VSlider/VSlider.css +57 -53
- package/lib/components/VSlider/VSliderThumb.css +153 -142
- package/lib/components/VSlider/VSliderTrack.css +174 -155
- package/lib/components/VSnackbar/VSnackbar.css +140 -140
- package/lib/components/VSparkline/VBarline.mjs +3 -3
- package/lib/components/VSparkline/VBarline.mjs.map +1 -1
- package/lib/components/VSparkline/VTrendline.mjs +3 -3
- package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.css +41 -43
- package/lib/components/VStepper/VStepper.css +56 -55
- package/lib/components/VStepper/VStepper.mjs +5 -4
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepperItem.css +115 -112
- package/lib/components/VStepper/VStepperItem.mjs +5 -4
- package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
- package/lib/components/VStepper/index.d.mts +51 -45
- package/lib/components/VSwitch/VSwitch.css +139 -129
- package/lib/components/VSwitch/VSwitch.mjs +3 -3
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.css +43 -45
- package/lib/components/VTable/VTable.css +141 -140
- package/lib/components/VTable/VTable.sass +2 -4
- package/lib/components/VTabs/VTab.css +29 -30
- package/lib/components/VTabs/VTabs.css +65 -59
- package/lib/components/VTabs/index.d.mts +7 -7
- package/lib/components/VTextField/VTextField.css +68 -65
- package/lib/components/VTextarea/VTextarea.css +39 -47
- package/lib/components/VTextarea/VTextarea.sass +2 -4
- package/lib/components/VThemeProvider/VThemeProvider.css +3 -5
- package/lib/components/VTimeline/VTimeline.css +418 -379
- package/lib/components/VToolbar/VToolbar.css +143 -136
- package/lib/components/VTooltip/VTooltip.css +21 -25
- package/lib/components/VTooltip/VTooltip.mjs +3 -3
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/VTooltip.sass +6 -8
- package/lib/components/VVirtualScroll/VVirtualScroll.css +9 -11
- package/lib/components/VWindow/VWindow.css +70 -73
- package/lib/components/VWindow/index.d.mts +7 -7
- package/lib/components/index.d.mts +138 -132
- package/lib/composables/form.mjs +7 -2
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/group.mjs +3 -3
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/layout.mjs +3 -3
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +2 -2
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/theme.mjs +4 -4
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/validation.mjs +13 -15
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/directives/ripple/VRipple.css +36 -38
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +2 -3
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.mts +53 -53
- package/lib/labs/VCalendar/VCalendar.css +225 -219
- package/lib/labs/VCalendar/VCalendarDay.css +32 -33
- package/lib/labs/VCalendar/VCalendarHeader.css +13 -13
- package/lib/labs/VCalendar/VCalendarInterval.css +42 -43
- package/lib/labs/VCalendar/VCalendarIntervalEvent.css +5 -7
- package/lib/labs/VCalendar/VCalendarMonthDay.css +58 -61
- package/lib/labs/VCalendar/VCalendarMonthDay.sass +2 -3
- package/lib/labs/VDateInput/VDateInput.mjs +1 -1
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VNumberInput/VNumberInput.css +38 -40
- package/lib/labs/VNumberInput/VNumberInput.mjs +7 -5
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VPicker/VPicker.css +57 -53
- package/lib/labs/VStepperVertical/index.d.mts +44 -44
- package/lib/labs/VTimePicker/VTimePicker.css +7 -9
- package/lib/labs/VTimePicker/VTimePickerClock.css +129 -126
- package/lib/labs/VTimePicker/VTimePickerControls.css +103 -102
- package/lib/labs/VTreeview/VTreeviewItem.css +15 -17
- package/lib/labs/VTreeview/VTreeviewItem.mjs +3 -4
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.sass +1 -2
- package/lib/labs/VTreeview/index.d.mts +20 -20
- package/lib/labs/components.d.mts +64 -64
- package/lib/locale/fr.mjs +1 -1
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/styles/elements/_global.sass +1 -1
- package/lib/styles/generic/_colors.scss +3 -3
- package/lib/styles/generic/_layers.scss +1 -13
- package/lib/styles/generic/_transitions.scss +32 -32
- package/lib/styles/main.css +16139 -14666
- package/lib/styles/settings/_utilities.scss +5 -0
- package/lib/styles/settings/_variables.scss +2 -1
- package/lib/styles/tools/_bootable.sass +3 -0
- package/lib/styles/tools/_border.sass +4 -4
- package/lib/styles/tools/_display.sass +10 -0
- package/lib/styles/tools/_elevation.sass +2 -2
- package/lib/styles/tools/_index.sass +2 -0
- package/lib/styles/tools/_layer.scss +2 -4
- package/lib/styles/tools/_position.sass +2 -2
- package/lib/styles/tools/_radius.sass +10 -0
- package/lib/styles/tools/_rounded.sass +2 -2
- package/lib/styles/tools/_utilities.sass +5 -1
- package/lib/styles/utilities/_elevation.scss +1 -1
- package/lib/util/getCurrentInstance.mjs +1 -15
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/package.json +1 -1
@@ -1,52 +1,53 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
1
|
+
.v-icon {
|
2
|
+
--v-icon-size-multiplier: 1;
|
3
|
+
align-items: center;
|
4
|
+
display: inline-flex;
|
5
|
+
font-feature-settings: "liga";
|
6
|
+
height: 1em;
|
7
|
+
justify-content: center;
|
8
|
+
letter-spacing: normal;
|
9
|
+
line-height: 1;
|
10
|
+
position: relative;
|
11
|
+
text-indent: 0;
|
12
|
+
text-align: center;
|
13
|
+
user-select: none;
|
14
|
+
vertical-align: middle;
|
15
|
+
width: 1em;
|
16
|
+
min-width: 1em;
|
17
|
+
}
|
18
|
+
.v-icon--clickable {
|
19
|
+
cursor: pointer;
|
20
|
+
}
|
21
|
+
.v-icon--disabled {
|
22
|
+
pointer-events: none;
|
23
|
+
opacity: 0.38;
|
24
|
+
}
|
25
|
+
.v-icon--size-x-small {
|
26
|
+
font-size: calc(var(--v-icon-size-multiplier) * 1em);
|
27
|
+
}
|
28
|
+
.v-icon--size-small {
|
29
|
+
font-size: calc(var(--v-icon-size-multiplier) * 1.25em);
|
30
|
+
}
|
31
|
+
.v-icon--size-default {
|
32
|
+
font-size: calc(var(--v-icon-size-multiplier) * 1.5em);
|
33
|
+
}
|
34
|
+
.v-icon--size-large {
|
35
|
+
font-size: calc(var(--v-icon-size-multiplier) * 1.75em);
|
36
|
+
}
|
37
|
+
.v-icon--size-x-large {
|
38
|
+
font-size: calc(var(--v-icon-size-multiplier) * 2em);
|
39
|
+
}
|
40
|
+
|
41
|
+
.v-icon__svg {
|
42
|
+
fill: currentColor;
|
43
|
+
width: 100%;
|
44
|
+
height: 100%;
|
45
|
+
}
|
46
|
+
|
47
|
+
.v-icon--start {
|
48
|
+
margin-inline-end: 8px;
|
49
|
+
}
|
50
|
+
|
51
|
+
.v-icon--end {
|
52
|
+
margin-inline-start: 8px;
|
52
53
|
}
|
@@ -1,51 +1,52 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
1
|
+
.v-img {
|
2
|
+
--v-theme-overlay-multiplier: 3;
|
3
|
+
z-index: 0;
|
4
|
+
}
|
5
|
+
.v-img.v-img--absolute {
|
6
|
+
height: 100%;
|
7
|
+
left: 0;
|
8
|
+
overflow: hidden;
|
9
|
+
position: absolute;
|
10
|
+
top: 0;
|
11
|
+
width: 100%;
|
12
|
+
z-index: -1;
|
13
|
+
}
|
14
|
+
.v-img--booting .v-responsive__sizer {
|
15
|
+
transition: none;
|
16
|
+
}
|
17
|
+
.v-img--rounded {
|
18
|
+
border-radius: 4px;
|
19
|
+
}
|
20
|
+
|
21
|
+
.v-img__img,
|
22
|
+
.v-img__picture,
|
23
|
+
.v-img__gradient,
|
24
|
+
.v-img__placeholder,
|
25
|
+
.v-img__error {
|
26
|
+
z-index: -1;
|
27
|
+
}
|
28
|
+
.v-img__img,
|
29
|
+
.v-img__picture,
|
30
|
+
.v-img__gradient,
|
31
|
+
.v-img__placeholder,
|
32
|
+
.v-img__error {
|
33
|
+
position: absolute;
|
34
|
+
top: 0;
|
35
|
+
left: 0;
|
36
|
+
width: 100%;
|
37
|
+
height: 100%;
|
38
|
+
}
|
39
|
+
|
40
|
+
.v-img__img--preload {
|
41
|
+
filter: blur(4px);
|
42
|
+
}
|
43
|
+
.v-img__img--contain {
|
44
|
+
object-fit: contain;
|
45
|
+
}
|
46
|
+
.v-img__img--cover {
|
47
|
+
object-fit: cover;
|
48
|
+
}
|
49
|
+
|
50
|
+
.v-img__gradient {
|
51
|
+
background-repeat: no-repeat;
|
51
52
|
}
|
@@ -1,37 +1,38 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
1
|
+
.v-infinite-scroll--horizontal {
|
2
|
+
display: flex;
|
3
|
+
flex-direction: row;
|
4
|
+
overflow-x: auto;
|
5
|
+
}
|
6
|
+
.v-infinite-scroll--horizontal .v-infinite-scroll-intersect {
|
7
|
+
height: 100%;
|
8
|
+
width: var(--v-infinite-margin-size, 1px);
|
9
|
+
}
|
10
|
+
|
11
|
+
.v-infinite-scroll--vertical {
|
12
|
+
display: flex;
|
13
|
+
flex-direction: column;
|
14
|
+
overflow-y: auto;
|
15
|
+
}
|
16
|
+
.v-infinite-scroll--vertical .v-infinite-scroll-intersect {
|
17
|
+
height: 1px;
|
18
|
+
width: 100%;
|
19
|
+
}
|
20
|
+
|
21
|
+
.v-infinite-scroll-intersect {
|
22
|
+
pointer-events: none;
|
23
|
+
margin-top: var(--v-infinite-margin);
|
24
|
+
margin-bottom: calc(var(--v-infinite-margin) * -1);
|
25
|
+
}
|
26
|
+
.v-infinite-scroll-intersect:nth-child(2) {
|
27
|
+
--v-infinite-margin: var(--v-infinite-margin-size, 1px);
|
28
|
+
}
|
29
|
+
.v-infinite-scroll-intersect:nth-last-child(2) {
|
30
|
+
--v-infinite-margin: calc(var(--v-infinite-margin-size, 1px) * -1);
|
31
|
+
}
|
32
|
+
|
33
|
+
.v-infinite-scroll__side {
|
34
|
+
align-items: center;
|
35
|
+
display: flex;
|
36
|
+
justify-content: center;
|
37
|
+
padding: 8px;
|
37
38
|
}
|
@@ -1,132 +1,143 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
1
|
+
.v-input {
|
2
|
+
display: grid;
|
3
|
+
flex: 1 1 auto;
|
4
|
+
font-size: 1rem;
|
5
|
+
font-weight: 400;
|
6
|
+
line-height: 1.5;
|
7
|
+
}
|
8
|
+
.v-input--disabled {
|
9
|
+
pointer-events: none;
|
10
|
+
}
|
11
|
+
.v-input--density-default {
|
12
|
+
--v-input-control-height: 56px;
|
13
|
+
--v-input-padding-top: 16px;
|
14
|
+
}
|
15
|
+
|
16
|
+
.v-input--density-comfortable {
|
17
|
+
--v-input-control-height: 48px;
|
18
|
+
--v-input-padding-top: 12px;
|
19
|
+
}
|
20
|
+
|
21
|
+
.v-input--density-compact {
|
22
|
+
--v-input-control-height: 40px;
|
23
|
+
--v-input-padding-top: 8px;
|
24
|
+
}
|
25
|
+
|
26
|
+
.v-input--vertical {
|
27
|
+
grid-template-areas: "append" "control" "prepend";
|
28
|
+
grid-template-rows: max-content auto max-content;
|
29
|
+
grid-template-columns: min-content;
|
30
|
+
}
|
31
|
+
.v-input--vertical .v-input__prepend {
|
32
|
+
margin-block-start: 16px;
|
33
|
+
}
|
34
|
+
.v-input--vertical .v-input__append {
|
35
|
+
margin-block-end: 16px;
|
36
|
+
}
|
37
|
+
|
38
|
+
.v-input--horizontal {
|
39
|
+
grid-template-areas: "prepend control append" "a messages b";
|
40
|
+
grid-template-columns: max-content minmax(0, 1fr) max-content;
|
41
|
+
grid-template-rows: auto auto;
|
42
|
+
}
|
43
|
+
.v-input--horizontal .v-input__prepend {
|
44
|
+
margin-inline-end: 16px;
|
45
|
+
}
|
46
|
+
.v-input--horizontal .v-input__append {
|
47
|
+
margin-inline-start: 16px;
|
48
|
+
}
|
49
|
+
|
50
|
+
.v-input__details {
|
51
|
+
align-items: flex-end;
|
52
|
+
display: flex;
|
53
|
+
font-size: 0.75rem;
|
54
|
+
font-weight: 400;
|
55
|
+
grid-area: messages;
|
56
|
+
letter-spacing: 0.0333333333em;
|
57
|
+
line-height: normal;
|
58
|
+
min-height: 22px;
|
59
|
+
padding-top: 6px;
|
60
|
+
overflow: hidden;
|
61
|
+
justify-content: space-between;
|
62
|
+
}
|
63
|
+
|
64
|
+
.v-input__details > .v-icon,
|
65
|
+
.v-input__prepend > .v-icon,
|
66
|
+
.v-input__append > .v-icon {
|
67
|
+
opacity: var(--v-medium-emphasis-opacity);
|
68
|
+
}
|
69
|
+
.v-input--disabled .v-input__details > .v-icon,
|
70
|
+
.v-input--disabled .v-input__details .v-messages, .v-input--error .v-input__details > .v-icon,
|
71
|
+
.v-input--error .v-input__details .v-messages,
|
72
|
+
.v-input--disabled .v-input__prepend > .v-icon,
|
73
|
+
.v-input--disabled .v-input__prepend .v-messages,
|
74
|
+
.v-input--error .v-input__prepend > .v-icon,
|
75
|
+
.v-input--error .v-input__prepend .v-messages,
|
76
|
+
.v-input--disabled .v-input__append > .v-icon,
|
77
|
+
.v-input--disabled .v-input__append .v-messages,
|
78
|
+
.v-input--error .v-input__append > .v-icon,
|
79
|
+
.v-input--error .v-input__append .v-messages {
|
80
|
+
opacity: 1;
|
81
|
+
}
|
82
|
+
.v-input--disabled .v-input__details,
|
83
|
+
.v-input--disabled .v-input__prepend,
|
84
|
+
.v-input--disabled .v-input__append {
|
85
|
+
opacity: var(--v-disabled-opacity);
|
86
|
+
}
|
87
|
+
.v-input--error:not(.v-input--disabled) .v-input__details > .v-icon,
|
88
|
+
.v-input--error:not(.v-input--disabled) .v-input__details .v-messages,
|
89
|
+
.v-input--error:not(.v-input--disabled) .v-input__prepend > .v-icon,
|
90
|
+
.v-input--error:not(.v-input--disabled) .v-input__prepend .v-messages,
|
91
|
+
.v-input--error:not(.v-input--disabled) .v-input__append > .v-icon,
|
92
|
+
.v-input--error:not(.v-input--disabled) .v-input__append .v-messages {
|
93
|
+
color: rgb(var(--v-theme-error));
|
94
|
+
}
|
95
|
+
|
96
|
+
.v-input__prepend,
|
97
|
+
.v-input__append {
|
98
|
+
display: flex;
|
99
|
+
align-items: flex-start;
|
100
|
+
padding-top: var(--v-input-padding-top);
|
101
|
+
}
|
102
|
+
.v-input--center-affix .v-input__prepend,
|
103
|
+
.v-input--center-affix .v-input__append {
|
104
|
+
align-items: center;
|
105
|
+
padding-top: 0;
|
106
|
+
}
|
107
|
+
|
108
|
+
.v-input__prepend {
|
109
|
+
grid-area: prepend;
|
110
|
+
}
|
111
|
+
|
112
|
+
.v-input__append {
|
113
|
+
grid-area: append;
|
114
|
+
}
|
115
|
+
|
116
|
+
.v-input__control {
|
117
|
+
display: flex;
|
118
|
+
grid-area: control;
|
119
|
+
}
|
120
|
+
|
121
|
+
.v-input--hide-spin-buttons input::-webkit-outer-spin-button,
|
122
|
+
.v-input--hide-spin-buttons input::-webkit-inner-spin-button {
|
123
|
+
-webkit-appearance: none;
|
124
|
+
margin: 0;
|
125
|
+
}
|
126
|
+
.v-input--hide-spin-buttons input[type=number] {
|
127
|
+
-moz-appearance: textfield;
|
128
|
+
}
|
129
|
+
.v-input--plain-underlined .v-input__prepend,
|
130
|
+
.v-input--plain-underlined .v-input__append {
|
131
|
+
align-items: flex-start;
|
132
|
+
}
|
133
|
+
.v-input--density-default.v-input--plain-underlined .v-input__prepend, .v-input--density-default.v-input--plain-underlined .v-input__append {
|
134
|
+
padding-top: calc(var(--v-input-padding-top) + 4px);
|
135
|
+
}
|
136
|
+
|
137
|
+
.v-input--density-comfortable.v-input--plain-underlined .v-input__prepend, .v-input--density-comfortable.v-input--plain-underlined .v-input__append {
|
138
|
+
padding-top: calc(var(--v-input-padding-top) + 2px);
|
139
|
+
}
|
140
|
+
|
141
|
+
.v-input--density-compact.v-input--plain-underlined .v-input__prepend, .v-input--density-compact.v-input--plain-underlined .v-input__append {
|
142
|
+
padding-top: calc(var(--v-input-padding-top) + 0px);
|
132
143
|
}
|
@@ -12,8 +12,8 @@ import { IconValue } from "../../composables/icons.mjs";
|
|
12
12
|
import { useRtl } from "../../composables/locale.mjs";
|
13
13
|
import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
|
14
14
|
import { makeValidationProps, useValidation } from "../../composables/validation.mjs"; // Utilities
|
15
|
-
import { computed } from 'vue';
|
16
|
-
import { EventProp, genericComponent,
|
15
|
+
import { computed, useId } from 'vue';
|
16
|
+
import { EventProp, genericComponent, only, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
17
17
|
export const makeVInputProps = propsFactory({
|
18
18
|
id: String,
|
19
19
|
appendIcon: IconValue,
|
@@ -72,7 +72,7 @@ export const VInput = genericComponent()({
|
|
72
72
|
const {
|
73
73
|
InputIcon
|
74
74
|
} = useInputIcon(props);
|
75
|
-
const uid =
|
75
|
+
const uid = useId();
|
76
76
|
const id = computed(() => props.id || `input-${uid}`);
|
77
77
|
const messagesId = computed(() => `${id.value}-messages`);
|
78
78
|
const {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VInput.mjs","names":["useInputIcon","VMessages","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","IconValue","useRtl","makeThemeProps","provideTheme","makeValidationProps","useValidation","computed","EventProp","genericComponent","getUid","only","propsFactory","useRender","makeVInputProps","id","String","appendIcon","centerAffix","type","Boolean","default","prependIcon","hideDetails","hideSpinButtons","hint","persistentHint","messages","Array","direction","validator","v","includes","VInput","name","props","emits","value","setup","_ref","attrs","slots","emit","densityClasses","dimensionStyles","themeClasses","rtlClasses","InputIcon","uid","messagesId","errorMessages","isDirty","isDisabled","isReadonly","isPristine","isValid","isValidating","reset","resetValidation","validate","validationClasses","slotProps","length","focused","hasPrepend","prepend","hasAppend","append","hasMessages","hasDetails","details","_createVNode","class","style","message"],"sources":["../../../src/components/VInput/VInput.tsx"],"sourcesContent":["// Styles\nimport './VInput.sass'\n\n// Components\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VMessages } from '@/components/VMessages/VMessages'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { IconValue } from '@/composables/icons'\nimport { useRtl } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { computed } from 'vue'\nimport { EventProp, genericComponent, getUid, only, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { VMessageSlot } from '@/components/VMessages/VMessages'\nimport type { GenericProps } from '@/util'\n\nexport interface VInputSlot {\n id: ComputedRef<string>\n messagesId: ComputedRef<string>\n isDirty: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n isReadonly: ComputedRef<boolean>\n isPristine: Ref<boolean>\n isValid: ComputedRef<boolean | null>\n isValidating: Ref<boolean>\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n centerAffix: {\n type: Boolean,\n default: true,\n },\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n hideSpinButtons: Boolean,\n hint: String,\n persistentHint: Boolean,\n messages: {\n type: [Array, String] as PropType<string | readonly string[]>,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n 'onClick:prepend': EventProp<[MouseEvent]>(),\n 'onClick:append': EventProp<[MouseEvent]>(),\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...only(makeDimensionProps(), [\n 'maxWidth',\n 'minWidth',\n 'width',\n ]),\n ...makeThemeProps(),\n ...makeValidationProps(),\n}, 'VInput')\n\nexport type VInputSlots = {\n default: VInputSlot\n prepend: VInputSlot\n append: VInputSlot\n details: VInputSlot\n message: VMessageSlot\n}\n\nexport const VInput = genericComponent<new <T>(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VInputSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { InputIcon } = useInputIcon(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n const messagesId = computed(() => `${id.value}-messages`)\n\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props, 'v-input', id)\n\n const slotProps = computed<VInputSlot>(() => ({\n id,\n messagesId,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n }))\n\n const messages = computed(() => {\n if (props.errorMessages?.length || (!isPristine.value && errorMessages.value.length)) {\n return errorMessages.value\n } else if (props.hint && (props.persistentHint || props.focused)) {\n return props.hint\n } else {\n return props.messages\n }\n })\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n const hasMessages = messages.value.length > 0\n const hasDetails = !props.hideDetails || (\n props.hideDetails === 'auto' &&\n (hasMessages || !!slots.details)\n )\n\n return (\n <div\n class={[\n 'v-input',\n `v-input--${props.direction}`,\n {\n 'v-input--center-affix': props.centerAffix,\n 'v-input--hide-spin-buttons': props.hideSpinButtons,\n },\n densityClasses.value,\n themeClasses.value,\n rtlClasses.value,\n validationClasses.value,\n props.class,\n ]}\n style={[\n dimensionStyles.value,\n props.style,\n ]}\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-input__prepend\">\n { slots.prepend?.(slotProps.value) }\n\n { props.prependIcon && (\n <InputIcon\n key=\"prepend-icon\"\n name=\"prepend\"\n />\n )}\n </div>\n )}\n\n { slots.default && (\n <div class=\"v-input__control\">\n { slots.default?.(slotProps.value) }\n </div>\n )}\n\n { hasAppend && (\n <div key=\"append\" class=\"v-input__append\">\n { props.appendIcon && (\n <InputIcon\n key=\"append-icon\"\n name=\"append\"\n />\n )}\n\n { slots.append?.(slotProps.value) }\n </div>\n )}\n\n { hasDetails && (\n <div class=\"v-input__details\">\n <VMessages\n id={ messagesId.value }\n active={ hasMessages }\n messages={ messages.value }\n v-slots={{ message: slots.message }}\n />\n\n { slots.details?.(slotProps.value) }\n </div>\n )}\n </div>\n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n isValid,\n errorMessages,\n }\n },\n})\n\nexport type VInput = InstanceType<typeof VInput>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY;AAAA,SACZC,SAAS,sCAElB;AAAA,SACSC,kBAAkB;AAAA,SAClBC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,SAAS;AAAA,SACTC,MAAM;AAAA,SACNC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,mBAAmB,EAAEC,aAAa,4CAE3C;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,SAAS,EAAEC,gBAAgB,EAAEC,MAAM,EAAEC,IAAI,EAAEC,YAAY,EAAEC,SAAS,gCAE3E;AAmBA,OAAO,MAAMC,eAAe,GAAGF,YAAY,CAAC;EAC1CG,EAAE,EAAEC,MAAM;EACVC,UAAU,EAAEhB,SAAS;EACrBiB,WAAW,EAAE;IACXC,IAAI,EAAEC,OAAO;IACbC,OAAO,EAAE;EACX,CAAC;EACDC,WAAW,EAAErB,SAAS;EACtBsB,WAAW,EAAE,CAACH,OAAO,EAAEJ,MAAM,CAA+B;EAC5DQ,eAAe,EAAEJ,OAAO;EACxBK,IAAI,EAAET,MAAM;EACZU,cAAc,EAAEN,OAAO;EACvBO,QAAQ,EAAE;IACRR,IAAI,EAAE,CAACS,KAAK,EAAEZ,MAAM,CAAyC;IAC7DK,OAAO,EAAEA,CAAA,KAAO;EAClB,CAAC;EACDQ,SAAS,EAAE;IACTV,IAAI,EAAEH,MAA6C;IACnDK,OAAO,EAAE,YAAY;IACrBS,SAAS,EAAGC,CAAM,IAAK,CAAC,YAAY,EAAE,UAAU,CAAC,CAACC,QAAQ,CAACD,CAAC;EAC9D,CAAC;EAED,iBAAiB,EAAEvB,SAAS,CAAe,CAAC;EAC5C,gBAAgB,EAAEA,SAAS,CAAe,CAAC;EAE3C,GAAGZ,kBAAkB,CAAC,CAAC;EACvB,GAAGC,gBAAgB,CAAC,CAAC;EACrB,GAAGc,IAAI,CAACZ,kBAAkB,CAAC,CAAC,EAAE,CAC5B,UAAU,EACV,UAAU,EACV,OAAO,CACR,CAAC;EACF,GAAGI,cAAc,CAAC,CAAC;EACnB,GAAGE,mBAAmB,CAAC;AACzB,CAAC,EAAE,QAAQ,CAAC;AAUZ,OAAO,MAAM4B,MAAM,GAAGxB,gBAAgB,CAMS,CAAC,CAAC;EAC/CyB,IAAI,EAAE,QAAQ;EAEdC,KAAK,EAAE;IACL,GAAGrB,eAAe,CAAC;EACrB,CAAC;EAEDsB,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAA0B;IAAA,IAAxB;MAAEC,KAAK;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAAH,IAAA;IAClC,MAAM;MAAEI;IAAe,CAAC,GAAG7C,UAAU,CAACqC,KAAK,CAAC;IAC5C,MAAM;MAAES;IAAgB,CAAC,GAAG5C,YAAY,CAACmC,KAAK,CAAC;IAC/C,MAAM;MAAEU;IAAa,CAAC,GAAGzC,YAAY,CAAC+B,KAAK,CAAC;IAC5C,MAAM;MAAEW;IAAW,CAAC,GAAG5C,MAAM,CAAC,CAAC;IAC/B,MAAM;MAAE6C;IAAU,CAAC,GAAGrD,YAAY,CAACyC,KAAK,CAAC;IAEzC,MAAMa,GAAG,GAAGtC,MAAM,CAAC,CAAC;IACpB,MAAMK,EAAE,GAAGR,QAAQ,CAAC,MAAM4B,KAAK,CAACpB,EAAE,IAAI,SAASiC,GAAG,EAAE,CAAC;IACrD,MAAMC,UAAU,GAAG1C,QAAQ,CAAC,MAAM,GAAGQ,EAAE,CAACsB,KAAK,WAAW,CAAC;IAEzD,MAAM;MACJa,aAAa;MACbC,OAAO;MACPC,UAAU;MACVC,UAAU;MACVC,UAAU;MACVC,OAAO;MACPC,YAAY;MACZC,KAAK;MACLC,eAAe;MACfC,QAAQ;MACRC;IACF,CAAC,GAAGtD,aAAa,CAAC6B,KAAK,EAAE,SAAS,EAAEpB,EAAE,CAAC;IAEvC,MAAM8C,SAAS,GAAGtD,QAAQ,CAAa,OAAO;MAC5CQ,EAAE;MACFkC,UAAU;MACVE,OAAO;MACPC,UAAU;MACVC,UAAU;MACVC,UAAU;MACVC,OAAO;MACPC,YAAY;MACZC,KAAK;MACLC,eAAe;MACfC;IACF,CAAC,CAAC,CAAC;IAEH,MAAMhC,QAAQ,GAAGpB,QAAQ,CAAC,MAAM;MAC9B,IAAI4B,KAAK,CAACe,aAAa,EAAEY,MAAM,IAAK,CAACR,UAAU,CAACjB,KAAK,IAAIa,aAAa,CAACb,KAAK,CAACyB,MAAO,EAAE;QACpF,OAAOZ,aAAa,CAACb,KAAK;MAC5B,CAAC,MAAM,IAAIF,KAAK,CAACV,IAAI,KAAKU,KAAK,CAACT,cAAc,IAAIS,KAAK,CAAC4B,OAAO,CAAC,EAAE;QAChE,OAAO5B,KAAK,CAACV,IAAI;MACnB,CAAC,MAAM;QACL,OAAOU,KAAK,CAACR,QAAQ;MACvB;IACF,CAAC,CAAC;IAEFd,SAAS,CAAC,MAAM;MACd,MAAMmD,UAAU,GAAG,CAAC,EAAEvB,KAAK,CAACwB,OAAO,IAAI9B,KAAK,CAACb,WAAW,CAAC;MACzD,MAAM4C,SAAS,GAAG,CAAC,EAAEzB,KAAK,CAAC0B,MAAM,IAAIhC,KAAK,CAAClB,UAAU,CAAC;MACtD,MAAMmD,WAAW,GAAGzC,QAAQ,CAACU,KAAK,CAACyB,MAAM,GAAG,CAAC;MAC7C,MAAMO,UAAU,GAAG,CAAClC,KAAK,CAACZ,WAAW,IACnCY,KAAK,CAACZ,WAAW,KAAK,MAAM,KAC3B6C,WAAW,IAAI,CAAC,CAAC3B,KAAK,CAAC6B,OAAO,CAChC;MAED,OAAAC,YAAA;QAAA,SAEW,CACL,SAAS,EACT,YAAYpC,KAAK,CAACN,SAAS,EAAE,EAC7B;UACE,uBAAuB,EAAEM,KAAK,CAACjB,WAAW;UAC1C,4BAA4B,EAAEiB,KAAK,CAACX;QACtC,CAAC,EACDmB,cAAc,CAACN,KAAK,EACpBQ,YAAY,CAACR,KAAK,EAClBS,UAAU,CAACT,KAAK,EAChBuB,iBAAiB,CAACvB,KAAK,EACvBF,KAAK,CAACqC,KAAK,CACZ;QAAA,SACM,CACL5B,eAAe,CAACP,KAAK,EACrBF,KAAK,CAACsC,KAAK;MACZ,IAECT,UAAU,IAAAO,YAAA;QAAA;QAAA;MAAA,IAEN9B,KAAK,CAACwB,OAAO,GAAGJ,SAAS,CAACxB,KAAK,CAAC,EAEhCF,KAAK,CAACb,WAAW,IAAAiD,YAAA,CAAAxB,SAAA;QAAA;QAAA;MAAA,QAKlB,EAEJ,EAECN,KAAK,CAACpB,OAAO,IAAAkD,YAAA;QAAA;MAAA,IAET9B,KAAK,CAACpB,OAAO,GAAGwC,SAAS,CAACxB,KAAK,CAAC,EAErC,EAEC6B,SAAS,IAAAK,YAAA;QAAA;QAAA;MAAA,IAELpC,KAAK,CAAClB,UAAU,IAAAsD,YAAA,CAAAxB,SAAA;QAAA;QAAA;MAAA,QAKjB,EAECN,KAAK,CAAC0B,MAAM,GAAGN,SAAS,CAACxB,KAAK,CAAC,EAEpC,EAECgC,UAAU,IAAAE,YAAA;QAAA;MAAA,IAAAA,YAAA,CAAA5E,SAAA;QAAA,MAGDsD,UAAU,CAACZ,KAAK;QAAA,UACZ+B,WAAW;QAAA,YACTzC,QAAQ,CAACU;MAAK,GAChB;QAAEqC,OAAO,EAAEjC,KAAK,CAACiC;MAAQ,CAAC,GAGnCjC,KAAK,CAAC6B,OAAO,GAAGT,SAAS,CAACxB,KAAK,CAAC,EAErC;IAGP,CAAC,CAAC;IAEF,OAAO;MACLoB,KAAK;MACLC,eAAe;MACfC,QAAQ;MACRJ,OAAO;MACPL;IACF,CAAC;EACH;AACF,CAAC,CAAC","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VInput.mjs","names":["useInputIcon","VMessages","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","IconValue","useRtl","makeThemeProps","provideTheme","makeValidationProps","useValidation","computed","useId","EventProp","genericComponent","only","propsFactory","useRender","makeVInputProps","id","String","appendIcon","centerAffix","type","Boolean","default","prependIcon","hideDetails","hideSpinButtons","hint","persistentHint","messages","Array","direction","validator","v","includes","VInput","name","props","emits","value","setup","_ref","attrs","slots","emit","densityClasses","dimensionStyles","themeClasses","rtlClasses","InputIcon","uid","messagesId","errorMessages","isDirty","isDisabled","isReadonly","isPristine","isValid","isValidating","reset","resetValidation","validate","validationClasses","slotProps","length","focused","hasPrepend","prepend","hasAppend","append","hasMessages","hasDetails","details","_createVNode","class","style","message"],"sources":["../../../src/components/VInput/VInput.tsx"],"sourcesContent":["// Styles\nimport './VInput.sass'\n\n// Components\nimport { useInputIcon } from '@/components/VInput/InputIcon'\nimport { VMessages } from '@/components/VMessages/VMessages'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { IconValue } from '@/composables/icons'\nimport { useRtl } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { computed, useId } from 'vue'\nimport { EventProp, genericComponent, only, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { VMessageSlot } from '@/components/VMessages/VMessages'\nimport type { GenericProps } from '@/util'\n\nexport interface VInputSlot {\n id: ComputedRef<string>\n messagesId: ComputedRef<string>\n isDirty: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n isReadonly: ComputedRef<boolean>\n isPristine: Ref<boolean>\n isValid: ComputedRef<boolean | null>\n isValidating: Ref<boolean>\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n centerAffix: {\n type: Boolean,\n default: true,\n },\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n hideSpinButtons: Boolean,\n hint: String,\n persistentHint: Boolean,\n messages: {\n type: [Array, String] as PropType<string | readonly string[]>,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n 'onClick:prepend': EventProp<[MouseEvent]>(),\n 'onClick:append': EventProp<[MouseEvent]>(),\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...only(makeDimensionProps(), [\n 'maxWidth',\n 'minWidth',\n 'width',\n ]),\n ...makeThemeProps(),\n ...makeValidationProps(),\n}, 'VInput')\n\nexport type VInputSlots = {\n default: VInputSlot\n prepend: VInputSlot\n append: VInputSlot\n details: VInputSlot\n message: VMessageSlot\n}\n\nexport const VInput = genericComponent<new <T>(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VInputSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { InputIcon } = useInputIcon(props)\n\n const uid = useId()\n const id = computed(() => props.id || `input-${uid}`)\n const messagesId = computed(() => `${id.value}-messages`)\n\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props, 'v-input', id)\n\n const slotProps = computed<VInputSlot>(() => ({\n id,\n messagesId,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n }))\n\n const messages = computed(() => {\n if (props.errorMessages?.length || (!isPristine.value && errorMessages.value.length)) {\n return errorMessages.value\n } else if (props.hint && (props.persistentHint || props.focused)) {\n return props.hint\n } else {\n return props.messages\n }\n })\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n const hasMessages = messages.value.length > 0\n const hasDetails = !props.hideDetails || (\n props.hideDetails === 'auto' &&\n (hasMessages || !!slots.details)\n )\n\n return (\n <div\n class={[\n 'v-input',\n `v-input--${props.direction}`,\n {\n 'v-input--center-affix': props.centerAffix,\n 'v-input--hide-spin-buttons': props.hideSpinButtons,\n },\n densityClasses.value,\n themeClasses.value,\n rtlClasses.value,\n validationClasses.value,\n props.class,\n ]}\n style={[\n dimensionStyles.value,\n props.style,\n ]}\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-input__prepend\">\n { slots.prepend?.(slotProps.value) }\n\n { props.prependIcon && (\n <InputIcon\n key=\"prepend-icon\"\n name=\"prepend\"\n />\n )}\n </div>\n )}\n\n { slots.default && (\n <div class=\"v-input__control\">\n { slots.default?.(slotProps.value) }\n </div>\n )}\n\n { hasAppend && (\n <div key=\"append\" class=\"v-input__append\">\n { props.appendIcon && (\n <InputIcon\n key=\"append-icon\"\n name=\"append\"\n />\n )}\n\n { slots.append?.(slotProps.value) }\n </div>\n )}\n\n { hasDetails && (\n <div class=\"v-input__details\">\n <VMessages\n id={ messagesId.value }\n active={ hasMessages }\n messages={ messages.value }\n v-slots={{ message: slots.message }}\n />\n\n { slots.details?.(slotProps.value) }\n </div>\n )}\n </div>\n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n isValid,\n errorMessages,\n }\n },\n})\n\nexport type VInput = InstanceType<typeof VInput>\n"],"mappings":"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","ignoreList":[]}
|