@dimailn/vuetify 2.7.2-alpha27 → 2.7.2-alpha29
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/vuetify.js +1493 -325
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +1 -1
- package/dist/vuetify.min.js +2 -2
- package/es5/components/VAlert/VAlert.js +38 -9
- package/es5/components/VAlert/VAlert.js.map +1 -1
- package/es5/components/VAutocomplete/VAutocomplete.js +1 -0
- package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/es5/components/VBadge/VBadge.js +28 -0
- package/es5/components/VBadge/VBadge.js.map +1 -1
- package/es5/components/VBanner/VBanner.js +34 -6
- package/es5/components/VBanner/VBanner.js.map +1 -1
- package/es5/components/VBottomNavigation/VBottomNavigation.js +25 -0
- package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/es5/components/VCarousel/VCarousel.js +28 -3
- package/es5/components/VCarousel/VCarousel.js.map +1 -1
- package/es5/components/VCheckbox/VSimpleCheckbox.js +30 -2
- package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/es5/components/VChip/VChip.js +1 -0
- package/es5/components/VChip/VChip.js.map +1 -1
- package/es5/components/VColorPicker/VColorPicker.js +30 -2
- package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
- package/es5/components/VCombobox/VCombobox.js +1 -0
- package/es5/components/VCombobox/VCombobox.js.map +1 -1
- package/es5/components/VDataIterator/VDataFooter.js +16 -7
- package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
- package/es5/components/VDataIterator/VDataIterator.js +42 -47
- package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
- package/es5/components/VDataTable/RowGroup.js +46 -15
- package/es5/components/VDataTable/RowGroup.js.map +1 -1
- package/es5/components/VDataTable/VDataTable.js +10 -18
- package/es5/components/VDataTable/VDataTable.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeaderDesktop.js +3 -0
- package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeaderMobile.js +28 -37
- package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
- package/es5/components/VDataTable/VEditDialog.js +3 -4
- package/es5/components/VDataTable/VEditDialog.js.map +1 -1
- package/es5/components/VDataTable/VSimpleTable.js +1 -1
- package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
- package/es5/components/VDataTable/VVirtualTable.js +5 -5
- package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
- package/es5/components/VDataTable/mixins/header.js +1 -1
- package/es5/components/VDataTable/mixins/header.js.map +1 -1
- package/es5/components/VDatePicker/VDatePicker.js +21 -9
- package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerHeader.js +24 -8
- package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerTitle.js +33 -8
- package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerYears.js +38 -13
- package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/es5/components/VDatePicker/mixins/date-picker-table.js +33 -17
- package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
- package/es5/components/VInput/VInput.js +36 -8
- package/es5/components/VInput/VInput.js.map +1 -1
- package/es5/components/VList/VListGroup.js +47 -21
- package/es5/components/VList/VListGroup.js.map +1 -1
- package/es5/components/VList/VListItem.js +33 -6
- package/es5/components/VList/VListItem.js.map +1 -1
- package/es5/components/VMenu/VMenu.js +56 -31
- package/es5/components/VMenu/VMenu.js.map +1 -1
- package/es5/components/VMessages/VMessages.js +30 -7
- package/es5/components/VMessages/VMessages.js.map +1 -1
- package/es5/components/VNavigationDrawer/VNavigationDrawer.js +36 -9
- package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/es5/components/VOtpInput/VOtpInput.js +36 -0
- package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
- package/es5/components/VOverlay/VOverlay.js +28 -0
- package/es5/components/VOverlay/VOverlay.js.map +1 -1
- package/es5/components/VPagination/VPagination.js +30 -6
- package/es5/components/VPagination/VPagination.js.map +1 -1
- package/es5/components/VProgressLinear/VProgressLinear.js +28 -0
- package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/es5/components/VRadioGroup/VRadioGroup.js +28 -0
- package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
- package/es5/components/VRating/VRating.js +45 -17
- package/es5/components/VRating/VRating.js.map +1 -1
- package/es5/components/VSelect/VSelect.js +112 -84
- package/es5/components/VSelect/VSelect.js.map +1 -1
- package/es5/components/VSelect/VSelectList.js +73 -19
- package/es5/components/VSelect/VSelectList.js.map +1 -1
- package/es5/components/VSlider/VSlider.js +42 -16
- package/es5/components/VSlider/VSlider.js.map +1 -1
- package/es5/components/VSpeedDial/VSpeedDial.js +10 -8
- package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
- package/es5/components/VTabs/VTabs.js +45 -17
- package/es5/components/VTabs/VTabs.js.map +1 -1
- package/es5/components/VTooltip/VTooltip.js +3 -3
- package/es5/components/VTooltip/VTooltip.js.map +1 -1
- package/es5/components/VTreeview/VTreeview.js +0 -7
- package/es5/components/VTreeview/VTreeview.js.map +1 -1
- package/es5/framework.js +1 -1
- package/es5/mixins/routable/index.js +5 -2
- package/es5/mixins/routable/index.js.map +1 -1
- package/es5/mixins/validatable/index.js +24 -0
- package/es5/mixins/validatable/index.js.map +1 -1
- package/es5/util/console.js +49 -18
- package/es5/util/console.js.map +1 -1
- package/es5/util/helpers.js +5 -1
- package/es5/util/helpers.js.map +1 -1
- package/lib/components/VAlert/VAlert.js +12 -7
- package/lib/components/VAlert/VAlert.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.js +1 -0
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VBadge/VBadge.js +11 -0
- package/lib/components/VBadge/VBadge.js.map +1 -1
- package/lib/components/VBanner/VBanner.js +11 -0
- package/lib/components/VBanner/VBanner.js.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.js +7 -0
- package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/lib/components/VCarousel/VCarousel.js +7 -0
- package/lib/components/VCarousel/VCarousel.js.map +1 -1
- package/lib/components/VCheckbox/VSimpleCheckbox.js +11 -0
- package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/lib/components/VChip/VChip.js +1 -0
- package/lib/components/VChip/VChip.js.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.js +12 -1
- package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.js +1 -0
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VDataIterator/VDataFooter.js +14 -7
- package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.js +26 -31
- package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
- package/lib/components/VDataTable/RowGroup.js +30 -14
- package/lib/components/VDataTable/RowGroup.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +8 -15
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeader.js +1 -1
- package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderDesktop.js +3 -0
- package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderMobile.js +17 -25
- package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
- package/lib/components/VDataTable/VEditDialog.js +3 -4
- package/lib/components/VDataTable/VEditDialog.js.map +1 -1
- package/lib/components/VDataTable/VSimpleTable.js +1 -1
- package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
- package/lib/components/VDataTable/VVirtualTable.js +1 -2
- package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
- package/lib/components/VDataTable/mixins/header.js +1 -1
- package/lib/components/VDataTable/mixins/header.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +7 -1
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js +12 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerTitle.js +11 -0
- package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.js +11 -1
- package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/lib/components/VDatePicker/mixins/date-picker-table.js +12 -1
- package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
- package/lib/components/VInput/VInput.js +13 -3
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VList/VListGroup.js +16 -8
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.js +12 -3
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VMenu/VMenu.js +15 -4
- package/lib/components/VMenu/VMenu.js.map +1 -1
- package/lib/components/VMessages/VMessages.js +13 -2
- package/lib/components/VMessages/VMessages.js.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js +11 -2
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +48 -0
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverlay/VOverlay.js +11 -0
- package/lib/components/VOverlay/VOverlay.js.map +1 -1
- package/lib/components/VPagination/VPagination.js +11 -0
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.js +11 -0
- package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.js +11 -0
- package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
- package/lib/components/VRating/VRating.js +11 -0
- package/lib/components/VRating/VRating.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +52 -36
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelect/VSelectList.js +32 -8
- package/lib/components/VSelect/VSelectList.js.map +1 -1
- package/lib/components/VSlider/VSlider.js +11 -1
- package/lib/components/VSlider/VSlider.js.map +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.js +7 -7
- package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
- package/lib/components/VTabs/VTabs.js +11 -0
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTooltip/VTooltip.js +3 -3
- package/lib/components/VTooltip/VTooltip.js.map +1 -1
- package/lib/components/VTreeview/VTreeview.js +0 -6
- package/lib/components/VTreeview/VTreeview.js.map +1 -1
- package/lib/framework.js +1 -1
- package/lib/mixins/routable/index.js +5 -2
- package/lib/mixins/routable/index.js.map +1 -1
- package/lib/mixins/validatable/index.js +7 -1
- package/lib/mixins/validatable/index.js.map +1 -1
- package/lib/util/console.js +47 -17
- package/lib/util/console.js.map +1 -1
- package/lib/util/helpers.js +5 -1
- package/lib/util/helpers.js.map +1 -1
- package/package.json +1 -1
- package/src/components/VAlert/VAlert.ts +17 -8
- package/src/components/VAlert/__tests__/VAlert.spec.ts +78 -50
- package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +16 -18
- package/src/components/VApp/__tests__/VApp.spec.ts +24 -18
- package/src/components/VApp/__tests__/__snapshots__/VApp.spec.ts.snap +4 -4
- package/src/components/VAppBar/__tests__/VAppBar.spec.ts +256 -74
- package/src/components/VAppBar/__tests__/VAppBarNavIcon.spec.ts +2 -6
- package/src/components/VAppBar/__tests__/__snapshots__/VAppBar.spec.ts.snap +13 -4
- package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +3 -4
- package/src/components/VAutocomplete/VAutocomplete.ts +22 -0
- package/src/components/VAutocomplete/__tests__/VAutocomplete.spec.ts +51 -53
- package/src/components/VAutocomplete/__tests__/VAutocomplete2.spec.ts +77 -48
- package/src/components/VAutocomplete/__tests__/VAutocomplete3.spec.ts +101 -39
- package/src/components/VBadge/VBadge.ts +13 -0
- package/src/components/VBanner/VBanner.ts +13 -0
- package/src/components/VBanner/__tests__/VBanner.spec.ts +35 -36
- package/src/components/VBanner/__tests__/__snapshots__/VBanner.spec.ts.snap +1 -1
- package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -0
- package/src/components/VBtn/__tests__/VBtn.spec.ts +1 -1
- package/src/components/VCard/__tests__/VCard.spec.ts +46 -28
- package/src/components/VCard/__tests__/__snapshots__/VCard.spec.ts.snap +2 -2
- package/src/components/VCarousel/VCarousel.ts +11 -0
- package/src/components/VCheckbox/VSimpleCheckbox.ts +13 -0
- package/src/components/VCheckbox/__tests__/VCheckbox.spec.ts +157 -152
- package/src/components/VChip/VChip.ts +1 -0
- package/src/components/VChip/__tests__/VChip.spec.ts +50 -50
- package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +4 -4
- package/src/components/VChipGroup/__tests__/VChipGroup.spec.ts +14 -21
- package/src/components/VColorPicker/VColorPicker.ts +13 -0
- package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +35 -35
- package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +10 -10
- package/src/components/VCombobox/VCombobox.ts +23 -0
- package/src/components/VCombobox/__tests__/VCombobox-multiple.spec.ts +118 -110
- package/src/components/VCombobox/__tests__/VCombobox.spec.ts +119 -93
- package/src/components/VData/__tests__/VData.spec.ts +69 -90
- package/src/components/VDataIterator/VDataFooter.ts +14 -9
- package/src/components/VDataIterator/VDataIterator.ts +46 -34
- package/src/components/VDataIterator/__tests__/VDataFooter.spec.ts +38 -39
- package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +90 -122
- package/src/components/VDataIterator/__tests__/__snapshots__/VDataFooter.spec.ts.snap +92 -82
- package/src/components/VDataIterator/__tests__/__snapshots__/VDataIterator.spec.ts.snap +79 -69
- package/src/components/VDataTable/RowGroup.ts +33 -16
- package/src/components/VDataTable/VDataTable.ts +8 -15
- package/src/components/VDataTable/VDataTableHeader.ts +2 -2
- package/src/components/VDataTable/VDataTableHeaderDesktop.ts +4 -0
- package/src/components/VDataTable/VDataTableHeaderMobile.ts +16 -25
- package/src/components/VDataTable/VEditDialog.ts +3 -3
- package/src/components/VDataTable/VSimpleTable.ts +2 -3
- package/src/components/VDataTable/VVirtualTable.ts +1 -2
- package/src/components/VDataTable/__tests__/MobileRow.spec.ts +55 -66
- package/src/components/VDataTable/__tests__/Row.spec.ts +64 -73
- package/src/components/VDataTable/__tests__/RowGroup.spec.ts +7 -5
- package/src/components/VDataTable/__tests__/VDataTable.spec.ts +916 -998
- package/src/components/VDataTable/__tests__/VDataTableHeader.spec.ts +39 -29
- package/src/components/VDataTable/__tests__/VEditDialog.spec.ts +33 -24
- package/src/components/VDataTable/__tests__/VSimpleTable.spec.ts +55 -29
- package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +13 -15
- package/src/components/VDataTable/__tests__/__snapshots__/Row.spec.ts.snap +30 -0
- package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +2543 -2086
- package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +115 -144
- package/src/components/VDataTable/__tests__/__snapshots__/VEditDialog.spec.ts.snap +6 -6
- package/src/components/VDataTable/__tests__/__snapshots__/VSimpleTable.spec.ts.snap +22 -18
- package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +10 -13
- package/src/components/VDataTable/mixins/__tests__/header.spec.ts +15 -15
- package/src/components/VDataTable/mixins/header.ts +1 -1
- package/src/components/VDatePicker/VDatePicker.ts +11 -1
- package/src/components/VDatePicker/VDatePickerHeader.ts +13 -0
- package/src/components/VDatePicker/VDatePickerTitle.ts +12 -0
- package/src/components/VDatePicker/VDatePickerYears.ts +13 -0
- package/src/components/VDatePicker/mixins/date-picker-table.ts +13 -0
- package/src/components/VDivider/__tests__/VDivider.spec.ts +11 -15
- package/src/components/VDivider/__tests__/__snapshots__/VDivider.spec.ts.snap +2 -2
- package/src/components/VGrid/__tests__/VCol.spec.ts +17 -17
- package/src/components/VGrid/__tests__/VContainer.spec.ts +58 -3
- package/src/components/VGrid/__tests__/VFlex.spec.ts +3 -3
- package/src/components/VGrid/__tests__/VGrid.spec.ts +12 -10
- package/src/components/VGrid/__tests__/VLayout.spec.ts +3 -3
- package/src/components/VIcon/__tests__/VIcon.spec.ts +176 -70
- package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +55 -55
- package/src/components/VInput/VInput.ts +18 -5
- package/src/components/VItemGroup/__tests__/VItem.spec.ts +22 -37
- package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +96 -124
- package/src/components/VItemGroup/__tests__/__snapshots__/VItem.spec.ts.snap +2 -0
- package/src/components/VLabel/__tests__/VLabel.spec.ts +240 -14
- package/src/components/VLazy/__tests__/VLazy.spec.ts +5 -4
- package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +2 -1
- package/src/components/VList/VListGroup.ts +22 -10
- package/src/components/VList/VListItem.ts +19 -4
- package/src/components/VList/__tests__/VList.spec.ts +13 -12
- package/src/components/VList/__tests__/VListGroup.spec.ts +59 -51
- package/src/components/VList/__tests__/VListItem.spec.ts +142 -63
- package/src/components/VList/__tests__/VListItemAvatar.spec.ts +5 -2
- package/src/components/VList/__tests__/VListItemGroup.spec.ts +5 -2
- package/src/components/VList/__tests__/__snapshots__/VList.spec.ts.snap +10 -10
- package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +5 -6
- package/src/components/VList/__tests__/__snapshots__/VListItem.spec.ts.snap +1 -1
- package/src/components/VMain/__tests__/VMain.spec.ts +71 -17
- package/src/components/VMenu/VMenu.ts +22 -4
- package/src/components/VMenu/__tests__/VMenu.spec.ts +90 -69
- package/src/components/VMenu/__tests__/__snapshots__/VMenu.spec.ts.snap +3 -5
- package/src/components/VMessages/VMessages.ts +15 -4
- package/src/components/VMessages/__tests__/VMessages.spec.ts +55 -16
- package/src/components/VMessages/__tests__/__snapshots__/VMessages.spec.ts.snap +16 -25
- package/src/components/VNavigationDrawer/VNavigationDrawer.ts +21 -11
- package/src/components/VOtpInput/VOtpInput.ts +37 -1
- package/src/components/VOverlay/VOverlay.ts +12 -0
- package/src/components/VPagination/VPagination.ts +23 -9
- package/src/components/VParallax/__tests__/__snapshots__/VParallax.spec.ts.snap +8 -8
- package/src/components/VPicker/__tests__/__snapshots__/VPicker.spec.ts.snap +2 -2
- package/src/components/VProgressLinear/VProgressLinear.ts +13 -0
- package/src/components/VRadioGroup/VRadioGroup.ts +14 -0
- package/src/components/VRating/VRating.ts +13 -0
- package/src/components/VResponsive/__tests__/__snapshots__/VResponsive.spec.ts.snap +2 -2
- package/src/components/VSelect/VSelect.ts +60 -43
- package/src/components/VSelect/VSelectList.ts +33 -12
- package/src/components/VSelect/__tests__/VSelect.spec.ts +166 -125
- package/src/components/VSelect/__tests__/VSelect2.spec.ts +127 -111
- package/src/components/VSelect/__tests__/VSelect3.spec.ts +109 -91
- package/src/components/VSelect/__tests__/VSelect4.spec.ts +79 -68
- package/src/components/VSelect/__tests__/VSelectList.spec.ts +23 -31
- package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +58 -62
- package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +50 -62
- package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +10 -14
- package/src/components/VSlider/VSlider.ts +14 -1
- package/src/components/VSparkline/__tests__/VSparkline.spec.ts +33 -35
- package/src/components/VSpeedDial/VSpeedDial.ts +7 -8
- package/src/components/VSpeedDial/__tests__/VSpeedDial.spec.ts +21 -13
- package/src/components/VSpeedDial/__tests__/__snapshots__/VSpeedDial.spec.ts.snap +6 -6
- package/src/components/VStepper/__tests__/VStepper.spec.ts +4 -1
- package/src/components/VStepper/__tests__/VStepperContent.spec.ts +104 -110
- package/src/components/VStepper/__tests__/VStepperStep.spec.ts +51 -44
- package/src/components/VSwitch/__tests__/VSwitch.spec.ts +30 -37
- package/src/components/VTabs/VTabs.ts +14 -0
- package/src/components/VTabs/__tests__/VTabs.spec.ts +0 -7
- package/src/components/VTextField/__tests__/VTextField.spec.ts +342 -246
- package/src/components/VTextarea/__tests__/VTextarea.spec.ts +112 -35
- package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +0 -40
- package/src/components/VToolbar/__tests__/VToolbar.spec.ts +49 -25
- package/src/components/VTooltip/VTooltip.ts +3 -3
- package/src/components/VTooltip/__tests__/__snapshots__/VTooltip.spec.ts.snap +34 -18
- package/src/components/VTreeview/VTreeview.ts +0 -5
- package/src/mixins/routable/index.ts +6 -4
- package/src/mixins/validatable/index.ts +11 -1
- package/src/util/__tests__/console.spec.ts +124 -11
- package/src/util/__tests__/helpers.spec.ts +59 -31
- package/src/util/console.ts +43 -24
- package/src/util/helpers.ts +8 -4
|
@@ -33,6 +33,18 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
33
33
|
|
|
34
34
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
35
35
|
|
|
36
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
37
|
+
|
|
38
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
39
|
+
|
|
40
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
41
|
+
|
|
42
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
43
|
+
|
|
44
|
+
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
45
|
+
|
|
46
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
47
|
+
|
|
36
48
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
37
49
|
|
|
38
50
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
@@ -65,6 +77,7 @@ var _default = baseMixins.extend({
|
|
|
65
77
|
},
|
|
66
78
|
dense: Boolean,
|
|
67
79
|
inactive: Boolean,
|
|
80
|
+
onClick: Function,
|
|
68
81
|
link: Boolean,
|
|
69
82
|
selectable: {
|
|
70
83
|
type: Boolean
|
|
@@ -106,7 +119,20 @@ var _default = baseMixins.extend({
|
|
|
106
119
|
}
|
|
107
120
|
},
|
|
108
121
|
created: function created() {
|
|
122
|
+
var _this = this;
|
|
123
|
+
|
|
124
|
+
var breakingProps = [['value', 'modelValue']];
|
|
109
125
|
/* istanbul ignore next */
|
|
126
|
+
|
|
127
|
+
breakingProps.forEach(function (_ref) {
|
|
128
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
129
|
+
original = _ref2[0],
|
|
130
|
+
replacement = _ref2[1];
|
|
131
|
+
|
|
132
|
+
if (_this.$attrs.hasOwnProperty(original)) (0, _console.breaking)(original, replacement, _this);
|
|
133
|
+
});
|
|
134
|
+
/* istanbul ignore next */
|
|
135
|
+
|
|
110
136
|
if (this.$attrs.hasOwnProperty('avatar')) {
|
|
111
137
|
(0, _console.removed)('avatar', this);
|
|
112
138
|
}
|
|
@@ -151,7 +177,7 @@ var _default = baseMixins.extend({
|
|
|
151
177
|
}
|
|
152
178
|
},
|
|
153
179
|
render: function render() {
|
|
154
|
-
var
|
|
180
|
+
var _this2 = this;
|
|
155
181
|
|
|
156
182
|
var _this$generateRouteLi = this.generateRouteLink(),
|
|
157
183
|
tag = _this$generateRouteLi.tag,
|
|
@@ -162,11 +188,11 @@ var _default = baseMixins.extend({
|
|
|
162
188
|
data = (0, _mergeData.default)(data, attrs);
|
|
163
189
|
data = _objectSpread(_objectSpread({}, data), {}, {
|
|
164
190
|
onKeydown: function onKeydown(e) {
|
|
165
|
-
if (!
|
|
191
|
+
if (!_this2.disabled) {
|
|
166
192
|
/* istanbul ignore else */
|
|
167
|
-
if (e.keyCode === _helpers.keyCodes.enter)
|
|
193
|
+
if (e.keyCode === _helpers.keyCodes.enter) _this2.click(e);
|
|
168
194
|
|
|
169
|
-
|
|
195
|
+
_this2.$emit('keydown', e);
|
|
170
196
|
}
|
|
171
197
|
}
|
|
172
198
|
}, attrs);
|
|
@@ -175,10 +201,11 @@ var _default = baseMixins.extend({
|
|
|
175
201
|
// delete data.nativeOn
|
|
176
202
|
// }
|
|
177
203
|
|
|
178
|
-
var
|
|
204
|
+
var slotProps = {
|
|
179
205
|
active: this.isActive,
|
|
180
206
|
toggle: this.toggle
|
|
181
|
-
}
|
|
207
|
+
};
|
|
208
|
+
var children = [(0, _helpers.getSlot)(this, 'prepend', slotProps), (0, _helpers.getSlot)(this, 'default', slotProps), (0, _helpers.getSlot)(this, 'append', slotProps)].filter(Boolean);
|
|
182
209
|
var nodeData = this.isActive ? this.setTextColor(this.color, data) : data;
|
|
183
210
|
var attrsClasses = this.$attrs.class;
|
|
184
211
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VList/VListItem.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, withDirectives, VNode, PropType, PropValidator } from 'vue'\n// Styles\nimport './VListItem.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Routable from '../../mixins/routable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Themeable from '../../mixins/themeable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\n\n// Directives\nimport Ripple from '../../directives/ripple'\n\n// Utilities\nimport { getSlot, keyCodes } from './../../util/helpers'\nimport mergeData, { mergeClasses } from './../../util/mergeData'\nimport { ExtractVue } from './../../util/mixins'\nimport { removed } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\n\nconst baseMixins = mixins(\n Colorable,\n Routable,\n Themeable,\n GroupableFactory('listItemGroup'),\n ToggleableFactory('modelValue')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n isInGroup: boolean\n isInList: boolean\n isInMenu: boolean\n isInNav: boolean\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-list-item',\n\n\n inject: {\n isInGroup: {\n default: false,\n },\n isInList: {\n default: false,\n },\n isInMenu: {\n default: false,\n },\n isInNav: {\n default: false,\n },\n },\n\n inheritAttrs: false,\n\n props: {\n activeClass: {\n type: String,\n } as any as PropValidator<string>,\n dense: Boolean,\n inactive: Boolean,\n link: Boolean,\n selectable: {\n type: Boolean,\n },\n tag: {\n type: String,\n default: 'div',\n },\n threeLine: Boolean,\n twoLine: Boolean,\n modelValue: null as any as PropType<any>,\n },\n\n emits: [\n 'click',\n 'keydown',\n 'change',\n 'update:modelValue',\n ],\n\n data: () => ({\n proxyClass: 'v-list-item--active',\n }),\n\n computed: {\n $activeClass () {\n if (this.activeClass) return this.activeClass\n if (!this.listItemGroup) return ''\n\n return this.listItemGroup.activeClass\n },\n classes (): object {\n return {\n 'v-list-item': true,\n ...Routable.computed.classes.call(this),\n 'v-list-item--dense': this.dense,\n 'v-list-item--disabled': this.disabled,\n 'v-list-item--link': this.isClickable && !this.inactive,\n 'v-list-item--selectable': this.selectable,\n 'v-list-item--three-line': this.threeLine,\n 'v-list-item--two-line': this.twoLine,\n ...this.themeClasses,\n }\n },\n isClickable (): boolean {\n return Boolean(\n Routable.computed.isClickable.call(this) ||\n this.listItemGroup\n )\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('avatar')) {\n removed('avatar', this)\n }\n },\n\n methods: {\n click (e: MouseEvent | KeyboardEvent) {\n if (e.detail) this.$el.blur()\n\n this.$emit('click', e)\n\n this.to || this.toggle()\n },\n genAttrs () {\n const { class: _, ...otherAttrs } = this.$attrs\n const attrs: Record<string, any> = {\n ...otherAttrs,\n 'aria-disabled': this.disabled ? true : undefined,\n tabindex: this.isClickable && !this.disabled ? 0 : -1,\n }\n\n if (this.$attrs.hasOwnProperty('role')) {\n // do nothing, role already provided\n } else if (this.isInNav) {\n // do nothing, role is inherit\n } else if (this.isInGroup) {\n attrs.role = 'option'\n attrs['aria-selected'] = String(this.isActive)\n } else if (this.isInMenu) {\n attrs.role = this.isClickable ? 'menuitem' : undefined\n attrs.id = attrs.id || `list-item-${this.$.uid}`\n } else if (this.isInList) {\n attrs.role = 'listitem'\n }\n\n return attrs\n },\n toggle () {\n if (this.to && this.modelValue === undefined) {\n this.isActive = !this.isActive\n }\n this.$emit('change')\n this.$emitLegacy('change')\n },\n },\n\n render (): VNode {\n let { tag, data, directives } = this.generateRouteLink()\n const attrs = this.genAttrs()\n\n data = mergeData(\n data,\n attrs\n )\n\n data = {\n ...data,\n onKeydown: (e: KeyboardEvent) => {\n if (!this.disabled) {\n /* istanbul ignore else */\n if (e.keyCode === keyCodes.enter) this.click(e)\n\n this.$emit('keydown', e)\n }\n },\n // Ensure our attrs take precedence over routable\n ...attrs,\n }\n\n if (this.inactive) tag = 'div'\n // if (this.inactive && this.to) {\n // data.on = data.nativeOn\n // delete data.nativeOn\n // }\n\n const children = getSlot(this, 'default', {\n active: this.isActive,\n toggle: this.toggle,\n })\n\n const nodeData = this.isActive ? this.setTextColor(this.color, data) : data\n\n const attrsClasses = this.$attrs.class\n if (attrsClasses) {\n nodeData.class = [this.classes, attrsClasses]\n } else {\n nodeData.class = this.classes\n }\n\n const node = typeof tag === 'string'\n ? h(tag, nodeData, children)\n : h(tag, nodeData, () => children)\n\n return withDirectives(node, directives)\n },\n})\n"],"sourceRoot":"","file":"VListItem.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VList/VListItem.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, withDirectives, VNode, PropType, PropValidator } from 'vue'\n// Styles\nimport './VListItem.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Routable from '../../mixins/routable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Themeable from '../../mixins/themeable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\n\n// Directives\nimport Ripple from '../../directives/ripple'\n\n// Utilities\nimport { getSlot, keyCodes } from './../../util/helpers'\nimport mergeData, { mergeClasses } from './../../util/mergeData'\nimport { ExtractVue } from './../../util/mixins'\nimport { removed, breaking } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\n\nconst baseMixins = mixins(\n Colorable,\n Routable,\n Themeable,\n GroupableFactory('listItemGroup'),\n ToggleableFactory('modelValue')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n isInGroup: boolean\n isInList: boolean\n isInMenu: boolean\n isInNav: boolean\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-list-item',\n\n inject: {\n isInGroup: {\n default: false,\n },\n isInList: {\n default: false,\n },\n isInMenu: {\n default: false,\n },\n isInNav: {\n default: false,\n },\n },\n\n inheritAttrs: false,\n\n props: {\n activeClass: {\n type: String,\n } as any as PropValidator<string>,\n dense: Boolean,\n inactive: Boolean,\n onClick: Function as PropType<(e: MouseEvent) => void>,\n link: Boolean,\n selectable: {\n type: Boolean,\n },\n tag: {\n type: String,\n default: 'div',\n },\n threeLine: Boolean,\n twoLine: Boolean,\n modelValue: null as any as PropType<any>,\n },\n\n emits: [\n 'click',\n 'keydown',\n 'change',\n 'update:modelValue',\n ],\n\n data: () => ({\n proxyClass: 'v-list-item--active',\n }),\n\n computed: {\n $activeClass () {\n if (this.activeClass) return this.activeClass\n if (!this.listItemGroup) return ''\n\n return this.listItemGroup.activeClass\n },\n classes (): object {\n return {\n 'v-list-item': true,\n ...Routable.computed.classes.call(this),\n 'v-list-item--dense': this.dense,\n 'v-list-item--disabled': this.disabled,\n 'v-list-item--link': this.isClickable && !this.inactive,\n 'v-list-item--selectable': this.selectable,\n 'v-list-item--three-line': this.threeLine,\n 'v-list-item--two-line': this.twoLine,\n ...this.themeClasses,\n }\n },\n isClickable (): boolean {\n return Boolean(\n Routable.computed.isClickable.call(this) ||\n this.listItemGroup\n )\n },\n },\n\n created () {\n const breakingProps = [\n ['value', 'modelValue'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('avatar')) {\n removed('avatar', this)\n }\n },\n\n methods: {\n click (e: MouseEvent | KeyboardEvent) {\n if (e.detail) this.$el.blur()\n\n this.$emit('click', e)\n\n this.to || this.toggle()\n },\n genAttrs () {\n const { class: _, ...otherAttrs } = this.$attrs\n const attrs: Record<string, any> = {\n ...otherAttrs,\n 'aria-disabled': this.disabled ? true : undefined,\n tabindex: this.isClickable && !this.disabled ? 0 : -1,\n }\n\n if (this.$attrs.hasOwnProperty('role')) {\n // do nothing, role already provided\n } else if (this.isInNav) {\n // do nothing, role is inherit\n } else if (this.isInGroup) {\n attrs.role = 'option'\n attrs['aria-selected'] = String(this.isActive)\n } else if (this.isInMenu) {\n attrs.role = this.isClickable ? 'menuitem' : undefined\n attrs.id = attrs.id || `list-item-${this.$.uid}`\n } else if (this.isInList) {\n attrs.role = 'listitem'\n }\n\n return attrs\n },\n toggle () {\n if (this.to && this.modelValue === undefined) {\n this.isActive = !this.isActive\n }\n this.$emit('change')\n this.$emitLegacy('change')\n },\n },\n\n render (): VNode {\n let { tag, data, directives } = this.generateRouteLink()\n const attrs = this.genAttrs()\n\n data = mergeData(\n data,\n attrs\n )\n\n data = {\n ...data,\n onKeydown: (e: KeyboardEvent) => {\n if (!this.disabled) {\n /* istanbul ignore else */\n if (e.keyCode === keyCodes.enter) this.click(e)\n\n this.$emit('keydown', e)\n }\n },\n // Ensure our attrs take precedence over routable\n ...attrs,\n }\n\n if (this.inactive) tag = 'div'\n // if (this.inactive && this.to) {\n // data.on = data.nativeOn\n // delete data.nativeOn\n // }\n\n const slotProps = {\n active: this.isActive,\n toggle: this.toggle,\n }\n\n const children = [\n getSlot(this, 'prepend', slotProps),\n getSlot(this, 'default', slotProps),\n getSlot(this, 'append', slotProps),\n ].filter(Boolean)\n\n const nodeData = this.isActive ? this.setTextColor(this.color, data) : data\n\n const attrsClasses = this.$attrs.class\n if (attrsClasses) {\n nodeData.class = [this.classes, attrsClasses]\n } else {\n nodeData.class = this.classes\n }\n\n const node = typeof tag === 'string'\n ? h(tag, nodeData, children)\n : h(tag, nodeData, () => children)\n\n return withDirectives(node, directives)\n },\n})\n"],"sourceRoot":"","file":"VListItem.js"}
|
|
@@ -43,20 +43,28 @@ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableTo
|
|
|
43
43
|
|
|
44
44
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
45
45
|
|
|
46
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
47
|
-
|
|
48
46
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
|
|
49
47
|
|
|
50
48
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
51
49
|
|
|
52
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
53
|
-
|
|
54
50
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
55
51
|
|
|
56
52
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
57
53
|
|
|
58
54
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
59
55
|
|
|
56
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
57
|
+
|
|
58
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
59
|
+
|
|
60
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
61
|
+
|
|
62
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
63
|
+
|
|
64
|
+
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
65
|
+
|
|
66
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
67
|
+
|
|
60
68
|
var baseMixins = (0, _mixins.default)(_dependent.default, _delayable.default, _returnable.default, _roundable.default, _themeable.default, _menuable.default);
|
|
61
69
|
/* @vue/component */
|
|
62
70
|
|
|
@@ -101,9 +109,13 @@ var _default2 = baseMixins.extend({
|
|
|
101
109
|
default: function _default() {
|
|
102
110
|
return {};
|
|
103
111
|
}
|
|
112
|
+
},
|
|
113
|
+
onScroll: {
|
|
114
|
+
type: Function,
|
|
115
|
+
default: undefined
|
|
104
116
|
}
|
|
105
117
|
},
|
|
106
|
-
emits: ['keydown'],
|
|
118
|
+
emits: ['keydown', 'update:modelValue', 'update:return-value'],
|
|
107
119
|
data: function data() {
|
|
108
120
|
return {
|
|
109
121
|
calculatedTopAuto: 0,
|
|
@@ -125,7 +137,7 @@ var _default2 = baseMixins.extend({
|
|
|
125
137
|
return (0, _helpers.convertToUnit)(this.calcXOverflow(this.calcLeftAuto(), menuWidth)) || '0';
|
|
126
138
|
},
|
|
127
139
|
calculatedMaxHeight: function calculatedMaxHeight() {
|
|
128
|
-
var height = this.auto ? '
|
|
140
|
+
var height = this.auto ? '220px' : (0, _helpers.convertToUnit)(this.maxHeight);
|
|
129
141
|
return height || '0';
|
|
130
142
|
},
|
|
131
143
|
calculatedMaxWidth: function calculatedMaxWidth() {
|
|
@@ -194,7 +206,20 @@ var _default2 = baseMixins.extend({
|
|
|
194
206
|
}
|
|
195
207
|
},
|
|
196
208
|
created: function created() {
|
|
209
|
+
var _this = this;
|
|
210
|
+
|
|
211
|
+
var breakingProps = [['value', 'modelValue'], ['onInput', 'onUpdate:modelValue']];
|
|
212
|
+
/* istanbul ignore next */
|
|
213
|
+
|
|
214
|
+
breakingProps.forEach(function (_ref) {
|
|
215
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
216
|
+
original = _ref2[0],
|
|
217
|
+
replacement = _ref2[1];
|
|
218
|
+
|
|
219
|
+
if (_this.$attrs.hasOwnProperty(original)) (0, _console.breaking)(original, replacement, _this);
|
|
220
|
+
});
|
|
197
221
|
/* istanbul ignore next */
|
|
222
|
+
|
|
198
223
|
if (this.$attrs.hasOwnProperty('full-width')) {
|
|
199
224
|
(0, _console.removed)('full-width', this);
|
|
200
225
|
}
|
|
@@ -204,7 +229,7 @@ var _default2 = baseMixins.extend({
|
|
|
204
229
|
},
|
|
205
230
|
methods: {
|
|
206
231
|
activate: function activate() {
|
|
207
|
-
var
|
|
232
|
+
var _this2 = this;
|
|
208
233
|
|
|
209
234
|
// Update coordinates and dimensions of menu
|
|
210
235
|
// and its activator
|
|
@@ -212,10 +237,10 @@ var _default2 = baseMixins.extend({
|
|
|
212
237
|
|
|
213
238
|
requestAnimationFrame(function () {
|
|
214
239
|
// Once transitioning, calculate scroll and top position
|
|
215
|
-
|
|
216
|
-
if (
|
|
217
|
-
|
|
218
|
-
|
|
240
|
+
_this2.startTransition().then(function () {
|
|
241
|
+
if (_this2.$refs.content) {
|
|
242
|
+
_this2.calculatedTopAuto = _this2.calcTopAuto();
|
|
243
|
+
_this2.auto && (_this2.$refs.content.scrollTop = _this2.calcScrollPosition());
|
|
219
244
|
}
|
|
220
245
|
});
|
|
221
246
|
});
|
|
@@ -291,7 +316,7 @@ var _default2 = baseMixins.extend({
|
|
|
291
316
|
var listeners = _menuable.default.methods.genActivatorListeners.call(this);
|
|
292
317
|
|
|
293
318
|
if (!this.disableKeys) {
|
|
294
|
-
listeners.
|
|
319
|
+
listeners.onKeydown = this.onKeyDown;
|
|
295
320
|
}
|
|
296
321
|
|
|
297
322
|
return listeners;
|
|
@@ -304,18 +329,18 @@ var _default2 = baseMixins.extend({
|
|
|
304
329
|
}, [content]);
|
|
305
330
|
},
|
|
306
331
|
genDirectives: function genDirectives() {
|
|
307
|
-
var
|
|
332
|
+
var _this3 = this;
|
|
308
333
|
|
|
309
334
|
var directives = [[_vue.vShow, this.isContentActive]]; // Do not add click outside for hover menu
|
|
310
335
|
|
|
311
336
|
if (!this.openOnHover && this.closeOnClick) {
|
|
312
337
|
directives.push([_clickOutside.default, {
|
|
313
338
|
handler: function handler() {
|
|
314
|
-
|
|
339
|
+
_this3.isActive = false;
|
|
315
340
|
},
|
|
316
341
|
closeConditional: this.closeConditional,
|
|
317
342
|
include: function include() {
|
|
318
|
-
return [
|
|
343
|
+
return [_this3.$el].concat(_toConsumableArray(_this3.getOpenDependentElements()));
|
|
319
344
|
}
|
|
320
345
|
}]);
|
|
321
346
|
}
|
|
@@ -323,7 +348,7 @@ var _default2 = baseMixins.extend({
|
|
|
323
348
|
return directives;
|
|
324
349
|
},
|
|
325
350
|
genContent: function genContent() {
|
|
326
|
-
var
|
|
351
|
+
var _this4 = this;
|
|
327
352
|
|
|
328
353
|
var options = _objectSpread(_objectSpread(_objectSpread({}, this.getScopeIdAttrs()), this.contentProps), {}, {
|
|
329
354
|
role: 'role' in this.$attrs ? this.$attrs.role : 'menu',
|
|
@@ -337,7 +362,7 @@ var _default2 = baseMixins.extend({
|
|
|
337
362
|
onClick: function onClick(e) {
|
|
338
363
|
var target = e.target;
|
|
339
364
|
if (target.getAttribute('disabled')) return;
|
|
340
|
-
if (
|
|
365
|
+
if (_this4.closeOnContentClick) _this4.isActive = false;
|
|
341
366
|
},
|
|
342
367
|
onKeydown: this.onKeyDown
|
|
343
368
|
});
|
|
@@ -362,25 +387,25 @@ var _default2 = baseMixins.extend({
|
|
|
362
387
|
this.tiles = Array.from(this.$refs.content.querySelectorAll('.v-list-item, .v-divider, .v-subheader'));
|
|
363
388
|
},
|
|
364
389
|
mouseEnterHandler: function mouseEnterHandler() {
|
|
365
|
-
var
|
|
390
|
+
var _this5 = this;
|
|
366
391
|
|
|
367
392
|
this.runDelay('open', function () {
|
|
368
|
-
if (
|
|
369
|
-
|
|
393
|
+
if (_this5.hasJustFocused) return;
|
|
394
|
+
_this5.hasJustFocused = true;
|
|
370
395
|
});
|
|
371
396
|
},
|
|
372
397
|
mouseLeaveHandler: function mouseLeaveHandler(e) {
|
|
373
|
-
var
|
|
398
|
+
var _this6 = this;
|
|
374
399
|
|
|
375
400
|
// Prevent accidental re-activation
|
|
376
401
|
this.runDelay('close', function () {
|
|
377
402
|
var _a;
|
|
378
403
|
|
|
379
|
-
if ((_a =
|
|
404
|
+
if ((_a = _this6.$refs.content) === null || _a === void 0 ? void 0 : _a.contains(e.relatedTarget)) return;
|
|
380
405
|
requestAnimationFrame(function () {
|
|
381
|
-
|
|
406
|
+
_this6.isActive = false;
|
|
382
407
|
|
|
383
|
-
|
|
408
|
+
_this6.callDeactivate();
|
|
384
409
|
});
|
|
385
410
|
});
|
|
386
411
|
},
|
|
@@ -423,14 +448,14 @@ var _default2 = baseMixins.extend({
|
|
|
423
448
|
if (tile.tabIndex === -1) this.nextTile();
|
|
424
449
|
},
|
|
425
450
|
onKeyDown: function onKeyDown(e) {
|
|
426
|
-
var
|
|
451
|
+
var _this7 = this;
|
|
427
452
|
|
|
428
453
|
if (this.disableKeys) return;
|
|
429
454
|
|
|
430
455
|
if (e.keyCode === _helpers.keyCodes.esc) {
|
|
431
456
|
// Wait for dependent elements to close first
|
|
432
457
|
setTimeout(function () {
|
|
433
|
-
|
|
458
|
+
_this7.isActive = false;
|
|
434
459
|
});
|
|
435
460
|
var activator = this.getActivator();
|
|
436
461
|
this.$nextTick(function () {
|
|
@@ -442,7 +467,7 @@ var _default2 = baseMixins.extend({
|
|
|
442
467
|
|
|
443
468
|
|
|
444
469
|
this.$nextTick(function () {
|
|
445
|
-
return
|
|
470
|
+
return _this7.changeListIndex(e);
|
|
446
471
|
});
|
|
447
472
|
},
|
|
448
473
|
onResize: function onResize() {
|
|
@@ -462,7 +487,7 @@ var _default2 = baseMixins.extend({
|
|
|
462
487
|
}
|
|
463
488
|
},
|
|
464
489
|
render: function render() {
|
|
465
|
-
var
|
|
490
|
+
var _this8 = this;
|
|
466
491
|
|
|
467
492
|
var data = {
|
|
468
493
|
class: ['v-menu', {
|
|
@@ -474,9 +499,9 @@ var _default2 = baseMixins.extend({
|
|
|
474
499
|
return (0, _vue.withDirectives)((0, _vue.h)('div', data, [!this.activator && this.genActivator(), this.showLazyContent(function () {
|
|
475
500
|
return [(0, _vue.h)(_VThemeProvider.VThemeProvider, {
|
|
476
501
|
root: true,
|
|
477
|
-
light:
|
|
478
|
-
dark:
|
|
479
|
-
}, [
|
|
502
|
+
light: _this8.light,
|
|
503
|
+
dark: _this8.dark
|
|
504
|
+
}, [_this8.genTransition()])];
|
|
480
505
|
})]), directives);
|
|
481
506
|
}
|
|
482
507
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VMenu/VMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, Transition, vShow, withDirectives } from 'vue'\n// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\nimport Returnable from '../../mixins/returnable'\nimport Roundable from '../../mixins/roundable'\nimport Themeable from '../../mixins/themeable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\nimport Resize from '../../directives/resize'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\nimport goTo from '../../services/goto'\n\n// Types\nimport { VNode, VNodeDirective, VNodeData, PropType } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Delayable,\n Returnable,\n Roundable,\n Themeable,\n Menuable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-menu',\n\n provide (): object {\n return {\n isInMenu: true,\n // Pass theme through to default slot\n theme: this.theme,\n }\n },\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n closeOnContentClick: {\n type: Boolean,\n default: true,\n },\n disabled: Boolean,\n disableKeys: Boolean,\n maxHeight: {\n type: [Number, String],\n default: 'auto',\n },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left',\n },\n transition: {\n type: [Boolean, String],\n default: 'v-menu-transition',\n },\n contentProps: {\n type: Object as PropType<Record<string, any>>,\n default: () => ({}),\n },\n },\n\n emits: ['keydown'],\n\n data () {\n return {\n calculatedTopAuto: 0,\n defaultOffset: 8,\n hasJustFocused: false,\n listIndex: -1,\n resizeTimeout: 0,\n selectedIndex: null as null | number,\n tiles: [] as HTMLElement[],\n }\n },\n\n computed: {\n activeTile (): HTMLElement | undefined {\n return this.tiles[this.listIndex]\n },\n calculatedLeft (): string {\n const menuWidth = Math.max(this.dimensions.content.width, parseFloat(this.calculatedMinWidth))\n\n if (!this.auto) return this.calcLeft(menuWidth) || '0'\n\n return convertToUnit(this.calcXOverflow(this.calcLeftAuto(), menuWidth)) || '0'\n },\n calculatedMaxHeight (): string {\n const height = this.auto\n ? '200px'\n : convertToUnit(this.maxHeight)\n\n return height || '0'\n },\n calculatedMaxWidth (): string {\n return convertToUnit(this.maxWidth) || '0'\n },\n calculatedMinWidth (): string {\n if (this.minWidth) {\n return convertToUnit(this.minWidth) || '0'\n }\n\n const minWidth = Math.min(\n this.dimensions.activator.width +\n Number(this.nudgeWidth) +\n (this.auto ? 16 : 0),\n Math.max(this.pageWidth - 24, 0)\n )\n\n const calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth))\n ? minWidth\n : parseInt(this.calculatedMaxWidth)\n\n return convertToUnit(Math.min(\n calculatedMaxWidth,\n minWidth\n )) || '0'\n },\n calculatedTop (): string {\n const top = !this.auto\n ? this.calcTop()\n : convertToUnit(this.calcYOverflow(this.calculatedTopAuto))\n\n return top || '0'\n },\n hasClickableTiles (): boolean {\n return Boolean(this.tiles.find(tile => tile.tabIndex > -1))\n },\n styles (): object {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n watch: {\n isActive (val) {\n if (!val) this.listIndex = -1\n },\n isContentActive (val) {\n this.hasJustFocused = val\n },\n listIndex (next, prev) {\n if (next in this.tiles) {\n const tile = this.tiles[next]\n tile.classList.add('v-list-item--highlighted')\n const scrollTop = this.$refs.content.scrollTop\n const contentHeight = this.$refs.content.clientHeight\n\n if (scrollTop > tile.offsetTop - 8) {\n goTo(tile.offsetTop - tile.clientHeight, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n } else if (scrollTop + contentHeight < tile.offsetTop + tile.clientHeight + 8) {\n goTo(tile.offsetTop - contentHeight + tile.clientHeight * 2, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n }\n }\n\n prev in this.tiles &&\n this.tiles[prev].classList.remove('v-list-item--highlighted')\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n mounted () {\n this.isActive && this.callActivate()\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(() => {\n // Once transitioning, calculate scroll and top position\n this.startTransition().then(() => {\n if (this.$refs.content) {\n this.calculatedTopAuto = this.calcTopAuto()\n this.auto && (this.$refs.content.scrollTop = this.calcScrollPosition())\n }\n })\n })\n },\n calcScrollPosition () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement\n const maxScrollTop = $el.scrollHeight - $el.offsetHeight\n\n return activeTile\n ? Math.min(maxScrollTop, Math.max(0, activeTile.offsetTop - $el.offsetHeight / 2 + activeTile.offsetHeight / 2))\n : $el.scrollTop\n },\n calcLeftAuto () {\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2)\n },\n calcTopAuto () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement | null\n\n if (!activeTile) {\n this.selectedIndex = null\n }\n\n if (this.offsetY || !activeTile) {\n return this.computedTop\n }\n\n this.selectedIndex = Array.from(this.tiles).indexOf(activeTile)\n\n const tileDistanceFromMenuTop = activeTile.offsetTop - this.calcScrollPosition()\n const firstTileOffsetTop = ($el.querySelector('.v-list-item') as HTMLElement).offsetTop\n\n return this.computedTop - tileDistanceFromMenuTop - firstTileOffsetTop - 1\n },\n changeListIndex (e: KeyboardEvent) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles()\n\n if (!this.isActive || !this.hasClickableTiles) {\n return\n } else if (e.keyCode === keyCodes.tab) {\n this.isActive = false\n return\n } else if (e.keyCode === keyCodes.down) {\n this.nextTile()\n } else if (e.keyCode === keyCodes.up) {\n this.prevTile()\n } else if (e.keyCode === keyCodes.end) {\n this.lastTile()\n } else if (e.keyCode === keyCodes.home) {\n this.firstTile()\n } else if (e.keyCode === keyCodes.enter && this.listIndex !== -1) {\n this.tiles[this.listIndex].click()\n } else { return }\n // One of the conditions was met, prevent default action (#2988)\n e.preventDefault()\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n\n return this.isActive &&\n !this._isDestroyed &&\n this.closeOnClick &&\n this.$refs.content &&\n !this.$refs.content.contains(target)\n },\n genActivatorAttributes () {\n const attributes = Activatable.methods.genActivatorAttributes.call(this)\n\n if (this.activeTile && this.activeTile.id) {\n return {\n ...attributes,\n 'aria-activedescendant': this.activeTile.id,\n }\n }\n\n return attributes\n },\n genActivatorListeners () {\n const listeners = Menuable.methods.genActivatorListeners.call(this)\n\n if (!this.disableKeys) {\n listeners.keydown = this.onKeyDown\n }\n\n return listeners\n },\n genTransition (): VNode {\n const content = this.genContent()\n\n if (!this.transition) return content\n\n return h(Transition, {\n name: this.transition\n }, [content])\n },\n genDirectives (): VNodeDirective[] {\n const directives = [[\n vShow,\n this.isContentActive\n ]]\n\n // Do not add click outside for hover menu\n if (!this.openOnHover && this.closeOnClick) {\n directives.push([\n ClickOutside,\n {\n handler: () => { this.isActive = false },\n closeConditional: this.closeConditional,\n include: () => [this.$el, ...this.getOpenDependentElements()],\n },\n ])\n }\n\n return directives\n },\n genContent (): VNode {\n const options = {\n ...this.getScopeIdAttrs(),\n ...this.contentProps,\n role: 'role' in this.$attrs ? this.$attrs.role : 'menu',\n class: ['v-menu__content', {\n ...this.rootThemeClasses,\n ...this.roundedClasses,\n 'v-menu__content--auto': this.auto,\n 'v-menu__content--fixed': this.activatorFixed,\n menuable__content__active: this.isActive,\n [this.contentClass.trim()]: true,\n }],\n style: this.styles,\n ref: 'content',\n onClick: (e: Event) => {\n const target = e.target as HTMLElement\n\n if (target.getAttribute('disabled')) return\n if (this.closeOnContentClick) this.isActive = false\n },\n onKeydown: this.onKeyDown,\n } as VNodeData\n\n if (this.onScroll) {\n options.onScroll = this.onScroll\n }\n\n if (!this.disabled && this.openOnHover) {\n options.onMouseenter = this.mouseEnterHandler\n }\n\n if (this.openOnHover) {\n options.onMouseleave = this.mouseLeaveHandler\n }\n\n const directives = this.genDirectives()\n\n return withDirectives(h('div', options, this.getContentSlot()), directives)\n },\n getTiles () {\n if (!this.$refs.content) return\n\n this.tiles = Array.from(this.$refs.content.querySelectorAll('.v-list-item, .v-divider, .v-subheader'))\n },\n mouseEnterHandler () {\n this.runDelay('open', () => {\n if (this.hasJustFocused) return\n\n this.hasJustFocused = true\n })\n },\n mouseLeaveHandler (e: MouseEvent) {\n // Prevent accidental re-activation\n this.runDelay('close', () => {\n if (this.$refs.content?.contains(e.relatedTarget as HTMLElement)) return\n\n requestAnimationFrame(() => {\n this.isActive = false\n this.callDeactivate()\n })\n })\n },\n nextTile () {\n const tile = this.tiles[this.listIndex + 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = -1\n this.nextTile()\n\n return\n }\n\n this.listIndex++\n if (tile.tabIndex === -1) this.nextTile()\n },\n prevTile () {\n const tile = this.tiles[this.listIndex - 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = this.tiles.length\n this.prevTile()\n\n return\n }\n\n this.listIndex--\n if (tile.tabIndex === -1) this.prevTile()\n },\n lastTile () {\n const tile = this.tiles[this.tiles.length - 1]\n\n if (!tile) return\n\n this.listIndex = this.tiles.length - 1\n\n if (tile.tabIndex === -1) this.prevTile()\n },\n firstTile () {\n const tile = this.tiles[0]\n\n if (!tile) return\n\n this.listIndex = 0\n\n if (tile.tabIndex === -1) this.nextTile()\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.disableKeys) return\n\n if (e.keyCode === keyCodes.esc) {\n // Wait for dependent elements to close first\n setTimeout(() => { this.isActive = false })\n const activator = this.getActivator()\n this.$nextTick(() => activator && activator.focus())\n } else if (\n !this.isActive &&\n [keyCodes.up, keyCodes.down].includes(e.keyCode)\n ) {\n this.isActive = true\n }\n\n // Allow for isActive watcher to generate tile list\n this.$nextTick(() => this.changeListIndex(e))\n },\n onResize () {\n if (!this.isActive) return\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth\n this.updateDimensions()\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout)\n this.resizeTimeout = window.setTimeout(this.updateDimensions, 100)\n },\n },\n\n render (): VNode {\n const data = {\n class: ['v-menu', {\n 'v-menu--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }]\n }\n\n const directives = [[\n Resize,\n this.onResize,\n '500'\n ]]\n\n // console.log('vmenurender', this, this.activator, this.getActivator())\n\n return withDirectives(h('div', data, [\n !this.activator && this.genActivator(),\n this.showLazyContent(() => [\n h(VThemeProvider, {\n root: true,\n light: this.light,\n dark: this.dark,\n }, [this.genTransition()]),\n ]),\n ]), directives)\n },\n})\n"],"sourceRoot":"","file":"VMenu.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VMenu/VMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, Transition, vShow, withDirectives } from 'vue'\n// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\nimport Returnable from '../../mixins/returnable'\nimport Roundable from '../../mixins/roundable'\nimport Themeable from '../../mixins/themeable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\nimport Resize from '../../directives/resize'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { removed, breaking } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\nimport goTo from '../../services/goto'\n\n// Types\nimport { VNode, VNodeDirective, VNodeData, PropType } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Delayable,\n Returnable,\n Roundable,\n Themeable,\n Menuable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-menu',\n\n provide (): object {\n return {\n isInMenu: true,\n // Pass theme through to default slot\n theme: this.theme,\n }\n },\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n closeOnContentClick: {\n type: Boolean,\n default: true,\n },\n disabled: Boolean,\n disableKeys: Boolean,\n maxHeight: {\n type: [Number, String],\n default: 'auto',\n },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left',\n },\n transition: {\n type: [Boolean, String],\n default: 'v-menu-transition',\n },\n contentProps: {\n type: Object as PropType<Record<string, any>>,\n default: () => ({}),\n },\n onScroll: {\n type: Function as PropType<(event: Event) => void>,\n default: undefined,\n },\n },\n\n emits: [\n 'keydown',\n 'update:modelValue',\n 'update:return-value',\n ],\n\n data () {\n return {\n calculatedTopAuto: 0,\n defaultOffset: 8,\n hasJustFocused: false,\n listIndex: -1,\n resizeTimeout: 0,\n selectedIndex: null as null | number,\n tiles: [] as HTMLElement[],\n }\n },\n\n computed: {\n activeTile (): HTMLElement | undefined {\n return this.tiles[this.listIndex]\n },\n calculatedLeft (): string {\n const menuWidth = Math.max(this.dimensions.content.width, parseFloat(this.calculatedMinWidth))\n\n if (!this.auto) return this.calcLeft(menuWidth) || '0'\n\n return convertToUnit(this.calcXOverflow(this.calcLeftAuto(), menuWidth)) || '0'\n },\n calculatedMaxHeight (): string {\n const height = this.auto\n ? '220px'\n : convertToUnit(this.maxHeight)\n\n return height || '0'\n },\n calculatedMaxWidth (): string {\n return convertToUnit(this.maxWidth) || '0'\n },\n calculatedMinWidth (): string {\n if (this.minWidth) {\n return convertToUnit(this.minWidth) || '0'\n }\n\n const minWidth = Math.min(\n this.dimensions.activator.width +\n Number(this.nudgeWidth) +\n (this.auto ? 16 : 0),\n Math.max(this.pageWidth - 24, 0)\n )\n\n const calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth))\n ? minWidth\n : parseInt(this.calculatedMaxWidth)\n\n return convertToUnit(Math.min(\n calculatedMaxWidth,\n minWidth\n )) || '0'\n },\n calculatedTop (): string {\n const top = !this.auto\n ? this.calcTop()\n : convertToUnit(this.calcYOverflow(this.calculatedTopAuto))\n\n return top || '0'\n },\n hasClickableTiles (): boolean {\n return Boolean(this.tiles.find(tile => tile.tabIndex > -1))\n },\n styles (): object {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n watch: {\n isActive (val) {\n if (!val) this.listIndex = -1\n },\n isContentActive (val) {\n this.hasJustFocused = val\n },\n listIndex (next, prev) {\n if (next in this.tiles) {\n const tile = this.tiles[next]\n tile.classList.add('v-list-item--highlighted')\n const scrollTop = this.$refs.content.scrollTop\n const contentHeight = this.$refs.content.clientHeight\n\n if (scrollTop > tile.offsetTop - 8) {\n goTo(tile.offsetTop - tile.clientHeight, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n } else if (scrollTop + contentHeight < tile.offsetTop + tile.clientHeight + 8) {\n goTo(tile.offsetTop - contentHeight + tile.clientHeight * 2, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n }\n }\n\n prev in this.tiles &&\n this.tiles[prev].classList.remove('v-list-item--highlighted')\n },\n },\n\n created () {\n const breakingProps = [\n ['value', 'modelValue'],\n ['onInput', 'onUpdate:modelValue'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n mounted () {\n this.isActive && this.callActivate()\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(() => {\n // Once transitioning, calculate scroll and top position\n this.startTransition().then(() => {\n if (this.$refs.content) {\n this.calculatedTopAuto = this.calcTopAuto()\n this.auto && (this.$refs.content.scrollTop = this.calcScrollPosition())\n }\n })\n })\n },\n calcScrollPosition () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement\n const maxScrollTop = $el.scrollHeight - $el.offsetHeight\n\n return activeTile\n ? Math.min(maxScrollTop, Math.max(0, activeTile.offsetTop - $el.offsetHeight / 2 + activeTile.offsetHeight / 2))\n : $el.scrollTop\n },\n calcLeftAuto () {\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2)\n },\n calcTopAuto () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement | null\n\n if (!activeTile) {\n this.selectedIndex = null\n }\n\n if (this.offsetY || !activeTile) {\n return this.computedTop\n }\n\n this.selectedIndex = Array.from(this.tiles).indexOf(activeTile)\n\n const tileDistanceFromMenuTop = activeTile.offsetTop - this.calcScrollPosition()\n const firstTileOffsetTop = ($el.querySelector('.v-list-item') as HTMLElement).offsetTop\n\n return this.computedTop - tileDistanceFromMenuTop - firstTileOffsetTop - 1\n },\n changeListIndex (e: KeyboardEvent) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles()\n\n if (!this.isActive || !this.hasClickableTiles) {\n return\n } else if (e.keyCode === keyCodes.tab) {\n this.isActive = false\n return\n } else if (e.keyCode === keyCodes.down) {\n this.nextTile()\n } else if (e.keyCode === keyCodes.up) {\n this.prevTile()\n } else if (e.keyCode === keyCodes.end) {\n this.lastTile()\n } else if (e.keyCode === keyCodes.home) {\n this.firstTile()\n } else if (e.keyCode === keyCodes.enter && this.listIndex !== -1) {\n this.tiles[this.listIndex].click()\n } else { return }\n // One of the conditions was met, prevent default action (#2988)\n e.preventDefault()\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n\n return this.isActive &&\n !this._isDestroyed &&\n this.closeOnClick &&\n this.$refs.content &&\n !this.$refs.content.contains(target)\n },\n genActivatorAttributes () {\n const attributes = Activatable.methods.genActivatorAttributes.call(this)\n\n if (this.activeTile && this.activeTile.id) {\n return {\n ...attributes,\n 'aria-activedescendant': this.activeTile.id,\n }\n }\n\n return attributes\n },\n genActivatorListeners () {\n const listeners = Menuable.methods.genActivatorListeners.call(this)\n\n if (!this.disableKeys) {\n listeners.onKeydown = this.onKeyDown;\n }\n\n return listeners\n },\n genTransition (): VNode {\n const content = this.genContent()\n\n if (!this.transition) return content\n\n return h(Transition, {\n name: this.transition\n }, [content])\n },\n genDirectives (): VNodeDirective[] {\n const directives = [[\n vShow,\n this.isContentActive\n ]]\n\n // Do not add click outside for hover menu\n if (!this.openOnHover && this.closeOnClick) {\n directives.push([\n ClickOutside,\n {\n handler: () => { this.isActive = false },\n closeConditional: this.closeConditional,\n include: () => [this.$el, ...this.getOpenDependentElements()],\n },\n ])\n }\n\n return directives\n },\n genContent (): VNode {\n const options = {\n ...this.getScopeIdAttrs(),\n ...this.contentProps,\n role: 'role' in this.$attrs ? this.$attrs.role : 'menu',\n class: ['v-menu__content', {\n ...this.rootThemeClasses,\n ...this.roundedClasses,\n 'v-menu__content--auto': this.auto,\n 'v-menu__content--fixed': this.activatorFixed,\n menuable__content__active: this.isActive,\n [this.contentClass.trim()]: true,\n }],\n style: this.styles,\n ref: 'content',\n onClick: (e: Event) => {\n const target = e.target as HTMLElement\n\n if (target.getAttribute('disabled')) return\n if (this.closeOnContentClick) this.isActive = false\n },\n onKeydown: this.onKeyDown,\n } as VNodeData\n\n if (this.onScroll) {\n options.onScroll = this.onScroll\n }\n\n if (!this.disabled && this.openOnHover) {\n options.onMouseenter = this.mouseEnterHandler\n }\n\n if (this.openOnHover) {\n options.onMouseleave = this.mouseLeaveHandler\n }\n\n const directives = this.genDirectives()\n\n return withDirectives(h('div', options, this.getContentSlot()), directives)\n },\n getTiles () {\n if (!this.$refs.content) return\n\n this.tiles = Array.from(this.$refs.content.querySelectorAll('.v-list-item, .v-divider, .v-subheader'))\n },\n mouseEnterHandler () {\n this.runDelay('open', () => {\n if (this.hasJustFocused) return\n\n this.hasJustFocused = true\n })\n },\n mouseLeaveHandler (e: MouseEvent) {\n // Prevent accidental re-activation\n this.runDelay('close', () => {\n if (this.$refs.content?.contains(e.relatedTarget as HTMLElement)) return\n\n requestAnimationFrame(() => {\n this.isActive = false\n this.callDeactivate()\n })\n })\n },\n nextTile () {\n const tile = this.tiles[this.listIndex + 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = -1\n this.nextTile()\n\n return\n }\n\n this.listIndex++\n if (tile.tabIndex === -1) this.nextTile()\n },\n prevTile () {\n const tile = this.tiles[this.listIndex - 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = this.tiles.length\n this.prevTile()\n\n return\n }\n\n this.listIndex--\n if (tile.tabIndex === -1) this.prevTile()\n },\n lastTile () {\n const tile = this.tiles[this.tiles.length - 1]\n\n if (!tile) return\n\n this.listIndex = this.tiles.length - 1\n\n if (tile.tabIndex === -1) this.prevTile()\n },\n firstTile () {\n const tile = this.tiles[0]\n\n if (!tile) return\n\n this.listIndex = 0\n\n if (tile.tabIndex === -1) this.nextTile()\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.disableKeys) return\n\n if (e.keyCode === keyCodes.esc) {\n // Wait for dependent elements to close first\n setTimeout(() => { this.isActive = false })\n const activator = this.getActivator()\n this.$nextTick(() => activator && activator.focus())\n } else if (\n !this.isActive &&\n [keyCodes.up, keyCodes.down].includes(e.keyCode)\n ) {\n this.isActive = true\n }\n\n // Allow for isActive watcher to generate tile list\n this.$nextTick(() => this.changeListIndex(e))\n },\n onResize () {\n if (!this.isActive) return\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth\n this.updateDimensions()\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout)\n this.resizeTimeout = window.setTimeout(this.updateDimensions, 100)\n },\n },\n\n render (): VNode {\n const data = {\n class: ['v-menu', {\n 'v-menu--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }]\n }\n\n const directives = [[\n Resize,\n this.onResize,\n '500'\n ]]\n\n // console.log('vmenurender', this, this.activator, this.getActivator())\n\n return withDirectives(h('div', data, [\n !this.activator && this.genActivator(),\n this.showLazyContent(() => [\n h(VThemeProvider, {\n root: true,\n light: this.light,\n dark: this.dark,\n }, [this.genTransition()]),\n ]),\n ]), directives)\n },\n})\n"],"sourceRoot":"","file":"VMenu.js"}
|
|
@@ -17,34 +17,57 @@ var _mixins = _interopRequireDefault(require("../../util/mixins"));
|
|
|
17
17
|
|
|
18
18
|
var _helpers = require("../../util/helpers");
|
|
19
19
|
|
|
20
|
+
var _console = require("../../util/console");
|
|
21
|
+
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
23
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
25
|
+
|
|
26
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
|
+
|
|
28
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
29
|
+
|
|
30
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
31
|
+
|
|
32
|
+
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
33
|
+
|
|
34
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
26
35
|
|
|
27
36
|
/* @vue/component */
|
|
28
37
|
var _default2 = (0, _mixins.default)(_colorable.default, _themeable.default).extend({
|
|
29
38
|
name: 'v-messages',
|
|
30
39
|
props: {
|
|
31
|
-
|
|
40
|
+
modelValue: {
|
|
32
41
|
type: Array,
|
|
33
42
|
default: function _default() {
|
|
34
43
|
return [];
|
|
35
44
|
}
|
|
36
45
|
}
|
|
37
46
|
},
|
|
47
|
+
created: function created() {
|
|
48
|
+
var _this = this;
|
|
49
|
+
|
|
50
|
+
var breakingProps = [['value', 'modelValue']];
|
|
51
|
+
/* istanbul ignore next */
|
|
52
|
+
|
|
53
|
+
breakingProps.forEach(function (_ref) {
|
|
54
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
55
|
+
original = _ref2[0],
|
|
56
|
+
replacement = _ref2[1];
|
|
57
|
+
|
|
58
|
+
if (_this.$attrs.hasOwnProperty(original)) (0, _console.breaking)(original, replacement, _this);
|
|
59
|
+
});
|
|
60
|
+
},
|
|
38
61
|
methods: {
|
|
39
62
|
genChildren: function genChildren() {
|
|
40
|
-
var
|
|
63
|
+
var _this2 = this;
|
|
41
64
|
|
|
42
65
|
return (0, _vue.h)(_vue.TransitionGroup, {
|
|
43
66
|
class: 'v-messages__wrapper',
|
|
44
67
|
name: 'message-transition',
|
|
45
68
|
tag: 'div'
|
|
46
69
|
}, function () {
|
|
47
|
-
return
|
|
70
|
+
return _this2.modelValue.map(_this2.genMessage);
|
|
48
71
|
});
|
|
49
72
|
},
|
|
50
73
|
genMessage: function genMessage(message, key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VMessages/VMessages.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;AAGA;;
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VMessages/VMessages.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;AAGA;;AACA;;AAGA;;AACA;;;;;;;;;;;;;;;;AAEA;gBACe,qBAAO,kBAAP,EAAkB,kBAAlB,EAA6B,MAA7B,CAAoC;AACjD,EAAA,IAAI,EAAE,YAD2C;AAGjD,EAAA,KAAK,EAAE;AACL,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE,KADI;AAEV,MAAA,OAAO,EAAE;AAAA,eAAO,EAAP;AAAA;AAFC;AADP,GAH0C;AAUjD,EAAA,OAViD,qBAU1C;AAAA;;AACL,QAAM,aAAa,GAAG,CACpB,CAAC,OAAD,EAAU,YAAV,CADoB,CAAtB;AAIA;;AACA,IAAA,aAAa,CAAC,OAAd,CAAsB,gBAA4B;AAAA;AAAA,UAA1B,QAA0B;AAAA,UAAhB,WAAgB;;AAChD,UAAI,KAAI,CAAC,MAAL,CAAY,cAAZ,CAA2B,QAA3B,CAAJ,EAA0C,uBAAS,QAAT,EAAmB,WAAnB,EAAgC,KAAhC;AAC3C,KAFD;AAGD,GAnBgD;AAqBjD,EAAA,OAAO,EAAE;AACP,IAAA,WADO,yBACI;AAAA;;AACT,aAAO,YAAE,oBAAF,EAAmB;AACxB,QAAA,KAAK,EAAE,qBADiB;AAExB,QAAA,IAAI,EAAE,oBAFkB;AAGxB,QAAA,GAAG,EAAE;AAHmB,OAAnB,EAIJ;AAAA,eAAM,MAAI,CAAC,UAAL,CAAgB,GAAhB,CAAoB,MAAI,CAAC,UAAzB,CAAN;AAAA,OAJI,CAAP;AAKD,KAPM;AAQP,IAAA,UARO,sBAQK,OARL,EAQsB,GARtB,EAQiC;AACtC,aAAO,YAAE,KAAF,EAAS;AACd,QAAA,KAAK,EAAE,qBADO;AAEd,QAAA,GAAG,EAAH;AAFc,OAAT,EAGJ,sBAAQ,IAAR,EAAc,SAAd,EAAyB;AAAE,QAAA,OAAO,EAAP,OAAF;AAAW,QAAA,GAAG,EAAH;AAAX,OAAzB,KAA8C,CAAC,OAAD,CAH1C,CAAP;AAID;AAbM,GArBwC;AAqCjD,EAAA,MArCiD,oBAqC3C;AACJ,WAAO,YAAE,KAAF,EAAS,KAAK,YAAL,CAAkB,KAAK,KAAvB,EAA8B;AAC5C,MAAA,KAAK,EAAE,CAAC,YAAD,EAAe,KAAK,YAApB;AADqC,KAA9B,CAAT,EAEH,CAAC,KAAK,WAAL,EAAD,CAFG,CAAP;AAGD;AAzCgD,CAApC,C","sourcesContent":["// Styles\nimport './VMessages.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport { TransitionGroup, VNode, h } from 'vue'\nimport mixins from '../../util/mixins'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport { breaking } from '../../util/console'\n\n/* @vue/component */\nexport default mixins(Colorable, Themeable).extend({\n name: 'v-messages',\n\n props: {\n modelValue: {\n type: Array,\n default: () => ([]),\n },\n },\n\n created () {\n const breakingProps = [\n ['value', 'modelValue'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n methods: {\n genChildren () {\n return h(TransitionGroup, {\n class: 'v-messages__wrapper',\n name: 'message-transition',\n tag: 'div',\n }, () => this.modelValue.map(this.genMessage))\n },\n genMessage (message: string, key: number) {\n return h('div', {\n class: 'v-messages__message',\n key,\n }, getSlot(this, 'default', { message, key }) || [message])\n },\n },\n\n render (): VNode {\n return h('div', this.setTextColor(this.color, {\n class: ['v-messages', this.themeClasses],\n }), [this.genChildren()])\n },\n})\n"],"sourceRoot":"","file":"VMessages.js"}
|