kdutify 2.7.2 → 2.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/json/web-types.json +5 -5
- package/dist/kdutify.js +150 -150
- package/dist/kdutify.js.map +1 -1
- package/dist/kdutify.min.css +1 -1
- package/dist/kdutify.min.js +2 -2
- package/es5/components/KAlert/KAlert.js +1 -1
- package/es5/components/KApp/KApp.js +1 -1
- package/es5/components/KAppBar/KAppBar.js +1 -1
- package/es5/components/KAutocomplete/KAutocomplete.js +1 -1
- package/es5/components/KAvatar/KAvatar.js +1 -1
- package/es5/components/KBadge/KBadge.js +1 -1
- package/es5/components/KBanner/KBanner.js +1 -1
- package/es5/components/KBottomNavigation/KBottomNavigation.js +1 -1
- package/es5/components/KBottomSheet/KBottomSheet.js +1 -1
- package/es5/components/KBreadcrumbs/KBreadcrumbs.js +1 -1
- package/es5/components/KBtn/KBtn.js +1 -1
- package/es5/components/KBtnToggle/KBtnToggle.js +1 -1
- package/es5/components/KCalendar/KCalendarCategory.js +1 -1
- package/es5/components/KCalendar/KCalendarDaily.js +1 -1
- package/es5/components/KCalendar/KCalendarMonthly.js +1 -1
- package/es5/components/KCalendar/KCalendarWeekly.js +1 -1
- package/es5/components/KCalendar/mixins/calendar-with-events.js +1 -1
- package/es5/components/KCalendar/modes/stack.js +12 -12
- package/es5/components/KCard/KCard.js +1 -1
- package/es5/components/KCarousel/KCarousel.js +1 -1
- package/es5/components/KCheckbox/KCheckbox.js +2 -2
- package/es5/components/KCheckbox/KSimpleCheckbox.js +1 -1
- package/es5/components/KChip/KChip.js +1 -1
- package/es5/components/KChipGroup/KChipGroup.js +1 -1
- package/es5/components/KColorPicker/KColorPicker.js +1 -1
- package/es5/components/KColorPicker/KColorPickerCanvas.js +1 -1
- package/es5/components/KColorPicker/KColorPickerEdit.js +1 -1
- package/es5/components/KColorPicker/KColorPickerPreview.js +1 -1
- package/es5/components/KColorPicker/KColorPickerSwatches.js +1 -1
- package/es5/components/KCombobox/KCombobox.js +1 -1
- package/es5/components/KCounter/KCounter.js +1 -1
- package/es5/components/KDataIterator/KDataFooter.js +1 -1
- package/es5/components/KDataTable/KDataTable.js +1 -1
- package/es5/components/KDataTable/KDataTableHeader.js +1 -1
- package/es5/components/KDataTable/KEditDialog.js +1 -1
- package/es5/components/KDataTable/KSimpleTable.js +1 -1
- package/es5/components/KDataTable/KVirtualTable.js +1 -1
- package/es5/components/KDatePicker/KDatePickerHeader.js +1 -1
- package/es5/components/KDatePicker/KDatePickerTitle.js +1 -1
- package/es5/components/KDatePicker/KDatePickerYears.js +1 -1
- package/es5/components/KDatePicker/mixins/date-picker-table.js +1 -1
- package/es5/components/KDatePicker/util/monthChange.js +3 -3
- package/es5/components/KDialog/KDialog.js +1 -1
- package/es5/components/KDivider/KDivider.js +1 -1
- package/es5/components/KExpansionPanel/KExpansionPanels.js +1 -1
- package/es5/components/KFileInput/KFileInput.js +1 -1
- package/es5/components/KFooter/KFooter.js +1 -1
- package/es5/components/KGrid/KCol.js +1 -1
- package/es5/components/KGrid/KContainer.js +2 -2
- package/es5/components/KGrid/KFlex.js +1 -1
- package/es5/components/KGrid/KLayout.js +1 -1
- package/es5/components/KGrid/KRow.js +1 -1
- package/es5/components/KGrid/KSpacer.js +1 -1
- package/es5/components/KIcon/KIcon.js +1 -1
- package/es5/components/KImg/KImg.js +1 -1
- package/es5/components/KInput/KInput.js +1 -1
- package/es5/components/KItemGroup/KItem.js +1 -1
- package/es5/components/KItemGroup/KItemGroup.js +1 -1
- package/es5/components/KLabel/KLabel.js +1 -1
- package/es5/components/KList/KList.js +1 -1
- package/es5/components/KList/KListGroup.js +1 -1
- package/es5/components/KList/KListItem.js +1 -1
- package/es5/components/KList/KListItemGroup.js +1 -1
- package/es5/components/KMain/KMain.js +1 -1
- package/es5/components/KMenu/KMenu.js +1 -1
- package/es5/components/KMessages/KMessages.js +1 -1
- package/es5/components/KNavigationDrawer/KNavigationDrawer.js +9 -9
- package/es5/components/KOtpInput/KOtpInput.js +2 -2
- package/es5/components/KOverflowBtn/KOverflowBtn.js +1 -1
- package/es5/components/KOverlay/KOverlay.js +1 -1
- package/es5/components/KPagination/KPagination.js +1 -1
- package/es5/components/KParallax/KParallax.js +1 -1
- package/es5/components/KPicker/KPicker.js +2 -2
- package/es5/components/KProgressCircular/KProgressCircular.js +1 -1
- package/es5/components/KProgressLinear/KProgressLinear.js +1 -1
- package/es5/components/KRadioGroup/KRadio.js +1 -1
- package/es5/components/KRadioGroup/KRadioGroup.js +2 -2
- package/es5/components/KRangeSlider/KRangeSlider.js +1 -1
- package/es5/components/KRating/KRating.js +1 -1
- package/es5/components/KResponsive/KResponsive.js +1 -1
- package/es5/components/KSelect/KSelect.js +2 -2
- package/es5/components/KSheet/KSheet.js +1 -1
- package/es5/components/KSkeletonLoader/KSkeletonLoader.js +1 -1
- package/es5/components/KSlideGroup/KSlideGroup.js +1 -1
- package/es5/components/KSlider/KSlider.js +1 -1
- package/es5/components/KSnackbar/KSnackbar.js +1 -1
- package/es5/components/KSparkline/helpers/math.js +4 -4
- package/es5/components/KSparkline/helpers/path.js +2 -2
- package/es5/components/KSpeedDial/KSpeedDial.js +1 -1
- package/es5/components/KStepper/KStepper.js +1 -1
- package/es5/components/KSubheader/KSubheader.js +1 -1
- package/es5/components/KSwitch/KSwitch.js +2 -2
- package/es5/components/KSystemBar/KSystemBar.js +1 -1
- package/es5/components/KTabs/KTabs.js +6 -6
- package/es5/components/KTextField/KTextField.js +1 -1
- package/es5/components/KTextarea/KTextarea.js +1 -1
- package/es5/components/KTimePicker/KTimePickerClock.js +1 -1
- package/es5/components/KTimePicker/KTimePickerTitle.js +1 -1
- package/es5/components/KTimeline/KTimeline.js +1 -1
- package/es5/components/KToolbar/KToolbar.js +1 -1
- package/es5/components/KTooltip/KTooltip.js +1 -1
- package/es5/components/KTreeview/KTreeview.js +1 -1
- package/es5/components/KVirtualScroll/KVirtualScroll.js +1 -1
- package/es5/components/KWindow/KWindow.js +1 -1
- package/es5/directives/ripple/index.js +1 -1
- package/es5/framework.js +1 -1
- package/es5/framework.js.map +1 -1
- package/es5/mixins/binds-attrs/index.js +2 -2
- package/es5/mixins/bootable/index.js +7 -7
- package/es5/mixins/delayable/index.js +10 -10
- package/es5/mixins/loadable/index.js +8 -8
- package/es5/mixins/positionable/index.js +25 -25
- package/es5/mixins/scrollable/index.js +18 -18
- package/es5/mixins/ssr-bootable/index.js +7 -7
- package/es5/presets/default/index.js +1 -1
- package/es5/services/theme/utils.js +4 -4
- package/es5/util/colorUtils.js +13 -13
- package/es5/util/dedupeModelListeners.js +3 -3
- package/es5/util/dom.js +4 -4
- package/es5/util/helpers.js +14 -14
- package/lib/components/KAlert/KAlert.js +1 -1
- package/lib/components/KAlert/KAlert.js.map +1 -1
- package/lib/components/KApp/KApp.js +1 -1
- package/lib/components/KApp/KApp.js.map +1 -1
- package/lib/components/KAppBar/KAppBar.js +1 -1
- package/lib/components/KAppBar/KAppBar.js.map +1 -1
- package/lib/components/KAutocomplete/KAutocomplete.js +1 -1
- package/lib/components/KAutocomplete/KAutocomplete.js.map +1 -1
- package/lib/components/KAvatar/KAvatar.js +1 -1
- package/lib/components/KAvatar/KAvatar.js.map +1 -1
- package/lib/components/KBadge/KBadge.js +1 -1
- package/lib/components/KBadge/KBadge.js.map +1 -1
- package/lib/components/KBanner/KBanner.js +1 -1
- package/lib/components/KBanner/KBanner.js.map +1 -1
- package/lib/components/KBottomNavigation/KBottomNavigation.js +1 -1
- package/lib/components/KBottomNavigation/KBottomNavigation.js.map +1 -1
- package/lib/components/KBottomSheet/KBottomSheet.js +1 -1
- package/lib/components/KBottomSheet/KBottomSheet.js.map +1 -1
- package/lib/components/KBreadcrumbs/KBreadcrumbs.js +1 -1
- package/lib/components/KBreadcrumbs/KBreadcrumbs.js.map +1 -1
- package/lib/components/KBtn/KBtn.js +1 -1
- package/lib/components/KBtn/KBtn.js.map +1 -1
- package/lib/components/KBtnToggle/KBtnToggle.js +1 -1
- package/lib/components/KBtnToggle/KBtnToggle.js.map +1 -1
- package/lib/components/KCalendar/KCalendarCategory.js +1 -1
- package/lib/components/KCalendar/KCalendarCategory.js.map +1 -1
- package/lib/components/KCalendar/KCalendarDaily.js +1 -1
- package/lib/components/KCalendar/KCalendarDaily.js.map +1 -1
- package/lib/components/KCalendar/KCalendarMonthly.js +1 -1
- package/lib/components/KCalendar/KCalendarMonthly.js.map +1 -1
- package/lib/components/KCalendar/KCalendarWeekly.js +1 -1
- package/lib/components/KCalendar/KCalendarWeekly.js.map +1 -1
- package/lib/components/KCalendar/mixins/calendar-with-events.js +1 -1
- package/lib/components/KCalendar/mixins/calendar-with-events.js.map +1 -1
- package/lib/components/KCalendar/modes/stack.js +12 -12
- package/lib/components/KCard/KCard.js +1 -1
- package/lib/components/KCard/KCard.js.map +1 -1
- package/lib/components/KCarousel/KCarousel.js +1 -1
- package/lib/components/KCarousel/KCarousel.js.map +1 -1
- package/lib/components/KCheckbox/KCheckbox.js +2 -2
- package/lib/components/KCheckbox/KCheckbox.js.map +1 -1
- package/lib/components/KCheckbox/KSimpleCheckbox.js +1 -1
- package/lib/components/KCheckbox/KSimpleCheckbox.js.map +1 -1
- package/lib/components/KChip/KChip.js +1 -1
- package/lib/components/KChip/KChip.js.map +1 -1
- package/lib/components/KChipGroup/KChipGroup.js +1 -1
- package/lib/components/KChipGroup/KChipGroup.js.map +1 -1
- package/lib/components/KColorPicker/KColorPicker.js +1 -1
- package/lib/components/KColorPicker/KColorPicker.js.map +1 -1
- package/lib/components/KColorPicker/KColorPickerCanvas.js +1 -1
- package/lib/components/KColorPicker/KColorPickerCanvas.js.map +1 -1
- package/lib/components/KColorPicker/KColorPickerEdit.js +1 -1
- package/lib/components/KColorPicker/KColorPickerEdit.js.map +1 -1
- package/lib/components/KColorPicker/KColorPickerPreview.js +1 -1
- package/lib/components/KColorPicker/KColorPickerPreview.js.map +1 -1
- package/lib/components/KColorPicker/KColorPickerSwatches.js +1 -1
- package/lib/components/KColorPicker/KColorPickerSwatches.js.map +1 -1
- package/lib/components/KCombobox/KCombobox.js +1 -1
- package/lib/components/KCombobox/KCombobox.js.map +1 -1
- package/lib/components/KCounter/KCounter.js +1 -1
- package/lib/components/KCounter/KCounter.js.map +1 -1
- package/lib/components/KDataIterator/KDataFooter.js +1 -1
- package/lib/components/KDataIterator/KDataFooter.js.map +1 -1
- package/lib/components/KDataTable/KDataTable.js +1 -1
- package/lib/components/KDataTable/KDataTable.js.map +1 -1
- package/lib/components/KDataTable/KDataTableHeader.js +1 -1
- package/lib/components/KDataTable/KDataTableHeader.js.map +1 -1
- package/lib/components/KDataTable/KEditDialog.js +1 -1
- package/lib/components/KDataTable/KEditDialog.js.map +1 -1
- package/lib/components/KDataTable/KSimpleTable.js +1 -1
- package/lib/components/KDataTable/KSimpleTable.js.map +1 -1
- package/lib/components/KDataTable/KVirtualTable.js +1 -1
- package/lib/components/KDataTable/KVirtualTable.js.map +1 -1
- package/lib/components/KDatePicker/KDatePickerHeader.js +1 -1
- package/lib/components/KDatePicker/KDatePickerHeader.js.map +1 -1
- package/lib/components/KDatePicker/KDatePickerTitle.js +1 -1
- package/lib/components/KDatePicker/KDatePickerTitle.js.map +1 -1
- package/lib/components/KDatePicker/KDatePickerYears.js +1 -1
- package/lib/components/KDatePicker/KDatePickerYears.js.map +1 -1
- package/lib/components/KDatePicker/mixins/date-picker-table.js +1 -1
- package/lib/components/KDatePicker/mixins/date-picker-table.js.map +1 -1
- package/lib/components/KDatePicker/util/monthChange.js +3 -3
- package/lib/components/KDialog/KDialog.js +1 -1
- package/lib/components/KDialog/KDialog.js.map +1 -1
- package/lib/components/KDivider/KDivider.js +1 -1
- package/lib/components/KDivider/KDivider.js.map +1 -1
- package/lib/components/KExpansionPanel/KExpansionPanels.js +1 -1
- package/lib/components/KExpansionPanel/KExpansionPanels.js.map +1 -1
- package/lib/components/KFileInput/KFileInput.js +1 -1
- package/lib/components/KFileInput/KFileInput.js.map +1 -1
- package/lib/components/KFooter/KFooter.js +1 -1
- package/lib/components/KFooter/KFooter.js.map +1 -1
- package/lib/components/KGrid/KCol.js +1 -1
- package/lib/components/KGrid/KCol.js.map +1 -1
- package/lib/components/KGrid/KContainer.js +2 -2
- package/lib/components/KGrid/KContainer.js.map +1 -1
- package/lib/components/KGrid/KFlex.js +1 -1
- package/lib/components/KGrid/KFlex.js.map +1 -1
- package/lib/components/KGrid/KLayout.js +1 -1
- package/lib/components/KGrid/KLayout.js.map +1 -1
- package/lib/components/KGrid/KRow.js +1 -1
- package/lib/components/KGrid/KRow.js.map +1 -1
- package/lib/components/KGrid/KSpacer.js +1 -1
- package/lib/components/KGrid/KSpacer.js.map +1 -1
- package/lib/components/KIcon/KIcon.js +1 -1
- package/lib/components/KIcon/KIcon.js.map +1 -1
- package/lib/components/KImg/KImg.js +1 -1
- package/lib/components/KImg/KImg.js.map +1 -1
- package/lib/components/KInput/KInput.js +1 -1
- package/lib/components/KInput/KInput.js.map +1 -1
- package/lib/components/KItemGroup/KItem.js +1 -1
- package/lib/components/KItemGroup/KItem.js.map +1 -1
- package/lib/components/KItemGroup/KItemGroup.js +1 -1
- package/lib/components/KItemGroup/KItemGroup.js.map +1 -1
- package/lib/components/KLabel/KLabel.js +1 -1
- package/lib/components/KLabel/KLabel.js.map +1 -1
- package/lib/components/KList/KList.js +1 -1
- package/lib/components/KList/KList.js.map +1 -1
- package/lib/components/KList/KListGroup.js +1 -1
- package/lib/components/KList/KListGroup.js.map +1 -1
- package/lib/components/KList/KListItem.js +1 -1
- package/lib/components/KList/KListItem.js.map +1 -1
- package/lib/components/KList/KListItemGroup.js +1 -1
- package/lib/components/KList/KListItemGroup.js.map +1 -1
- package/lib/components/KMain/KMain.js +1 -1
- package/lib/components/KMain/KMain.js.map +1 -1
- package/lib/components/KMenu/KMenu.js +1 -1
- package/lib/components/KMenu/KMenu.js.map +1 -1
- package/lib/components/KMessages/KMessages.js +1 -1
- package/lib/components/KMessages/KMessages.js.map +1 -1
- package/lib/components/KNavigationDrawer/KNavigationDrawer.js +9 -9
- package/lib/components/KNavigationDrawer/KNavigationDrawer.js.map +1 -1
- package/lib/components/KOtpInput/KOtpInput.js +2 -2
- package/lib/components/KOtpInput/KOtpInput.js.map +1 -1
- package/lib/components/KOverflowBtn/KOverflowBtn.js +1 -1
- package/lib/components/KOverflowBtn/KOverflowBtn.js.map +1 -1
- package/lib/components/KOverlay/KOverlay.js +1 -1
- package/lib/components/KOverlay/KOverlay.js.map +1 -1
- package/lib/components/KPagination/KPagination.js +1 -1
- package/lib/components/KPagination/KPagination.js.map +1 -1
- package/lib/components/KParallax/KParallax.js +1 -1
- package/lib/components/KParallax/KParallax.js.map +1 -1
- package/lib/components/KPicker/KPicker.js +2 -2
- package/lib/components/KPicker/KPicker.js.map +1 -1
- package/lib/components/KProgressCircular/KProgressCircular.js +1 -1
- package/lib/components/KProgressCircular/KProgressCircular.js.map +1 -1
- package/lib/components/KProgressLinear/KProgressLinear.js +1 -1
- package/lib/components/KProgressLinear/KProgressLinear.js.map +1 -1
- package/lib/components/KRadioGroup/KRadio.js +1 -1
- package/lib/components/KRadioGroup/KRadio.js.map +1 -1
- package/lib/components/KRadioGroup/KRadioGroup.js +2 -2
- package/lib/components/KRadioGroup/KRadioGroup.js.map +1 -1
- package/lib/components/KRangeSlider/KRangeSlider.js +1 -1
- package/lib/components/KRangeSlider/KRangeSlider.js.map +1 -1
- package/lib/components/KRating/KRating.js +1 -1
- package/lib/components/KRating/KRating.js.map +1 -1
- package/lib/components/KResponsive/KResponsive.js +1 -1
- package/lib/components/KResponsive/KResponsive.js.map +1 -1
- package/lib/components/KSelect/KSelect.js +2 -2
- package/lib/components/KSelect/KSelect.js.map +1 -1
- package/lib/components/KSheet/KSheet.js +1 -1
- package/lib/components/KSheet/KSheet.js.map +1 -1
- package/lib/components/KSkeletonLoader/KSkeletonLoader.js +1 -1
- package/lib/components/KSkeletonLoader/KSkeletonLoader.js.map +1 -1
- package/lib/components/KSlideGroup/KSlideGroup.js +1 -1
- package/lib/components/KSlideGroup/KSlideGroup.js.map +1 -1
- package/lib/components/KSlider/KSlider.js +1 -1
- package/lib/components/KSlider/KSlider.js.map +1 -1
- package/lib/components/KSnackbar/KSnackbar.js +1 -1
- package/lib/components/KSnackbar/KSnackbar.js.map +1 -1
- package/lib/components/KSparkline/helpers/math.js +4 -4
- package/lib/components/KSparkline/helpers/path.js +2 -2
- package/lib/components/KSpeedDial/KSpeedDial.js +1 -1
- package/lib/components/KSpeedDial/KSpeedDial.js.map +1 -1
- package/lib/components/KStepper/KStepper.js +1 -1
- package/lib/components/KStepper/KStepper.js.map +1 -1
- package/lib/components/KSubheader/KSubheader.js +1 -1
- package/lib/components/KSubheader/KSubheader.js.map +1 -1
- package/lib/components/KSwitch/KSwitch.js +2 -2
- package/lib/components/KSwitch/KSwitch.js.map +1 -1
- package/lib/components/KSystemBar/KSystemBar.js +1 -1
- package/lib/components/KSystemBar/KSystemBar.js.map +1 -1
- package/lib/components/KTabs/KTabs.js +6 -6
- package/lib/components/KTabs/KTabs.js.map +1 -1
- package/lib/components/KTextField/KTextField.js +1 -1
- package/lib/components/KTextField/KTextField.js.map +1 -1
- package/lib/components/KTextarea/KTextarea.js +1 -1
- package/lib/components/KTextarea/KTextarea.js.map +1 -1
- package/lib/components/KTimePicker/KTimePickerClock.js +1 -1
- package/lib/components/KTimePicker/KTimePickerClock.js.map +1 -1
- package/lib/components/KTimePicker/KTimePickerTitle.js +1 -1
- package/lib/components/KTimePicker/KTimePickerTitle.js.map +1 -1
- package/lib/components/KTimeline/KTimeline.js +1 -1
- package/lib/components/KTimeline/KTimeline.js.map +1 -1
- package/lib/components/KToolbar/KToolbar.js +1 -1
- package/lib/components/KToolbar/KToolbar.js.map +1 -1
- package/lib/components/KTooltip/KTooltip.js +1 -1
- package/lib/components/KTooltip/KTooltip.js.map +1 -1
- package/lib/components/KTreeview/KTreeview.js +1 -1
- package/lib/components/KTreeview/KTreeview.js.map +1 -1
- package/lib/components/KVirtualScroll/KVirtualScroll.js +1 -1
- package/lib/components/KVirtualScroll/KVirtualScroll.js.map +1 -1
- package/lib/components/KWindow/KWindow.js +1 -1
- package/lib/components/KWindow/KWindow.js.map +1 -1
- package/lib/directives/ripple/index.js +1 -1
- package/lib/directives/ripple/index.js.map +1 -1
- package/lib/framework.js +1 -1
- package/lib/framework.js.map +1 -1
- package/lib/mixins/binds-attrs/index.js +2 -2
- package/lib/mixins/bootable/index.js +7 -7
- package/lib/mixins/delayable/index.js +10 -10
- package/lib/mixins/loadable/index.js +8 -8
- package/lib/mixins/positionable/index.js +25 -25
- package/lib/mixins/scrollable/index.js +18 -18
- package/lib/mixins/ssr-bootable/index.js +7 -7
- package/lib/presets/default/index.js +1 -1
- package/lib/presets/default/index.js.map +1 -1
- package/lib/services/theme/utils.js +4 -4
- package/lib/util/colorUtils.js +13 -13
- package/lib/util/dedupeModelListeners.js +3 -3
- package/lib/util/dom.js +4 -4
- package/lib/util/helpers.js +14 -14
- package/package.json +2 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/KRangeSlider/KRangeSlider.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './KRangeSlider.sass'\n\n// Components\nimport KSlider from '../KSlider'\n\n// Helpers\nimport {\n addOnceEventListener,\n createRange,\n deepEqual,\n passiveSupported,\n} from '../../util/helpers'\n\n// Types\nimport { PropValidator } from 'kdu/types/options'\n\n/* @kdujs/component */\nexport default KSlider.extend({\n name: 'k-range-slider',\n\n props: {\n value: {\n type: Array,\n default: () => ([0, 0]),\n } as unknown as PropValidator<[number, number]>,\n },\n\n data () {\n return {\n activeThumb: null as null | number,\n lazyValue: this.value,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...KSlider.options.computed.classes.call(this),\n 'k-input--range-slider': true,\n }\n },\n internalValue: {\n get (): number[] {\n return this.lazyValue\n },\n set (val: number[]) {\n // Round value to ensure the\n // entire slider range can\n // be selected with step\n let value = val.map((v = 0) => this.roundValue(Math.min(Math.max(v, this.minValue), this.maxValue)))\n\n // Switch values if range and wrong order\n if (value[0] > value[1] || value[1] < value[0]) {\n if (this.activeThumb !== null) {\n const toFocus = this.activeThumb === 1 ? 0 : 1\n const el = this.$refs[`thumb_${toFocus}`] as HTMLElement\n el.focus()\n }\n value = [value[1], value[0]]\n }\n\n this.lazyValue = value\n if (!deepEqual(value, this.value)) this.$emit('input', value)\n\n this.validate()\n },\n },\n inputWidth (): number[] {\n return this.internalValue.map((v: number) => (\n this.roundValue(v) - this.minValue) / (this.maxValue - this.minValue) * 100\n )\n },\n },\n\n methods: {\n getTrackStyle (startLength: number, endLength: number, startPadding = 0, endPadding = 0) {\n const startDir = this.vertical ? this.$kdutify.rtl ? 'top' : 'bottom' : this.$kdutify.rtl ? 'right' : 'left'\n const endDir = this.vertical ? 'height' : 'width'\n\n const start = `calc(${startLength}% + ${startPadding}px)`\n const end = `calc(${endLength}% + ${endPadding}px)`\n\n return {\n transition: this.trackTransition,\n [startDir]: start,\n [endDir]: end,\n }\n },\n getIndexOfClosestValue (arr: number[], v: number) {\n if (Math.abs(arr[0] - v) < Math.abs(arr[1] - v)) return 0\n else return 1\n },\n genInput () {\n return createRange(2).map(i => {\n const input = KSlider.options.methods.genInput.call(this)\n\n input.data = input.data || {}\n input.data.attrs = input.data.attrs || {}\n input.data.attrs.value = this.internalValue[i]\n input.data.attrs.id = `input-${i ? 'max' : 'min'}-${this._uid}`\n\n return input\n })\n },\n genTrackContainer () {\n const children = []\n\n const padding = this.isDisabled ? 10 : 0\n const sections: { class: string, color: string | undefined, styles: [number, number, number, number] }[] = [\n {\n class: 'k-slider__track-background',\n color: this.computedTrackColor,\n styles: [0, this.inputWidth[0], 0, -padding],\n },\n {\n class: this.isDisabled ? 'k-slider__track-background' : 'k-slider__track-fill',\n color: this.isDisabled ? this.computedTrackColor : this.computedTrackFillColor,\n styles: [this.inputWidth[0], Math.abs(this.inputWidth[1] - this.inputWidth[0]), padding, padding * -2],\n },\n {\n class: 'k-slider__track-background',\n color: this.computedTrackColor,\n styles: [this.inputWidth[1], Math.abs(100 - this.inputWidth[1]), padding, -padding],\n },\n ]\n\n if (this.$kdutify.rtl) sections.reverse()\n\n children.push(...sections.map(section => this.$createElement('div', this.setBackgroundColor(section.color, {\n staticClass: section.class,\n style: this.getTrackStyle(...section.styles),\n }))))\n\n return this.$createElement('div', {\n staticClass: 'k-slider__track-container',\n ref: 'track',\n }, children)\n },\n genChildren () {\n return [\n this.genInput(),\n this.genTrackContainer(),\n this.genSteps(),\n createRange(2).map(index => {\n const value = this.internalValue[index]\n const onFocus = (e: Event) => {\n this.isFocused = true\n this.activeThumb = index\n\n this.$emit('focus', e)\n }\n\n const onBlur = (e: Event) => {\n this.isFocused = false\n this.activeThumb = null\n\n this.$emit('blur', e)\n }\n\n const valueWidth = this.inputWidth[index]\n const isActive = this.isActive && this.activeThumb === index\n const isFocused = this.isFocused && this.activeThumb === index\n\n return this.genThumbContainer(value, valueWidth, isActive, isFocused, onFocus, onBlur, `thumb_${index}`)\n }),\n ]\n },\n reevaluateSelected (value: number) {\n this.activeThumb = this.getIndexOfClosestValue(this.internalValue, value)\n const refName = `thumb_${this.activeThumb}`\n const thumbRef = this.$refs[refName] as HTMLElement\n thumbRef.focus()\n },\n onSliderMouseDown (e: MouseEvent | TouchEvent) {\n const value = this.parseMouseMove(e)\n\n this.reevaluateSelected(value)\n\n this.oldValue = this.internalValue\n this.isActive = true\n\n if ((e.target as Element)?.matches('.k-slider__thumb-container, .k-slider__thumb-container *')) {\n this.thumbPressed = true\n const domRect = (e.target as Element).getBoundingClientRect()\n const touch = 'touches' in e ? e.touches[0] : e\n this.startOffset = this.vertical\n ? touch.clientY - (domRect.top + domRect.height / 2)\n : touch.clientX - (domRect.left + domRect.width / 2)\n } else {\n this.startOffset = 0\n window.clearTimeout(this.mouseTimeout)\n this.mouseTimeout = window.setTimeout(() => {\n this.thumbPressed = true\n }, 300)\n }\n\n const mouseUpOptions = passiveSupported ? { passive: true, capture: true } : true\n const mouseMoveOptions = passiveSupported ? { passive: true } : false\n\n const isTouchEvent = 'touches' in e\n\n this.onMouseMove(e)\n this.app.addEventListener(isTouchEvent ? 'touchmove' : 'mousemove', this.onMouseMove, mouseMoveOptions)\n addOnceEventListener(this.app, isTouchEvent ? 'touchend' : 'mouseup', this.onSliderMouseUp, mouseUpOptions)\n\n this.$emit('start', this.internalValue)\n },\n onSliderClick (e: MouseEvent) {\n if (!this.isActive) {\n if (this.noClick) {\n this.noClick = false\n return\n }\n\n const value = this.parseMouseMove(e)\n\n this.reevaluateSelected(value)\n\n this.setInternalValue(value)\n\n this.$emit('change', this.internalValue)\n }\n },\n onMouseMove (e: MouseEvent | TouchEvent) {\n const value = this.parseMouseMove(e)\n\n if (e.type === 'mousemove') {\n this.thumbPressed = true\n }\n\n if (this.activeThumb === null) {\n this.activeThumb = this.getIndexOfClosestValue(this.internalValue, value)\n }\n\n this.setInternalValue(value)\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.activeThumb === null) return\n\n const value = this.parseKeyDown(e, this.internalValue[this.activeThumb])\n\n if (value == null) return\n\n this.setInternalValue(value)\n this.$emit('change', this.internalValue)\n },\n setInternalValue (value: number) {\n this.internalValue = this.internalValue.map((v: number, i: number) => {\n if (i === this.activeThumb) return value\n else return Number(v)\n })\n },\n },\n})\n"],"sourceRoot":"","file":"KRangeSlider.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/KRangeSlider/KRangeSlider.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './KRangeSlider.sass'\n\n// Components\nimport KSlider from '../KSlider'\n\n// Helpers\nimport {\n addOnceEventListener,\n createRange,\n deepEqual,\n passiveSupported,\n} from '../../util/helpers'\n\n// Types\nimport { PropValidator } from 'kdu/types/options'\n\n/* @kdujs/component */\nexport default KSlider.extend({\n name: 'k-range-slider',\n\n props: {\n value: {\n type: Array,\n default: () => ([0, 0]),\n } as unknown as PropValidator<[number, number]>,\n },\n\n data () {\n return {\n activeThumb: null as null | number,\n lazyValue: this.value,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...KSlider.options.computed.classes.call(this),\n 'k-input--range-slider': true,\n }\n },\n internalValue: {\n get (): number[] {\n return this.lazyValue\n },\n set (val: number[]) {\n // Round value to ensure the\n // entire slider range can\n // be selected with step\n let value = val.map((v = 0) => this.roundValue(Math.min(Math.max(v, this.minValue), this.maxValue)))\n\n // Switch values if range and wrong order\n if (value[0] > value[1] || value[1] < value[0]) {\n if (this.activeThumb !== null) {\n const toFocus = this.activeThumb === 1 ? 0 : 1\n const el = this.$refs[`thumb_${toFocus}`] as HTMLElement\n el.focus()\n }\n value = [value[1], value[0]]\n }\n\n this.lazyValue = value\n if (!deepEqual(value, this.value)) this.$emit('input', value)\n\n this.validate()\n },\n },\n inputWidth (): number[] {\n return this.internalValue.map((v: number) => (\n this.roundValue(v) - this.minValue) / (this.maxValue - this.minValue) * 100\n )\n },\n },\n\n methods: {\n getTrackStyle (startLength: number, endLength: number, startPadding = 0, endPadding = 0) {\n const startDir = this.vertical ? this.$kdutify.rtl ? 'top' : 'bottom' : this.$kdutify.rtl ? 'right' : 'left'\n const endDir = this.vertical ? 'height' : 'width'\n\n const start = `calc(${startLength}% + ${startPadding}px)`\n const end = `calc(${endLength}% + ${endPadding}px)`\n\n return {\n transition: this.trackTransition,\n [startDir]: start,\n [endDir]: end,\n }\n },\n getIndexOfClosestValue (arr: number[], v: number) {\n if (Math.abs(arr[0] - v) < Math.abs(arr[1] - v)) return 0\n else return 1\n },\n genInput () {\n return createRange(2).map(i => {\n const input = KSlider.options.methods.genInput.call(this)\n\n input.data = input.data || {}\n input.data.attrs = input.data.attrs || {}\n input.data.attrs.value = this.internalValue[i]\n input.data.attrs.id = `input-${i ? 'max' : 'min'}-${this._uid}`\n\n return input\n })\n },\n genTrackContainer () {\n const children = []\n\n const padding = this.isDisabled ? 10 : 0\n const sections: { class: string, color: string | undefined, styles: [number, number, number, number] }[] = [\n {\n class: 'k-slider__track-background',\n color: this.computedTrackColor,\n styles: [0, this.inputWidth[0], 0, -padding],\n },\n {\n class: this.isDisabled ? 'k-slider__track-background' : 'k-slider__track-fill',\n color: this.isDisabled ? this.computedTrackColor : this.computedTrackFillColor,\n styles: [this.inputWidth[0], Math.abs(this.inputWidth[1] - this.inputWidth[0]), padding, padding * -2],\n },\n {\n class: 'k-slider__track-background',\n color: this.computedTrackColor,\n styles: [this.inputWidth[1], Math.abs(100 - this.inputWidth[1]), padding, -padding],\n },\n ]\n\n if (this.$kdutify.rtl) sections.reverse()\n\n children.push(...sections.map(section => this.$createElement('div', this.setBackgroundColor(section.color, {\n staticClass: section.class,\n style: this.getTrackStyle(...section.styles),\n }))))\n\n return this.$createElement('div', {\n staticClass: 'k-slider__track-container',\n ref: 'track',\n }, children)\n },\n genChildren () {\n return [\n this.genInput(),\n this.genTrackContainer(),\n this.genSteps(),\n createRange(2).map(index => {\n const value = this.internalValue[index]\n const onFocus = (e: Event) => {\n this.isFocused = true\n this.activeThumb = index\n\n this.$emit('focus', e)\n }\n\n const onBlur = (e: Event) => {\n this.isFocused = false\n this.activeThumb = null\n\n this.$emit('blur', e)\n }\n\n const valueWidth = this.inputWidth[index]\n const isActive = this.isActive && this.activeThumb === index\n const isFocused = this.isFocused && this.activeThumb === index\n\n return this.genThumbContainer(value, valueWidth, isActive, isFocused, onFocus, onBlur, `thumb_${index}`)\n }),\n ]\n },\n reevaluateSelected (value: number) {\n this.activeThumb = this.getIndexOfClosestValue(this.internalValue, value)\n const refName = `thumb_${this.activeThumb}`\n const thumbRef = this.$refs[refName] as HTMLElement\n thumbRef.focus()\n },\n onSliderMouseDown (e: MouseEvent | TouchEvent) {\n const value = this.parseMouseMove(e)\n\n this.reevaluateSelected(value)\n\n this.oldValue = this.internalValue\n this.isActive = true\n\n if ((e.target as Element)?.matches('.k-slider__thumb-container, .k-slider__thumb-container *')) {\n this.thumbPressed = true\n const domRect = (e.target as Element).getBoundingClientRect()\n const touch = 'touches' in e ? e.touches[0] : e\n this.startOffset = this.vertical\n ? touch.clientY - (domRect.top + domRect.height / 2)\n : touch.clientX - (domRect.left + domRect.width / 2)\n } else {\n this.startOffset = 0\n window.clearTimeout(this.mouseTimeout)\n this.mouseTimeout = window.setTimeout(() => {\n this.thumbPressed = true\n }, 300)\n }\n\n const mouseUpOptions = passiveSupported ? { passive: true, capture: true } : true\n const mouseMoveOptions = passiveSupported ? { passive: true } : false\n\n const isTouchEvent = 'touches' in e\n\n this.onMouseMove(e)\n this.app.addEventListener(isTouchEvent ? 'touchmove' : 'mousemove', this.onMouseMove, mouseMoveOptions)\n addOnceEventListener(this.app, isTouchEvent ? 'touchend' : 'mouseup', this.onSliderMouseUp, mouseUpOptions)\n\n this.$emit('start', this.internalValue)\n },\n onSliderClick (e: MouseEvent) {\n if (!this.isActive) {\n if (this.noClick) {\n this.noClick = false\n return\n }\n\n const value = this.parseMouseMove(e)\n\n this.reevaluateSelected(value)\n\n this.setInternalValue(value)\n\n this.$emit('change', this.internalValue)\n }\n },\n onMouseMove (e: MouseEvent | TouchEvent) {\n const value = this.parseMouseMove(e)\n\n if (e.type === 'mousemove') {\n this.thumbPressed = true\n }\n\n if (this.activeThumb === null) {\n this.activeThumb = this.getIndexOfClosestValue(this.internalValue, value)\n }\n\n this.setInternalValue(value)\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.activeThumb === null) return\n\n const value = this.parseKeyDown(e, this.internalValue[this.activeThumb])\n\n if (value == null) return\n\n this.setInternalValue(value)\n this.$emit('change', this.internalValue)\n },\n setInternalValue (value: number) {\n this.internalValue = this.internalValue.map((v: number, i: number) => {\n if (i === this.activeThumb) return value\n else return Number(v)\n })\n },\n },\n})\n"],"sourceRoot":"","file":"KRangeSlider.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/KRating/KRating.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './KRating.sass'\n\n// Components\nimport KIcon from '../KIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Delayable from '../../mixins/delayable'\nimport Sizeable from '../../mixins/sizeable'\nimport Rippleable from '../../mixins/rippleable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport { createRange } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { KNode, KNodeDirective, KNodeChildren } from 'kdu'\n\ntype ItemSlotProps = {\n index: number\n value: number\n isFilled: boolean\n isHalfFilled?: boolean | undefined\n isHovered: boolean\n isHalfHovered?: boolean | undefined\n click: Function\n}\n\n/* @kdujs/component */\nexport default mixins(\n Colorable,\n Delayable,\n Rippleable,\n Sizeable,\n Themeable\n).extend({\n name: 'k-rating',\n\n props: {\n backgroundColor: {\n type: String,\n default: 'accent',\n },\n color: {\n type: String,\n default: 'primary',\n },\n clearable: Boolean,\n dense: Boolean,\n emptyIcon: {\n type: String,\n default: '$ratingEmpty',\n },\n fullIcon: {\n type: String,\n default: '$ratingFull',\n },\n halfIcon: {\n type: String,\n default: '$ratingHalf',\n },\n halfIncrements: Boolean,\n hover: Boolean,\n length: {\n type: [Number, String],\n default: 5,\n },\n readonly: Boolean,\n size: [Number, String],\n value: {\n type: Number,\n default: 0,\n },\n iconLabel: {\n type: String,\n default: '$kdutify.rating.ariaLabel.icon',\n },\n },\n\n data () {\n return {\n hoverIndex: -1,\n internalValue: this.value,\n }\n },\n\n computed: {\n directives (): KNodeDirective[] {\n if (this.readonly || !this.ripple) return []\n\n return [{\n name: 'ripple',\n value: { circle: true },\n } as KNodeDirective]\n },\n iconProps (): object {\n const {\n dark,\n large,\n light,\n medium,\n small,\n size,\n xLarge,\n xSmall,\n } = this.$props\n\n return {\n dark,\n large,\n light,\n medium,\n size,\n small,\n xLarge,\n xSmall,\n }\n },\n isHovering (): boolean {\n return this.hover && this.hoverIndex >= 0\n },\n },\n\n watch: {\n internalValue (val) {\n val !== this.value && this.$emit('input', val)\n },\n value (val) {\n this.internalValue = val\n },\n },\n\n methods: {\n createClickFn (i: number): Function {\n return (e: MouseEvent) => {\n if (this.readonly) return\n\n const newValue = this.genHoverIndex(e, i)\n if (this.clearable && this.internalValue === newValue) {\n this.internalValue = 0\n } else {\n this.internalValue = newValue\n }\n }\n },\n createProps (i: number): ItemSlotProps {\n const props: ItemSlotProps = {\n index: i,\n value: this.internalValue,\n click: this.createClickFn(i),\n isFilled: Math.floor(this.internalValue) > i,\n isHovered: Math.floor(this.hoverIndex) > i,\n }\n\n if (this.halfIncrements) {\n props.isHalfHovered = !props.isHovered && (this.hoverIndex - i) % 1 > 0\n props.isHalfFilled = !props.isFilled && (this.internalValue - i) % 1 > 0\n }\n\n return props\n },\n genHoverIndex (e: MouseEvent, i: number) {\n let isHalf = this.isHalfEvent(e)\n\n if (\n this.halfIncrements &&\n this.$kdutify.rtl\n ) {\n isHalf = !isHalf\n }\n\n return i + (isHalf ? 0.5 : 1)\n },\n getIconName (props: ItemSlotProps): string {\n const isFull = this.isHovering ? props.isHovered : props.isFilled\n const isHalf = this.isHovering ? props.isHalfHovered : props.isHalfFilled\n\n return isFull ? this.fullIcon : isHalf ? this.halfIcon : this.emptyIcon\n },\n getColor (props: ItemSlotProps): string {\n if (this.isHovering) {\n if (props.isHovered || props.isHalfHovered) return this.color\n } else {\n if (props.isFilled || props.isHalfFilled) return this.color\n }\n\n return this.backgroundColor\n },\n isHalfEvent (e: MouseEvent): boolean {\n if (this.halfIncrements) {\n const rect = e.target && (e.target as HTMLElement).getBoundingClientRect()\n if (rect && (e.pageX - rect.left) < rect.width / 2) return true\n }\n\n return false\n },\n onMouseEnter (e: MouseEvent, i: number): void {\n this.runDelay('open', () => {\n this.hoverIndex = this.genHoverIndex(e, i)\n })\n },\n onMouseLeave (): void {\n this.runDelay('close', () => (this.hoverIndex = -1))\n },\n genItem (i: number): KNode | KNodeChildren | string {\n const props = this.createProps(i)\n\n if (this.$scopedSlots.item) return this.$scopedSlots.item(props)\n\n const listeners: Record<string, Function> = {\n click: props.click,\n }\n\n if (this.hover) {\n listeners.mouseenter = (e: MouseEvent) => this.onMouseEnter(e, i)\n listeners.mouseleave = this.onMouseLeave\n\n if (this.halfIncrements) {\n listeners.mousemove = (e: MouseEvent) => this.onMouseEnter(e, i)\n }\n }\n\n return this.$createElement(KIcon, this.setTextColor(this.getColor(props), {\n attrs: {\n 'aria-label': this.$kdutify.lang.t(this.iconLabel, i + 1, Number(this.length)),\n },\n directives: this.directives,\n props: this.iconProps,\n on: listeners,\n }), [this.getIconName(props)])\n },\n },\n\n render (h): KNode {\n const children = createRange(Number(this.length)).map(i => this.genItem(i))\n\n return h('div', {\n staticClass: 'k-rating',\n class: {\n 'k-rating--readonly': this.readonly,\n 'k-rating--dense': this.dense,\n },\n }, children)\n },\n})\n"],"sourceRoot":"","file":"KRating.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/KRating/KRating.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './KRating.sass'\n\n// Components\nimport KIcon from '../KIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Delayable from '../../mixins/delayable'\nimport Sizeable from '../../mixins/sizeable'\nimport Rippleable from '../../mixins/rippleable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport { createRange } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { KNode, KNodeDirective, KNodeChildren } from 'kdu'\n\ntype ItemSlotProps = {\n index: number\n value: number\n isFilled: boolean\n isHalfFilled?: boolean | undefined\n isHovered: boolean\n isHalfHovered?: boolean | undefined\n click: Function\n}\n\n/* @kdujs/component */\nexport default mixins(\n Colorable,\n Delayable,\n Rippleable,\n Sizeable,\n Themeable\n).extend({\n name: 'k-rating',\n\n props: {\n backgroundColor: {\n type: String,\n default: 'accent',\n },\n color: {\n type: String,\n default: 'primary',\n },\n clearable: Boolean,\n dense: Boolean,\n emptyIcon: {\n type: String,\n default: '$ratingEmpty',\n },\n fullIcon: {\n type: String,\n default: '$ratingFull',\n },\n halfIcon: {\n type: String,\n default: '$ratingHalf',\n },\n halfIncrements: Boolean,\n hover: Boolean,\n length: {\n type: [Number, String],\n default: 5,\n },\n readonly: Boolean,\n size: [Number, String],\n value: {\n type: Number,\n default: 0,\n },\n iconLabel: {\n type: String,\n default: '$kdutify.rating.ariaLabel.icon',\n },\n },\n\n data () {\n return {\n hoverIndex: -1,\n internalValue: this.value,\n }\n },\n\n computed: {\n directives (): KNodeDirective[] {\n if (this.readonly || !this.ripple) return []\n\n return [{\n name: 'ripple',\n value: { circle: true },\n } as KNodeDirective]\n },\n iconProps (): object {\n const {\n dark,\n large,\n light,\n medium,\n small,\n size,\n xLarge,\n xSmall,\n } = this.$props\n\n return {\n dark,\n large,\n light,\n medium,\n size,\n small,\n xLarge,\n xSmall,\n }\n },\n isHovering (): boolean {\n return this.hover && this.hoverIndex >= 0\n },\n },\n\n watch: {\n internalValue (val) {\n val !== this.value && this.$emit('input', val)\n },\n value (val) {\n this.internalValue = val\n },\n },\n\n methods: {\n createClickFn (i: number): Function {\n return (e: MouseEvent) => {\n if (this.readonly) return\n\n const newValue = this.genHoverIndex(e, i)\n if (this.clearable && this.internalValue === newValue) {\n this.internalValue = 0\n } else {\n this.internalValue = newValue\n }\n }\n },\n createProps (i: number): ItemSlotProps {\n const props: ItemSlotProps = {\n index: i,\n value: this.internalValue,\n click: this.createClickFn(i),\n isFilled: Math.floor(this.internalValue) > i,\n isHovered: Math.floor(this.hoverIndex) > i,\n }\n\n if (this.halfIncrements) {\n props.isHalfHovered = !props.isHovered && (this.hoverIndex - i) % 1 > 0\n props.isHalfFilled = !props.isFilled && (this.internalValue - i) % 1 > 0\n }\n\n return props\n },\n genHoverIndex (e: MouseEvent, i: number) {\n let isHalf = this.isHalfEvent(e)\n\n if (\n this.halfIncrements &&\n this.$kdutify.rtl\n ) {\n isHalf = !isHalf\n }\n\n return i + (isHalf ? 0.5 : 1)\n },\n getIconName (props: ItemSlotProps): string {\n const isFull = this.isHovering ? props.isHovered : props.isFilled\n const isHalf = this.isHovering ? props.isHalfHovered : props.isHalfFilled\n\n return isFull ? this.fullIcon : isHalf ? this.halfIcon : this.emptyIcon\n },\n getColor (props: ItemSlotProps): string {\n if (this.isHovering) {\n if (props.isHovered || props.isHalfHovered) return this.color\n } else {\n if (props.isFilled || props.isHalfFilled) return this.color\n }\n\n return this.backgroundColor\n },\n isHalfEvent (e: MouseEvent): boolean {\n if (this.halfIncrements) {\n const rect = e.target && (e.target as HTMLElement).getBoundingClientRect()\n if (rect && (e.pageX - rect.left) < rect.width / 2) return true\n }\n\n return false\n },\n onMouseEnter (e: MouseEvent, i: number): void {\n this.runDelay('open', () => {\n this.hoverIndex = this.genHoverIndex(e, i)\n })\n },\n onMouseLeave (): void {\n this.runDelay('close', () => (this.hoverIndex = -1))\n },\n genItem (i: number): KNode | KNodeChildren | string {\n const props = this.createProps(i)\n\n if (this.$scopedSlots.item) return this.$scopedSlots.item(props)\n\n const listeners: Record<string, Function> = {\n click: props.click,\n }\n\n if (this.hover) {\n listeners.mouseenter = (e: MouseEvent) => this.onMouseEnter(e, i)\n listeners.mouseleave = this.onMouseLeave\n\n if (this.halfIncrements) {\n listeners.mousemove = (e: MouseEvent) => this.onMouseEnter(e, i)\n }\n }\n\n return this.$createElement(KIcon, this.setTextColor(this.getColor(props), {\n attrs: {\n 'aria-label': this.$kdutify.lang.t(this.iconLabel, i + 1, Number(this.length)),\n },\n directives: this.directives,\n props: this.iconProps,\n on: listeners,\n }), [this.getIconName(props)])\n },\n },\n\n render (h): KNode {\n const children = createRange(Number(this.length)).map(i => this.genItem(i))\n\n return h('div', {\n staticClass: 'k-rating',\n class: {\n 'k-rating--readonly': this.readonly,\n 'k-rating--dense': this.dense,\n },\n }, children)\n },\n})\n"],"sourceRoot":"","file":"KRating.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/KResponsive/KResponsive.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/KResponsive/KResponsive.ts"],"names":[],"mappings":"AAAA,OAAO,sDAAoB;AAE3B;AACA,OAAO,UAAoC,MAAM,yBAAyB;AAK1E;AACA,OAAO,MAAM,MAAM,mBAAmB;AACtC,SAAS,OAAO,QAAQ,oBAAoB;AAE5C;AACA,eAAe,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;EACvC,IAAI,EAAE,cAAc;EAEpB,KAAK,EAAE;IACL,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAyB;IACrD,YAAY,EAAE;GACf;EAED,QAAQ,EAAE;IACR,mBAAmB,CAAA,EAAA;MACjB,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;IACjC,CAAC;IACD,WAAW,CAAA,EAAA;MACT,OAAO,IAAI,CAAC,mBAAmB,GAC3B;QAAE,aAAa,EAAG,CAAC,GAAG,IAAI,CAAC,mBAAmB,GAAI,GAAG,GAAG;MAAG,CAAE,GAC7D,SAAS;IACf,CAAC;IACD,aAAa,CAAA,EAAA;MACX,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE;MAEhC,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;QAChC,KAAK,EAAE,IAAI,CAAC,WAAW;QACvB,WAAW,EAAE;OACd,CAAC;IACJ;GACD;EAED,OAAO,EAAE;IACP,UAAU,CAAA,EAAA;MACR,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;QAChC,WAAW,EAAE,uBAAuB;QACpC,KAAK,EAAE,IAAI,CAAC;OACb,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB;GACD;EAED,MAAM,CAAE,CAAC,EAAA;IACP,OAAO,CAAC,CAAC,KAAK,EAAE;MACd,WAAW,EAAE,cAAc;MAC3B,KAAK,EAAE,IAAI,CAAC,gBAAgB;MAC5B,EAAE,EAAE,IAAI,CAAC;KACV,EAAE,CACD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,UAAU,CAAA,CAAE,CAClB,CAAC;EACJ;CACD,CAAC","sourcesContent":["import './KResponsive.sass'\n\n// Mixins\nimport Measurable, { NumberOrNumberString } from '../../mixins/measurable'\n\n// Types\nimport { KNode } from 'kdu'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport { getSlot } from '../../util/helpers'\n\n/* @kdujs/component */\nexport default mixins(Measurable).extend({\n name: 'k-responsive',\n\n props: {\n aspectRatio: [String, Number] as NumberOrNumberString,\n contentClass: String,\n },\n\n computed: {\n computedAspectRatio (): number {\n return Number(this.aspectRatio)\n },\n aspectStyle (): object | undefined {\n return this.computedAspectRatio\n ? { paddingBottom: (1 / this.computedAspectRatio) * 100 + '%' }\n : undefined\n },\n __cachedSizer (): KNode | [] {\n if (!this.aspectStyle) return []\n\n return this.$createElement('div', {\n style: this.aspectStyle,\n staticClass: 'k-responsive__sizer',\n })\n },\n },\n\n methods: {\n genContent (): KNode {\n return this.$createElement('div', {\n staticClass: 'k-responsive__content',\n class: this.contentClass,\n }, getSlot(this))\n },\n },\n\n render (h): KNode {\n return h('div', {\n staticClass: 'k-responsive',\n style: this.measurableStyles,\n on: this.$listeners,\n }, [\n this.__cachedSizer,\n this.genContent(),\n ])\n },\n})\n"],"sourceRoot":"","file":"KResponsive.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Styles
|
|
2
|
-
import "
|
|
3
|
-
import "
|
|
2
|
+
import "../../../src/components/KTextField/KTextField.sass";
|
|
3
|
+
import "../../../src/components/KSelect/KSelect.sass";
|
|
4
4
|
// Components
|
|
5
5
|
import KChip from '../KChip';
|
|
6
6
|
import KMenu from '../KMenu';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/KSelect/KSelect.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../KTextField/KTextField.sass'\nimport './KSelect.sass'\n\n// Components\nimport KChip from '../KChip'\nimport KMenu from '../KMenu'\nimport KSelectList from './KSelectList'\n\n// Extensions\nimport KInput from '../KInput'\nimport KTextField from '../KTextField/KTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Dependent from '../../mixins/dependent'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport { getPropertyFromItem, getObjectValueByPath, keyCodes } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { KNode, KNodeDirective, PropType, KNodeData } from 'kdu'\nimport { PropValidator } from 'kdu/types/options'\nimport { SelectItemKey } from 'kdutify/types'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n disableKeys: true,\n openOnClick: false,\n maxHeight: 304,\n}\n\n// Types\nconst baseMixins = mixins(\n KTextField,\n Comparable,\n Dependent,\n Filterable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n menu: InstanceType<typeof KMenu>\n content: HTMLElement\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n 'append-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\n/* @kdujs/component */\nexport default baseMixins.extend<options>().extend({\n name: 'k-select',\n\n directives: {\n ClickOutside,\n },\n\n props: {\n appendIcon: {\n type: String,\n default: '$dropdown',\n },\n attach: {\n type: null as unknown as PropType<string | boolean | Element | KNode>,\n default: false,\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n disableLookup: Boolean,\n eager: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemColor: {\n type: String,\n default: 'primary',\n },\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n menuProps: {\n type: [String, Array, Object],\n default: () => defaultMenuProps,\n },\n multiple: Boolean,\n openOnClear: Boolean,\n returnObject: Boolean,\n smallChips: Boolean,\n },\n\n data () {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n menuIsBooted: false,\n isMenuActive: false,\n lastItem: 20,\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n lazyValue: this.value !== undefined\n ? this.value\n : this.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [] as any[],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0,\n }\n },\n\n computed: {\n /* All items that the select has */\n allItems (): object[] {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes (): object {\n return {\n ...KTextField.options.computed.classes.call(this),\n 'k-select': true,\n 'k-select--chips': this.hasChips,\n 'k-select--chips--small': this.smallChips,\n 'k-select--is-menu-active': this.isMenuActive,\n 'k-select--is-multi': this.multiple,\n }\n },\n /* Used by other components to overwrite */\n computedItems (): object[] {\n return this.allItems\n },\n computedOwns (): string {\n return `list-${this._uid}`\n },\n computedCounterValue (): number {\n const value = this.multiple\n ? this.selectedItems\n : (this.getText(this.selectedItems[0]) ?? '').toString()\n\n if (typeof this.counterValue === 'function') {\n return this.counterValue(value)\n }\n\n return value.length\n },\n directives (): KNodeDirective[] | undefined {\n return this.isFocused ? [{\n name: 'click-outside',\n value: {\n handler: this.blur,\n closeConditional: this.closeConditional,\n include: () => this.getOpenDependentElements(),\n },\n }] : undefined\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n hasSlot (): boolean {\n return Boolean(this.hasChips || this.$scopedSlots.selection)\n },\n isDirty (): boolean {\n return this.selectedItems.length > 0\n },\n listData (): object {\n const scopeId = this.$knode && (this.$knode.context!.$options as { [key: string]: any })._scopeId\n const attrs = scopeId ? {\n [scopeId]: true,\n } : {}\n\n return {\n attrs: {\n ...attrs,\n id: this.computedOwns,\n },\n props: {\n action: this.multiple,\n color: this.itemColor,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n itemDisabled: this.itemDisabled,\n itemText: this.itemText,\n itemValue: this.itemValue,\n noDataText: this.$kdutify.lang.t(this.noDataText),\n selectedItems: this.selectedItems,\n },\n on: {\n select: this.selectItem,\n },\n scopedSlots: {\n item: this.$scopedSlots.item,\n },\n }\n },\n staticList (): KNode {\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n consoleError('assert: staticList should not be called if slots are used')\n }\n\n return this.$createElement(KSelectList, this.listData)\n },\n virtualizedItems (): object[] {\n return (this.$_menuProps as any).auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow: () => true,\n $_menuProps (): object {\n let normalisedProps = typeof this.menuProps === 'string'\n ? this.menuProps.split(',')\n : this.menuProps\n\n if (Array.isArray(normalisedProps)) {\n normalisedProps = normalisedProps.reduce((acc, p) => {\n acc[p.trim()] = true\n return acc\n }, {})\n }\n\n return {\n ...defaultMenuProps,\n eager: this.eager,\n value: this.menuCanShow && this.isMenuActive,\n nudgeBottom: normalisedProps.offsetY ? 1 : 0, // convert to int\n ...normalisedProps,\n }\n },\n },\n\n watch: {\n internalValue (val) {\n this.initialValue = val\n this.setSelectedItems()\n\n if (this.multiple) {\n this.$nextTick(() => {\n this.$refs.menu?.updateDimensions()\n })\n }\n if (this.hideSelected) {\n this.$nextTick(() => {\n this.onScroll()\n })\n }\n },\n isMenuActive (val) {\n window.setTimeout(() => this.onMenuActiveChange(val))\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n // Breaks kdu-test-utils if\n // this isn't calculated\n // on the next tick\n this.$nextTick(() => {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n })\n }\n\n this.setSelectedItems()\n },\n },\n },\n\n methods: {\n /** @public */\n blur (e?: Event) {\n KTextField.options.methods.blur.call(this, e)\n this.isMenuActive = false\n this.isFocused = false\n this.selectedIndex = -1\n this.setMenuIndex(-1)\n },\n /** @public */\n activateMenu () {\n if (\n !this.isInteractive ||\n this.isMenuActive\n ) return\n\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : null)\n this.setMenuIndex(-1)\n this.$nextTick(() => this.$refs.input && this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e: Event) {\n if (!this.isMenuActive) return true\n\n return (\n !this._isDestroyed &&\n\n // Click originates from outside the menu content\n // Multiple selects don't close when an item is clicked\n (!this.getContent() ||\n !this.getContent().contains(e.target as Node)) &&\n\n // Click originates from outside the element\n this.$el &&\n !this.$el.contains(e.target as Node) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr: any[]) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n\n // Do not return null values if existant (#14421)\n if (item == null) {\n continue\n }\n // Do not deduplicate headers or dividers (#12517)\n if (item.header || item.divider) {\n uniqueValues.set(item, item)\n continue\n }\n\n const val = this.getValue(item)\n\n // TODO: comparator\n !uniqueValues.has(val) && uniqueValues.set(val, item)\n }\n return Array.from(uniqueValues.values())\n },\n findExistingIndex (item: object) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex((i: object) => this.valueComparator(this.getValue(i), itemValue))\n },\n getContent () {\n return this.$refs.menu && this.$refs.menu.$refs.content\n },\n genChipSelection (item: object, index: number) {\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n const isInteractive = !isDisabled && this.isInteractive\n\n return this.$createElement(KChip, {\n staticClass: 'k-chip--select',\n attrs: { tabindex: -1 },\n props: {\n close: this.deletableChips && isInteractive,\n disabled: isDisabled,\n inputValue: index === this.selectedIndex,\n small: this.smallChips,\n },\n on: {\n click: (e: MouseEvent) => {\n if (!isInteractive) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n 'click:close': () => this.onChipInput(item),\n },\n key: JSON.stringify(this.getValue(item)),\n }, this.getText(item))\n },\n genCommaSelection (item: object, index: number, last: boolean) {\n const color = index === this.selectedIndex && this.computedColor\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n\n return this.$createElement('div', this.setTextColor(color, {\n staticClass: 'k-select__selection k-select__selection--comma',\n class: {\n 'k-select__selection--disabled': isDisabled,\n },\n key: JSON.stringify(this.getValue(item)),\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot (): (KNode | KNode[] | null)[] {\n const selections = this.genSelections()\n const input = this.genInput()\n\n // If the return is an empty array\n // push the input\n if (Array.isArray(selections)) {\n selections.push(input)\n // Otherwise push it into children\n } else {\n selections.children = selections.children || []\n selections.children.push(input)\n }\n\n return [\n this.genFieldset(),\n this.$createElement('div', {\n staticClass: 'k-select__slot',\n directives: this.directives,\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n selections,\n this.suffix ? this.genAffix('suffix') : null,\n this.genClearIcon(),\n this.genIconSlot(),\n this.genHiddenInput(),\n ]),\n this.genMenu(),\n this.genProgress(),\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData?: KNodeData\n ) {\n const icon = KInput.options.methods.genIcon.call(this, type, cb, extraData)\n\n if (type === 'append') {\n // Don't allow the dropdown icon to be focused\n icon.children![0].data = mergeData(icon.children![0].data!, {\n attrs: {\n tabindex: icon.children![0].componentOptions!.listeners && '-1',\n 'aria-hidden': 'true',\n 'aria-label': undefined,\n },\n })\n }\n\n return icon\n },\n genInput (): KNode {\n const input = KTextField.options.methods.genInput.call(this)\n\n delete input.data!.attrs!.name\n\n input.data = mergeData(input.data!, {\n domProps: { value: null },\n attrs: {\n readonly: true,\n type: 'text',\n 'aria-readonly': String(this.isReadonly),\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n placeholder: (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) ? this.placeholder : undefined,\n },\n on: { keypress: this.onKeyPress },\n })\n\n return input\n },\n genHiddenInput (): KNode {\n return this.$createElement('input', {\n domProps: { value: this.lazyValue },\n attrs: {\n type: 'hidden',\n name: this.attrs$.name,\n },\n })\n },\n genInputSlot (): KNode {\n const render = KTextField.options.methods.genInputSlot.call(this)\n\n render.data!.attrs = {\n ...render.data!.attrs,\n role: 'button',\n 'aria-haspopup': 'listbox',\n 'aria-expanded': String(this.isMenuActive),\n 'aria-owns': this.computedOwns,\n }\n\n return render\n },\n genList (): KNode {\n // If there's no slots, we can use a cached KNode to improve performance\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n return this.genListWithSlot()\n } else {\n return this.staticList\n }\n },\n genListWithSlot (): KNode {\n const slots = ['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => this.$createElement('template', {\n slot: slotName,\n }, this.$slots[slotName]))\n // Requires destructuring due to Kdu\n // modifying the `on` property when passed\n // as a referenced object\n return this.$createElement(KSelectList, {\n ...this.listData,\n }, slots)\n },\n genMenu (): KNode {\n const props = this.$_menuProps as any\n props.activator = this.$refs['input-slot']\n\n if ('attach' in props) void 0\n else if (\n // TODO: make this a computed property or helper or something\n this.attach === '' || // If used as a boolean prop (<k-menu attach>)\n this.attach === true || // If bound to a boolean (<k-menu :attach=\"true\">)\n this.attach === 'attach' // If bound as boolean prop in pug (k-menu(attach))\n ) {\n // Attach to root el so that\n // menu covers prepend/append icons\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return this.$createElement(KMenu, {\n attrs: { role: undefined },\n props,\n on: {\n input: (val: boolean) => {\n this.isMenuActive = val\n this.isFocused = val\n },\n scroll: this.onScroll,\n },\n ref: 'menu',\n }, [this.genList()])\n },\n genSelections (): KNode {\n let length = this.selectedItems.length\n const children = new Array(length)\n\n let genSelection\n if (this.$scopedSlots.selection) {\n genSelection = this.genSlotSelection\n } else if (this.hasChips) {\n genSelection = this.genChipSelection\n } else {\n genSelection = this.genCommaSelection\n }\n\n while (length--) {\n children[length] = genSelection(\n this.selectedItems[length],\n length,\n length === children.length - 1\n )\n }\n\n return this.$createElement('div', {\n staticClass: 'k-select__selections',\n }, children)\n },\n genSlotSelection (item: object, index: number): KNode[] | undefined {\n return this.$scopedSlots.selection!({\n attrs: {\n class: 'k-chip--select',\n },\n parent: this,\n item,\n index,\n select: (e: Event) => {\n e.stopPropagation()\n this.selectedIndex = index\n },\n selected: index === this.selectedIndex,\n disabled: !this.isInteractive,\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? (this.$refs.menu as { [key: string]: any }).listIndex : -1\n },\n getDisabled (item: object) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item: object) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e?: Event) {\n e && this.$emit('blur', e)\n },\n onChipInput (item: object) {\n if (this.multiple) this.selectItem(item)\n else this.setValue(null)\n // If all items have been deleted,\n // open `k-menu`\n if (this.selectedItems.length === 0) {\n this.isMenuActive = true\n } else {\n this.isMenuActive = false\n }\n this.selectedIndex = -1\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n if (!this.isAppendInner(e.target)) {\n this.isMenuActive = true\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n\n this.$emit('click', e)\n },\n onEscDown (e: Event) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e: KeyboardEvent) {\n if (\n this.multiple ||\n !this.isInteractive ||\n this.disableLookup ||\n e.key.length > 1 ||\n e.ctrlKey || e.metaKey || e.altKey\n ) return\n\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n const now = performance.now()\n if (now - this.keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n this.keyboardLookupPrefix = ''\n }\n this.keyboardLookupPrefix += e.key.toLowerCase()\n this.keyboardLookupLastTime = now\n\n const index = this.allItems.findIndex(item => {\n const text = (this.getText(item) ?? '').toString()\n\n return text.toLowerCase().startsWith(this.keyboardLookupPrefix)\n })\n const item = this.allItems[index]\n if (index !== -1) {\n this.lastItem = Math.max(this.lastItem, index + 5)\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.isReadonly && e.keyCode !== keyCodes.tab) return\n\n const keyCode = e.keyCode\n const menu = this.$refs.menu\n\n this.$emit('keydown', e)\n\n if (!menu) return\n\n // If menu is active, allow default\n // listIndex change from menu\n if (this.isMenuActive && [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end, keyCodes.enter].includes(keyCode)) {\n this.$nextTick(() => {\n menu.changeListIndex(e)\n this.$emit('update:list-index', menu.listIndex)\n })\n }\n\n // If enter, space, open menu\n if ([\n keyCodes.enter,\n keyCodes.space,\n ].includes(keyCode)) this.activateMenu()\n\n // If menu is not active, up/down/home/end can do\n // one of 2 things. If multiple, opens the\n // menu, if not, will cycle through all\n // available options\n if (\n !this.isMenuActive &&\n [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end].includes(keyCode)\n ) return this.onUpDown(e)\n\n // If escape deactivate the menu\n if (keyCode === keyCodes.esc) return this.onEscDown(e)\n\n // If tab - select item or close menu\n if (keyCode === keyCodes.tab) return this.onTabDown(e)\n\n // If space preventDefault\n if (keyCode === keyCodes.space) return this.onSpaceDown(e)\n },\n onMenuActiveChange (val: boolean) {\n // If menu is closing and mulitple\n // or menuIndex is already set\n // skip menu index recalculation\n if (\n (this.multiple && !val) ||\n this.getMenuIndex() > -1\n ) return\n\n const menu = this.$refs.menu\n\n if (!menu || !this.isDirty) return\n\n // When menu opens, set index of first active item\n this.$refs.menu.getTiles()\n for (let i = 0; i < menu.tiles.length; i++) {\n if (menu.tiles[i].getAttribute('aria-selected') === 'true') {\n this.setMenuIndex(i)\n break\n }\n }\n },\n onMouseUp (e: MouseEvent) {\n // eslint-disable-next-line sonarjs/no-collapsible-if\n if (\n this.hasMouseDown &&\n e.which !== 3 &&\n this.isInteractive\n ) {\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isAppendInner(e.target)) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n }\n }\n\n KTextField.options.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => {\n const content = this.getContent()\n if (content) content.scrollTop = 0\n })\n } else {\n if (this.lastItem > this.computedItems.length) return\n\n const showMoreItems = (\n this.getContent().scrollHeight -\n (this.getContent().scrollTop +\n this.getContent().clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onSpaceDown (e: KeyboardEvent) {\n e.preventDefault()\n },\n onTabDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n const activeTile = menu.activeTile\n\n // An item that is selected by\n // menu-index should toggled\n if (\n !this.multiple &&\n activeTile &&\n this.isMenuActive\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n activeTile.click()\n } else {\n // If we make it here,\n // the user has no selected indexes\n // and is probably tabbing out\n this.blur(e)\n }\n },\n onUpDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n e.preventDefault()\n\n // Multiple selects do not cycle their value\n // when pressing up or down, instead activate\n // the menu\n if (this.multiple) return this.activateMenu()\n\n const keyCode = e.keyCode\n\n // Cycle through available values to achieve\n // select native behavior\n menu.isBooted = true\n\n window.requestAnimationFrame(() => {\n menu.getTiles()\n\n if (!menu.hasClickableTiles) return this.activateMenu()\n\n switch (keyCode) {\n case keyCodes.up:\n menu.prevTile()\n break\n case keyCodes.down:\n menu.nextTile()\n break\n case keyCodes.home:\n menu.firstTile()\n break\n case keyCodes.end:\n menu.lastTile()\n break\n }\n this.selectItem(this.allItems[this.getMenuIndex()])\n })\n },\n selectItem (item: object) {\n if (!this.multiple) {\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.isMenuActive = false\n } else {\n const internalValue = (this.internalValue || []).slice()\n const i = this.findExistingIndex(item)\n\n i !== -1 ? internalValue.splice(i, 1) : internalValue.push(item)\n this.setValue(internalValue.map((i: object) => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // There is no item to re-highlight\n // when selections are hidden\n if (this.hideSelected) {\n this.setMenuIndex(-1)\n } else {\n const index = this.computedItems.indexOf(item)\n if (~index) {\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n }\n }\n },\n setMenuIndex (index: number) {\n this.$refs.menu && ((this.$refs.menu as { [key: string]: any }).listIndex = index)\n },\n setSelectedItems () {\n const selectedItems = []\n const values = !this.multiple || !Array.isArray(this.internalValue)\n ? [this.internalValue]\n : this.internalValue\n\n for (const value of values) {\n const index = this.allItems.findIndex(v => this.valueComparator(\n this.getValue(v),\n this.getValue(value)\n ))\n\n if (index > -1) {\n selectedItems.push(this.allItems[index])\n }\n }\n\n this.selectedItems = selectedItems\n },\n setValue (value: any) {\n if (!this.valueComparator(value, this.internalValue)) {\n this.internalValue = value\n this.$emit('change', value)\n }\n },\n isAppendInner (target: any) {\n // return true if append inner is present\n // and the target is itself or inside\n const appendInner = this.$refs['append-inner']\n\n return appendInner && (appendInner === target || appendInner.contains(target))\n },\n },\n})\n"],"sourceRoot":"","file":"KSelect.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/KSelect/KSelect.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../KTextField/KTextField.sass'\nimport './KSelect.sass'\n\n// Components\nimport KChip from '../KChip'\nimport KMenu from '../KMenu'\nimport KSelectList from './KSelectList'\n\n// Extensions\nimport KInput from '../KInput'\nimport KTextField from '../KTextField/KTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Dependent from '../../mixins/dependent'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport { getPropertyFromItem, getObjectValueByPath, keyCodes } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { KNode, KNodeDirective, PropType, KNodeData } from 'kdu'\nimport { PropValidator } from 'kdu/types/options'\nimport { SelectItemKey } from 'kdutify/types'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n disableKeys: true,\n openOnClick: false,\n maxHeight: 304,\n}\n\n// Types\nconst baseMixins = mixins(\n KTextField,\n Comparable,\n Dependent,\n Filterable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n menu: InstanceType<typeof KMenu>\n content: HTMLElement\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n 'append-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\n/* @kdujs/component */\nexport default baseMixins.extend<options>().extend({\n name: 'k-select',\n\n directives: {\n ClickOutside,\n },\n\n props: {\n appendIcon: {\n type: String,\n default: '$dropdown',\n },\n attach: {\n type: null as unknown as PropType<string | boolean | Element | KNode>,\n default: false,\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n disableLookup: Boolean,\n eager: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemColor: {\n type: String,\n default: 'primary',\n },\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n menuProps: {\n type: [String, Array, Object],\n default: () => defaultMenuProps,\n },\n multiple: Boolean,\n openOnClear: Boolean,\n returnObject: Boolean,\n smallChips: Boolean,\n },\n\n data () {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n menuIsBooted: false,\n isMenuActive: false,\n lastItem: 20,\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n lazyValue: this.value !== undefined\n ? this.value\n : this.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [] as any[],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0,\n }\n },\n\n computed: {\n /* All items that the select has */\n allItems (): object[] {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes (): object {\n return {\n ...KTextField.options.computed.classes.call(this),\n 'k-select': true,\n 'k-select--chips': this.hasChips,\n 'k-select--chips--small': this.smallChips,\n 'k-select--is-menu-active': this.isMenuActive,\n 'k-select--is-multi': this.multiple,\n }\n },\n /* Used by other components to overwrite */\n computedItems (): object[] {\n return this.allItems\n },\n computedOwns (): string {\n return `list-${this._uid}`\n },\n computedCounterValue (): number {\n const value = this.multiple\n ? this.selectedItems\n : (this.getText(this.selectedItems[0]) ?? '').toString()\n\n if (typeof this.counterValue === 'function') {\n return this.counterValue(value)\n }\n\n return value.length\n },\n directives (): KNodeDirective[] | undefined {\n return this.isFocused ? [{\n name: 'click-outside',\n value: {\n handler: this.blur,\n closeConditional: this.closeConditional,\n include: () => this.getOpenDependentElements(),\n },\n }] : undefined\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n hasSlot (): boolean {\n return Boolean(this.hasChips || this.$scopedSlots.selection)\n },\n isDirty (): boolean {\n return this.selectedItems.length > 0\n },\n listData (): object {\n const scopeId = this.$knode && (this.$knode.context!.$options as { [key: string]: any })._scopeId\n const attrs = scopeId ? {\n [scopeId]: true,\n } : {}\n\n return {\n attrs: {\n ...attrs,\n id: this.computedOwns,\n },\n props: {\n action: this.multiple,\n color: this.itemColor,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n itemDisabled: this.itemDisabled,\n itemText: this.itemText,\n itemValue: this.itemValue,\n noDataText: this.$kdutify.lang.t(this.noDataText),\n selectedItems: this.selectedItems,\n },\n on: {\n select: this.selectItem,\n },\n scopedSlots: {\n item: this.$scopedSlots.item,\n },\n }\n },\n staticList (): KNode {\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n consoleError('assert: staticList should not be called if slots are used')\n }\n\n return this.$createElement(KSelectList, this.listData)\n },\n virtualizedItems (): object[] {\n return (this.$_menuProps as any).auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow: () => true,\n $_menuProps (): object {\n let normalisedProps = typeof this.menuProps === 'string'\n ? this.menuProps.split(',')\n : this.menuProps\n\n if (Array.isArray(normalisedProps)) {\n normalisedProps = normalisedProps.reduce((acc, p) => {\n acc[p.trim()] = true\n return acc\n }, {})\n }\n\n return {\n ...defaultMenuProps,\n eager: this.eager,\n value: this.menuCanShow && this.isMenuActive,\n nudgeBottom: normalisedProps.offsetY ? 1 : 0, // convert to int\n ...normalisedProps,\n }\n },\n },\n\n watch: {\n internalValue (val) {\n this.initialValue = val\n this.setSelectedItems()\n\n if (this.multiple) {\n this.$nextTick(() => {\n this.$refs.menu?.updateDimensions()\n })\n }\n if (this.hideSelected) {\n this.$nextTick(() => {\n this.onScroll()\n })\n }\n },\n isMenuActive (val) {\n window.setTimeout(() => this.onMenuActiveChange(val))\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n // Breaks kdu-test-utils if\n // this isn't calculated\n // on the next tick\n this.$nextTick(() => {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n })\n }\n\n this.setSelectedItems()\n },\n },\n },\n\n methods: {\n /** @public */\n blur (e?: Event) {\n KTextField.options.methods.blur.call(this, e)\n this.isMenuActive = false\n this.isFocused = false\n this.selectedIndex = -1\n this.setMenuIndex(-1)\n },\n /** @public */\n activateMenu () {\n if (\n !this.isInteractive ||\n this.isMenuActive\n ) return\n\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : null)\n this.setMenuIndex(-1)\n this.$nextTick(() => this.$refs.input && this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e: Event) {\n if (!this.isMenuActive) return true\n\n return (\n !this._isDestroyed &&\n\n // Click originates from outside the menu content\n // Multiple selects don't close when an item is clicked\n (!this.getContent() ||\n !this.getContent().contains(e.target as Node)) &&\n\n // Click originates from outside the element\n this.$el &&\n !this.$el.contains(e.target as Node) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr: any[]) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n\n // Do not return null values if existant (#14421)\n if (item == null) {\n continue\n }\n // Do not deduplicate headers or dividers (#12517)\n if (item.header || item.divider) {\n uniqueValues.set(item, item)\n continue\n }\n\n const val = this.getValue(item)\n\n // TODO: comparator\n !uniqueValues.has(val) && uniqueValues.set(val, item)\n }\n return Array.from(uniqueValues.values())\n },\n findExistingIndex (item: object) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex((i: object) => this.valueComparator(this.getValue(i), itemValue))\n },\n getContent () {\n return this.$refs.menu && this.$refs.menu.$refs.content\n },\n genChipSelection (item: object, index: number) {\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n const isInteractive = !isDisabled && this.isInteractive\n\n return this.$createElement(KChip, {\n staticClass: 'k-chip--select',\n attrs: { tabindex: -1 },\n props: {\n close: this.deletableChips && isInteractive,\n disabled: isDisabled,\n inputValue: index === this.selectedIndex,\n small: this.smallChips,\n },\n on: {\n click: (e: MouseEvent) => {\n if (!isInteractive) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n 'click:close': () => this.onChipInput(item),\n },\n key: JSON.stringify(this.getValue(item)),\n }, this.getText(item))\n },\n genCommaSelection (item: object, index: number, last: boolean) {\n const color = index === this.selectedIndex && this.computedColor\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n\n return this.$createElement('div', this.setTextColor(color, {\n staticClass: 'k-select__selection k-select__selection--comma',\n class: {\n 'k-select__selection--disabled': isDisabled,\n },\n key: JSON.stringify(this.getValue(item)),\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot (): (KNode | KNode[] | null)[] {\n const selections = this.genSelections()\n const input = this.genInput()\n\n // If the return is an empty array\n // push the input\n if (Array.isArray(selections)) {\n selections.push(input)\n // Otherwise push it into children\n } else {\n selections.children = selections.children || []\n selections.children.push(input)\n }\n\n return [\n this.genFieldset(),\n this.$createElement('div', {\n staticClass: 'k-select__slot',\n directives: this.directives,\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n selections,\n this.suffix ? this.genAffix('suffix') : null,\n this.genClearIcon(),\n this.genIconSlot(),\n this.genHiddenInput(),\n ]),\n this.genMenu(),\n this.genProgress(),\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData?: KNodeData\n ) {\n const icon = KInput.options.methods.genIcon.call(this, type, cb, extraData)\n\n if (type === 'append') {\n // Don't allow the dropdown icon to be focused\n icon.children![0].data = mergeData(icon.children![0].data!, {\n attrs: {\n tabindex: icon.children![0].componentOptions!.listeners && '-1',\n 'aria-hidden': 'true',\n 'aria-label': undefined,\n },\n })\n }\n\n return icon\n },\n genInput (): KNode {\n const input = KTextField.options.methods.genInput.call(this)\n\n delete input.data!.attrs!.name\n\n input.data = mergeData(input.data!, {\n domProps: { value: null },\n attrs: {\n readonly: true,\n type: 'text',\n 'aria-readonly': String(this.isReadonly),\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n placeholder: (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) ? this.placeholder : undefined,\n },\n on: { keypress: this.onKeyPress },\n })\n\n return input\n },\n genHiddenInput (): KNode {\n return this.$createElement('input', {\n domProps: { value: this.lazyValue },\n attrs: {\n type: 'hidden',\n name: this.attrs$.name,\n },\n })\n },\n genInputSlot (): KNode {\n const render = KTextField.options.methods.genInputSlot.call(this)\n\n render.data!.attrs = {\n ...render.data!.attrs,\n role: 'button',\n 'aria-haspopup': 'listbox',\n 'aria-expanded': String(this.isMenuActive),\n 'aria-owns': this.computedOwns,\n }\n\n return render\n },\n genList (): KNode {\n // If there's no slots, we can use a cached KNode to improve performance\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n return this.genListWithSlot()\n } else {\n return this.staticList\n }\n },\n genListWithSlot (): KNode {\n const slots = ['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => this.$createElement('template', {\n slot: slotName,\n }, this.$slots[slotName]))\n // Requires destructuring due to Kdu\n // modifying the `on` property when passed\n // as a referenced object\n return this.$createElement(KSelectList, {\n ...this.listData,\n }, slots)\n },\n genMenu (): KNode {\n const props = this.$_menuProps as any\n props.activator = this.$refs['input-slot']\n\n if ('attach' in props) void 0\n else if (\n // TODO: make this a computed property or helper or something\n this.attach === '' || // If used as a boolean prop (<k-menu attach>)\n this.attach === true || // If bound to a boolean (<k-menu :attach=\"true\">)\n this.attach === 'attach' // If bound as boolean prop in pug (k-menu(attach))\n ) {\n // Attach to root el so that\n // menu covers prepend/append icons\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return this.$createElement(KMenu, {\n attrs: { role: undefined },\n props,\n on: {\n input: (val: boolean) => {\n this.isMenuActive = val\n this.isFocused = val\n },\n scroll: this.onScroll,\n },\n ref: 'menu',\n }, [this.genList()])\n },\n genSelections (): KNode {\n let length = this.selectedItems.length\n const children = new Array(length)\n\n let genSelection\n if (this.$scopedSlots.selection) {\n genSelection = this.genSlotSelection\n } else if (this.hasChips) {\n genSelection = this.genChipSelection\n } else {\n genSelection = this.genCommaSelection\n }\n\n while (length--) {\n children[length] = genSelection(\n this.selectedItems[length],\n length,\n length === children.length - 1\n )\n }\n\n return this.$createElement('div', {\n staticClass: 'k-select__selections',\n }, children)\n },\n genSlotSelection (item: object, index: number): KNode[] | undefined {\n return this.$scopedSlots.selection!({\n attrs: {\n class: 'k-chip--select',\n },\n parent: this,\n item,\n index,\n select: (e: Event) => {\n e.stopPropagation()\n this.selectedIndex = index\n },\n selected: index === this.selectedIndex,\n disabled: !this.isInteractive,\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? (this.$refs.menu as { [key: string]: any }).listIndex : -1\n },\n getDisabled (item: object) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item: object) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e?: Event) {\n e && this.$emit('blur', e)\n },\n onChipInput (item: object) {\n if (this.multiple) this.selectItem(item)\n else this.setValue(null)\n // If all items have been deleted,\n // open `k-menu`\n if (this.selectedItems.length === 0) {\n this.isMenuActive = true\n } else {\n this.isMenuActive = false\n }\n this.selectedIndex = -1\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n if (!this.isAppendInner(e.target)) {\n this.isMenuActive = true\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n\n this.$emit('click', e)\n },\n onEscDown (e: Event) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e: KeyboardEvent) {\n if (\n this.multiple ||\n !this.isInteractive ||\n this.disableLookup ||\n e.key.length > 1 ||\n e.ctrlKey || e.metaKey || e.altKey\n ) return\n\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n const now = performance.now()\n if (now - this.keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n this.keyboardLookupPrefix = ''\n }\n this.keyboardLookupPrefix += e.key.toLowerCase()\n this.keyboardLookupLastTime = now\n\n const index = this.allItems.findIndex(item => {\n const text = (this.getText(item) ?? '').toString()\n\n return text.toLowerCase().startsWith(this.keyboardLookupPrefix)\n })\n const item = this.allItems[index]\n if (index !== -1) {\n this.lastItem = Math.max(this.lastItem, index + 5)\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.isReadonly && e.keyCode !== keyCodes.tab) return\n\n const keyCode = e.keyCode\n const menu = this.$refs.menu\n\n this.$emit('keydown', e)\n\n if (!menu) return\n\n // If menu is active, allow default\n // listIndex change from menu\n if (this.isMenuActive && [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end, keyCodes.enter].includes(keyCode)) {\n this.$nextTick(() => {\n menu.changeListIndex(e)\n this.$emit('update:list-index', menu.listIndex)\n })\n }\n\n // If enter, space, open menu\n if ([\n keyCodes.enter,\n keyCodes.space,\n ].includes(keyCode)) this.activateMenu()\n\n // If menu is not active, up/down/home/end can do\n // one of 2 things. If multiple, opens the\n // menu, if not, will cycle through all\n // available options\n if (\n !this.isMenuActive &&\n [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end].includes(keyCode)\n ) return this.onUpDown(e)\n\n // If escape deactivate the menu\n if (keyCode === keyCodes.esc) return this.onEscDown(e)\n\n // If tab - select item or close menu\n if (keyCode === keyCodes.tab) return this.onTabDown(e)\n\n // If space preventDefault\n if (keyCode === keyCodes.space) return this.onSpaceDown(e)\n },\n onMenuActiveChange (val: boolean) {\n // If menu is closing and mulitple\n // or menuIndex is already set\n // skip menu index recalculation\n if (\n (this.multiple && !val) ||\n this.getMenuIndex() > -1\n ) return\n\n const menu = this.$refs.menu\n\n if (!menu || !this.isDirty) return\n\n // When menu opens, set index of first active item\n this.$refs.menu.getTiles()\n for (let i = 0; i < menu.tiles.length; i++) {\n if (menu.tiles[i].getAttribute('aria-selected') === 'true') {\n this.setMenuIndex(i)\n break\n }\n }\n },\n onMouseUp (e: MouseEvent) {\n // eslint-disable-next-line sonarjs/no-collapsible-if\n if (\n this.hasMouseDown &&\n e.which !== 3 &&\n this.isInteractive\n ) {\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isAppendInner(e.target)) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n }\n }\n\n KTextField.options.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => {\n const content = this.getContent()\n if (content) content.scrollTop = 0\n })\n } else {\n if (this.lastItem > this.computedItems.length) return\n\n const showMoreItems = (\n this.getContent().scrollHeight -\n (this.getContent().scrollTop +\n this.getContent().clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onSpaceDown (e: KeyboardEvent) {\n e.preventDefault()\n },\n onTabDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n const activeTile = menu.activeTile\n\n // An item that is selected by\n // menu-index should toggled\n if (\n !this.multiple &&\n activeTile &&\n this.isMenuActive\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n activeTile.click()\n } else {\n // If we make it here,\n // the user has no selected indexes\n // and is probably tabbing out\n this.blur(e)\n }\n },\n onUpDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n e.preventDefault()\n\n // Multiple selects do not cycle their value\n // when pressing up or down, instead activate\n // the menu\n if (this.multiple) return this.activateMenu()\n\n const keyCode = e.keyCode\n\n // Cycle through available values to achieve\n // select native behavior\n menu.isBooted = true\n\n window.requestAnimationFrame(() => {\n menu.getTiles()\n\n if (!menu.hasClickableTiles) return this.activateMenu()\n\n switch (keyCode) {\n case keyCodes.up:\n menu.prevTile()\n break\n case keyCodes.down:\n menu.nextTile()\n break\n case keyCodes.home:\n menu.firstTile()\n break\n case keyCodes.end:\n menu.lastTile()\n break\n }\n this.selectItem(this.allItems[this.getMenuIndex()])\n })\n },\n selectItem (item: object) {\n if (!this.multiple) {\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.isMenuActive = false\n } else {\n const internalValue = (this.internalValue || []).slice()\n const i = this.findExistingIndex(item)\n\n i !== -1 ? internalValue.splice(i, 1) : internalValue.push(item)\n this.setValue(internalValue.map((i: object) => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // There is no item to re-highlight\n // when selections are hidden\n if (this.hideSelected) {\n this.setMenuIndex(-1)\n } else {\n const index = this.computedItems.indexOf(item)\n if (~index) {\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n }\n }\n },\n setMenuIndex (index: number) {\n this.$refs.menu && ((this.$refs.menu as { [key: string]: any }).listIndex = index)\n },\n setSelectedItems () {\n const selectedItems = []\n const values = !this.multiple || !Array.isArray(this.internalValue)\n ? [this.internalValue]\n : this.internalValue\n\n for (const value of values) {\n const index = this.allItems.findIndex(v => this.valueComparator(\n this.getValue(v),\n this.getValue(value)\n ))\n\n if (index > -1) {\n selectedItems.push(this.allItems[index])\n }\n }\n\n this.selectedItems = selectedItems\n },\n setValue (value: any) {\n if (!this.valueComparator(value, this.internalValue)) {\n this.internalValue = value\n this.$emit('change', value)\n }\n },\n isAppendInner (target: any) {\n // return true if append inner is present\n // and the target is itself or inside\n const appendInner = this.$refs['append-inner']\n\n return appendInner && (appendInner === target || appendInner.contains(target))\n },\n },\n})\n"],"sourceRoot":"","file":"KSelect.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/KSheet/KSheet.ts"],"names":[],"mappings":"AAAA;AACA,OAAO,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/KSheet/KSheet.ts"],"names":[],"mappings":"AAAA;AACA,OAAO,4CAAe;AAEtB;AACA,OAAO,UAAU,MAAM,0BAA0B;AACjD,OAAO,SAAS,MAAM,wBAAwB;AAC9C,OAAO,UAAU,MAAM,yBAAyB;AAChD,OAAO,UAAU,MAAM,yBAAyB;AAChD,OAAO,SAAS,MAAM,wBAAwB;AAC9C,OAAO,SAAS,MAAM,wBAAwB;AAE9C;AACA,OAAO,MAAM,MAAM,mBAAmB;AAKtC;AACA,eAAe,MAAM,CACnB,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAAC,MAAM,CAAC;EACP,IAAI,EAAE,SAAS;EAEf,KAAK,EAAE;IACL,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,OAAO;IACf,GAAG,EAAE;MACH,IAAI,EAAE,MAAM;MACZ,OAAO,EAAE;IACV;GACF;EAED,QAAQ,EAAE;IACR,OAAO,CAAA,EAAA;MACL,OAAO;QACL,SAAS,EAAE,IAAI;QACf,mBAAmB,EAAE,IAAI,CAAC,QAAQ;QAClC,iBAAiB,EAAE,IAAI,CAAC,MAAM;QAC9B,GAAG,IAAI,CAAC,YAAY;QACpB,GAAG,IAAI,CAAC,gBAAgB;QACxB,GAAG,IAAI,CAAC;OACT;IACH,CAAC;IACD,MAAM,CAAA,EAAA;MACJ,OAAO,IAAI,CAAC,gBAAgB;IAC9B;GACD;EAED,MAAM,CAAE,CAAC,EAAA;IACP,MAAM,IAAI,GAAG;MACX,KAAK,EAAE,IAAI,CAAC,OAAO;MACnB,KAAK,EAAE,IAAI,CAAC,MAAM;MAClB,EAAE,EAAE,IAAI,CAAC;KACV;IAED,OAAO,CAAC,CACN,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EACzC,IAAI,CAAC,MAAM,CAAC,OAAO,CACpB;EACH;CACD,CAAC","sourcesContent":["// Styles\nimport './KSheet.sass'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Roundable from '../../mixins/roundable'\nimport Themeable from '../../mixins/themeable'\n\n// Helpers\nimport mixins from '../../util/mixins'\n\n// Types\nimport { KNode } from 'kdu'\n\n/* @kdujs/component */\nexport default mixins(\n BindsAttrs,\n Colorable,\n Elevatable,\n Measurable,\n Roundable,\n Themeable\n).extend({\n name: 'k-sheet',\n\n props: {\n outlined: Boolean,\n shaped: Boolean,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'k-sheet': true,\n 'k-sheet--outlined': this.outlined,\n 'k-sheet--shaped': this.shaped,\n ...this.themeClasses,\n ...this.elevationClasses,\n ...this.roundedClasses,\n }\n },\n styles (): object {\n return this.measurableStyles\n },\n },\n\n render (h): KNode {\n const data = {\n class: this.classes,\n style: this.styles,\n on: this.listeners$,\n }\n\n return h(\n this.tag,\n this.setBackgroundColor(this.color, data),\n this.$slots.default\n )\n },\n})\n"],"sourceRoot":"","file":"KSheet.js"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Styles
|
|
2
|
-
import "
|
|
2
|
+
import "../../../src/components/KSkeletonLoader/KSkeletonLoader.sass";
|
|
3
3
|
// Mixins
|
|
4
4
|
import Elevatable from '../../mixins/elevatable';
|
|
5
5
|
import Measurable from '../../mixins/measurable';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/KSkeletonLoader/KSkeletonLoader.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './KSkeletonLoader.sass'\n\n// Mixins\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { KNode } from 'kdu'\nimport { getSlot } from '../../util/helpers'\nimport { PropValidator } from 'kdu/types/options'\n\nexport interface HTMLSkeletonLoaderElement extends HTMLElement {\n _initialStyle?: {\n display: string | null\n transition: string\n }\n}\n\n/* @kdujs/component */\nexport default mixins(\n Elevatable,\n Measurable,\n Themeable,\n).extend({\n name: 'KSkeletonLoader',\n\n props: {\n boilerplate: Boolean,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$kdutify.loading',\n },\n tile: Boolean,\n transition: String,\n type: String,\n types: {\n type: Object,\n default: () => ({}),\n } as PropValidator<Record<string, string>>,\n },\n\n computed: {\n attrs (): object {\n if (!this.isLoading) return this.$attrs\n\n return {\n 'aria-busy': !this.boilerplate ? true : undefined,\n 'aria-live': !this.boilerplate ? 'polite' : undefined,\n 'aria-label': !this.boilerplate ? this.$kdutify.lang.t(this.loadingText) : undefined,\n role: !this.boilerplate ? 'alert' : undefined,\n ...this.$attrs,\n }\n },\n classes (): object {\n return {\n 'k-skeleton-loader--boilerplate': this.boilerplate,\n 'k-skeleton-loader--is-loading': this.isLoading,\n 'k-skeleton-loader--tile': this.tile,\n ...this.themeClasses,\n ...this.elevationClasses,\n }\n },\n isLoading (): boolean {\n return !('default' in this.$scopedSlots) || this.loading\n },\n rootTypes (): Record<string, string> {\n return {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, card-heading',\n 'card-avatar': 'image, list-item-avatar',\n 'card-heading': 'heading',\n chip: 'chip',\n 'date-picker': 'list-item, card-heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n paragraph: 'text@3',\n sentences: 'text@2',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'heading, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'table-cell@6',\n 'table-cell': 'text',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n ...this.types,\n }\n },\n },\n\n methods: {\n genBone (text: string, children: KNode[]) {\n return this.$createElement('div', {\n staticClass: `k-skeleton-loader__${text} k-skeleton-loader__bone`,\n }, children)\n },\n genBones (bone: string): KNode[] {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [string, number]\n const generator = () => this.genStructure(type)\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(generator)\n },\n // Fix type when this is merged\n // https://github.com/microsoft/TypeScript/pull/33050\n genStructure (type?: string): any {\n let children = []\n type = type || this.type || ''\n const bone = this.rootTypes[type] || ''\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.indexOf(',') > -1) return this.mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.indexOf('@') > -1) return this.genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.indexOf(',') > -1) children = this.mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.indexOf('@') > -1) children = this.genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(this.genStructure(bone))\n\n return [this.genBone(type, children)]\n },\n genSkeleton () {\n const children = []\n\n if (!this.isLoading) children.push(getSlot(this))\n else children.push(this.genStructure())\n\n /* istanbul ignore else */\n if (!this.transition) return children\n\n /* istanbul ignore next */\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n // Only show transition when\n // content has been loaded\n on: {\n afterEnter: this.resetStyles,\n beforeEnter: this.onBeforeEnter,\n beforeLeave: this.onBeforeLeave,\n leaveCancelled: this.resetStyles,\n },\n }, children)\n },\n mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(this.genStructure)\n },\n onBeforeEnter (el: HTMLSkeletonLoaderElement) {\n this.resetStyles(el)\n\n if (!this.isLoading) return\n\n el._initialStyle = {\n display: el.style.display,\n transition: el.style.transition,\n }\n\n el.style.setProperty('transition', 'none', 'important')\n },\n onBeforeLeave (el: HTMLSkeletonLoaderElement) {\n el.style.setProperty('display', 'none', 'important')\n },\n resetStyles (el: HTMLSkeletonLoaderElement) {\n if (!el._initialStyle) return\n\n el.style.display = el._initialStyle.display || ''\n el.style.transition = el._initialStyle.transition\n\n delete el._initialStyle\n },\n },\n\n render (h): KNode {\n return h('div', {\n staticClass: 'k-skeleton-loader',\n attrs: this.attrs,\n on: this.$listeners,\n class: this.classes,\n style: this.isLoading ? this.measurableStyles : undefined,\n }, [this.genSkeleton()])\n },\n})\n"],"sourceRoot":"","file":"KSkeletonLoader.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/KSkeletonLoader/KSkeletonLoader.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './KSkeletonLoader.sass'\n\n// Mixins\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { KNode } from 'kdu'\nimport { getSlot } from '../../util/helpers'\nimport { PropValidator } from 'kdu/types/options'\n\nexport interface HTMLSkeletonLoaderElement extends HTMLElement {\n _initialStyle?: {\n display: string | null\n transition: string\n }\n}\n\n/* @kdujs/component */\nexport default mixins(\n Elevatable,\n Measurable,\n Themeable,\n).extend({\n name: 'KSkeletonLoader',\n\n props: {\n boilerplate: Boolean,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$kdutify.loading',\n },\n tile: Boolean,\n transition: String,\n type: String,\n types: {\n type: Object,\n default: () => ({}),\n } as PropValidator<Record<string, string>>,\n },\n\n computed: {\n attrs (): object {\n if (!this.isLoading) return this.$attrs\n\n return {\n 'aria-busy': !this.boilerplate ? true : undefined,\n 'aria-live': !this.boilerplate ? 'polite' : undefined,\n 'aria-label': !this.boilerplate ? this.$kdutify.lang.t(this.loadingText) : undefined,\n role: !this.boilerplate ? 'alert' : undefined,\n ...this.$attrs,\n }\n },\n classes (): object {\n return {\n 'k-skeleton-loader--boilerplate': this.boilerplate,\n 'k-skeleton-loader--is-loading': this.isLoading,\n 'k-skeleton-loader--tile': this.tile,\n ...this.themeClasses,\n ...this.elevationClasses,\n }\n },\n isLoading (): boolean {\n return !('default' in this.$scopedSlots) || this.loading\n },\n rootTypes (): Record<string, string> {\n return {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, card-heading',\n 'card-avatar': 'image, list-item-avatar',\n 'card-heading': 'heading',\n chip: 'chip',\n 'date-picker': 'list-item, card-heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n paragraph: 'text@3',\n sentences: 'text@2',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'heading, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'table-cell@6',\n 'table-cell': 'text',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n ...this.types,\n }\n },\n },\n\n methods: {\n genBone (text: string, children: KNode[]) {\n return this.$createElement('div', {\n staticClass: `k-skeleton-loader__${text} k-skeleton-loader__bone`,\n }, children)\n },\n genBones (bone: string): KNode[] {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [string, number]\n const generator = () => this.genStructure(type)\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(generator)\n },\n // Fix type when this is merged\n // https://github.com/microsoft/TypeScript/pull/33050\n genStructure (type?: string): any {\n let children = []\n type = type || this.type || ''\n const bone = this.rootTypes[type] || ''\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.indexOf(',') > -1) return this.mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.indexOf('@') > -1) return this.genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.indexOf(',') > -1) children = this.mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.indexOf('@') > -1) children = this.genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(this.genStructure(bone))\n\n return [this.genBone(type, children)]\n },\n genSkeleton () {\n const children = []\n\n if (!this.isLoading) children.push(getSlot(this))\n else children.push(this.genStructure())\n\n /* istanbul ignore else */\n if (!this.transition) return children\n\n /* istanbul ignore next */\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n // Only show transition when\n // content has been loaded\n on: {\n afterEnter: this.resetStyles,\n beforeEnter: this.onBeforeEnter,\n beforeLeave: this.onBeforeLeave,\n leaveCancelled: this.resetStyles,\n },\n }, children)\n },\n mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(this.genStructure)\n },\n onBeforeEnter (el: HTMLSkeletonLoaderElement) {\n this.resetStyles(el)\n\n if (!this.isLoading) return\n\n el._initialStyle = {\n display: el.style.display,\n transition: el.style.transition,\n }\n\n el.style.setProperty('transition', 'none', 'important')\n },\n onBeforeLeave (el: HTMLSkeletonLoaderElement) {\n el.style.setProperty('display', 'none', 'important')\n },\n resetStyles (el: HTMLSkeletonLoaderElement) {\n if (!el._initialStyle) return\n\n el.style.display = el._initialStyle.display || ''\n el.style.transition = el._initialStyle.transition\n\n delete el._initialStyle\n },\n },\n\n render (h): KNode {\n return h('div', {\n staticClass: 'k-skeleton-loader',\n attrs: this.attrs,\n on: this.$listeners,\n class: this.classes,\n style: this.isLoading ? this.measurableStyles : undefined,\n }, [this.genSkeleton()])\n },\n})\n"],"sourceRoot":"","file":"KSkeletonLoader.js"}
|