vuetify 3.3.2 → 3.3.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/_component-variables-labs.sass +2 -0
- package/dist/json/attributes.json +460 -20
- package/dist/json/importMap-labs.json +32 -0
- package/dist/json/importMap.json +24 -24
- package/dist/json/tags.json +150 -0
- package/dist/json/web-types.json +1639 -40
- package/dist/vuetify-labs.css +499 -230
- package/dist/vuetify-labs.d.ts +5421 -326
- package/dist/vuetify-labs.esm.js +2124 -1098
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +2123 -1097
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +219 -210
- package/dist/vuetify.d.ts +314 -165
- package/dist/vuetify.esm.js +330 -179
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +329 -178
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +792 -784
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.mts +34 -27
- package/lib/blueprints/md1.d.mts +34 -27
- package/lib/blueprints/md2.d.mts +34 -27
- package/lib/blueprints/md3.d.mts +34 -27
- package/lib/components/VAppBar/VAppBar.mjs +3 -10
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.mts +24 -8
- package/lib/components/VAutocomplete/VAutocomplete.css +4 -22
- package/lib/components/VAutocomplete/VAutocomplete.mjs +17 -12
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +6 -17
- package/lib/components/VBreadcrumbs/index.d.mts +7 -7
- package/lib/components/VBtn/VBtn.css +11 -11
- package/lib/components/VBtn/VBtn.mjs +1 -1
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +1 -1
- package/lib/components/VBtn/_mixins.scss +1 -1
- package/lib/components/VBtn/index.d.mts +24 -8
- package/lib/components/VCard/VCard.mjs +1 -1
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/index.d.mts +44 -28
- package/lib/components/VCheckbox/VCheckbox.mjs +8 -1
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.mts +7 -1
- package/lib/components/VChip/VChip.css +67 -67
- package/lib/components/VChip/VChip.mjs +2 -2
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/_variables.scss +1 -1
- package/lib/components/VChip/index.d.mts +48 -32
- package/lib/components/VCombobox/VCombobox.css +4 -22
- package/lib/components/VCombobox/VCombobox.mjs +16 -8
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +6 -17
- package/lib/components/VCombobox/_variables.scss +3 -3
- package/lib/components/VCounter/index.d.mts +8 -8
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +56 -24
- package/lib/components/VField/VField.css +72 -8
- package/lib/components/VField/VField.sass +10 -5
- package/lib/components/VField/_mixins.sass +7 -0
- package/lib/components/VFileInput/VFileInput.css +2 -17
- package/lib/components/VFileInput/VFileInput.mjs +0 -2
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.sass +2 -11
- package/lib/components/VFileInput/_variables.scss +3 -3
- package/lib/components/VIcon/VIcon.mjs +2 -2
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VInput/VInput.css +14 -1
- package/lib/components/VInput/VInput.sass +6 -0
- package/lib/components/VInput/_variables.scss +5 -1
- package/lib/components/VList/VListItem.mjs +2 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +24 -8
- package/lib/components/VMenu/VMenu.mjs +29 -3
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +7 -4
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +29 -35
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.css +2 -20
- package/lib/components/VSelect/VSelect.mjs +16 -11
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.sass +2 -12
- package/lib/components/VSelect/_variables.scss +3 -3
- package/lib/components/VSlider/VSliderThumb.mjs +2 -2
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VTabs/VTab.mjs +2 -2
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.css +1 -0
- package/lib/components/VTabs/VTabs.sass +1 -0
- package/lib/components/VTabs/index.d.mts +24 -8
- package/lib/components/VTextarea/VTextarea.css +7 -7
- package/lib/components/VTextarea/VTextarea.sass +9 -9
- package/lib/components/VTimePicker/VTimePickerTitle.mjs +1 -1
- package/lib/components/index.d.mts +266 -132
- package/lib/components/index.mjs +1 -2
- package/lib/components/index.mjs.map +1 -1
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/list-items.mjs +5 -2
- package/lib/composables/list-items.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +1 -1
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/theme.mjs +1 -1
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/iconsets/fa-svg.d.mts +1 -0
- package/lib/iconsets/fa.d.mts +1 -0
- package/lib/iconsets/fa.mjs +2 -1
- package/lib/iconsets/fa.mjs.map +1 -1
- package/lib/iconsets/fa4.d.mts +1 -0
- package/lib/iconsets/fa4.mjs +2 -1
- package/lib/iconsets/fa4.mjs.map +1 -1
- package/lib/iconsets/md.d.mts +1 -0
- package/lib/iconsets/md.mjs +2 -1
- package/lib/iconsets/md.mjs.map +1 -1
- package/lib/iconsets/mdi-svg.d.mts +1 -0
- package/lib/iconsets/mdi-svg.mjs +36 -35
- package/lib/iconsets/mdi-svg.mjs.map +1 -1
- package/lib/iconsets/mdi.d.mts +1 -0
- package/lib/iconsets/mdi.mjs +2 -1
- package/lib/iconsets/mdi.mjs.map +1 -1
- package/lib/index.d.mts +48 -33
- package/lib/labs/VDataTable/VDataTable.css +4 -14
- package/lib/labs/VDataTable/VDataTable.sass +6 -15
- package/lib/labs/VDataTable/VDataTableHeaders.mjs +2 -2
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +16 -12
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/headers.mjs +2 -5
- package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/select.mjs +3 -2
- package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
- package/lib/labs/VDateInput/VDateInput.mjs +127 -0
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -0
- package/lib/labs/VDateInput/VDateInput.sass +11 -0
- package/lib/labs/VDateInput/VDateRangeInput.mjs +223 -0
- package/lib/labs/VDateInput/VDateRangeInput.mjs.map +1 -0
- package/lib/labs/VDateInput/VDateRangeInput.sass +10 -0
- package/lib/labs/VDateInput/composables.mjs +59 -0
- package/lib/labs/VDateInput/composables.mjs.map +1 -0
- package/lib/labs/VDateInput/index.d.mts +1352 -0
- package/lib/labs/VDateInput/index.mjs +3 -0
- package/lib/labs/VDateInput/index.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDateCard.css +33 -0
- package/lib/labs/VDatePicker/VDateCard.mjs +112 -0
- package/lib/labs/VDatePicker/VDateCard.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDateCard.sass +32 -0
- package/lib/labs/VDatePicker/VDatePicker.css +23 -0
- package/lib/labs/VDatePicker/VDatePicker.mjs +172 -0
- package/lib/labs/VDatePicker/VDatePicker.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDatePicker.sass +23 -0
- package/lib/labs/VDatePicker/VDatePickerControls.css +15 -0
- package/lib/labs/VDatePicker/VDatePickerControls.mjs +80 -0
- package/lib/labs/VDatePicker/VDatePickerControls.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDatePickerControls.sass +15 -0
- package/lib/labs/VDatePicker/VDatePickerHeader.css +54 -0
- package/lib/labs/VDatePicker/VDatePickerHeader.mjs +75 -0
- package/lib/labs/VDatePicker/VDatePickerHeader.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDatePickerHeader.sass +51 -0
- package/lib/labs/VDatePicker/VDatePickerInput.sass +17 -0
- package/lib/labs/VDatePicker/VDatePickerMonth.css +77 -0
- package/lib/labs/VDatePicker/VDatePickerMonth.mjs +286 -0
- package/lib/labs/VDatePicker/VDatePickerMonth.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDatePickerMonth.sass +69 -0
- package/lib/{components → labs}/VDatePicker/VDatePickerTitle.mjs +1 -1
- package/lib/labs/VDatePicker/VDatePickerTitle.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDatePickerYears.css +18 -0
- package/lib/labs/VDatePicker/VDatePickerYears.mjs +64 -0
- package/lib/labs/VDatePicker/VDatePickerYears.mjs.map +1 -0
- package/lib/labs/VDatePicker/VDatePickerYears.sass +16 -0
- package/lib/labs/VDatePicker/composables.mjs +33 -0
- package/lib/labs/VDatePicker/composables.mjs.map +1 -0
- package/lib/labs/VDatePicker/index.d.mts +4430 -0
- package/lib/labs/VDatePicker/index.mjs +7 -0
- package/lib/labs/VDatePicker/index.mjs.map +1 -0
- package/lib/labs/VDatePicker/mixins/date-picker-table.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/eventHelpers.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/index.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/isDateAllowed.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/monthChange.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/pad.mjs.map +1 -0
- package/lib/labs/VDatePicker/util/sanitizeDateString.mjs.map +1 -0
- package/lib/labs/VDatePicker/utils.mjs +69 -0
- package/lib/labs/VDatePicker/utils.mjs.map +1 -0
- package/lib/labs/VDateRangePicker/VDateRangeCard.mjs +87 -0
- package/lib/labs/VDateRangePicker/VDateRangeCard.mjs.map +1 -0
- package/lib/labs/VDateRangePicker/VDateRangeCard.sass +33 -0
- package/lib/labs/VDateRangePicker/VDateRangePicker.mjs +131 -0
- package/lib/labs/VDateRangePicker/VDateRangePicker.mjs.map +1 -0
- package/lib/labs/VDateRangePicker/VDateRangePicker.sass +21 -0
- package/lib/labs/VDateRangePicker/VDateRangePickerHeader.mjs +103 -0
- package/lib/labs/VDateRangePicker/VDateRangePickerHeader.mjs.map +1 -0
- package/lib/labs/VDateRangePicker/VDateRangePickerHeader.sass +39 -0
- package/lib/labs/VDateRangePicker/VDateRangePickerMonth.mjs +61 -0
- package/lib/labs/VDateRangePicker/VDateRangePickerMonth.mjs.map +1 -0
- package/lib/labs/VDateRangePicker/VDateRangePickerMonth.sass +12 -0
- package/lib/labs/VDateRangePicker/index.d.mts +1065 -0
- package/lib/labs/VDateRangePicker/index.mjs +3 -0
- package/lib/labs/VDateRangePicker/index.mjs.map +1 -0
- package/lib/labs/VPicker/VPicker.css +57 -0
- package/lib/labs/VPicker/VPicker.mjs +47 -0
- package/lib/labs/VPicker/VPicker.mjs.map +1 -0
- package/lib/labs/VPicker/VPicker.sass +53 -0
- package/lib/labs/VPicker/VPickerTitle.mjs +4 -0
- package/lib/labs/VPicker/VPickerTitle.mjs.map +1 -0
- package/lib/labs/VPicker/index.d.mts +541 -0
- package/lib/labs/VPicker/index.mjs +3 -0
- package/lib/labs/VPicker/index.mjs.map +1 -0
- package/lib/labs/components.d.mts +5136 -198
- package/lib/labs/components.mjs +2 -0
- package/lib/labs/components.mjs.map +1 -1
- package/lib/labs/date/DateAdapter.mjs.map +1 -1
- package/lib/labs/date/adapters/vuetify.d.mts +28 -25
- package/lib/labs/date/adapters/vuetify.mjs +65 -75
- package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
- package/lib/labs/date/date.mjs +82 -11
- package/lib/labs/date/date.mjs.map +1 -1
- package/lib/labs/date/index.d.mts +31 -30
- package/lib/locale/af.mjs +14 -5
- package/lib/locale/af.mjs.map +1 -1
- package/lib/locale/ar.mjs +14 -5
- package/lib/locale/ar.mjs.map +1 -1
- package/lib/locale/az.mjs +14 -5
- package/lib/locale/az.mjs.map +1 -1
- package/lib/locale/bg.mjs +14 -5
- package/lib/locale/bg.mjs.map +1 -1
- package/lib/locale/ca.mjs +14 -5
- package/lib/locale/ca.mjs.map +1 -1
- package/lib/locale/ckb.mjs +14 -5
- package/lib/locale/ckb.mjs.map +1 -1
- package/lib/locale/cs.mjs +14 -5
- package/lib/locale/cs.mjs.map +1 -1
- package/lib/locale/da.mjs +14 -5
- package/lib/locale/da.mjs.map +1 -1
- package/lib/locale/de.mjs +14 -5
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/el.mjs +14 -5
- package/lib/locale/el.mjs.map +1 -1
- package/lib/locale/en.mjs +14 -5
- package/lib/locale/en.mjs.map +1 -1
- package/lib/locale/es.mjs +14 -5
- package/lib/locale/es.mjs.map +1 -1
- package/lib/locale/et.mjs +14 -5
- package/lib/locale/et.mjs.map +1 -1
- package/lib/locale/fa.mjs +14 -5
- package/lib/locale/fa.mjs.map +1 -1
- package/lib/locale/fi.mjs +14 -5
- package/lib/locale/fi.mjs.map +1 -1
- package/lib/locale/fr.mjs +14 -5
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/he.mjs +14 -5
- package/lib/locale/he.mjs.map +1 -1
- package/lib/locale/hr.mjs +14 -5
- package/lib/locale/hr.mjs.map +1 -1
- package/lib/locale/hu.mjs +14 -5
- package/lib/locale/hu.mjs.map +1 -1
- package/lib/locale/id.mjs +14 -5
- package/lib/locale/id.mjs.map +1 -1
- package/lib/locale/index.d.mts +588 -210
- package/lib/locale/it.mjs +14 -5
- package/lib/locale/it.mjs.map +1 -1
- package/lib/locale/ja.mjs +14 -5
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/locale/ko.mjs +14 -5
- package/lib/locale/ko.mjs.map +1 -1
- package/lib/locale/lt.mjs +14 -5
- package/lib/locale/lt.mjs.map +1 -1
- package/lib/locale/lv.mjs +14 -5
- package/lib/locale/lv.mjs.map +1 -1
- package/lib/locale/nl.mjs +14 -5
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/locale/no.mjs +14 -5
- package/lib/locale/no.mjs.map +1 -1
- package/lib/locale/pl.mjs +14 -5
- package/lib/locale/pl.mjs.map +1 -1
- package/lib/locale/pt.mjs +14 -5
- package/lib/locale/pt.mjs.map +1 -1
- package/lib/locale/ro.mjs +14 -5
- package/lib/locale/ro.mjs.map +1 -1
- package/lib/locale/ru.mjs +14 -5
- package/lib/locale/ru.mjs.map +1 -1
- package/lib/locale/sk.mjs +14 -5
- package/lib/locale/sk.mjs.map +1 -1
- package/lib/locale/sl.mjs +14 -5
- package/lib/locale/sl.mjs.map +1 -1
- package/lib/locale/sr-Cyrl.mjs +14 -5
- package/lib/locale/sr-Cyrl.mjs.map +1 -1
- package/lib/locale/sr-Latn.mjs +14 -5
- package/lib/locale/sr-Latn.mjs.map +1 -1
- package/lib/locale/sv.mjs +14 -5
- package/lib/locale/sv.mjs.map +1 -1
- package/lib/locale/th.mjs +14 -5
- package/lib/locale/th.mjs.map +1 -1
- package/lib/locale/tr.mjs +14 -5
- package/lib/locale/tr.mjs.map +1 -1
- package/lib/locale/uk.mjs +14 -5
- package/lib/locale/uk.mjs.map +1 -1
- package/lib/locale/vi.mjs +14 -5
- package/lib/locale/vi.mjs.map +1 -1
- package/lib/locale/zh-Hans.mjs +14 -5
- package/lib/locale/zh-Hans.mjs.map +1 -1
- package/lib/locale/zh-Hant.mjs +14 -5
- package/lib/locale/zh-Hant.mjs.map +1 -1
- package/lib/util/bindProps.mjs +49 -0
- package/lib/util/bindProps.mjs.map +1 -0
- package/lib/util/dateTimeUtils.mjs +68 -0
- package/lib/util/dateTimeUtils.mjs.map +1 -1
- package/lib/util/helpers.mjs +3 -0
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/index.mjs +1 -0
- package/lib/util/index.mjs.map +1 -1
- package/package.json +5 -2
- package/lib/components/VDatePicker/VDatePicker.mjs +0 -475
- package/lib/components/VDatePicker/VDatePicker.mjs.map +0 -1
- package/lib/components/VDatePicker/VDatePickerDateTable.mjs +0 -120
- package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +0 -1
- package/lib/components/VDatePicker/VDatePickerHeader.mjs +0 -136
- package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +0 -1
- package/lib/components/VDatePicker/VDatePickerHeader.sass +0 -46
- package/lib/components/VDatePicker/VDatePickerMonthTable.mjs +0 -48
- package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +0 -1
- package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +0 -1
- package/lib/components/VDatePicker/VDatePickerYears.mjs +0 -84
- package/lib/components/VDatePicker/VDatePickerYears.mjs.map +0 -1
- package/lib/components/VDatePicker/VDatePickerYears.sass +0 -30
- package/lib/components/VDatePicker/index.mjs +0 -18
- package/lib/components/VDatePicker/index.mjs.map +0 -1
- package/lib/components/VDatePicker/mixins/date-picker-table.mjs.map +0 -1
- package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +0 -1
- package/lib/components/VDatePicker/util/eventHelpers.mjs.map +0 -1
- package/lib/components/VDatePicker/util/index.mjs.map +0 -1
- package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +0 -1
- package/lib/components/VDatePicker/util/monthChange.mjs.map +0 -1
- package/lib/components/VDatePicker/util/pad.mjs.map +0 -1
- package/lib/components/VDatePicker/util/sanitizeDateString.mjs.map +0 -1
- package/lib/components/VPicker/VPicker.mjs +0 -86
- package/lib/components/VPicker/VPicker.mjs.map +0 -1
- package/lib/components/VPicker/VPicker.sass +0 -94
- package/lib/components/VPicker/index.mjs +0 -4
- package/lib/components/VPicker/index.mjs.map +0 -1
- /package/lib/{components → labs}/VDatePicker/VDatePickerTable.sass +0 -0
- /package/lib/{components → labs}/VDatePicker/VDatePickerTitle.sass +0 -0
- /package/lib/{components → labs}/VDatePicker/_variables.scss +0 -0
- /package/lib/{components → labs}/VDatePicker/mixins/date-picker-table.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/createNativeLocaleFormatter.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/eventHelpers.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/index.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/isDateAllowed.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/monthChange.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/pad.mjs +0 -0
- /package/lib/{components → labs}/VDatePicker/util/sanitizeDateString.mjs +0 -0
- /package/lib/{components → labs}/VPicker/_variables.scss +0 -0
|
@@ -125,6 +125,7 @@ interface IconAliases {
|
|
|
125
125
|
file: IconValue;
|
|
126
126
|
plus: IconValue;
|
|
127
127
|
minus: IconValue;
|
|
128
|
+
calendar: IconValue;
|
|
128
129
|
}
|
|
129
130
|
interface IconProps {
|
|
130
131
|
tag: string;
|
|
@@ -136,41 +137,47 @@ interface IconSet {
|
|
|
136
137
|
component: IconComponent;
|
|
137
138
|
}
|
|
138
139
|
type IconOptions = {
|
|
139
|
-
defaultSet
|
|
140
|
+
defaultSet?: string;
|
|
140
141
|
aliases?: Partial<IconAliases>;
|
|
141
|
-
sets
|
|
142
|
+
sets?: Record<string, IconSet>;
|
|
142
143
|
};
|
|
143
144
|
|
|
144
|
-
interface DateAdapter<
|
|
145
|
-
date(value?: any):
|
|
146
|
-
format(date:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
145
|
+
interface DateAdapter<T> {
|
|
146
|
+
date(value?: any): T | null;
|
|
147
|
+
format(date: T, formatString: string): string;
|
|
148
|
+
toJsDate(value: T): Date;
|
|
149
|
+
startOfMonth(date: T): T;
|
|
150
|
+
endOfMonth(date: T): T;
|
|
151
|
+
startOfYear(date: T): T;
|
|
152
|
+
endOfYear(date: T): T;
|
|
153
|
+
isBefore(date: T, comparing: T): boolean;
|
|
154
|
+
isAfter(date: T, comparing: T): boolean;
|
|
155
|
+
isEqual(date: T, comparing: T): boolean;
|
|
156
|
+
isSameDay(date: T, comparing: T): boolean;
|
|
157
|
+
isSameMonth(date: T, comparing: T): boolean;
|
|
155
158
|
isValid(date: any): boolean;
|
|
156
|
-
isWithinRange(date:
|
|
157
|
-
addDays(date:
|
|
158
|
-
addMonths(date:
|
|
159
|
-
getYear(date:
|
|
160
|
-
setYear(date:
|
|
161
|
-
getDiff(date:
|
|
162
|
-
|
|
163
|
-
getWeekArray(date: Date): (Date | null)[][];
|
|
159
|
+
isWithinRange(date: T, range: [T, T]): boolean;
|
|
160
|
+
addDays(date: T, amount: number): T;
|
|
161
|
+
addMonths(date: T, amount: number): T;
|
|
162
|
+
getYear(date: T): number;
|
|
163
|
+
setYear(date: T, year: number): T;
|
|
164
|
+
getDiff(date: T, comparing: T | string, unit?: string): number;
|
|
165
|
+
getWeekArray(date: T): T[][];
|
|
164
166
|
getWeekdays(): string[];
|
|
165
|
-
getMonth(date:
|
|
167
|
+
getMonth(date: T): number;
|
|
166
168
|
}
|
|
167
169
|
|
|
168
|
-
interface DateInstance extends DateAdapter<
|
|
169
|
-
locale
|
|
170
|
-
}
|
|
171
|
-
type
|
|
172
|
-
adapter: (new (
|
|
170
|
+
interface DateInstance<T> extends DateAdapter<T> {
|
|
171
|
+
locale?: any;
|
|
172
|
+
}
|
|
173
|
+
type InternalDateOptions<T = any> = {
|
|
174
|
+
adapter: (new (options: {
|
|
175
|
+
locale: any;
|
|
176
|
+
}) => DateInstance<T>) | DateInstance<T>;
|
|
177
|
+
formats?: Record<string, string>;
|
|
178
|
+
locale: Record<string, any>;
|
|
173
179
|
};
|
|
180
|
+
type DateOptions<T = any> = Partial<InternalDateOptions<T>>;
|
|
174
181
|
|
|
175
182
|
interface VuetifyOptions {
|
|
176
183
|
aliases?: Record<string, any>;
|
package/lib/blueprints/md1.d.mts
CHANGED
|
@@ -125,6 +125,7 @@ interface IconAliases {
|
|
|
125
125
|
file: IconValue;
|
|
126
126
|
plus: IconValue;
|
|
127
127
|
minus: IconValue;
|
|
128
|
+
calendar: IconValue;
|
|
128
129
|
}
|
|
129
130
|
interface IconProps {
|
|
130
131
|
tag: string;
|
|
@@ -136,41 +137,47 @@ interface IconSet {
|
|
|
136
137
|
component: IconComponent;
|
|
137
138
|
}
|
|
138
139
|
type IconOptions = {
|
|
139
|
-
defaultSet
|
|
140
|
+
defaultSet?: string;
|
|
140
141
|
aliases?: Partial<IconAliases>;
|
|
141
|
-
sets
|
|
142
|
+
sets?: Record<string, IconSet>;
|
|
142
143
|
};
|
|
143
144
|
|
|
144
|
-
interface DateAdapter<
|
|
145
|
-
date(value?: any):
|
|
146
|
-
format(date:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
145
|
+
interface DateAdapter<T> {
|
|
146
|
+
date(value?: any): T | null;
|
|
147
|
+
format(date: T, formatString: string): string;
|
|
148
|
+
toJsDate(value: T): Date;
|
|
149
|
+
startOfMonth(date: T): T;
|
|
150
|
+
endOfMonth(date: T): T;
|
|
151
|
+
startOfYear(date: T): T;
|
|
152
|
+
endOfYear(date: T): T;
|
|
153
|
+
isBefore(date: T, comparing: T): boolean;
|
|
154
|
+
isAfter(date: T, comparing: T): boolean;
|
|
155
|
+
isEqual(date: T, comparing: T): boolean;
|
|
156
|
+
isSameDay(date: T, comparing: T): boolean;
|
|
157
|
+
isSameMonth(date: T, comparing: T): boolean;
|
|
155
158
|
isValid(date: any): boolean;
|
|
156
|
-
isWithinRange(date:
|
|
157
|
-
addDays(date:
|
|
158
|
-
addMonths(date:
|
|
159
|
-
getYear(date:
|
|
160
|
-
setYear(date:
|
|
161
|
-
getDiff(date:
|
|
162
|
-
|
|
163
|
-
getWeekArray(date: Date): (Date | null)[][];
|
|
159
|
+
isWithinRange(date: T, range: [T, T]): boolean;
|
|
160
|
+
addDays(date: T, amount: number): T;
|
|
161
|
+
addMonths(date: T, amount: number): T;
|
|
162
|
+
getYear(date: T): number;
|
|
163
|
+
setYear(date: T, year: number): T;
|
|
164
|
+
getDiff(date: T, comparing: T | string, unit?: string): number;
|
|
165
|
+
getWeekArray(date: T): T[][];
|
|
164
166
|
getWeekdays(): string[];
|
|
165
|
-
getMonth(date:
|
|
167
|
+
getMonth(date: T): number;
|
|
166
168
|
}
|
|
167
169
|
|
|
168
|
-
interface DateInstance extends DateAdapter<
|
|
169
|
-
locale
|
|
170
|
-
}
|
|
171
|
-
type
|
|
172
|
-
adapter: (new (
|
|
170
|
+
interface DateInstance<T> extends DateAdapter<T> {
|
|
171
|
+
locale?: any;
|
|
172
|
+
}
|
|
173
|
+
type InternalDateOptions<T = any> = {
|
|
174
|
+
adapter: (new (options: {
|
|
175
|
+
locale: any;
|
|
176
|
+
}) => DateInstance<T>) | DateInstance<T>;
|
|
177
|
+
formats?: Record<string, string>;
|
|
178
|
+
locale: Record<string, any>;
|
|
173
179
|
};
|
|
180
|
+
type DateOptions<T = any> = Partial<InternalDateOptions<T>>;
|
|
174
181
|
|
|
175
182
|
interface VuetifyOptions {
|
|
176
183
|
aliases?: Record<string, any>;
|
package/lib/blueprints/md2.d.mts
CHANGED
|
@@ -125,6 +125,7 @@ interface IconAliases {
|
|
|
125
125
|
file: IconValue;
|
|
126
126
|
plus: IconValue;
|
|
127
127
|
minus: IconValue;
|
|
128
|
+
calendar: IconValue;
|
|
128
129
|
}
|
|
129
130
|
interface IconProps {
|
|
130
131
|
tag: string;
|
|
@@ -136,41 +137,47 @@ interface IconSet {
|
|
|
136
137
|
component: IconComponent;
|
|
137
138
|
}
|
|
138
139
|
type IconOptions = {
|
|
139
|
-
defaultSet
|
|
140
|
+
defaultSet?: string;
|
|
140
141
|
aliases?: Partial<IconAliases>;
|
|
141
|
-
sets
|
|
142
|
+
sets?: Record<string, IconSet>;
|
|
142
143
|
};
|
|
143
144
|
|
|
144
|
-
interface DateAdapter<
|
|
145
|
-
date(value?: any):
|
|
146
|
-
format(date:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
145
|
+
interface DateAdapter<T> {
|
|
146
|
+
date(value?: any): T | null;
|
|
147
|
+
format(date: T, formatString: string): string;
|
|
148
|
+
toJsDate(value: T): Date;
|
|
149
|
+
startOfMonth(date: T): T;
|
|
150
|
+
endOfMonth(date: T): T;
|
|
151
|
+
startOfYear(date: T): T;
|
|
152
|
+
endOfYear(date: T): T;
|
|
153
|
+
isBefore(date: T, comparing: T): boolean;
|
|
154
|
+
isAfter(date: T, comparing: T): boolean;
|
|
155
|
+
isEqual(date: T, comparing: T): boolean;
|
|
156
|
+
isSameDay(date: T, comparing: T): boolean;
|
|
157
|
+
isSameMonth(date: T, comparing: T): boolean;
|
|
155
158
|
isValid(date: any): boolean;
|
|
156
|
-
isWithinRange(date:
|
|
157
|
-
addDays(date:
|
|
158
|
-
addMonths(date:
|
|
159
|
-
getYear(date:
|
|
160
|
-
setYear(date:
|
|
161
|
-
getDiff(date:
|
|
162
|
-
|
|
163
|
-
getWeekArray(date: Date): (Date | null)[][];
|
|
159
|
+
isWithinRange(date: T, range: [T, T]): boolean;
|
|
160
|
+
addDays(date: T, amount: number): T;
|
|
161
|
+
addMonths(date: T, amount: number): T;
|
|
162
|
+
getYear(date: T): number;
|
|
163
|
+
setYear(date: T, year: number): T;
|
|
164
|
+
getDiff(date: T, comparing: T | string, unit?: string): number;
|
|
165
|
+
getWeekArray(date: T): T[][];
|
|
164
166
|
getWeekdays(): string[];
|
|
165
|
-
getMonth(date:
|
|
167
|
+
getMonth(date: T): number;
|
|
166
168
|
}
|
|
167
169
|
|
|
168
|
-
interface DateInstance extends DateAdapter<
|
|
169
|
-
locale
|
|
170
|
-
}
|
|
171
|
-
type
|
|
172
|
-
adapter: (new (
|
|
170
|
+
interface DateInstance<T> extends DateAdapter<T> {
|
|
171
|
+
locale?: any;
|
|
172
|
+
}
|
|
173
|
+
type InternalDateOptions<T = any> = {
|
|
174
|
+
adapter: (new (options: {
|
|
175
|
+
locale: any;
|
|
176
|
+
}) => DateInstance<T>) | DateInstance<T>;
|
|
177
|
+
formats?: Record<string, string>;
|
|
178
|
+
locale: Record<string, any>;
|
|
173
179
|
};
|
|
180
|
+
type DateOptions<T = any> = Partial<InternalDateOptions<T>>;
|
|
174
181
|
|
|
175
182
|
interface VuetifyOptions {
|
|
176
183
|
aliases?: Record<string, any>;
|
package/lib/blueprints/md3.d.mts
CHANGED
|
@@ -125,6 +125,7 @@ interface IconAliases {
|
|
|
125
125
|
file: IconValue;
|
|
126
126
|
plus: IconValue;
|
|
127
127
|
minus: IconValue;
|
|
128
|
+
calendar: IconValue;
|
|
128
129
|
}
|
|
129
130
|
interface IconProps {
|
|
130
131
|
tag: string;
|
|
@@ -136,41 +137,47 @@ interface IconSet {
|
|
|
136
137
|
component: IconComponent;
|
|
137
138
|
}
|
|
138
139
|
type IconOptions = {
|
|
139
|
-
defaultSet
|
|
140
|
+
defaultSet?: string;
|
|
140
141
|
aliases?: Partial<IconAliases>;
|
|
141
|
-
sets
|
|
142
|
+
sets?: Record<string, IconSet>;
|
|
142
143
|
};
|
|
143
144
|
|
|
144
|
-
interface DateAdapter<
|
|
145
|
-
date(value?: any):
|
|
146
|
-
format(date:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
145
|
+
interface DateAdapter<T> {
|
|
146
|
+
date(value?: any): T | null;
|
|
147
|
+
format(date: T, formatString: string): string;
|
|
148
|
+
toJsDate(value: T): Date;
|
|
149
|
+
startOfMonth(date: T): T;
|
|
150
|
+
endOfMonth(date: T): T;
|
|
151
|
+
startOfYear(date: T): T;
|
|
152
|
+
endOfYear(date: T): T;
|
|
153
|
+
isBefore(date: T, comparing: T): boolean;
|
|
154
|
+
isAfter(date: T, comparing: T): boolean;
|
|
155
|
+
isEqual(date: T, comparing: T): boolean;
|
|
156
|
+
isSameDay(date: T, comparing: T): boolean;
|
|
157
|
+
isSameMonth(date: T, comparing: T): boolean;
|
|
155
158
|
isValid(date: any): boolean;
|
|
156
|
-
isWithinRange(date:
|
|
157
|
-
addDays(date:
|
|
158
|
-
addMonths(date:
|
|
159
|
-
getYear(date:
|
|
160
|
-
setYear(date:
|
|
161
|
-
getDiff(date:
|
|
162
|
-
|
|
163
|
-
getWeekArray(date: Date): (Date | null)[][];
|
|
159
|
+
isWithinRange(date: T, range: [T, T]): boolean;
|
|
160
|
+
addDays(date: T, amount: number): T;
|
|
161
|
+
addMonths(date: T, amount: number): T;
|
|
162
|
+
getYear(date: T): number;
|
|
163
|
+
setYear(date: T, year: number): T;
|
|
164
|
+
getDiff(date: T, comparing: T | string, unit?: string): number;
|
|
165
|
+
getWeekArray(date: T): T[][];
|
|
164
166
|
getWeekdays(): string[];
|
|
165
|
-
getMonth(date:
|
|
167
|
+
getMonth(date: T): number;
|
|
166
168
|
}
|
|
167
169
|
|
|
168
|
-
interface DateInstance extends DateAdapter<
|
|
169
|
-
locale
|
|
170
|
-
}
|
|
171
|
-
type
|
|
172
|
-
adapter: (new (
|
|
170
|
+
interface DateInstance<T> extends DateAdapter<T> {
|
|
171
|
+
locale?: any;
|
|
172
|
+
}
|
|
173
|
+
type InternalDateOptions<T = any> = {
|
|
174
|
+
adapter: (new (options: {
|
|
175
|
+
locale: any;
|
|
176
|
+
}) => DateInstance<T>) | DateInstance<T>;
|
|
177
|
+
formats?: Record<string, string>;
|
|
178
|
+
locale: Record<string, any>;
|
|
173
179
|
};
|
|
180
|
+
type DateOptions<T = any> = Partial<InternalDateOptions<T>>;
|
|
174
181
|
|
|
175
182
|
interface VuetifyOptions {
|
|
176
183
|
aliases?: Record<string, any>;
|
|
@@ -7,9 +7,8 @@ import { makeVToolbarProps, VToolbar } from "../VToolbar/VToolbar.mjs"; // Compo
|
|
|
7
7
|
import { makeLayoutItemProps, useLayoutItem } from "../../composables/layout.mjs";
|
|
8
8
|
import { useProxiedModel } from "../../composables/proxiedModel.mjs";
|
|
9
9
|
import { makeScrollProps, useScroll } from "../../composables/scroll.mjs";
|
|
10
|
-
import { useSsrBoot } from "../../composables/ssrBoot.mjs";
|
|
11
|
-
import {
|
|
12
|
-
import { computed, ref, shallowRef, toRef, watch } from 'vue';
|
|
10
|
+
import { useSsrBoot } from "../../composables/ssrBoot.mjs"; // Utilities
|
|
11
|
+
import { computed, ref, shallowRef, toRef, watchEffect } from 'vue';
|
|
13
12
|
import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
14
13
|
export const makeVAppBarProps = propsFactory({
|
|
15
14
|
scrollBehavior: String,
|
|
@@ -80,7 +79,7 @@ export const VAppBar = genericComponent()({
|
|
|
80
79
|
const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0;
|
|
81
80
|
return height + extensionHeight;
|
|
82
81
|
});
|
|
83
|
-
|
|
82
|
+
watchEffect(() => {
|
|
84
83
|
if (scrollBehavior.value.hide) {
|
|
85
84
|
if (scrollBehavior.value.inverted) {
|
|
86
85
|
isActive.value = currentScroll.value > scrollThreshold.value;
|
|
@@ -90,12 +89,6 @@ export const VAppBar = genericComponent()({
|
|
|
90
89
|
} else {
|
|
91
90
|
isActive.value = true;
|
|
92
91
|
}
|
|
93
|
-
}
|
|
94
|
-
useToggleScope(() => !!props.scrollBehavior, () => {
|
|
95
|
-
watch(currentScroll, setActive, {
|
|
96
|
-
immediate: true
|
|
97
|
-
});
|
|
98
|
-
watch(scrollBehavior, setActive);
|
|
99
92
|
});
|
|
100
93
|
const {
|
|
101
94
|
ssrBootStyles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VAppBar.mjs","names":["makeVToolbarProps","VToolbar","makeLayoutItemProps","useLayoutItem","useProxiedModel","makeScrollProps","useScroll","useSsrBoot","useToggleScope","computed","ref","shallowRef","toRef","watch","genericComponent","propsFactory","useRender","makeVAppBarProps","scrollBehavior","String","modelValue","type","Boolean","default","location","validator","value","includes","height","Number","VAppBar","name","props","emits","setup","_ref","slots","vToolbarRef","isActive","behavior","Set","split","hide","has","inverted","collapse","elevate","fadeImage","canScroll","currentScroll","scrollThreshold","isScrollingUp","scrollRatio","isCollapsed","isFlat","flat","opacity","undefined","contentHeight","extensionHeight","setActive","immediate","ssrBootStyles","layoutItemStyles","id","order","parseInt","position","layoutSize","elementSize","active","absolute","toolbarProps","filterProps","_createVNode","_mergeProps","class","style"],"sources":["../../../src/components/VAppBar/VAppBar.tsx"],"sourcesContent":["// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeScrollProps, useScroll } from '@/composables/scroll'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VToolbarSlots } from '@/components/VToolbar/VToolbar'\n\nexport const makeVAppBarProps = propsFactory({\n scrollBehavior: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n location: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n ...makeScrollProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n}, 'VAppBar')\n\nexport const VAppBar = genericComponent<VToolbarSlots>()({\n name: 'VAppBar',\n\n props: makeVAppBarProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref<VToolbar>()\n const isActive = useProxiedModel(props, 'modelValue')\n const scrollBehavior = computed(() => {\n const behavior = new Set(props.scrollBehavior?.split(' ') ?? [])\n return {\n hide: behavior.has('hide'),\n // fullyHide: behavior.has('fully-hide'),\n inverted: behavior.has('inverted'),\n collapse: behavior.has('collapse'),\n elevate: behavior.has('elevate'),\n fadeImage: behavior.has('fade-image'),\n // shrink: behavior.has('shrink'),\n }\n })\n const canScroll = computed(() => {\n const behavior = scrollBehavior.value\n return (\n behavior.hide ||\n // behavior.fullyHide ||\n behavior.inverted ||\n behavior.collapse ||\n behavior.elevate ||\n behavior.fadeImage ||\n // behavior.shrink ||\n !isActive.value\n )\n })\n const {\n currentScroll,\n scrollThreshold,\n isScrollingUp,\n scrollRatio,\n } = useScroll(props, { canScroll })\n\n const isCollapsed = computed(() => props.collapse || (\n scrollBehavior.value.collapse &&\n (scrollBehavior.value.inverted ? scrollRatio.value > 0 : scrollRatio.value === 0)\n ))\n const isFlat = computed(() => props.flat || (\n scrollBehavior.value.elevate &&\n (scrollBehavior.value.inverted ? currentScroll.value > 0 : currentScroll.value === 0)\n ))\n const opacity = computed(() => (\n scrollBehavior.value.fadeImage\n ? (scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value)\n : undefined\n ))\n const height = computed(() => {\n if (scrollBehavior.value.hide && scrollBehavior.value.inverted) return 0\n\n const height = vToolbarRef.value?.contentHeight ?? 0\n const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0\n\n return (height + extensionHeight)\n })\n function setActive () {\n if (scrollBehavior.value.hide) {\n if (scrollBehavior.value.inverted) {\n isActive.value = currentScroll.value > scrollThreshold.value\n } else {\n isActive.value = isScrollingUp.value || (currentScroll.value < scrollThreshold.value)\n }\n } else {\n isActive.value = true\n }\n }\n\n useToggleScope(() => !!props.scrollBehavior, () => {\n watch(currentScroll, setActive, { immediate: true })\n watch(scrollBehavior, setActive)\n })\n\n const { ssrBootStyles } = useSsrBoot()\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize: height,\n elementSize: shallowRef(undefined),\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n useRender(() => {\n const [toolbarProps] = VToolbar.filterProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.location === 'bottom',\n },\n props.class,\n ]}\n style={[\n {\n ...layoutItemStyles.value,\n '--v-toolbar-image-opacity': opacity.value,\n height: undefined,\n ...ssrBootStyles.value,\n },\n props.style,\n ]}\n { ...toolbarProps }\n collapse={ isCollapsed.value }\n flat={ isFlat.value }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VAppBar.mjs","names":["makeVToolbarProps","VToolbar","makeLayoutItemProps","useLayoutItem","useProxiedModel","makeScrollProps","useScroll","useSsrBoot","computed","ref","shallowRef","toRef","watchEffect","genericComponent","propsFactory","useRender","makeVAppBarProps","scrollBehavior","String","modelValue","type","Boolean","default","location","validator","value","includes","height","Number","VAppBar","name","props","emits","setup","_ref","slots","vToolbarRef","isActive","behavior","Set","split","hide","has","inverted","collapse","elevate","fadeImage","canScroll","currentScroll","scrollThreshold","isScrollingUp","scrollRatio","isCollapsed","isFlat","flat","opacity","undefined","contentHeight","extensionHeight","ssrBootStyles","layoutItemStyles","id","order","parseInt","position","layoutSize","elementSize","active","absolute","toolbarProps","filterProps","_createVNode","_mergeProps","class","style"],"sources":["../../../src/components/VAppBar/VAppBar.tsx"],"sourcesContent":["// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeScrollProps, useScroll } from '@/composables/scroll'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VToolbarSlots } from '@/components/VToolbar/VToolbar'\n\nexport const makeVAppBarProps = propsFactory({\n scrollBehavior: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n location: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n ...makeScrollProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n}, 'VAppBar')\n\nexport const VAppBar = genericComponent<VToolbarSlots>()({\n name: 'VAppBar',\n\n props: makeVAppBarProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref<VToolbar>()\n const isActive = useProxiedModel(props, 'modelValue')\n const scrollBehavior = computed(() => {\n const behavior = new Set(props.scrollBehavior?.split(' ') ?? [])\n return {\n hide: behavior.has('hide'),\n // fullyHide: behavior.has('fully-hide'),\n inverted: behavior.has('inverted'),\n collapse: behavior.has('collapse'),\n elevate: behavior.has('elevate'),\n fadeImage: behavior.has('fade-image'),\n // shrink: behavior.has('shrink'),\n }\n })\n const canScroll = computed(() => {\n const behavior = scrollBehavior.value\n return (\n behavior.hide ||\n // behavior.fullyHide ||\n behavior.inverted ||\n behavior.collapse ||\n behavior.elevate ||\n behavior.fadeImage ||\n // behavior.shrink ||\n !isActive.value\n )\n })\n const {\n currentScroll,\n scrollThreshold,\n isScrollingUp,\n scrollRatio,\n } = useScroll(props, { canScroll })\n\n const isCollapsed = computed(() => props.collapse || (\n scrollBehavior.value.collapse &&\n (scrollBehavior.value.inverted ? scrollRatio.value > 0 : scrollRatio.value === 0)\n ))\n const isFlat = computed(() => props.flat || (\n scrollBehavior.value.elevate &&\n (scrollBehavior.value.inverted ? currentScroll.value > 0 : currentScroll.value === 0)\n ))\n const opacity = computed(() => (\n scrollBehavior.value.fadeImage\n ? (scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value)\n : undefined\n ))\n const height = computed(() => {\n if (scrollBehavior.value.hide && scrollBehavior.value.inverted) return 0\n\n const height = vToolbarRef.value?.contentHeight ?? 0\n const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0\n\n return (height + extensionHeight)\n })\n\n watchEffect(() => {\n if (scrollBehavior.value.hide) {\n if (scrollBehavior.value.inverted) {\n isActive.value = currentScroll.value > scrollThreshold.value\n } else {\n isActive.value = isScrollingUp.value || (currentScroll.value < scrollThreshold.value)\n }\n } else {\n isActive.value = true\n }\n })\n\n const { ssrBootStyles } = useSsrBoot()\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize: height,\n elementSize: shallowRef(undefined),\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n useRender(() => {\n const [toolbarProps] = VToolbar.filterProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.location === 'bottom',\n },\n props.class,\n ]}\n style={[\n {\n ...layoutItemStyles.value,\n '--v-toolbar-image-opacity': opacity.value,\n height: undefined,\n ...ssrBootStyles.value,\n },\n props.style,\n ]}\n { ...toolbarProps }\n collapse={ isCollapsed.value }\n flat={ isFlat.value }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n"],"mappings":"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"}
|
|
@@ -585,7 +585,9 @@ declare const VAppBarNavIcon: {
|
|
|
585
585
|
density?: Density | undefined;
|
|
586
586
|
variant?: NonNullable<NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">> | undefined;
|
|
587
587
|
stacked?: boolean | undefined;
|
|
588
|
-
ripple?: boolean |
|
|
588
|
+
ripple?: boolean | {
|
|
589
|
+
class: string;
|
|
590
|
+
} | undefined;
|
|
589
591
|
key?: string | number | symbol | undefined;
|
|
590
592
|
location?: Anchor | undefined;
|
|
591
593
|
height?: string | number | undefined;
|
|
@@ -704,7 +706,9 @@ declare const VAppBarNavIcon: {
|
|
|
704
706
|
density: Density;
|
|
705
707
|
variant: NonNullable<NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">>;
|
|
706
708
|
stacked: boolean;
|
|
707
|
-
ripple: boolean
|
|
709
|
+
ripple: boolean | {
|
|
710
|
+
class: string;
|
|
711
|
+
} | undefined;
|
|
708
712
|
} & {
|
|
709
713
|
location?: Anchor | undefined;
|
|
710
714
|
height?: string | number | undefined;
|
|
@@ -763,7 +767,9 @@ declare const VAppBarNavIcon: {
|
|
|
763
767
|
density: Density;
|
|
764
768
|
variant: NonNullable<NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">>;
|
|
765
769
|
stacked: boolean;
|
|
766
|
-
ripple: boolean
|
|
770
|
+
ripple: boolean | {
|
|
771
|
+
class: string;
|
|
772
|
+
} | undefined;
|
|
767
773
|
}, {}, string, vue.SlotsType<Partial<{
|
|
768
774
|
default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
769
775
|
[key: string]: any;
|
|
@@ -811,7 +817,9 @@ declare const VAppBarNavIcon: {
|
|
|
811
817
|
density: Density;
|
|
812
818
|
variant: NonNullable<NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">>;
|
|
813
819
|
stacked: boolean;
|
|
814
|
-
ripple: boolean
|
|
820
|
+
ripple: boolean | {
|
|
821
|
+
class: string;
|
|
822
|
+
} | undefined;
|
|
815
823
|
} & {
|
|
816
824
|
location?: Anchor | undefined;
|
|
817
825
|
height?: string | number | undefined;
|
|
@@ -872,7 +880,9 @@ declare const VAppBarNavIcon: {
|
|
|
872
880
|
density: Density;
|
|
873
881
|
variant: NonNullable<NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">>;
|
|
874
882
|
stacked: boolean;
|
|
875
|
-
ripple: boolean
|
|
883
|
+
ripple: boolean | {
|
|
884
|
+
class: string;
|
|
885
|
+
} | undefined;
|
|
876
886
|
} & {
|
|
877
887
|
location?: Anchor | undefined;
|
|
878
888
|
height?: string | number | undefined;
|
|
@@ -931,7 +941,9 @@ declare const VAppBarNavIcon: {
|
|
|
931
941
|
density: Density;
|
|
932
942
|
variant: NonNullable<NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">>;
|
|
933
943
|
stacked: boolean;
|
|
934
|
-
ripple: boolean
|
|
944
|
+
ripple: boolean | {
|
|
945
|
+
class: string;
|
|
946
|
+
} | undefined;
|
|
935
947
|
}, {}, string, vue.SlotsType<Partial<{
|
|
936
948
|
default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
937
949
|
[key: string]: any;
|
|
@@ -1026,7 +1038,9 @@ declare const VAppBarNavIcon: {
|
|
|
1026
1038
|
block: BooleanConstructor;
|
|
1027
1039
|
stacked: BooleanConstructor;
|
|
1028
1040
|
ripple: {
|
|
1029
|
-
type:
|
|
1041
|
+
type: vue.PropType<boolean | {
|
|
1042
|
+
class: string;
|
|
1043
|
+
} | undefined>;
|
|
1030
1044
|
default: boolean;
|
|
1031
1045
|
};
|
|
1032
1046
|
text: StringConstructor;
|
|
@@ -1111,7 +1125,9 @@ declare const VAppBarNavIcon: {
|
|
|
1111
1125
|
block: BooleanConstructor;
|
|
1112
1126
|
stacked: BooleanConstructor;
|
|
1113
1127
|
ripple: {
|
|
1114
|
-
type:
|
|
1128
|
+
type: vue.PropType<boolean | {
|
|
1129
|
+
class: string;
|
|
1130
|
+
} | undefined>;
|
|
1115
1131
|
default: boolean;
|
|
1116
1132
|
};
|
|
1117
1133
|
text: StringConstructor;
|
|
@@ -1,23 +1,8 @@
|
|
|
1
|
-
.v-input--density-default {
|
|
2
|
-
--autocomplete-chips-margin-bottom: 0px;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.v-input--density-comfortable {
|
|
6
|
-
--autocomplete-chips-margin-bottom: 2px;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
.v-input--density-compact {
|
|
10
|
-
--autocomplete-chips-margin-bottom: 4px;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
1
|
.v-autocomplete .v-field .v-text-field__prefix,
|
|
14
2
|
.v-autocomplete .v-field .v-text-field__suffix,
|
|
15
3
|
.v-autocomplete .v-field .v-field__input, .v-autocomplete .v-field.v-field {
|
|
16
4
|
cursor: text;
|
|
17
5
|
}
|
|
18
|
-
.v-autocomplete .v-field--variant-outlined {
|
|
19
|
-
--autocomplete-chips-margin-bottom: 2px;
|
|
20
|
-
}
|
|
21
6
|
.v-autocomplete .v-field .v-field__input > input {
|
|
22
7
|
align-self: flex-start;
|
|
23
8
|
flex: 1 1;
|
|
@@ -48,14 +33,11 @@
|
|
|
48
33
|
line-height: inherit;
|
|
49
34
|
max-width: 100%;
|
|
50
35
|
}
|
|
51
|
-
.v-autocomplete
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
.v-autocomplete--chips .v-autocomplete__selection, .v-autocomplete--selection-slot .v-autocomplete__selection {
|
|
55
|
-
margin-top: 2px;
|
|
56
|
-
margin-bottom: var(--autocomplete-chips-margin-bottom);
|
|
36
|
+
.v-autocomplete input, .v-autocomplete__selection {
|
|
37
|
+
margin-top: var(--v-input-chips-margin-top);
|
|
38
|
+
margin-bottom: var(--v-input-chips-margin-bottom);
|
|
57
39
|
}
|
|
58
|
-
.v-autocomplete
|
|
40
|
+
.v-autocomplete input:first-child, .v-autocomplete__selection:first-child {
|
|
59
41
|
margin-inline-start: 0;
|
|
60
42
|
}
|
|
61
43
|
.v-autocomplete--selecting-index .v-autocomplete__selection {
|
|
@@ -89,7 +89,7 @@ export const VAutocomplete = genericComponent()({
|
|
|
89
89
|
textColorStyles
|
|
90
90
|
} = useTextColor(color);
|
|
91
91
|
const search = useProxiedModel(props, 'search', '');
|
|
92
|
-
const model = useProxiedModel(props, 'modelValue', [], v => transformIn(wrapInArray(v)), v => {
|
|
92
|
+
const model = useProxiedModel(props, 'modelValue', [], v => transformIn(v === null ? [null] : wrapInArray(v)), v => {
|
|
93
93
|
const transformed = transformOut(v);
|
|
94
94
|
return props.multiple ? transformed : transformed[0] ?? null;
|
|
95
95
|
});
|
|
@@ -115,6 +115,7 @@ export const VAutocomplete = genericComponent()({
|
|
|
115
115
|
const selectFirst = props.autoSelectFirst === true || props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title;
|
|
116
116
|
return selectFirst && displayItems.value.length > 0 && !isPristine.value && !listHasFocus.value;
|
|
117
117
|
});
|
|
118
|
+
const menuDisabled = computed(() => props.hideNoData && !items.value.length || props.readonly || form?.isReadonly.value);
|
|
118
119
|
const listRef = ref();
|
|
119
120
|
function onClear(e) {
|
|
120
121
|
if (props.openOnClear) {
|
|
@@ -123,10 +124,11 @@ export const VAutocomplete = genericComponent()({
|
|
|
123
124
|
search.value = '';
|
|
124
125
|
}
|
|
125
126
|
function onMousedownControl() {
|
|
126
|
-
if (
|
|
127
|
+
if (menuDisabled.value) return;
|
|
127
128
|
menu.value = true;
|
|
128
129
|
}
|
|
129
130
|
function onMousedownMenuIcon(e) {
|
|
131
|
+
if (menuDisabled.value) return;
|
|
130
132
|
if (isFocused.value) {
|
|
131
133
|
e.preventDefault();
|
|
132
134
|
e.stopPropagation();
|
|
@@ -152,13 +154,8 @@ export const VAutocomplete = genericComponent()({
|
|
|
152
154
|
}
|
|
153
155
|
isPristine.value = true;
|
|
154
156
|
}
|
|
155
|
-
if (e.key === 'ArrowDown') {
|
|
157
|
+
if (e.key === 'ArrowDown' && highlightFirst.value) {
|
|
156
158
|
listRef.value?.focus('next');
|
|
157
|
-
if (highlightFirst.value) {
|
|
158
|
-
listRef.value?.focus('next');
|
|
159
|
-
}
|
|
160
|
-
} else if (e.key === 'ArrowUp') {
|
|
161
|
-
listRef.value?.focus('prev');
|
|
162
159
|
}
|
|
163
160
|
if (!props.multiple) return;
|
|
164
161
|
if (['Backspace', 'Delete'].includes(e.key)) {
|
|
@@ -193,6 +190,11 @@ export const VAutocomplete = genericComponent()({
|
|
|
193
190
|
}
|
|
194
191
|
}
|
|
195
192
|
}
|
|
193
|
+
function onListKeydown(e) {
|
|
194
|
+
if (e.key === 'Tab') {
|
|
195
|
+
vTextFieldRef.value?.focus();
|
|
196
|
+
}
|
|
197
|
+
}
|
|
196
198
|
function onInput(e) {
|
|
197
199
|
search.value = e.target.value;
|
|
198
200
|
}
|
|
@@ -262,7 +264,7 @@ export const VAutocomplete = genericComponent()({
|
|
|
262
264
|
});
|
|
263
265
|
useRender(() => {
|
|
264
266
|
const hasChips = !!(props.chips || slots.chip);
|
|
265
|
-
const hasList = !!(!props.hideNoData || displayItems.value.length || slots
|
|
267
|
+
const hasList = !!(!props.hideNoData || displayItems.value.length || slots['prepend-item'] || slots['append-item'] || slots['no-data']);
|
|
266
268
|
const isDirty = model.value.length > 0;
|
|
267
269
|
const [textFieldProps] = VTextField.filterProps(props);
|
|
268
270
|
return _createVNode(VTextField, _mergeProps({
|
|
@@ -295,6 +297,7 @@ export const VAutocomplete = genericComponent()({
|
|
|
295
297
|
"onUpdate:modelValue": $event => menu.value = $event,
|
|
296
298
|
"activator": "parent",
|
|
297
299
|
"contentClass": "v-autocomplete__content",
|
|
300
|
+
"disabled": menuDisabled.value,
|
|
298
301
|
"eager": props.eager,
|
|
299
302
|
"maxHeight": 310,
|
|
300
303
|
"openOnClick": false,
|
|
@@ -307,12 +310,14 @@ export const VAutocomplete = genericComponent()({
|
|
|
307
310
|
"selected": selected.value,
|
|
308
311
|
"selectStrategy": props.multiple ? 'independent' : 'single-independent',
|
|
309
312
|
"onMousedown": e => e.preventDefault(),
|
|
313
|
+
"onKeydown": onListKeydown,
|
|
310
314
|
"onFocusin": onFocusin,
|
|
311
|
-
"onFocusout": onFocusout
|
|
315
|
+
"onFocusout": onFocusout,
|
|
316
|
+
"tabindex": "-1"
|
|
312
317
|
}, {
|
|
313
|
-
default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? _createVNode(VListItem, {
|
|
318
|
+
default: () => [slots['prepend-item']?.(), !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? _createVNode(VListItem, {
|
|
314
319
|
"title": t(props.noDataText)
|
|
315
|
-
}, null)),
|
|
320
|
+
}, null)), displayItems.value.map((item, index) => {
|
|
316
321
|
const itemProps = mergeProps(item.props, {
|
|
317
322
|
key: index,
|
|
318
323
|
active: highlightFirst.value && index === 0 ? true : undefined,
|